diff --git a/src/main/java/com/xydl/cac/repository/NSensorRepository.java b/src/main/java/com/xydl/cac/repository/NSensorRepository.java index ca392fb..f3edc27 100644 --- a/src/main/java/com/xydl/cac/repository/NSensorRepository.java +++ b/src/main/java/com/xydl/cac/repository/NSensorRepository.java @@ -15,4 +15,7 @@ public interface NSensorRepository extends JpaRepository, JpaS List findByZsbId(Integer zsbId); + List findByIcdIdIsNotNull(); + + List findByIcdIdAndIdIsNot(Integer icdid, Integer id); } \ No newline at end of file diff --git a/src/main/java/com/xydl/cac/service/impl/DataServiceImpl.java b/src/main/java/com/xydl/cac/service/impl/DataServiceImpl.java index c7609cc..69d01cc 100644 --- a/src/main/java/com/xydl/cac/service/impl/DataServiceImpl.java +++ b/src/main/java/com/xydl/cac/service/impl/DataServiceImpl.java @@ -124,7 +124,7 @@ public class DataServiceImpl implements DataService { @Override public void clearAllBind() { - String sql = "UPDATE modev SET icdid=null"; + String sql = "UPDATE n_sensor SET icd_id=null"; jdbcTemplate.execute(sql); } } diff --git a/src/main/java/com/xydl/cac/service/impl/NSensorServiceImpl.java b/src/main/java/com/xydl/cac/service/impl/NSensorServiceImpl.java index 6f24ac1..f42126a 100644 --- a/src/main/java/com/xydl/cac/service/impl/NSensorServiceImpl.java +++ b/src/main/java/com/xydl/cac/service/impl/NSensorServiceImpl.java @@ -78,7 +78,7 @@ public class NSensorServiceImpl implements NSensorService { entity.setIcdId(icdid); repository.save(entity); } else { - throw new BusinessException("未找到该传感器"); + throw new BusinessException("未找到该传监测装置"); } } diff --git a/src/main/java/com/xydl/cac/service/impl/ParamBindServiceImpl.java b/src/main/java/com/xydl/cac/service/impl/ParamBindServiceImpl.java index d8fcc38..59b5d0c 100644 --- a/src/main/java/com/xydl/cac/service/impl/ParamBindServiceImpl.java +++ b/src/main/java/com/xydl/cac/service/impl/ParamBindServiceImpl.java @@ -8,7 +8,6 @@ import com.xydl.cac.model.ColumnModel; import com.xydl.cac.model.Response; import com.xydl.cac.repository.*; import com.xydl.cac.service.DataService; -import com.xydl.cac.service.NSensorService; import com.xydl.cac.service.ParamBindService; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; @@ -36,10 +35,6 @@ public class ParamBindServiceImpl implements ParamBindService { @Resource NSensorRepository sensorRepository; @Resource - ModevRepository modevRepository; - @Resource - ModevTypeRepository modevTypeRepository; - @Resource IcdConfigTypeRepository typeRepository; @Resource IcdConfigTypeInstRepository instRepository; @@ -89,16 +84,11 @@ public class ParamBindServiceImpl implements ParamBindService { @Override public Response preview(BindingModel item) throws Exception { - Optional optionalModev = modevRepository.findById(item.getEqmid()); - if (!optionalModev.isPresent()) { + Optional optionalNSensor = sensorRepository.findById(item.getEqmid()); + if (!optionalNSensor.isPresent()) { throw new BusinessException("未找到该监测装置, eqmid=" + item.getEqmid()); } - Modev modev = optionalModev.get(); - Optional optionalModevType = modevTypeRepository.findById(modev.getModevtid()); - if (!optionalModevType.isPresent()) { - throw new BusinessException("该监测装置类型不正确, 请先修正"); - } - ModevType modevType = optionalModevType.get(); + NSensor sensor = optionalNSensor.get(); Optional optionalInst = instRepository.findById(item.getIcdid()); if (!optionalInst.isPresent()) { throw new BusinessException("未找到该ICD逻辑设备实例, icdid=" + item.getIcdid()); @@ -129,8 +119,8 @@ public class ParamBindServiceImpl implements ParamBindService { Response resp = Response.success(attList); if (StringUtils.isBlank(type.getTableName())) { msgList.add("该ICD配置类型还未设置对应的tableName"); - } else if (!type.getTableName().equals(modevType.getTablename())) { - msgList.add("该ICD配置类型的tableName(" + type.getTableName() + ")和该监测装置类型的tableName(" + modevType.getTablename() + ")不一致"); + } else if (!type.getTableName().equals(sensor.getTableName())) { + msgList.add("该ICD配置类型的tableName(" + type.getTableName() + ")和该监测装置类型的tableName(" + sensor.getTableName() + ")不一致"); } if (msgList.size() > 0) { String message = msgList.stream().collect(Collectors.joining("\n\r")); @@ -141,11 +131,11 @@ public class ParamBindServiceImpl implements ParamBindService { @Override public void bind(BindingModel item) throws Exception { - Optional optionalModev = modevRepository.findById(item.getEqmid()); - if (!optionalModev.isPresent()) { + Optional optionalNSensor = sensorRepository.findById(item.getEqmid()); + if (!optionalNSensor.isPresent()) { throw new BusinessException("未找到该监测装置, eqmid=" + item.getEqmid()); } - Modev modev = optionalModev.get(); + NSensor sensor = optionalNSensor.get(); Optional optionalInst = instRepository.findById(item.getIcdid()); if (!optionalInst.isPresent()) { @@ -158,71 +148,65 @@ public class ParamBindServiceImpl implements ParamBindService { } IcdConfigType type = optionalType.get(); - List list = modevRepository.findByIcdidAndIdIsNot(item.getIcdid(), item.getEqmid()); + List list = sensorRepository.findByIcdIdAndIdIsNot(item.getIcdid(), item.getEqmid()); if (!CollectionUtils.isEmpty(list)) { throw new BusinessException("该逻辑设备实例已被" + list.get(0).getName() + "绑定"); } List attList = attRepository.findByIcdConfigTypeId(type.getId()); - Optional optionalModevType = modevTypeRepository.findById(modev.getModevtid()); - if (optionalModevType.isPresent()) { - ModevType modevType = optionalModevType.get(); - if (StringUtils.isNotBlank(modevType.getTablename())) { - List columnList = dataService.getDataTableColumns(modevType.getTablename()); - for (IcdConfigTypeAtt att : attList) { - if (StringUtils.isNotBlank(att.getColName())) { - boolean found = false; - for (ColumnModel col : columnList) { - if (col.getName().equals(att.getColName())) { - found = true; - break; - } - } - if (!found) { - throw new BusinessException("当前监控设备对应的表" + modevType.getTablename() + "里不存在配置属性" - + att.getDoName() + "绑定的字段" + att.getColName()); + + if (StringUtils.isNotBlank(sensor.getTableName())) { + List columnList = dataService.getDataTableColumns(sensor.getTableName()); + for (IcdConfigTypeAtt att : attList) { + if (StringUtils.isNotBlank(att.getColName())) { + boolean found = false; + for (ColumnModel col : columnList) { + if (col.getName().equals(att.getColName())) { + found = true; + break; } } + if (!found) { + throw new BusinessException("当前监控设备对应的表" + sensor.getTableName() + "里不存在配置属性" + + att.getDoName() + "绑定的字段" + att.getColName()); + } } } } - modev.setIcdid(item.getIcdid()); - modevRepository.save(modev); + sensor.setIcdId(item.getIcdid()); + sensorRepository.save(sensor); } @Override public void unbind(Integer eqmid) throws Exception { - Optional optionalModev = modevRepository.findById(eqmid); - if (!optionalModev.isPresent()) { + Optional optionalNSensor = sensorRepository.findById(eqmid); + if (!optionalNSensor.isPresent()) { throw new BusinessException("未找到该监测装置, eqmid=" + eqmid); } - Modev modev = optionalModev.get(); - modev.setIcdid(null); - modevRepository.save(modev); + NSensor sensor = optionalNSensor.get(); + sensor.setIcdId(null); + sensorRepository.save(sensor); } @Override public BindDetail getBind(Integer eqmid) throws Exception { - Optional optionalModev = modevRepository.findById(eqmid); - if (!optionalModev.isPresent()) { + Optional optionalNSensor = sensorRepository.findById(eqmid); + if (!optionalNSensor.isPresent()) { throw new BusinessException("未找到该监测装置"); } - Modev modev = optionalModev.get(); + NSensor sensor = optionalNSensor.get(); BindDetail result = new BindDetail(); result.setEqmid(eqmid); - Optional optionalModevType = modevTypeRepository.findById(modev.getModevtid()); - if (optionalModevType.isPresent()) { - ModevType modevType = optionalModevType.get(); - if (StringUtils.isNotBlank(modevType.getTablename())) { - List columnList = dataService.getDataTableColumns(modevType.getTablename()); - result.setColumnList(columnList); - } + if (StringUtils.isNotBlank(sensor.getTableName())) { + List columnList = dataService.getDataTableColumns(sensor.getTableName()); + result.setColumnList(columnList); } - if (modev.getIcdid() != null) { - result.setIcdid(modev.getIcdid()); - Optional optionalInst = instRepository.findById(modev.getIcdid()); + + if (sensor.getIcdId() != null) { + result.setIcdid(sensor.getIcdId()); + Optional optionalInst = instRepository.findById(sensor.getIcdId()); if (optionalInst.isPresent()) { IcdConfigTypeInst inst = optionalInst.get(); Optional optionalType = typeRepository.findById(inst.getIcdConfigTypeId()); @@ -241,26 +225,26 @@ public class ParamBindServiceImpl implements ParamBindService { @Override public String generateParamindex() throws Exception { - List modevList = modevRepository.findByIcdidIsNotNull(); - if (!CollectionUtils.isEmpty(modevList)) { - for (Modev item : modevList) { + List sensorList = sensorRepository.findByIcdIdIsNotNull(); + if (!CollectionUtils.isEmpty(sensorList)) { + for (NSensor item : sensorList) { generateOne(item); } - return "已对" + modevList.size() + "条绑定数据生成对应的61850参引数据"; + return "已对" + sensorList.size() + "条绑定数据生成对应的61850参引数据"; } else { throw new BusinessException("无任何绑定数据"); } } - private void generateOne(Modev item) throws Exception { - Optional optionalInst = instRepository.findById(item.getIcdid()); + private void generateOne(NSensor item) throws Exception { + Optional optionalInst = instRepository.findById(item.getIcdId()); if (!optionalInst.isPresent()) { - throw new BusinessException("未找到该ICD逻辑设备实例, eqmid=" + item.getId() + ", icdid=" + item.getIcdid()); + throw new BusinessException("未找到该ICD逻辑设备实例, eqmid=" + item.getId() + ", icdid=" + item.getIcdId()); } IcdConfigTypeInst inst = optionalInst.get(); Optional optionalType = typeRepository.findById(inst.getIcdConfigTypeId()); if (!optionalType.isPresent()) { - throw new BusinessException("未找到该实例对应的ICD配置类型, icdid=" + item.getIcdid()); + throw new BusinessException("未找到该实例对应的ICD配置类型, icdid=" + item.getIcdId()); } IcdConfigType type = optionalType.get(); String param = type.getIedName() + type.getLdeviceInst() + "/" + type.getLnClass()