Skip to content
Toggle navigation
P
Projects
G
Groups
S
Snippets
Help
黄嘉阳
/
iot-platform-server
This project
Loading...
Sign in
Toggle navigation
Go to a project
Project
Repository
Issues
0
Merge Requests
0
Pipelines
Wiki
Snippets
Settings
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Commit
4c65feae
authored
Sep 05, 2023
by
lzy
Browse files
Options
_('Browse Files')
Download
Email Patches
Plain Diff
房间管理
parent
d1fe33b5
Hide whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
247 additions
and
8 deletions
db/space.sql
saas-module/src/main/java/com/makeit/controller/saas/SaasDeviceController.java
server-common/src/main/java/com/makeit/enums/CodeMessageEnum.java
server-common/src/main/resources/locale/business_messages.properties
server-module/src/main/java/com/makeit/module/controller/space/PlatRoomController.java
server-service/src/main/java/com/makeit/dto/platform/space/PlatRoomDTO.java
server-service/src/main/java/com/makeit/dto/platform/space/PlatRoomQueryDTO.java
server-service/src/main/java/com/makeit/entity/platform/space/PlatRoom.java
server-service/src/main/java/com/makeit/service/platform/space/PlatRoomService.java
server-service/src/main/java/com/makeit/service/platform/space/impl/PlatRoomServiceImpl.java
server-service/src/main/java/com/makeit/service/platform/space/impl/PlatSpaceServiceImpl.java
db/space.sql
View file @
4c65feae
...
...
@@ -27,7 +27,6 @@ CREATE TABLE `plat_room`
`name`
VARCHAR
(
128
)
NOT
NULL
COMMENT
'名称'
,
`space_id`
VARCHAR
(
64
)
NOT
NULL
COMMENT
'空间id'
,
`space_path`
VARCHAR
(
512
)
NOT
NULL
COMMENT
'空间全路径'
,
`space_path_name`
VARCHAR
(
512
)
NOT
NULL
COMMENT
'空间全路径名称'
,
`bed_number`
INT
(
4
)
NOT
NULL
COMMENT
'床位数量'
,
`description`
VARCHAR
(
1024
)
DEFAULT
NULL
COMMENT
'床位描述'
,
`create_by`
VARCHAR
(
64
)
DEFAULT
NULL
COMMENT
'创建者'
,
...
...
saas-module/src/main/java/com/makeit/controller/saas/SaasDeviceController.java
View file @
4c65feae
...
...
@@ -38,7 +38,8 @@ public class SaasDeviceController {
@ApiOperation
(
"设备编辑"
)
@PostMapping
(
"edit"
)
public
ApiResponseEntity
<
Void
>
edit
(
@RequestBody
PlatDevice
platDevice
)
{
return
ApiResponseUtils
.
success
(
platDeviceService
.
edit
(
platDevice
));
platDeviceService
.
edit
(
platDevice
);
return
ApiResponseUtils
.
success
();
}
@ApiOperation
(
"实时数据"
)
...
...
server-common/src/main/java/com/makeit/enums/CodeMessageEnum.java
View file @
4c65feae
...
...
@@ -95,7 +95,7 @@ public enum CodeMessageEnum {
PLATFORM_ERROR_SPACE_NAME_DUPLICATE
(
500
,
"PLATFORM.ERROR.SPACE.NAME.DUPLICATE"
),
PLATFORM_ERROR_SPACE_NOT_DEL
(
500
,
"PLATFORM.ERROR.SPACE.NOT.DEL"
),
...
...
server-common/src/main/resources/locale/business_messages.properties
View file @
4c65feae
...
...
@@ -90,4 +90,5 @@ SYSTEM.ERROR.SMS.CODE.NOT.CORRECT=验证码不正确
PLATFORM.ERROR.ELDER.CERTIFICATENUMBER.DUPLICATE
=
证件号不能重复
PLATFORM.ERROR.SPACE.NAME.DUPLICATE
=
同一层级,空间名称不能重复
\ No newline at end of file
PLATFORM.ERROR.SPACE.NAME.DUPLICATE
=
同一层级,空间名称不能重复
PLATFORM.ERROR.SPACE.NOT.DEL
=
该空间下存在下级或者房间,不可删除
\ No newline at end of file
server-module/src/main/java/com/makeit/module/controller/space/PlatRoomController.java
0 → 100644
View file @
4c65feae
package
com
.
makeit
.
module
.
controller
.
space
;
import
com.makeit.common.dto.BaseBatchIdDTO
;
import
com.makeit.common.dto.BaseIdDTO
;
import
com.makeit.common.page.PageReqDTO
;
import
com.makeit.common.page.PageVO
;
import
com.makeit.common.response.ApiResponseEntity
;
import
com.makeit.common.response.ApiResponseUtils
;
import
com.makeit.dto.platform.space.PlatRoomDTO
;
import
com.makeit.dto.platform.space.PlatRoomQueryDTO
;
import
com.makeit.dto.platform.space.PlatSpaceAddDTO
;
import
com.makeit.entity.platform.space.PlatRoom
;
import
com.makeit.service.platform.space.PlatRoomService
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
/**
* @Author:lzy
* @Date:2023/9/5 14:59
* @Describe:
*/
@Api
(
tags
=
"房间管理"
)
@RestController
@RequestMapping
(
"/plat/room"
)
public
class
PlatRoomController
{
@Autowired
private
PlatRoomService
platRoomService
;
@ApiOperation
(
"新增"
)
@PostMapping
(
"add"
)
public
ApiResponseEntity
<?>
add
(
@Validated
@RequestBody
PlatRoomDTO
dto
)
{
platRoomService
.
add
(
dto
);
return
ApiResponseUtils
.
success
();
}
@ApiOperation
(
"编辑"
)
@PostMapping
(
"edit"
)
public
ApiResponseEntity
<?>
edit
(
@Validated
@RequestBody
PlatRoomDTO
dto
)
{
platRoomService
.
edit
(
dto
);
return
ApiResponseUtils
.
success
();
}
@ApiOperation
(
"详情"
)
@PostMapping
(
"view"
)
public
ApiResponseEntity
<
PlatRoomDTO
>
edit
(
@RequestBody
BaseIdDTO
baseIdDTO
)
{
PlatRoomDTO
data
=
platRoomService
.
view
(
baseIdDTO
.
getId
());
return
ApiResponseUtils
.
success
(
data
);
}
@ApiOperation
(
"删除"
)
@PostMapping
(
"del"
)
public
ApiResponseEntity
<
PlatRoomDTO
>
del
(
@RequestBody
BaseBatchIdDTO
baseBatchIdDTO
)
{
platRoomService
.
del
(
baseBatchIdDTO
.
getIdList
());
return
ApiResponseUtils
.
success
();
}
@ApiOperation
(
"列表"
)
@PostMapping
(
"page"
)
public
ApiResponseEntity
<
PageVO
<
PlatRoom
>>
page
(
@RequestBody
PageReqDTO
<
PlatRoomQueryDTO
>
page
)
{
PageVO
<
PlatRoom
>
data
=
platRoomService
.
page
(
page
);
return
ApiResponseUtils
.
success
(
data
);
}
}
server-service/src/main/java/com/makeit/dto/platform/space/PlatRoomDTO.java
0 → 100644
View file @
4c65feae
package
com
.
makeit
.
dto
.
platform
.
space
;
import
com.makeit.common.dto.BaseIdDTO
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
javax.validation.constraints.NotBlank
;
import
javax.validation.constraints.Size
;
/**
* @Author:lzy
* @Date:2023/9/5 14:54
* @Describe:
*/
@Data
@EqualsAndHashCode
(
callSuper
=
true
)
@ApiModel
(
value
=
"PlatRoomDTO对象"
,
description
=
"房间DTO"
)
public
class
PlatRoomDTO
extends
BaseIdDTO
{
@NotBlank
(
message
=
"房间名称不能为空"
)
@Size
(
max
=
50
,
message
=
"房间名称最长为50个字符"
)
@ApiModelProperty
(
value
=
"房间名称"
,
required
=
true
)
private
String
name
;
@ApiModelProperty
(
value
=
"空间ID"
,
required
=
true
)
private
String
spaceId
;
@ApiModelProperty
(
value
=
"空间全路径"
,
required
=
true
)
private
String
spacePath
;
@ApiModelProperty
(
value
=
"空间全路径名称"
)
private
String
spacePathName
;
@ApiModelProperty
(
value
=
"床位数量"
)
private
int
bedNumber
;
@Size
(
max
=
200
,
message
=
"描述最长为200个字符"
)
@ApiModelProperty
(
value
=
"描述"
)
private
String
description
;
}
server-service/src/main/java/com/makeit/dto/platform/space/PlatRoomQueryDTO.java
0 → 100644
View file @
4c65feae
package
com
.
makeit
.
dto
.
platform
.
space
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
/**
* @Author:lzy
* @Date:2023/9/5 15:20
* @Describe:
*/
@Data
@ApiModel
(
"PlatRoomQueryDTO 参数"
)
public
class
PlatRoomQueryDTO
{
@ApiModelProperty
(
"房间名称"
)
private
String
name
;
}
server-service/src/main/java/com/makeit/entity/platform/space/PlatRoom.java
View file @
4c65feae
package
com
.
makeit
.
entity
.
platform
.
space
;
import
com.baomidou.mybatisplus.annotation.FieldStrategy
;
import
com.baomidou.mybatisplus.annotation.TableField
;
import
com.makeit.common.entity.BaseBusEntity
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
...
...
@@ -26,12 +28,10 @@ public class PlatRoom extends BaseBusEntity {
@ApiModelProperty
(
value
=
"空间全路径"
)
private
String
spacePath
;
@ApiModelProperty
(
value
=
"空间全路径名称"
)
private
String
spacePathName
;
@ApiModelProperty
(
value
=
"床位数量"
)
private
int
bedNumber
;
@TableField
(
updateStrategy
=
FieldStrategy
.
IGNORED
)
@ApiModelProperty
(
value
=
"描述"
)
private
String
description
;
}
server-service/src/main/java/com/makeit/service/platform/space/PlatRoomService.java
View file @
4c65feae
package
com
.
makeit
.
service
.
platform
.
space
;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
com.makeit.common.page.PageReqDTO
;
import
com.makeit.common.page.PageVO
;
import
com.makeit.dto.platform.elder.PlatElderQueryDTO
;
import
com.makeit.dto.platform.space.PlatRoomDTO
;
import
com.makeit.dto.platform.space.PlatRoomQueryDTO
;
import
com.makeit.entity.platform.space.PlatRoom
;
import
java.util.List
;
/**
* @Author:lzy
* @Date:2023/8/31 16:15
* @Describe:
*/
public
interface
PlatRoomService
extends
IService
<
PlatRoom
>
{
/**
* 添加房间
* @param dto
*/
void
add
(
PlatRoomDTO
dto
);
/**
*
* @param dto
*/
void
edit
(
PlatRoomDTO
dto
);
/**
* 详情
* @param id
* @return
*/
PlatRoomDTO
view
(
String
id
);
/**
* 删除
* @param ids
*/
void
del
(
List
<
String
>
ids
);
/**
* 列表
* @param page
* @return
*/
PageVO
<
PlatRoom
>
page
(
PageReqDTO
<
PlatRoomQueryDTO
>
page
);
}
server-service/src/main/java/com/makeit/service/platform/space/impl/PlatRoomServiceImpl.java
View file @
4c65feae
package
com
.
makeit
.
service
.
platform
.
space
.
impl
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.makeit.common.page.PageReqDTO
;
import
com.makeit.common.page.PageVO
;
import
com.makeit.dto.platform.space.PlatRoomDTO
;
import
com.makeit.dto.platform.space.PlatRoomQueryDTO
;
import
com.makeit.entity.platform.space.PlatRoom
;
import
com.makeit.mapper.platform.space.PlatRoomMapper
;
import
com.makeit.service.platform.space.PlatRoomService
;
import
com.makeit.utils.data.convert.BeanDtoVoUtils
;
import
com.makeit.utils.data.convert.PageUtil
;
import
jodd.util.StringUtil
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
import
java.util.List
;
/**
* @Author:lzy
* @Date:2023/8/31 16:15
* @Describe:
*/
@Service
public
class
PlatRoomServiceImpl
extends
ServiceImpl
<
PlatRoomMapper
,
PlatRoom
>
implements
PlatRoomService
{
@Override
@Transactional
public
void
add
(
PlatRoomDTO
dto
)
{
PlatRoom
platRoom
=
BeanDtoVoUtils
.
convert
(
dto
,
PlatRoom
.
class
);
save
(
platRoom
);
}
@Override
@Transactional
public
void
edit
(
PlatRoomDTO
dto
)
{
PlatRoom
platRoom
=
getById
(
dto
.
getId
());
platRoom
.
setName
(
dto
.
getName
());
platRoom
.
setBedNumber
(
dto
.
getBedNumber
());
platRoom
.
setDescription
(
dto
.
getDescription
());
platRoom
.
setSpaceId
(
dto
.
getSpaceId
());
platRoom
.
setSpacePath
(
dto
.
getSpacePath
());
updateById
(
platRoom
);
}
@Override
public
PlatRoomDTO
view
(
String
id
)
{
PlatRoom
room
=
getById
(
id
);
PlatRoomDTO
data
=
BeanDtoVoUtils
.
convert
(
room
,
PlatRoomDTO
.
class
);
return
data
;
}
@Override
public
void
del
(
List
<
String
>
ids
)
{
//TODO 判断是否有床位
removeByIds
(
ids
);
}
@Override
public
PageVO
<
PlatRoom
>
page
(
PageReqDTO
<
PlatRoomQueryDTO
>
page
)
{
PlatRoomQueryDTO
dto
=
page
.
getData
();
Page
<
PlatRoom
>
p
=
PageUtil
.
toMpPage
(
page
);
LambdaQueryWrapper
<
PlatRoom
>
queryWrapper
=
new
LambdaQueryWrapper
<>();
queryWrapper
.
like
(
StringUtil
.
isNotEmpty
(
dto
.
getName
()),
PlatRoom:
:
getName
,
dto
.
getName
());
Page
<
PlatRoom
>
pages
=
page
(
p
,
queryWrapper
);
return
PageUtil
.
toPageVO
(
pages
.
getRecords
(),
pages
);
}
}
server-service/src/main/java/com/makeit/service/platform/space/impl/PlatSpaceServiceImpl.java
View file @
4c65feae
...
...
@@ -73,6 +73,14 @@ public class PlatSpaceServiceImpl extends ServiceImpl<PlatSpaceMapper, PlatSpace
@Override
public
void
del
(
String
id
)
{
LambdaQueryWrapper
<
PlatSpace
>
queryWrapper
=
new
LambdaQueryWrapper
<>();
queryWrapper
.
eq
(
PlatSpace:
:
getParentId
,
id
);
if
(
count
(
queryWrapper
)
>
0
){
throw
new
BusinessException
(
CodeMessageEnum
.
PLATFORM_ERROR_SPACE_NOT_DEL
);
}
//TODO 房间的判断
this
.
removeById
(
id
);
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment