From 8c259e6551df6bb1cca1c1d362cf2f7565dfc5de Mon Sep 17 00:00:00 2001 From: chenhaojie Date: Mon, 12 Aug 2024 17:07:13 +0800 Subject: [PATCH] =?UTF-8?q?das=E6=8E=A5=E5=8F=A3=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../equipment/mapper/SysEquipmentMapper.java | 6 ++ .../node/domain/dto/BindEquipmentInfoDto.java | 2 + .../node/domain/dto/ImptabmappingDto.java | 2 + .../node/mapper/SysImptabmappingMapper.java | 4 +- .../node/service/impl/SysNodeServiceImpl.java | 69 +++++++++++-------- .../resources/mapper/SysEquipmentMapper.xml | 12 ++++ .../mapper/SysImptabmappingMapper.xml | 12 ++-- 7 files changed, 72 insertions(+), 35 deletions(-) diff --git a/das/src/main/java/com/das/modules/equipment/mapper/SysEquipmentMapper.java b/das/src/main/java/com/das/modules/equipment/mapper/SysEquipmentMapper.java index 465c05d5..ff7ae58a 100644 --- a/das/src/main/java/com/das/modules/equipment/mapper/SysEquipmentMapper.java +++ b/das/src/main/java/com/das/modules/equipment/mapper/SysEquipmentMapper.java @@ -25,5 +25,11 @@ public interface SysEquipmentMapper extends BaseMapperPlus getEquipmentAttributeInfo(Long equipmentId); + + // 获取设备的动作信息 + List getEquipmentServiceInfo(Long equipmentId); + } diff --git a/das/src/main/java/com/das/modules/node/domain/dto/BindEquipmentInfoDto.java b/das/src/main/java/com/das/modules/node/domain/dto/BindEquipmentInfoDto.java index 81d5f52f..1f5820b3 100644 --- a/das/src/main/java/com/das/modules/node/domain/dto/BindEquipmentInfoDto.java +++ b/das/src/main/java/com/das/modules/node/domain/dto/BindEquipmentInfoDto.java @@ -12,5 +12,7 @@ public class BindEquipmentInfoDto { @JsonSerialize(using = ToStringSerializer.class) private Long equipmentId; + private Integer porder; + private String iotAddr; } diff --git a/das/src/main/java/com/das/modules/node/domain/dto/ImptabmappingDto.java b/das/src/main/java/com/das/modules/node/domain/dto/ImptabmappingDto.java index b11f1714..625c6b1a 100644 --- a/das/src/main/java/com/das/modules/node/domain/dto/ImptabmappingDto.java +++ b/das/src/main/java/com/das/modules/node/domain/dto/ImptabmappingDto.java @@ -21,4 +21,6 @@ public class ImptabmappingDto implements Serializable { private Integer type; private String params; + + private String name; } diff --git a/das/src/main/java/com/das/modules/node/mapper/SysImptabmappingMapper.java b/das/src/main/java/com/das/modules/node/mapper/SysImptabmappingMapper.java index a42fa3a9..b4e1a9ce 100644 --- a/das/src/main/java/com/das/modules/node/mapper/SysImptabmappingMapper.java +++ b/das/src/main/java/com/das/modules/node/mapper/SysImptabmappingMapper.java @@ -34,9 +34,9 @@ public interface SysImptabmappingMapper extends BaseMapperPlus getMappingInfoList(Long linkId); } diff --git a/das/src/main/java/com/das/modules/node/service/impl/SysNodeServiceImpl.java b/das/src/main/java/com/das/modules/node/service/impl/SysNodeServiceImpl.java index 1cf80b3d..ad731a05 100644 --- a/das/src/main/java/com/das/modules/node/service/impl/SysNodeServiceImpl.java +++ b/das/src/main/java/com/das/modules/node/service/impl/SysNodeServiceImpl.java @@ -72,9 +72,6 @@ public class SysNodeServiceImpl implements SysNodeService { @Autowired private SysEquipmentMapper sysEquipmentMapper; - @Autowired - private SysIotModelMapper sysIotModelMapper; - @Autowired TerminalMessageEventHandler terminalMessageEventHandler; @@ -238,22 +235,20 @@ public class SysNodeServiceImpl implements SysNodeService { if (imp.getType() == 138 || imp.getType() == 139 || imp.getType() == 140) { // 获取属性编码 - String code = sysImptabmappingMapper.getAttributeCode(imp.getEquipmentId(), imp.getType()); + String code = sysImptabmappingMapper.getAttributeCode(imp.getEquipmentId(), imp.getType(), imp.getName()); sysImptabmapping.setEquipmentAttribute(code); } else if (imp.getType() == 146 || imp.getType() == 147) { // 获取动作编码 - String code = sysImptabmappingMapper.getServiceCode(imp.getEquipmentId(), imp.getType()); + String code = sysImptabmappingMapper.getServiceCode(imp.getEquipmentId(), imp.getType(), imp.getName()); sysImptabmapping.setEquipmentService(code); } sysImptabmapping.setUpdatedTime(new Date()); sysImptabmapping.setUpdatedBy(sysUserVo.getAccount()); - sysImptabmapping.setLinkId(imp.getLinkId()); - sysImptabmapping.setEquipmentId(imp.getEquipmentId()); - sysImptabmapping.setParams(String.valueOf(imp.getParams())); + sysImptabmapping.setParams(imp.getParams()); list.add(sysImptabmapping); } if (!CollectionUtils.isEmpty(list)) { - sysImptabmappingMapper.updateBatchById(list); + sysImptabmappingMapper.insertOrUpdateBatch(list); } } } @@ -287,7 +282,7 @@ public class SysNodeServiceImpl implements SysNodeService { public boolean importMappingList(String linkId, MultipartFile file) { boolean flag = false; try { -// SysUserVo sysUserVo = (SysUserVo) StpUtil.getTokenSession().get(SessionUtil.SESSION_USER_KEY); + SysUserVo sysUserVo = (SysUserVo) StpUtil.getTokenSession().get(SessionUtil.SESSION_USER_KEY); List addList = new ArrayList<>(); String content = new BufferedReader(new InputStreamReader(file.getInputStream(), StandardCharsets.UTF_8)) .lines() @@ -307,10 +302,8 @@ public class SysNodeServiceImpl implements SysNodeService { newInfo.setRevision(1); newInfo.setCreatedTime(new Date()); newInfo.setUpdatedTime(new Date()); -// newInfo.setCreatedBy(sysUserVo.getAccount()); -// newInfo.setUpdatedBy(sysUserVo.getAccount()); - newInfo.setCreatedBy("ceshi"); - newInfo.setUpdatedBy("ceshi"); + newInfo.setCreatedBy(sysUserVo.getAccount()); + newInfo.setUpdatedBy(sysUserVo.getAccount()); addList.add(newInfo); } if (!CollectionUtils.isEmpty(addList)) { @@ -352,23 +345,45 @@ public class SysNodeServiceImpl implements SysNodeService { } + // 绑定设备的测点信息,不是绑定设备到映射表 private void addSysImptabmapping(List equipmentId, Long linkId, SysUserVo sysUserVo, List addList) { - int index = 0; + + // 获取设备的测点信息 for (BindEquipmentInfoDto info : equipmentId) { - index++; - SysImptabmapping sysImptabmapping = new SysImptabmapping(); - sysImptabmapping.setEquipmentId(info.getEquipmentId()); - sysImptabmapping.setLinkId(linkId); - sysImptabmapping.setId(SequenceUtils.generateId()); - sysImptabmapping.setCreatedTime(new Date()); - sysImptabmapping.setUpdatedTime(new Date()); - sysImptabmapping.setCreatedBy(sysUserVo.getAccount()); - sysImptabmapping.setUpdatedBy(sysUserVo.getAccount()); - sysImptabmapping.setRevision(1); - sysImptabmapping.setPorder(index); - addList.add(sysImptabmapping); + List fieldList = sysEquipmentMapper.getEquipmentAttributeInfo(info.getEquipmentId()); + List serviceList = sysEquipmentMapper.getEquipmentServiceInfo(info.getEquipmentId()); + if (!CollectionUtils.isEmpty(fieldList)) { + for (String field : fieldList) { + SysImptabmapping sysImptabmapping = getSysImptabmapping(linkId, sysUserVo, info); + sysImptabmapping.setEquipmentAttribute(field); + addList.add(sysImptabmapping); + } + } + if (!CollectionUtils.isEmpty(serviceList)) { + for (String service : serviceList) { + SysImptabmapping sysImptabmapping = getSysImptabmapping(linkId, sysUserVo, info); + sysImptabmapping.setEquipmentService(service); + addList.add(sysImptabmapping); + } + } // 更新设备表里面的设备地址 sysEquipmentMapper.updateIotAddr(info.getEquipmentId(), info.getIotAddr()); } + + + } + + private static SysImptabmapping getSysImptabmapping(Long linkId, SysUserVo sysUserVo, BindEquipmentInfoDto info) { + SysImptabmapping sysImptabmapping = new SysImptabmapping(); + sysImptabmapping.setEquipmentId(info.getEquipmentId()); + sysImptabmapping.setLinkId(linkId); + sysImptabmapping.setId(SequenceUtils.generateId()); + sysImptabmapping.setCreatedTime(new Date()); + sysImptabmapping.setUpdatedTime(new Date()); + sysImptabmapping.setCreatedBy(sysUserVo.getAccount()); + sysImptabmapping.setUpdatedBy(sysUserVo.getAccount()); + sysImptabmapping.setRevision(1); + sysImptabmapping.setPorder(info.getPorder()); + return sysImptabmapping; } } diff --git a/das/src/main/resources/mapper/SysEquipmentMapper.xml b/das/src/main/resources/mapper/SysEquipmentMapper.xml index 5aee78af..aaa35508 100644 --- a/das/src/main/resources/mapper/SysEquipmentMapper.xml +++ b/das/src/main/resources/mapper/SysEquipmentMapper.xml @@ -116,4 +116,16 @@ + + + + diff --git a/das/src/main/resources/mapper/SysImptabmappingMapper.xml b/das/src/main/resources/mapper/SysImptabmappingMapper.xml index db80b535..802c6091 100644 --- a/das/src/main/resources/mapper/SysImptabmappingMapper.xml +++ b/das/src/main/resources/mapper/SysImptabmappingMapper.xml @@ -25,7 +25,7 @@ @@ -33,14 +33,14 @@ @@ -79,13 +79,13 @@