|
@@ -121,12 +121,12 @@ public class DeviceServiceImpl extends AbstractCrudService<DeviceMapper, Device>
|
|
|
deviceOneVoOne.setDeviceName(deviceList.get(i).getDeviceName());
|
|
|
if (deviceAnalogVariableList.size()>0){
|
|
|
for (int j = 0; j < deviceAnalogVariableList.size(); j++) {
|
|
|
- if (deviceList.get(i).getId()==deviceAnalogVariableList.get(j).getCommunicationEquipment()){
|
|
|
+ if (deviceList.get(i).getId().equals(deviceAnalogVariableList.get(j).getCommunicationEquipment())) {
|
|
|
deviceAnalogVariableListTwo.add(deviceAnalogVariableList.get(j));
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
- deviceOneVoOne.setDeviceAnalogVariableList(deviceAnalogVariableListTwo);
|
|
|
+ deviceOneVoOne.setChildren(deviceAnalogVariableListTwo);
|
|
|
deviceOneVo.add(deviceOneVoOne);
|
|
|
}
|
|
|
}
|
|
@@ -211,5 +211,116 @@ public class DeviceServiceImpl extends AbstractCrudService<DeviceMapper, Device>
|
|
|
return new CommonPage<>(page.getRecords(), page.getTotal(), page.getCurrent(), page.getSize());
|
|
|
}
|
|
|
|
|
|
+ public void variableCloning(Integer type,String newDeviceCode,String oldDeviceCode,String deviceName){
|
|
|
+ SysUser user = SecurityUtils.getLoginUser().getUser();
|
|
|
+
|
|
|
+ if (type==1){
|
|
|
+ //查询出旧设备配置
|
|
|
+ LambdaQueryWrapper<Device> queryWrapper = Wrappers.lambdaQuery();
|
|
|
+ queryWrapper.eq(Device::getEnable, 1).eq(Device::getDeviceCode, oldDeviceCode);
|
|
|
+ List<Device> deviceList = this.list(queryWrapper);
|
|
|
+
|
|
|
+ //设备表新增
|
|
|
+ Device device = new Device();
|
|
|
+ device.setEnable(1);
|
|
|
+ device.setInstallTime(new Date());
|
|
|
+ device.setCreator(user.getUserName());
|
|
|
+ device.setDeviceCode(newDeviceCode);
|
|
|
+ device.setDeviceName(deviceName);
|
|
|
+ device.setFloor(deviceList.get(0).getFloor());
|
|
|
+ device.setSiteId(deviceList.get(0).getSiteId());
|
|
|
+ device.setDeviceAddress(deviceList.get(0).getDeviceAddress());
|
|
|
+ device.setDeviceType(deviceList.get(0).getDeviceType());
|
|
|
+ device.setSim(deviceList.get(0).getSim());
|
|
|
+ this.save(device);
|
|
|
+ Integer deviceId = device.getId();
|
|
|
+ String deviceCode = device.getDeviceCode();
|
|
|
+ Integer siteId = device.getSiteId();
|
|
|
+ //设备状态表新增
|
|
|
+ DeviceStatus deviceStatus = new DeviceStatus();
|
|
|
+ deviceStatus.setDeviceStatus(1);
|
|
|
+ deviceStatus.setDeviceCode(deviceCode);
|
|
|
+ deviceStatus.setStatusTime(new Date());
|
|
|
+ deviceStatus.setSiteId(siteId);
|
|
|
+ deviceStatusService.save(deviceStatus);
|
|
|
+ //变量配置查询
|
|
|
+ LambdaQueryWrapper<DeviceAnalogVariableList> queryWrapperOne = Wrappers.lambdaQuery();
|
|
|
+ queryWrapperOne.eq(DeviceAnalogVariableList::getStatus, 1).eq(DeviceAnalogVariableList::getCommunicationEquipment, deviceId);
|
|
|
+ List<DeviceAnalogVariableList> deviceAnalogVariableList = deviceAnalogVariableListService.list(queryWrapperOne);
|
|
|
+ if (deviceAnalogVariableList.size()>0){
|
|
|
+ for (int i = 0; i < deviceAnalogVariableList.size(); i++) {
|
|
|
+ DeviceAnalogVariableList deviceAnalogVariableListOne = new DeviceAnalogVariableList();
|
|
|
+ deviceAnalogVariableListOne.setDeviceCode(newDeviceCode);
|
|
|
+ deviceAnalogVariableListOne.setVariableName(deviceAnalogVariableList.get(i).getVariableName());
|
|
|
+ deviceAnalogVariableListOne.setVariableCoding(deviceAnalogVariableList.get(i).getVariableCoding());
|
|
|
+ deviceAnalogVariableListOne.setMonitoringEquipment(deviceAnalogVariableList.get(i).getMonitoringEquipment());
|
|
|
+ deviceAnalogVariableListOne.setCommunicationEquipment(deviceAnalogVariableList.get(i).getCommunicationEquipment());
|
|
|
+ deviceAnalogVariableListOne.setDataAddress(deviceAnalogVariableList.get(i).getDataAddress());
|
|
|
+ deviceAnalogVariableListOne.setDataType(deviceAnalogVariableList.get(i).getDataType());
|
|
|
+ deviceAnalogVariableListOne.setCoefficient(deviceAnalogVariableList.get(i).getCoefficient());
|
|
|
+ deviceAnalogVariableListOne.setSaveCycle(deviceAnalogVariableList.get(i).getSaveCycle());
|
|
|
+ deviceAnalogVariableListOne.setDataArea(deviceAnalogVariableList.get(i).getDataArea());
|
|
|
+ deviceAnalogVariableListOne.setCreator(user.getUserName());
|
|
|
+ deviceAnalogVariableListOne.setCreateTime(new Date());
|
|
|
+ deviceAnalogVariableListOne.setStatus(1);
|
|
|
+ deviceAnalogVariableListService.save(deviceAnalogVariableListOne);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }else{
|
|
|
+ //被克隆设备查询是否存在
|
|
|
+ LambdaQueryWrapper<Device> queryWrapperOne = Wrappers.lambdaQuery();
|
|
|
+ queryWrapperOne.eq(Device::getEnable, 1).eq(Device::getDeviceCode, oldDeviceCode);
|
|
|
+ List<Device> deviceListOne = this.list(queryWrapperOne);
|
|
|
+ LambdaQueryWrapper<DeviceAnalogVariableList> queryWrapperOneA = Wrappers.lambdaQuery();
|
|
|
+ queryWrapperOneA.eq(DeviceAnalogVariableList::getStatus, 1).eq(DeviceAnalogVariableList::getCommunicationEquipment, deviceListOne.get(0).getId());
|
|
|
+ List<DeviceAnalogVariableList> deviceAnalogVariableListOne = deviceAnalogVariableListService.list(queryWrapperOneA);
|
|
|
+
|
|
|
+ //克隆设备查询是否存在
|
|
|
+ LambdaQueryWrapper<Device> queryWrapperTwo = Wrappers.lambdaQuery();
|
|
|
+ queryWrapperTwo.eq(Device::getEnable, 1).eq(Device::getDeviceCode, newDeviceCode);
|
|
|
+ List<Device> deviceListTwo = this.list(queryWrapperTwo);
|
|
|
+ LambdaQueryWrapper<DeviceAnalogVariableList> queryWrapperTwoA = Wrappers.lambdaQuery();
|
|
|
+ queryWrapperTwoA.eq(DeviceAnalogVariableList::getStatus, 1).eq(DeviceAnalogVariableList::getCommunicationEquipment, deviceListTwo.get(0).getId());
|
|
|
+ List<DeviceAnalogVariableList> deviceAnalogVariableListTwo = deviceAnalogVariableListService.list(queryWrapperTwoA);
|
|
|
+
|
|
|
+ if (deviceAnalogVariableListTwo.size()>0){
|
|
|
+ for (int i = 0; i < deviceAnalogVariableListTwo.size(); i++) {
|
|
|
+ DeviceAnalogVariableList deviceAnalogVariableList = new DeviceAnalogVariableList();
|
|
|
+ deviceAnalogVariableList.setStatus(0);
|
|
|
+ deviceAnalogVariableList.setId(deviceAnalogVariableListTwo.get(i).getId());
|
|
|
+ deviceAnalogVariableListService.updateById(deviceAnalogVariableList);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ if (deviceAnalogVariableListOne.size()>0){
|
|
|
+ for (int i = 0; i < deviceAnalogVariableListOne.size(); i++) {
|
|
|
+ DeviceAnalogVariableList deviceAnalogVariableList = new DeviceAnalogVariableList();
|
|
|
+
|
|
|
+// deviceAnalogVariableList.setDeviceCode(newDeviceCode);
|
|
|
+// deviceAnalogVariableList.setVariableName(deviceAnalogVariableList.get(i).getVariableName());
|
|
|
+// deviceAnalogVariableList.setVariableCoding(deviceAnalogVariableList.get(i).getVariableCoding());
|
|
|
+// deviceAnalogVariableList.setMonitoringEquipment(deviceAnalogVariableList.get(i).getMonitoringEquipment());
|
|
|
+// deviceAnalogVariableList.setCommunicationEquipment(deviceAnalogVariableList.get(i).getCommunicationEquipment());
|
|
|
+// deviceAnalogVariableList.setDataAddress(deviceAnalogVariableList.get(i).getDataAddress());
|
|
|
+// deviceAnalogVariableList.setDataType(deviceAnalogVariableList.get(i).getDataType());
|
|
|
+// deviceAnalogVariableList.setCoefficient(deviceAnalogVariableList.get(i).getCoefficient());
|
|
|
+// deviceAnalogVariableList.setSaveCycle(deviceAnalogVariableList.get(i).getSaveCycle());
|
|
|
+// deviceAnalogVariableList.setDataArea(deviceAnalogVariableList.get(i).getDataArea());
|
|
|
+// deviceAnalogVariableList.setCreator(user.getUserName());
|
|
|
+// deviceAnalogVariableList.setCreateTime(new Date());
|
|
|
+// deviceAnalogVariableList.setStatus(1);
|
|
|
+
|
|
|
+
|
|
|
+ deviceAnalogVariableList.setStatus(0);
|
|
|
+ deviceAnalogVariableListService.updateById(deviceAnalogVariableList);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
|
|
|
}
|