|
|
@@ -22,7 +22,7 @@ import java.util.Map;
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
/**
|
|
|
- * 基础建模服务实现(结构树、能源类型、建筑/区域/楼层/网关/通道/设备/属性点位 CRUD)
|
|
|
+ * 基础建模服务实现(结构树、能源类型、建筑/区域/网关/通道/设备/属性点位 CRUD)
|
|
|
*/
|
|
|
@Service
|
|
|
public class EmsModelServiceImpl implements EmsModelService {
|
|
|
@@ -36,8 +36,6 @@ public class EmsModelServiceImpl implements EmsModelService {
|
|
|
@Autowired
|
|
|
private EmsSpaceAreaMapper emsSpaceAreaMapper;
|
|
|
@Autowired
|
|
|
- private EmsSpaceFloorMapper emsSpaceFloorMapper;
|
|
|
- @Autowired
|
|
|
private EmsGatewayMapper emsGatewayMapper;
|
|
|
@Autowired
|
|
|
private EmsChannelMapper emsChannelMapper;
|
|
|
@@ -51,8 +49,6 @@ public class EmsModelServiceImpl implements EmsModelService {
|
|
|
private static final int SPACE_TYPE_PROJECT = 1;
|
|
|
private static final int SPACE_TYPE_REGION = 2;
|
|
|
private static final int SPACE_TYPE_BUILDING = 3;
|
|
|
- private static final int SPACE_TYPE_FLOOR = 4;
|
|
|
- private static final int SPACE_TYPE_ROOM = 5;
|
|
|
|
|
|
private EmsProject firstProject() {
|
|
|
List<EmsProject> list = emsProjectMapper.selectList(null);
|
|
|
@@ -89,15 +85,12 @@ public class EmsModelServiceImpl implements EmsModelService {
|
|
|
node.setType("region");
|
|
|
EmsSpaceArea a = emsSpaceAreaMapper.selectOne(new LambdaQueryWrapper<EmsSpaceArea>().eq(EmsSpaceArea::getSpaceId, s.getId()));
|
|
|
if (a != null) node.setName(a.getName());
|
|
|
- } else if (s.getType() == SPACE_TYPE_FLOOR) {
|
|
|
- node.setType("floor");
|
|
|
- EmsSpaceFloor f = emsSpaceFloorMapper.selectOne(new LambdaQueryWrapper<EmsSpaceFloor>().eq(EmsSpaceFloor::getSpaceId, s.getId()));
|
|
|
- if (f != null) node.setName(f.getName());
|
|
|
} else {
|
|
|
node.setType("space");
|
|
|
}
|
|
|
List<EmsStructureTreeNode> sub = buildSpaceChildren(s.getId(), includeGateway);
|
|
|
- if (includeGateway && (s.getType() == SPACE_TYPE_FLOOR || s.getType() == SPACE_TYPE_ROOM)) {
|
|
|
+ // 网关挂在非「建筑」空间下(区域、历史遗留子空间等),不包含建筑节点本身
|
|
|
+ if (includeGateway && s.getType() != SPACE_TYPE_BUILDING) {
|
|
|
List<EmsGateway> gateways = emsGatewayMapper.selectList(new LambdaQueryWrapper<EmsGateway>().eq(EmsGateway::getSpaceId, s.getId()));
|
|
|
for (EmsGateway g : gateways) {
|
|
|
EmsStructureTreeNode gw = new EmsStructureTreeNode();
|
|
|
@@ -279,61 +272,19 @@ public class EmsModelServiceImpl implements EmsModelService {
|
|
|
emsSpaceMapper.deleteById(id);
|
|
|
}
|
|
|
|
|
|
- @Override
|
|
|
- @Transactional(rollbackFor = Exception.class)
|
|
|
- public Long createFloor(EmsModelSaveRequest request) {
|
|
|
- Long regionId = request.getRegionId();
|
|
|
- String name = request.getName();
|
|
|
- EmsSpace space = new EmsSpace();
|
|
|
- space.setName(name);
|
|
|
- space.setParentId(regionId);
|
|
|
- EmsSpace parent = emsSpaceMapper.selectById(regionId);
|
|
|
- space.setRootId(parent != null ? parent.getRootId() : regionId);
|
|
|
- space.setType(SPACE_TYPE_FLOOR);
|
|
|
- emsSpaceMapper.insert(space);
|
|
|
- EmsSpaceFloor floor = new EmsSpaceFloor();
|
|
|
- floor.setSpaceId(space.getId());
|
|
|
- floor.setName(name);
|
|
|
- emsSpaceFloorMapper.insert(floor);
|
|
|
- return space.getId();
|
|
|
- }
|
|
|
-
|
|
|
- @Override
|
|
|
- @Transactional(rollbackFor = Exception.class)
|
|
|
- public void updateFloor(Long id, EmsModelSaveRequest request) {
|
|
|
- String name = request.getName();
|
|
|
- EmsSpace space = emsSpaceMapper.selectById(id);
|
|
|
- if (space != null && name != null) {
|
|
|
- space.setName(name);
|
|
|
- emsSpaceMapper.updateById(space);
|
|
|
- }
|
|
|
- EmsSpaceFloor f = emsSpaceFloorMapper.selectOne(new LambdaQueryWrapper<EmsSpaceFloor>().eq(EmsSpaceFloor::getSpaceId, id));
|
|
|
- if (f != null && name != null) {
|
|
|
- f.setName(name);
|
|
|
- emsSpaceFloorMapper.updateById(f);
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- @Override
|
|
|
- @Transactional(rollbackFor = Exception.class)
|
|
|
- public void deleteFloor(Long id) {
|
|
|
- emsSpaceFloorMapper.delete(new LambdaQueryWrapper<EmsSpaceFloor>().eq(EmsSpaceFloor::getSpaceId, id));
|
|
|
- emsSpaceMapper.deleteById(id);
|
|
|
- }
|
|
|
-
|
|
|
@Override
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
public String createGateway(EmsModelSaveRequest request) {
|
|
|
- Long floorId = request.getFloorId();
|
|
|
+ Long spaceId = request.getSpaceId();
|
|
|
String name = request.getName();
|
|
|
String gwId = "GW" + System.currentTimeMillis();
|
|
|
if (gwId.length() > 13) gwId = gwId.substring(0, 13);
|
|
|
EmsGateway g = new EmsGateway();
|
|
|
g.setId(gwId);
|
|
|
g.setName(name);
|
|
|
- g.setSpaceId(floorId);
|
|
|
+ g.setSpaceId(spaceId);
|
|
|
g.setProjectId(0L);
|
|
|
- EmsSpace space = floorId != null ? emsSpaceMapper.selectById(floorId) : null;
|
|
|
+ EmsSpace space = spaceId != null ? emsSpaceMapper.selectById(spaceId) : null;
|
|
|
if (space != null) {
|
|
|
EmsProject p = firstProject();
|
|
|
if (p != null) g.setProjectId(p.getId());
|
|
|
@@ -352,7 +303,7 @@ public class EmsModelServiceImpl implements EmsModelService {
|
|
|
EmsGateway g = emsGatewayMapper.selectById(id);
|
|
|
if (g == null) return;
|
|
|
if (request.getName() != null) g.setName(request.getName());
|
|
|
- if (request.getFloorId() != null) g.setSpaceId(request.getFloorId());
|
|
|
+ if (request.getSpaceId() != null) g.setSpaceId(request.getSpaceId());
|
|
|
emsGatewayMapper.updateById(g);
|
|
|
}
|
|
|
|