diff --git a/pqs-device/device-boot/src/main/resources/bootstrap.yml b/pqs-device/device-boot/src/main/resources/bootstrap.yml index eb04f7505..0537cd79d 100644 --- a/pqs-device/device-boot/src/main/resources/bootstrap.yml +++ b/pqs-device/device-boot/src/main/resources/bootstrap.yml @@ -61,3 +61,7 @@ isJb: false mqtt: client-id: @artifactId@${random.value} +oracle: + isSync: false + syncLedgerLineUrl: http://localhost:8082/export/syncLedgerLine + syncLedgerUpdateLine: http://localhost:8082/export/syncLedgerLine diff --git a/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/enums/PvDeviceResponseEnum.java b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/enums/PvDeviceResponseEnum.java index 6b2a89abc..8d0fb8b29 100644 --- a/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/enums/PvDeviceResponseEnum.java +++ b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/enums/PvDeviceResponseEnum.java @@ -46,6 +46,10 @@ public enum PvDeviceResponseEnum { LINE_DEVICE_NO_MATCH("A0369","监测点所属装置型号不匹配"), NO_SUB("A0370","当前单位下不存在台区或变电站"), NEWSTATION_REPEAT("A0371","新能源场站名称已存在"), + PROJECT_OR_NOT("A00550","项目名称为空,请检查信息是否存在!"), + PROVINCE_OR_NOT("A00550","省级名称为空,请检查信息是否存在!"), + GD_OR_NOT("A00550","供电名称为空,请检查信息是否存在!"), + ; diff --git a/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/param/LineParam.java b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/param/LineParam.java index c144926ad..623be0954 100644 --- a/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/param/LineParam.java +++ b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/param/LineParam.java @@ -29,6 +29,8 @@ public class LineParam { @Pattern(regexp = PatternRegex.DEV_NAME_REGEX,message = "监测点名称违规") private String name; + @ApiModelProperty(name = "name",value = "原监测点名称",required = true) + private String oldName; /** * PT一次变比 */ diff --git a/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/param/SubVoltageParam.java b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/param/SubVoltageParam.java index 705c17179..e0f5e84c9 100644 --- a/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/param/SubVoltageParam.java +++ b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/param/SubVoltageParam.java @@ -31,6 +31,9 @@ public class SubVoltageParam { @Pattern(regexp = PatternRegex.DEV_NAME_REGEX,message = "设备名称违规") private String name; + @ApiModelProperty(name = "name",value = "原母线名称",required = true) + private String oldName; + /** * 母线号(在同一台设备中的电压通道号) */ diff --git a/pqs-supervision/supervision-api/src/main/java/com/njcn/supervision/pojo/param/oracle/PqDevice.java b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/param/oracle/PqDevice.java similarity index 88% rename from pqs-supervision/supervision-api/src/main/java/com/njcn/supervision/pojo/param/oracle/PqDevice.java rename to pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/param/oracle/PqDevice.java index d3860d718..458c685be 100644 --- a/pqs-supervision/supervision-api/src/main/java/com/njcn/supervision/pojo/param/oracle/PqDevice.java +++ b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/param/oracle/PqDevice.java @@ -1,8 +1,9 @@ -package com.njcn.supervision.pojo.param.oracle; +package com.njcn.device.pq.pojo.param.oracle; import lombok.Data; import java.io.Serializable; +import java.util.List; /** * @@ -11,6 +12,8 @@ import java.io.Serializable; @Data public class PqDevice implements Serializable { + + private Integer devIndex; /** * 装置名称(唯一性判断) */ @@ -83,4 +86,9 @@ public class PqDevice implements Serializable { */ private Integer datatype; + + /** + * 母线信息表 + */ + private List pqSubvoltage; } \ No newline at end of file diff --git a/pqs-supervision/supervision-api/src/main/java/com/njcn/supervision/pojo/param/oracle/PqDevicedetail.java b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/param/oracle/PqDevicedetail.java similarity index 94% rename from pqs-supervision/supervision-api/src/main/java/com/njcn/supervision/pojo/param/oracle/PqDevicedetail.java rename to pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/param/oracle/PqDevicedetail.java index 390b6f42c..c7eb49360 100644 --- a/pqs-supervision/supervision-api/src/main/java/com/njcn/supervision/pojo/param/oracle/PqDevicedetail.java +++ b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/param/oracle/PqDevicedetail.java @@ -1,4 +1,4 @@ -package com.njcn.supervision.pojo.param.oracle; +package com.njcn.device.pq.pojo.param.oracle; import lombok.Data; @@ -11,6 +11,7 @@ import java.io.Serializable; @Data public class PqDevicedetail implements Serializable { + private Integer devIndex; /** * (关联PQS_Dicdata)设备制造商Guid diff --git a/pqs-supervision/supervision-api/src/main/java/com/njcn/supervision/pojo/param/oracle/PqDevtypeicd.java b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/param/oracle/PqDevtypeicd.java similarity index 93% rename from pqs-supervision/supervision-api/src/main/java/com/njcn/supervision/pojo/param/oracle/PqDevtypeicd.java rename to pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/param/oracle/PqDevtypeicd.java index 397242991..3f7fa2c65 100644 --- a/pqs-supervision/supervision-api/src/main/java/com/njcn/supervision/pojo/param/oracle/PqDevtypeicd.java +++ b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/param/oracle/PqDevtypeicd.java @@ -1,4 +1,4 @@ -package com.njcn.supervision.pojo.param.oracle; +package com.njcn.device.pq.pojo.param.oracle; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableName; diff --git a/pqs-supervision/supervision-api/src/main/java/com/njcn/supervision/pojo/param/oracle/PqGdinformation.java b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/param/oracle/PqGdinformation.java similarity index 84% rename from pqs-supervision/supervision-api/src/main/java/com/njcn/supervision/pojo/param/oracle/PqGdinformation.java rename to pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/param/oracle/PqGdinformation.java index 7cd3b961a..41844162d 100644 --- a/pqs-supervision/supervision-api/src/main/java/com/njcn/supervision/pojo/param/oracle/PqGdinformation.java +++ b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/param/oracle/PqGdinformation.java @@ -1,4 +1,4 @@ -package com.njcn.supervision.pojo.param.oracle; +package com.njcn.device.pq.pojo.param.oracle; import lombok.Data; diff --git a/pqs-supervision/supervision-api/src/main/java/com/njcn/supervision/pojo/param/oracle/PqLine.java b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/param/oracle/PqLine.java similarity index 91% rename from pqs-supervision/supervision-api/src/main/java/com/njcn/supervision/pojo/param/oracle/PqLine.java rename to pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/param/oracle/PqLine.java index 129c69b7e..322fff6e9 100644 --- a/pqs-supervision/supervision-api/src/main/java/com/njcn/supervision/pojo/param/oracle/PqLine.java +++ b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/param/oracle/PqLine.java @@ -1,4 +1,4 @@ -package com.njcn.supervision.pojo.param.oracle; +package com.njcn.device.pq.pojo.param.oracle; import lombok.Data; @@ -11,7 +11,7 @@ import java.io.Serializable; @Data public class PqLine implements Serializable { - + private Integer lineIndex; /** * 线路名称 */ diff --git a/pqs-supervision/supervision-api/src/main/java/com/njcn/supervision/pojo/param/oracle/PqLinedetail.java b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/param/oracle/PqLinedetail.java similarity index 95% rename from pqs-supervision/supervision-api/src/main/java/com/njcn/supervision/pojo/param/oracle/PqLinedetail.java rename to pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/param/oracle/PqLinedetail.java index a1a8ebc81..be6cc5316 100644 --- a/pqs-supervision/supervision-api/src/main/java/com/njcn/supervision/pojo/param/oracle/PqLinedetail.java +++ b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/param/oracle/PqLinedetail.java @@ -1,4 +1,4 @@ -package com.njcn.supervision.pojo.param.oracle; +package com.njcn.device.pq.pojo.param.oracle; import lombok.Data; @@ -11,7 +11,7 @@ import java.io.Serializable; @Data public class PqLinedetail implements Serializable { - + private Integer lineIndex; /** * 线路名称 */ diff --git a/pqs-supervision/supervision-api/src/main/java/com/njcn/supervision/pojo/param/oracle/PqProject.java b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/param/oracle/PqProject.java similarity index 84% rename from pqs-supervision/supervision-api/src/main/java/com/njcn/supervision/pojo/param/oracle/PqProject.java rename to pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/param/oracle/PqProject.java index 32ed0c5e9..13bb289dc 100644 --- a/pqs-supervision/supervision-api/src/main/java/com/njcn/supervision/pojo/param/oracle/PqProject.java +++ b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/param/oracle/PqProject.java @@ -1,4 +1,4 @@ -package com.njcn.supervision.pojo.param.oracle; +package com.njcn.device.pq.pojo.param.oracle; import lombok.Data; diff --git a/pqs-supervision/supervision-api/src/main/java/com/njcn/supervision/pojo/param/oracle/PqProvince.java b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/param/oracle/PqProvince.java similarity index 84% rename from pqs-supervision/supervision-api/src/main/java/com/njcn/supervision/pojo/param/oracle/PqProvince.java rename to pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/param/oracle/PqProvince.java index 9cf863a43..eead2997a 100644 --- a/pqs-supervision/supervision-api/src/main/java/com/njcn/supervision/pojo/param/oracle/PqProvince.java +++ b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/param/oracle/PqProvince.java @@ -1,4 +1,4 @@ -package com.njcn.supervision.pojo.param.oracle; +package com.njcn.device.pq.pojo.param.oracle; import lombok.Data; diff --git a/pqs-supervision/supervision-api/src/main/java/com/njcn/supervision/pojo/param/oracle/PqSubstation.java b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/param/oracle/PqSubstation.java similarity index 62% rename from pqs-supervision/supervision-api/src/main/java/com/njcn/supervision/pojo/param/oracle/PqSubstation.java rename to pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/param/oracle/PqSubstation.java index b67cc7ed8..d652b3093 100644 --- a/pqs-supervision/supervision-api/src/main/java/com/njcn/supervision/pojo/param/oracle/PqSubstation.java +++ b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/param/oracle/PqSubstation.java @@ -1,4 +1,4 @@ -package com.njcn.supervision.pojo.param.oracle; +package com.njcn.device.pq.pojo.param.oracle; import lombok.Data; @@ -21,4 +21,13 @@ public class PqSubstation implements Serializable { */ private String scale; + /** + * 旧变电站id + */ + private String oldName; + + /** + * 供电公司 + */ + private String gdName; } \ No newline at end of file diff --git a/pqs-supervision/supervision-api/src/main/java/com/njcn/supervision/pojo/param/oracle/PqSubvoltage.java b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/param/oracle/PqSubvoltage.java similarity index 72% rename from pqs-supervision/supervision-api/src/main/java/com/njcn/supervision/pojo/param/oracle/PqSubvoltage.java rename to pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/param/oracle/PqSubvoltage.java index 9ac925216..6f2ab8b94 100644 --- a/pqs-supervision/supervision-api/src/main/java/com/njcn/supervision/pojo/param/oracle/PqSubvoltage.java +++ b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/param/oracle/PqSubvoltage.java @@ -1,8 +1,9 @@ -package com.njcn.supervision.pojo.param.oracle; +package com.njcn.device.pq.pojo.param.oracle; import lombok.Data; import java.io.Serializable; +import java.util.List; /** * @@ -17,6 +18,11 @@ public class PqSubvoltage implements Serializable { */ private String name; + /** + * 原母线名称 + */ + private String oldName; + /** * 母线号(在同一台设备中的电压通道号) */ @@ -33,5 +39,8 @@ public class PqSubvoltage implements Serializable { */ private Integer subvmodel; - + /** + * 线路信息表 + */ + private List pqLine; } \ No newline at end of file diff --git a/pqs-supervision/supervision-api/src/main/java/com/njcn/supervision/pojo/param/oracle/PqsMap.java b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/param/oracle/PqsMap.java similarity index 88% rename from pqs-supervision/supervision-api/src/main/java/com/njcn/supervision/pojo/param/oracle/PqsMap.java rename to pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/param/oracle/PqsMap.java index 496b02927..00f5d1d5d 100644 --- a/pqs-supervision/supervision-api/src/main/java/com/njcn/supervision/pojo/param/oracle/PqsMap.java +++ b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/param/oracle/PqsMap.java @@ -1,4 +1,4 @@ -package com.njcn.supervision.pojo.param.oracle; +package com.njcn.device.pq.pojo.param.oracle; import lombok.Data; diff --git a/pqs-supervision/supervision-api/src/main/java/com/njcn/supervision/pojo/param/oracle/SyncLedger.java b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/param/oracle/SyncLedger.java similarity index 95% rename from pqs-supervision/supervision-api/src/main/java/com/njcn/supervision/pojo/param/oracle/SyncLedger.java rename to pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/param/oracle/SyncLedger.java index 231121f45..f3fb9f179 100644 --- a/pqs-supervision/supervision-api/src/main/java/com/njcn/supervision/pojo/param/oracle/SyncLedger.java +++ b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/param/oracle/SyncLedger.java @@ -1,4 +1,4 @@ -package com.njcn.supervision.pojo.param.oracle; +package com.njcn.device.pq.pojo.param.oracle; import lombok.Data; diff --git a/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/param/oracle/SyncLedgerDelete.java b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/param/oracle/SyncLedgerDelete.java new file mode 100644 index 000000000..663f961fd --- /dev/null +++ b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/param/oracle/SyncLedgerDelete.java @@ -0,0 +1,36 @@ +package com.njcn.device.pq.pojo.param.oracle; + +import lombok.Data; + +import java.io.Serializable; +import java.util.List; + +/** + * @author wr + * @description + * @date 2024/10/9 16:37 + */ +@Data +public class SyncLedgerDelete implements Serializable { + + + /** + * 线路信息表 + */ + private List line; + /** + * 母线信息表 + */ + private List subVoltage; + /** + * 装置信息表 + */ + private List device; + + /** + * 变电站信息表 + */ + private List substation; + + +} diff --git a/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/param/oracle/SyncLedgerUpdate.java b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/param/oracle/SyncLedgerUpdate.java new file mode 100644 index 000000000..1a7d69aec --- /dev/null +++ b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/param/oracle/SyncLedgerUpdate.java @@ -0,0 +1,43 @@ +package com.njcn.device.pq.pojo.param.oracle; + +import lombok.Data; + +import java.io.Serializable; +import java.util.List; + +/** + * @author wr + * @description + * @date 2024/10/9 16:37 + */ +@Data +public class SyncLedgerUpdate implements Serializable { + + /** + * 变电站信息表 + */ + private PqSubstation pqSubstation; + + /** + * 变电站经纬度 + */ + private PqsMap pqsMap; + + /** + * 装置信息表 + */ + private List pqDevice; + + /** + * 装置详细信息表 + */ + private List pqDevicedetail; + + /** + * 线路参数附加定义表 + */ + private List pqLinedetail; + + + +} diff --git a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/controller/TerminalBaseController.java b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/controller/TerminalBaseController.java index 8301a1087..e63ed6dec 100644 --- a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/controller/TerminalBaseController.java +++ b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/controller/TerminalBaseController.java @@ -191,8 +191,7 @@ public class TerminalBaseController extends BaseController { @DeleteMapping("delTerminal") public HttpResult delTerminal(@RequestParam("id") String id) { String methodDescribe = getMethodDescribe("delTerminal"); - System.out.println(id); -// terminalBaseService.delTerminal(id); + terminalBaseService.delTerminal(id); return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe); } diff --git a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/mapper/LineMapper.java b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/mapper/LineMapper.java index bccefe71c..218ae8a8b 100644 --- a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/mapper/LineMapper.java +++ b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/mapper/LineMapper.java @@ -173,6 +173,14 @@ public interface LineMapper extends BaseMapper { */ List getVoltageIdByScale(@Param("voltageIds") List voltageIds, @Param("scale") String scale); + /** + * 查询变电站id + * + * @param subIds 变电站索引集合 + * @param scale 电压等级 + */ + List getSubIdByScale(@Param("subIds") List subIds, @Param("scale") String scale); + /** * 查询监测点id * diff --git a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/mapper/mapping/LineMapper.xml b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/mapper/mapping/LineMapper.xml index 51c3a7ff4..5dab49eca 100644 --- a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/mapper/mapping/LineMapper.xml +++ b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/mapper/mapping/LineMapper.xml @@ -1779,4 +1779,20 @@ + diff --git a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/TerminalBaseService.java b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/TerminalBaseService.java index c48158ad5..80d6cc021 100644 --- a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/TerminalBaseService.java +++ b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/TerminalBaseService.java @@ -148,6 +148,16 @@ public interface TerminalBaseService { */ List getVoltageIdByScale(List voltageIds, String scale); + /** + * 根据指定电压等级查询母线id + * @param subIds + * @param scale + * @return: java.util.List + * @Author: wr + * @Date: 2024/10/12 15:58 + */ + List getSubIdByScale(List subIds, String scale); + /** * 根据干扰源获取对应的监测点id * diff --git a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/GeneralDeviceService.java b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/GeneralDeviceService.java index eb3cfe1f0..22214b934 100644 --- a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/GeneralDeviceService.java +++ b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/GeneralDeviceService.java @@ -473,9 +473,9 @@ public class GeneralDeviceService { private List filterDataByScale(List deviceInfos, List scales) { List generalDeviceDTOS = new ArrayList<>(); - List voltageIds = new ArrayList<>(), lineIds = new ArrayList<>(); + List subIds = new ArrayList<>(), lineIds = new ArrayList<>(); for (GeneralDeviceDTO generalDeviceDTO : deviceInfos) { - voltageIds.addAll(generalDeviceDTO.getVoltageIndexes()); + subIds.addAll(generalDeviceDTO.getSubIndexes()); lineIds.addAll(generalDeviceDTO.getLineIndexes()); } //如果电压等级集合为空,则查询所有的电压等级 @@ -493,8 +493,8 @@ public class GeneralDeviceService { } List lines = terminalBaseService.getLineById(lineIds); for (SimpleDTO simpleDTO : scales) { - List voltageScaleIds = terminalBaseService.getVoltageIdByScale(voltageIds, simpleDTO.getId()); - generalDeviceDTOS.add(assembleDataByLine(simpleDTO, lines, voltageScaleIds, LineBaseEnum.SUB_V_LEVEL.getCode())); + List voltageScaleIds = terminalBaseService.getSubIdByScale(subIds, simpleDTO.getId()); + generalDeviceDTOS.add(assembleDataByLine(simpleDTO, lines, voltageScaleIds, LineBaseEnum.SUB_LEVEL.getCode())); } return generalDeviceDTOS; } diff --git a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/TerminalBaseServiceImpl.java b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/TerminalBaseServiceImpl.java index 93f3429c2..6c90313c4 100644 --- a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/TerminalBaseServiceImpl.java +++ b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/TerminalBaseServiceImpl.java @@ -11,11 +11,11 @@ import cn.hutool.core.text.StrBuilder; import cn.hutool.core.util.IdUtil; import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; +import cn.hutool.http.HttpRequest; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.njcn.common.config.GeneralInfo; import com.njcn.common.pojo.dto.SimpleDTO; import com.njcn.common.pojo.enums.common.DataStateEnum; import com.njcn.common.pojo.enums.response.CommonResponseEnum; @@ -30,6 +30,7 @@ import com.njcn.device.biz.pojo.po.DeviceBak; import com.njcn.device.biz.pojo.po.Overlimit; import com.njcn.device.biz.utils.COverlimitUtil; import com.njcn.device.pq.enums.LineBaseEnum; +import com.njcn.device.pq.enums.PvDeviceResponseEnum; import com.njcn.device.pq.mapper.*; import com.njcn.device.pq.pojo.bo.BaseLineInfo; import com.njcn.device.pq.pojo.bo.DeviceType; @@ -37,7 +38,9 @@ import com.njcn.device.pq.pojo.bo.excel.NodeExcel; import com.njcn.device.pq.pojo.bo.excel.OracleTerminalExcel; import com.njcn.device.pq.pojo.bo.excel.OverLimitExcel; import com.njcn.device.pq.pojo.bo.excel.TerminalBaseExcel; +import com.njcn.device.pq.pojo.dto.PollutionSubstationDTO; import com.njcn.device.pq.pojo.param.*; +import com.njcn.device.pq.pojo.param.oracle.*; import com.njcn.device.pq.pojo.po.*; import com.njcn.device.pq.pojo.vo.*; import com.njcn.device.pq.service.*; @@ -52,18 +55,24 @@ import com.njcn.system.enums.DicDataEnum; import com.njcn.system.enums.DicDataTypeEnum; import com.njcn.system.pojo.po.Area; import com.njcn.system.pojo.po.DictData; +import com.njcn.web.utils.HttpServletUtil; import com.njcn.web.utils.RequestUtil; +import com.njcn.web.utils.RestTemplateUtil; +import io.swagger.annotations.ApiModelProperty; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; import org.apache.poi.ss.usermodel.Workbook; import org.springframework.beans.BeanUtils; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.http.ResponseEntity; import org.springframework.scheduling.annotation.Async; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.web.multipart.MultipartFile; import javax.servlet.http.HttpServletResponse; +import java.net.HttpURLConnection; import java.time.LocalDate; import java.time.LocalDateTime; import java.util.*; @@ -82,37 +91,33 @@ import java.util.stream.Stream; public class TerminalBaseServiceImpl extends ServiceImpl implements TerminalBaseService { private final DeviceMapper deviceMapper; - private final SuperDataMapper superDataMapper; - private final IPqsTerminalLogsService iPqsTerminalLogsService; - private final LineMapper lineMapper; - private final DevFuctionMapper devFuctionMapper; - private final AreaFeignClient areaFeignClient; - private final DicDataFeignClient dicDataFeignClient; - private final SubstationMapper substationMapper; - private final VoltageMapper voltageMapper; - private final LineDetailMapper lineDetailMapper; - private final OverlimitMapper overlimitMapper; - private final DeptLineMapper deptLineMapper; - private final INodeService nodeService; - private final LineBakService lineBakService; - private final DeviceBakService deviceBakService; - private final FileStorageUtil fileStorageUtil; + + @Value("${oracle.isSync}") + private Boolean isSync; + + @Value("${oracle.syncLedgerLineUrl}") + private String url; + + + @Value("${oracle.syncLedgerUpdateLine}") + private String updateUrl; + /** * 终端新增操作 * @@ -498,6 +503,8 @@ public class TerminalBaseServiceImpl extends ServiceImpl imple @Override @Transactional(rollbackFor = Exception.class) public Boolean updateTerminal(UpdateTerminalParam updateTerminalParam) { + String oldSubName=""; + String gbName=""; LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>(); //项目 if (Objects.nonNull(updateTerminalParam.getProjectUpdateParam())) { @@ -528,6 +535,7 @@ public class TerminalBaseServiceImpl extends ServiceImpl imple //供电公司 if (Objects.nonNull(updateTerminalParam.getGdInformationUpdateParam())) { Line gdRes = this.getById(updateTerminalParam.getGdInformationUpdateParam().getGdIndex()); + gbName=gdRes.getName(); if (Objects.isNull(gdRes)) { throw new BusinessException(DeviceResponseEnum.GD_NO); } @@ -545,6 +553,7 @@ public class TerminalBaseServiceImpl extends ServiceImpl imple if (Objects.isNull(subStationRes)) { throw new BusinessException(DeviceResponseEnum.SUB_NO); } + oldSubName=subStationRes.getName(); Line subStation = new Line(); subStation.setId(updateTerminalParam.getSubStationUpdateParam().getSubIndex()); subStation.setName(updateTerminalParam.getSubStationUpdateParam().getName()); @@ -659,6 +668,8 @@ public class TerminalBaseServiceImpl extends ServiceImpl imple for (SubVoltageParam updateSubVoltageParam : subVoltageBOList) { if (updateSubVoltageParam.getUpdateFlag() == 1) { Voltage voltageTem = voltageMapper.selectById(updateSubVoltageParam.getSubvIndex()); + Line byId = this.getById(updateSubVoltageParam.getSubvIndex()); + updateSubVoltageParam.setOldName(byId.getName()); Line subVoltage = new Line(); subVoltage.setId(updateSubVoltageParam.getSubvIndex()); subVoltage.setName(updateSubVoltageParam.getName()); @@ -783,6 +794,13 @@ public class TerminalBaseServiceImpl extends ServiceImpl imple } } } + if (isSync) { + /*** + * oracle http远程调用接口 + */ + SyncLedgerUpdate syncLedger = oracleSyncLedgerUpdate(updateTerminalParam,oldSubName,gbName); + ResponseEntity userEntity = RestTemplateUtil.post(updateUrl, syncLedger, Map.class); + } return true; } @@ -1501,6 +1519,11 @@ public class TerminalBaseServiceImpl extends ServiceImpl imple return this.baseMapper.getVoltageIdByScale(voltageIds, scale); } + @Override + public List getSubIdByScale(List subIds, String scale) { + return this.baseMapper.getSubIdByScale(subIds, scale); + } + @Override public List getLineIdByLoadType(List lineIds, String loadType) { return this.baseMapper.getLineIdByLoadType(lineIds, loadType); @@ -1696,7 +1719,7 @@ public class TerminalBaseServiceImpl extends ServiceImpl imple throw new BusinessException(DeviceResponseEnum.LINE_NO); } String[] urls = new String[0]; - if(StrUtil.isNotBlank(lineDetailValid.getWiringDiagram())){ + if (StrUtil.isNotBlank(lineDetailValid.getWiringDiagram())) { urls = lineDetailValid.getWiringDiagram().split(StrUtil.COMMA); } @@ -1850,12 +1873,11 @@ public class TerminalBaseServiceImpl extends ServiceImpl imple } - //变电站 todo 可能新建电站 if (Objects.nonNull(syncTerminalParam.getSubStationParam())) { if (StrUtil.isBlank(subIndex) && StrUtil.isNotBlank(gdIndex)) { Line substation = this.lambdaQuery().eq(Line::getName, syncTerminalParam.getSubStationParam().getName()).one(); - if(Objects.isNull(substation)){ + if (Objects.isNull(substation)) { Line subStation = assembleLine(syncTerminalParam.getSubStationParam().getName(), LineBaseEnum.SUB_LEVEL.getCode(), gdIndex, projectIndex + StrUtil.COMMA + provinceIndex + StrUtil.COMMA + gdIndex, syncTerminalParam.getSubStationParam().getSort()); this.baseMapper.insert(subStation); subIndex = subStation.getId(); @@ -1867,7 +1889,7 @@ public class TerminalBaseServiceImpl extends ServiceImpl imple sub.setLng(syncTerminalParam.getSubStationParam().getLng()); sub.setLat(syncTerminalParam.getSubStationParam().getLat()); substationMapper.insert(sub); - }else { + } else { subIndex = substation.getId(); } @@ -1880,7 +1902,7 @@ public class TerminalBaseServiceImpl extends ServiceImpl imple //查询该设备是否已经同步到表如何存在则之前同步监测点时同步过了,不用同步设备了,反之同步 DeviceParam deviceParam = syncTerminalParam.getDeviceParam(); Line deviceLine = this.baseMapper.selectById(syncTerminalParam.getDeviceParam().getDevIndex()); - if(Objects.isNull(deviceLine)){ + if (Objects.isNull(deviceLine)) { Line device = assembleLine(deviceParam.getName(), LineBaseEnum.DEVICE_LEVEL.getCode(), subIndex, projectIndex + StrUtil.COMMA + provinceIndex + StrUtil.COMMA + gdIndex + StrUtil.COMMA + subIndex, deviceParam.getSort()); device.setId(deviceParam.getDevIndex()); this.baseMapper.insert(device); @@ -1934,7 +1956,7 @@ public class TerminalBaseServiceImpl extends ServiceImpl imple //同一变电站下只能有唯一母线名称 Line SubVoltage = this.lambdaQuery().eq(Line::getName, subVoltageParam.getName()).like(Line::getPids, syncTerminalParam.getSubIndex()).one(); - if(Objects.isNull(SubVoltage)){ + if (Objects.isNull(SubVoltage)) { //新建母线 Line subVoltage = assembleLine(subVoltageParam.getName(), LineBaseEnum.SUB_V_LEVEL.getCode(), deviceParam.getDevIndex(), projectIndex + StrUtil.COMMA + provinceIndex + StrUtil.COMMA + gdIndex + StrUtil.COMMA + subIndex + StrUtil.COMMA + deviceParam.getDevIndex(), subVoltageParam.getSort()); this.baseMapper.insert(subVoltage); @@ -1947,8 +1969,8 @@ public class TerminalBaseServiceImpl extends ServiceImpl imple voltage.setScale(scaleRes.getId()); voltage.setModel(subVoltageParam.getModel()); voltageMapper.insert(voltage); - }else { - subvIndex=SubVoltage.getId(); + } else { + subvIndex = SubVoltage.getId(); } //处理监测点 @@ -2002,7 +2024,21 @@ public class TerminalBaseServiceImpl extends ServiceImpl imple deptLine.setId(syncTerminalParam.getDeptId()); deptLine.setLineId(line.getId()); deptLineMapper.insert(deptLine); - + if (isSync) { + /*** + * oracle http远程调用接口 + */ + SyncLedger syncLedger = oracleSyncLedger(syncTerminalParam); + ResponseEntity userEntity = RestTemplateUtil.post(url, syncLedger, Map.class); + if (HttpURLConnection.HTTP_OK == userEntity.getStatusCodeValue()) { + //获取返回体 + Map body = userEntity.getBody(); + Integer oracleLineId = Integer.valueOf(body.get("oracleLineId").toString()); + Integer oracleDevId = Integer.valueOf(body.get("oracleDevId").toString()); + syncTerminalParam.setOracleLineId(oracleLineId); + syncTerminalParam.setOracleDevId(oracleDevId); + } + } return subIndex; } @@ -2010,16 +2046,16 @@ public class TerminalBaseServiceImpl extends ServiceImpl imple @Transactional(rollbackFor = Exception.class) public Boolean terminalSyncRunFly(String lineId) { LineDTO lineDTO = this.baseMapper.selectLineDetail(lineId); - if(ObjectUtil.isNotNull(lineDTO)){ - lineDetailMapper.update(null,new LambdaUpdateWrapper() + if (ObjectUtil.isNotNull(lineDTO)) { + lineDetailMapper.update(null, new LambdaUpdateWrapper() .set(LineDetail::getRunFlag, 0) .eq(LineDetail::getId, lineDTO.getLineId()) ); - deviceMapper.update(null,new LambdaUpdateWrapper() + deviceMapper.update(null, new LambdaUpdateWrapper() .set(Device::getRunFlag, 0) .eq(Device::getId, lineDTO.getDevId()) - ); + ); } return false; } @@ -2028,7 +2064,7 @@ public class TerminalBaseServiceImpl extends ServiceImpl imple @Transactional(rollbackFor = Exception.class) public Boolean terminalSyncDeleteFly(String lineId) { LineDTO lineDTO = this.baseMapper.selectLineDetail(lineId); - if(ObjectUtil.isNotNull(lineDTO)){ + if (ObjectUtil.isNotNull(lineDTO)) { //删除监测点详细信息 lineDetailMapper.updateLineRunFlag(lineDTO.getLineId(), RunFlagEnum.QUIT.getStatus()); //todo 删除监测点信息 @@ -2102,7 +2138,7 @@ public class TerminalBaseServiceImpl extends ServiceImpl imple temp = assembleLine(substationName, LineBaseEnum.SUB_LEVEL.getCode(), pids.get(LineBaseEnum.GD_LEVEL.getCode()), pids); this.baseMapper.insert(temp); //处理电压等级字典表 - DictData substationScale = dicDataFeignClient.getDicDataByNameAndTypeName(DicDataTypeEnum.DEV_VOLTAGE_STAND.getName(),oracleTerminalExcel.getSubStationScale()).getData(); + DictData substationScale = dicDataFeignClient.getDicDataByNameAndTypeName(DicDataTypeEnum.DEV_VOLTAGE_STAND.getName(), oracleTerminalExcel.getSubStationScale()).getData(); if (Objects.isNull(substationScale)) { //在电压等级内新增一条记录 substationScale = dicDataFeignClient.addDicData(DicDataTypeEnum.DEV_VOLTAGE.getName(), oracleTerminalExcel.getSubStationScale()).getData(); @@ -2140,7 +2176,7 @@ public class TerminalBaseServiceImpl extends ServiceImpl imple List devIds = deviceBaks.stream().map(DeviceBak::getId).collect(Collectors.toList()); List devList = new ArrayList<>(); - if(!CollectionUtil.isEmpty(devIds)){ + if (!CollectionUtil.isEmpty(devIds)) { LambdaQueryWrapper devLambda = new LambdaQueryWrapper<>(); devLambda.in(Line::getId, devIds) .orderByAsc(Line::getCreateTime) @@ -2161,7 +2197,7 @@ public class TerminalBaseServiceImpl extends ServiceImpl imple } } //处理终端厂家 - DictData manufacturer = dicDataFeignClient.getDicDataByNameAndTypeName(DicDataTypeEnum.DEV_MANUFACTURER.getName(),oracleTerminalExcel.getManufacturer()).getData(); + DictData manufacturer = dicDataFeignClient.getDicDataByNameAndTypeName(DicDataTypeEnum.DEV_MANUFACTURER.getName(), oracleTerminalExcel.getManufacturer()).getData(); if (Objects.isNull(manufacturer)) { //在终端厂家字典内新增一条记录 manufacturer = dicDataFeignClient.addDicData(DicDataTypeEnum.DEV_MANUFACTURER.getName(), oracleTerminalExcel.getManufacturer()).getData(); @@ -2197,7 +2233,7 @@ public class TerminalBaseServiceImpl extends ServiceImpl imple device.setFrontType(frontTypeDicData.getId()); String devType = oracleDevType.replace("_" + frontType, ""); //处理终端类型 - DictData devTypeDicData = dicDataFeignClient.getDicDataByNameAndTypeName(DicDataTypeEnum.DEV_TYPE.getName(),devType).getData(); + DictData devTypeDicData = dicDataFeignClient.getDicDataByNameAndTypeName(DicDataTypeEnum.DEV_TYPE.getName(), devType).getData(); if (Objects.isNull(devTypeDicData)) { //在终端类型字典内新增一条记录 devTypeDicData = dicDataFeignClient.addDicData(DicDataTypeEnum.DEV_TYPE.getName(), devType).getData(); @@ -2223,23 +2259,23 @@ public class TerminalBaseServiceImpl extends ServiceImpl imple LambdaQueryWrapper deviceBakLambdaQueryWrapper1 = new LambdaQueryWrapper<>(); deviceBakLambdaQueryWrapper1.in(DeviceBak::getId, ids); deviceBakService.remove(deviceBakLambdaQueryWrapper1); - }else if(devList.size()==1){ + } else if (devList.size() == 1) { temp = lineMapper.selectById(devList.get(0).getId()); } } } - }else{ + } else { //先查询终端id是否存在,存在则修改,不存在这添加 //判断是否因为改了终端名称导致没有查到数据 // LambdaQueryWrapper deviceBakLambdaQueryWrapper = new LambdaQueryWrapper<>(); // deviceBakLambdaQueryWrapper.eq(DeviceBak::getDevId, temp.getId()); // DeviceBak byId = deviceBakService.getById(deviceBakLambdaQueryWrapper); // if(Objects.isNull(byId)){ - //插入新旧终端ID中间表 - DeviceBak deviceBak = new DeviceBak(); - deviceBak.setId(temp.getId()); - deviceBak.setDevId(oracleTerminalExcel.getDeviceId()); - deviceBakService.saveOrUpdate(deviceBak); + //插入新旧终端ID中间表 + DeviceBak deviceBak = new DeviceBak(); + deviceBak.setId(temp.getId()); + deviceBak.setDevId(oracleTerminalExcel.getDeviceId()); + deviceBakService.saveOrUpdate(deviceBak); // }else{ // if(!byId.getDevId().equals(oracleTerminalExcel.getDeviceId())){ // oracleTerminalExcelMsg.add(assembleMsg(oracleTerminalExcel, "终端关系,数据存入Oracle和excl不一样:" + oracleTerminalExcel.getLineNum() + "需要排查")); @@ -2258,7 +2294,7 @@ public class TerminalBaseServiceImpl extends ServiceImpl imple } } //处理终端厂家 - DictData manufacturer = dicDataFeignClient.getDicDataByNameAndTypeName(DicDataTypeEnum.DEV_MANUFACTURER.getName(),oracleTerminalExcel.getManufacturer()).getData(); + DictData manufacturer = dicDataFeignClient.getDicDataByNameAndTypeName(DicDataTypeEnum.DEV_MANUFACTURER.getName(), oracleTerminalExcel.getManufacturer()).getData(); if (Objects.isNull(manufacturer)) { //在终端厂家字典内新增一条记录 manufacturer = dicDataFeignClient.addDicData(DicDataTypeEnum.DEV_MANUFACTURER.getName(), oracleTerminalExcel.getManufacturer()).getData(); @@ -2294,7 +2330,7 @@ public class TerminalBaseServiceImpl extends ServiceImpl imple device.setFrontType(frontTypeDicData.getId()); String devType = oracleDevType.replace("_" + frontType, ""); //处理终端类型 - DictData devTypeDicData = dicDataFeignClient.getDicDataByNameAndTypeName(DicDataTypeEnum.DEV_TYPE.getName(),devType).getData(); + DictData devTypeDicData = dicDataFeignClient.getDicDataByNameAndTypeName(DicDataTypeEnum.DEV_TYPE.getName(), devType).getData(); if (Objects.isNull(devTypeDicData)) { //在终端类型字典内新增一条记录 devTypeDicData = dicDataFeignClient.addDicData(DicDataTypeEnum.DEV_TYPE.getName(), devType).getData(); @@ -2332,7 +2368,7 @@ public class TerminalBaseServiceImpl extends ServiceImpl imple voltage.setId(temp.getId()); voltage.setModel(oracleTerminalExcel.getSubvModel()); //处理电压等级字典表 - DictData subvScale = dicDataFeignClient.getDicDataByNameAndTypeName(DicDataTypeEnum.DEV_VOLTAGE_STAND.getName(),oracleTerminalExcel.getSubvScale()).getData(); + DictData subvScale = dicDataFeignClient.getDicDataByNameAndTypeName(DicDataTypeEnum.DEV_VOLTAGE_STAND.getName(), oracleTerminalExcel.getSubvScale()).getData(); if (Objects.isNull(subvScale)) { //在电压等级内新增一条记录 subvScale = dicDataFeignClient.addDicData(DicDataTypeEnum.DEV_VOLTAGE.getName(), oracleTerminalExcel.getSubvScale()).getData(); @@ -2387,14 +2423,14 @@ public class TerminalBaseServiceImpl extends ServiceImpl imple // } lineDetail.setNum(oracleTerminalExcel.getLineNum()); //干扰源类型 - DictData loadTypeDicData = dicDataFeignClient.getDicDataByNameAndTypeName(DicDataTypeEnum.INTERFERENCE_SOURCE_TYPE.getName(),oracleTerminalExcel.getLoadType()).getData(); + DictData loadTypeDicData = dicDataFeignClient.getDicDataByNameAndTypeName(DicDataTypeEnum.INTERFERENCE_SOURCE_TYPE.getName(), oracleTerminalExcel.getLoadType()).getData(); if (Objects.isNull(loadTypeDicData)) { //在电压等级内新增一条记录 loadTypeDicData = dicDataFeignClient.addDicData(DicDataTypeEnum.INTERFERENCE_SOURCE_TYPE.getName(), oracleTerminalExcel.getLoadType()).getData(); } lineDetail.setLoadType(loadTypeDicData.getId()); //行业类型 - DictData businessDicData = dicDataFeignClient.getDicDataByNameAndTypeName(DicDataTypeEnum.BUSINESS_TYPE.getName(),oracleTerminalExcel.getBusinessType()).getData(); + DictData businessDicData = dicDataFeignClient.getDicDataByNameAndTypeName(DicDataTypeEnum.BUSINESS_TYPE.getName(), oracleTerminalExcel.getBusinessType()).getData(); if (Objects.isNull(businessDicData)) { //在电压等级内新增一条记录 businessDicData = dicDataFeignClient.addDicData(DicDataTypeEnum.BUSINESS_TYPE.getName(), oracleTerminalExcel.getBusinessType()).getData(); @@ -2407,7 +2443,7 @@ public class TerminalBaseServiceImpl extends ServiceImpl imple } //终端等级,为空不处理,可以为空 if (StringUtils.isNotBlank(oracleTerminalExcel.getLineGrade())) { - DictData lineGradeDicData = dicDataFeignClient.getDicDataByNameAndTypeName(DicDataTypeEnum.DEV_LEVEL.getName(),oracleTerminalExcel.getLineGrade()).getData(); + DictData lineGradeDicData = dicDataFeignClient.getDicDataByNameAndTypeName(DicDataTypeEnum.DEV_LEVEL.getName(), oracleTerminalExcel.getLineGrade()).getData(); if (Objects.isNull(lineGradeDicData)) { //在电压等级内新增一条记录 lineGradeDicData = dicDataFeignClient.addDicData(DicDataTypeEnum.DEV_LEVEL.getName(), oracleTerminalExcel.getLineGrade()).getData(); @@ -2422,7 +2458,7 @@ public class TerminalBaseServiceImpl extends ServiceImpl imple List lineBaks = lineBakService.list(lineBakLambdaQueryWrapper); List lineIds = lineBaks.stream().map(LineBak::getId).collect(Collectors.toList()); List lineList = new ArrayList<>(); - if(CollectionUtil.isNotEmpty(lineIds)){ + if (CollectionUtil.isNotEmpty(lineIds)) { LambdaQueryWrapper devLambda = new LambdaQueryWrapper<>(); devLambda.in(Line::getId, lineIds) .orderByAsc(Line::getCreateTime) @@ -2458,14 +2494,14 @@ public class TerminalBaseServiceImpl extends ServiceImpl imple // } lineDetail.setNum(oracleTerminalExcel.getLineNum()); //干扰源类型 - DictData loadTypeDicData = dicDataFeignClient.getDicDataByNameAndTypeName(DicDataTypeEnum.INTERFERENCE_SOURCE_TYPE.getName(),oracleTerminalExcel.getLoadType()).getData(); + DictData loadTypeDicData = dicDataFeignClient.getDicDataByNameAndTypeName(DicDataTypeEnum.INTERFERENCE_SOURCE_TYPE.getName(), oracleTerminalExcel.getLoadType()).getData(); if (Objects.isNull(loadTypeDicData)) { //在电压等级内新增一条记录 loadTypeDicData = dicDataFeignClient.addDicData(DicDataTypeEnum.INTERFERENCE_SOURCE_TYPE.getName(), oracleTerminalExcel.getLoadType()).getData(); } lineDetail.setLoadType(loadTypeDicData.getId()); //行业类型 - DictData businessDicData = dicDataFeignClient.getDicDataByNameAndTypeName(DicDataTypeEnum.BUSINESS_TYPE.getName(),oracleTerminalExcel.getBusinessType()).getData(); + DictData businessDicData = dicDataFeignClient.getDicDataByNameAndTypeName(DicDataTypeEnum.BUSINESS_TYPE.getName(), oracleTerminalExcel.getBusinessType()).getData(); if (Objects.isNull(businessDicData)) { //在电压等级内新增一条记录 businessDicData = dicDataFeignClient.addDicData(DicDataTypeEnum.BUSINESS_TYPE.getName(), oracleTerminalExcel.getBusinessType()).getData(); @@ -2478,7 +2514,7 @@ public class TerminalBaseServiceImpl extends ServiceImpl imple } //终端等级,为空不处理,可以为空 if (StringUtils.isNotBlank(oracleTerminalExcel.getLineGrade())) { - DictData lineGradeDicData = dicDataFeignClient.getDicDataByNameAndTypeName(DicDataTypeEnum.DEV_LEVEL.getName(),oracleTerminalExcel.getLineGrade()).getData(); + DictData lineGradeDicData = dicDataFeignClient.getDicDataByNameAndTypeName(DicDataTypeEnum.DEV_LEVEL.getName(), oracleTerminalExcel.getLineGrade()).getData(); if (Objects.isNull(lineGradeDicData)) { //在电压等级内新增一条记录 lineGradeDicData = dicDataFeignClient.addDicData(DicDataTypeEnum.DEV_LEVEL.getName(), oracleTerminalExcel.getLineGrade()).getData(); @@ -3048,4 +3084,323 @@ public class TerminalBaseServiceImpl extends ServiceImpl imple BeanUtils.copyProperties(substation, subStationVO); terminalVO.setSubStationVO(subStationVO); } + + private SyncLedgerUpdate oracleSyncLedgerUpdate(UpdateTerminalParam param,String oldSubName,String gdName) { + SyncLedgerUpdate update=new SyncLedgerUpdate(); + /** + * 先更新变电站信息,然后根据变电站信息查询终端信息 + */ + //变电站信息 + SubStationParam.SubStationUpdateParam sub = param.getSubStationUpdateParam(); + List deviceUpdateParamList = param.getDeviceUpdateParamList(); + PqSubstation substation=new PqSubstation(); + if (ObjectUtil.isNull(sub)) { + //因为查出来的数据电压等级是转换过的所有不需要替换 + Line byId = this.getById(deviceUpdateParamList.get(0).getDevIndex()); + PollutionSubstationDTO substationInfo = lineMapper.getSubstationInfo(byId.getPid()); + sub=new SubStationParam.SubStationUpdateParam(); + sub.setName(substationInfo.getName()); + oldSubName=substationInfo.getName(); + sub.setLng(substationInfo.getLng()); + sub.setLat(substationInfo.getLat()); + substation.setScale(sub.getScale()); + }else{ + substation.setScale(dictName(sub.getScale())); + } + substation.setName(sub.getName()); + substation.setOldName(oldSubName); + substation.setGdName(gdName); + update.setPqSubstation(substation); + PqsMap pqsMap=new PqsMap(); + pqsMap.setLongitude(sub.getLng().doubleValue()); + pqsMap.setLatitude(sub.getLat().doubleValue()); + update.setPqsMap(pqsMap); + + //修改终端信息 + List deviceList=new ArrayList<>(); + List deviceDetailList=new ArrayList<>(); + List lineDeatailList=new ArrayList<>(); + + List devMysqlIds = deviceUpdateParamList.stream().map(DeviceParam::getDevIndex).collect(Collectors.toList()); + List deviceBaks = deviceBakService.listByIds(devMysqlIds); + Map deviceBakMap = deviceBaks.stream().collect(Collectors.toMap(DeviceBak::getId, DeviceBak::getDevId)); + + + for (DeviceParam device : deviceUpdateParamList) { + String devIndex = device.getDevIndex(); + if(deviceBakMap.containsKey(devIndex)){ + Integer devOracleId = deviceBakMap.get(devIndex); + //终端 + PqDevice pqDevice=new PqDevice(); + pqDevice.setDevIndex(devOracleId); + pqDevice.setName(device.getName()); + pqDevice.setStatus(1); + pqDevice.setDevtype(dictName(device.getDevType())); + pqDevice.setLogontime(device.getLoginTime()); + pqDevice.setUpdatetime(device.getLoginTime()); + Node node = nodeService.getNodeById(device.getNodeId()); + if (ObjectUtil.isNotNull(node)) { + pqDevice.setNodeName(node.getName()); + } + pqDevice.setPortid(device.getPort()); + pqDevice.setDevflag(0); + pqDevice.setDevSeries(device.getSeries()); + pqDevice.setDevKey(device.getDevKey()); + pqDevice.setIp(device.getIp()); + pqDevice.setDevmodel(device.getDevModel()); + pqDevice.setCallflag(device.getCallFlag()); + pqDevice.setDatatype(device.getDevDataType()); + + //终端详细信息 + PqDevicedetail pqDevicedetail = new PqDevicedetail(); + pqDevicedetail.setDevIndex(devOracleId); + pqDevicedetail.setManufacturer(dictName(device.getManufacturer())); + pqDevicedetail.setThistimecheck(device.getThisTimeCheck()); + pqDevicedetail.setNexttimecheck(device.getNextTimeCheck()); + pqDevicedetail.setElectroplate(device.getElectroplate()); + pqDevicedetail.setContract(device.getContract()); + pqDevicedetail.setSim(device.getSim()); + pqDevicedetail.setDevCatena(device.getDevSeries()); + pqDevicedetail.setDevLocation(device.getDevLocation()); + pqDevicedetail.setDevNo(device.getDevNo()); + pqDevicedetail.setIsAlarm(device.getIsAlarm()); + deviceDetailList.add(pqDevicedetail); + + //处理母线信息 + List pqSubVoltages=new ArrayList<>(); + for (SubVoltageParam subVoltage : device.getSubVoltageParam()) { + //母线 + PqSubvoltage pqSubvoltage = new PqSubvoltage(); + pqSubvoltage.setName(subVoltage.getName()); + pqSubvoltage.setOldName(subVoltage.getOldName()); + pqSubvoltage.setSubvNum(subVoltage.getNum()); + pqSubvoltage.setScale(dictName(subVoltage.getScale())); + pqSubvoltage.setSubvmodel(subVoltage.getModel()); + pqSubVoltages.add(pqSubvoltage); + //监测点 + List pqLines=new ArrayList<>(); + for (LineParam line : subVoltage.getLineParam()) { + LineBak byId = lineBakService.getById(line.getLineIndex()); + if(ObjectUtil.isNotNull(byId)){ + //监测点 + PqLine pqLine = new PqLine(); + pqLine.setLineIndex(byId.getLineId()); + pqLine.setName(line.getName()); + pqLine.setPt1(line.getPt1().doubleValue()); + pqLine.setPt2(line.getPt2().doubleValue()); + pqLine.setCt1(line.getCt1().doubleValue()); + pqLine.setCt2(line.getCt2().doubleValue()); + pqLine.setDevcmp(line.getDevCapacity().doubleValue()); + pqLine.setDlcmp(line.getShortCapacity().doubleValue()); + pqLine.setJzcmp(line.getStandardCapacity().doubleValue()); + pqLine.setXycmp(line.getDealCapacity().doubleValue()); + pqLine.setScale(dictName(subVoltage.getScale())); + pqLine.setStatus(1); + pqLines.add(pqLine); + + PqLinedetail pqLinedetail = new PqLinedetail(); + pqLinedetail.setLineIndex(byId.getLineId()); + pqLinedetail.setLineName(line.getName()); + pqLinedetail.setPttype(line.getPtType()); + pqLinedetail.setLastTime(device.getLoginTime()); + pqLinedetail.setTinterval(line.getTimeInterval()); + pqLinedetail.setLoadtype(dictName(line.getLoadType())); + pqLinedetail.setBusinesstype(dictName(line.getBusinessType())); + pqLinedetail.setRemark(line.getRemark()); + pqLinedetail.setMonitorId(line.getMonitorId()); + pqLinedetail.setPowerid(line.getPowerFlag()); + pqLinedetail.setObjname(line.getObjName()); + pqLinedetail.setStatflag(line.getStatFlag()); + pqLinedetail.setPowerSubstationName(line.getPowerSubstationName()); + pqLinedetail.setHangLine(line.getHangLine()); + pqLinedetail.setOwner(line.getOwner()); + pqLinedetail.setOwnerDuty(line.getOwnerDuty()); + pqLinedetail.setOwnerTel(line.getOwnerTel()); + pqLinedetail.setSuperiorsSubstation(line.getSuperiorsSubstation()); + pqLinedetail.setClassificationGrade(line.getCalssificationGrade()); + pqLinedetail.setIsGridPoint(1); + lineDeatailList.add(pqLinedetail); + } + } + pqSubvoltage.setPqLine(pqLines); + + } + pqDevice.setPqSubvoltage(pqSubVoltages); + deviceList.add(pqDevice); + } + + } + update.setPqDevice(deviceList); + update.setPqDevicedetail(deviceDetailList); + update.setPqLinedetail(lineDeatailList); + return update; + } + /** + * oracle远程台账同步 + * + * @param param + * @return + */ + private SyncLedger oracleSyncLedger(SyncTerminalParam param) { + SyncLedger ledger = new SyncLedger(); + List data = lineMapper.selectList(new LambdaQueryWrapper() + .eq(Line::getState, DataStateEnum.ENABLE.getCode()) + .in(Line::getId, Arrays.asList(param.getProjectIndex(), + param.getProvinceIndex(), + param.getGdIndex())) + ); + + //项目信息表 + PqProject pqProject = new PqProject(); + List project = data.stream().filter(x -> x.getId().equals(param.getProjectIndex())).collect(Collectors.toList()); + if (CollUtil.isNotEmpty(project)) { + pqProject.setName(project.get(0).getName()); + } else { + throw new BusinessException(PvDeviceResponseEnum.PROJECT_OR_NOT); + } + ledger.setPqProject(pqProject); + + + //省级项目表 + PqProvince pqProvince = new PqProvince(); + List province = data.stream().filter(x -> x.getId().equals(param.getProvinceIndex())).collect(Collectors.toList()); + if (CollUtil.isNotEmpty(province)) { + Area area = areaFeignClient.selectIdArea(province.get(0).getName()).getData(); + pqProvince.setName(area.getName()); + } else { + throw new BusinessException(PvDeviceResponseEnum.PROVINCE_OR_NOT); + } + ledger.setPqProvince(pqProvince); + + //供电公司表 + PqGdinformation pqGdinformation = new PqGdinformation(); + List gd = data.stream().filter(x -> x.getId().equals(param.getGdIndex())).collect(Collectors.toList()); + if (CollUtil.isNotEmpty(gd)) { + pqGdinformation.setName(gd.get(0).getName()); + } else { + throw new BusinessException(PvDeviceResponseEnum.GD_OR_NOT); + } + ledger.setPqGdinformation(pqGdinformation); + + //变电站 + PqSubstation pqSubstation = new PqSubstation(); + SubStationParam subStation = param.getSubStationParam(); + if (ObjectUtil.isNull(subStation)) { + //因为查出来的数据电压等级是转换过的所有不需要替换 + PollutionSubstationDTO sub = lineMapper.getSubstationInfo(param.getSubIndex()); + subStation = new SubStationParam(); + subStation.setName(sub.getName()); + subStation.setScale(sub.getVoltageLevel()); + subStation.setLng(sub.getLng()); + subStation.setLat(sub.getLat()); + } + pqSubstation.setName(subStation.getName()); + pqSubstation.setScale(subStation.getScale()); + ledger.setPqSubstation(pqSubstation); + PqsMap pqsMap = new PqsMap(); + pqsMap.setLongitude(subStation.getLng().doubleValue()); + pqsMap.setLatitude(subStation.getLat().doubleValue()); + pqsMap.setState(1); + ledger.setPqsMap(pqsMap); + + //终端 + PqDevice pqDevice = new PqDevice(); + DeviceParam device = param.getDeviceParam(); + pqDevice.setName(device.getName()); + pqDevice.setStatus(1); + pqDevice.setDevtype(dictName(device.getDevType())); + pqDevice.setLogontime(device.getLoginTime()); + pqDevice.setUpdatetime(device.getLoginTime()); + Node node = nodeService.getNodeById(device.getNodeId()); + if (ObjectUtil.isNotNull(node)) { + pqDevice.setNodeName(node.getName()); + } + pqDevice.setPortid(device.getPort()); + pqDevice.setDevflag(0); + pqDevice.setDevSeries(device.getSeries()); + pqDevice.setDevKey(device.getDevKey()); + pqDevice.setIp(device.getIp()); + pqDevice.setDevmodel(device.getDevModel()); + pqDevice.setCallflag(device.getCallFlag()); + pqDevice.setDatatype(device.getDevDataType()); + ledger.setPqDevice(pqDevice); + + PqDevicedetail pqDevicedetail = new PqDevicedetail(); + pqDevicedetail.setManufacturer(dictName(device.getManufacturer())); + pqDevicedetail.setThistimecheck(device.getThisTimeCheck()); + pqDevicedetail.setNexttimecheck(device.getNextTimeCheck()); + pqDevicedetail.setElectroplate(device.getElectroplate()); + pqDevicedetail.setContract(device.getContract()); + pqDevicedetail.setSim(device.getSim()); + pqDevicedetail.setDevCatena(device.getDevSeries()); + pqDevicedetail.setDevLocation(device.getDevLocation()); + pqDevicedetail.setDevNo(device.getDevNo()); + pqDevicedetail.setIsAlarm(device.getIsAlarm()); +// pqDevicedetail.setOnlineratetj(); +// pqDevicedetail.setDataplan(); +// pqDevicedetail.setNewtraffic(); +// pqDevicedetail.setOntime(); +// pqDevicedetail.setCheckflag(); + ledger.setPqDevicedetail(pqDevicedetail); + + //母线 + PqSubvoltage pqSubvoltage = new PqSubvoltage(); + SubVoltageParam subVoltage = param.getSubVoltageParam(); + pqSubvoltage.setName(subVoltage.getName()); + pqSubvoltage.setSubvNum(subVoltage.getNum()); + pqSubvoltage.setScale(dictName(subVoltage.getScale())); + pqSubvoltage.setSubvmodel(subVoltage.getModel()); + ledger.setPqSubvoltage(pqSubvoltage); + + //监测点 + PqLine pqLine = new PqLine(); + LineParam line = param.getLineParam(); + pqLine.setName(line.getName()); + pqLine.setPt1(line.getPt1().doubleValue()); + pqLine.setPt2(line.getPt2().doubleValue()); + pqLine.setCt1(line.getCt1().doubleValue()); + pqLine.setCt2(line.getCt2().doubleValue()); + pqLine.setDevcmp(line.getDevCapacity().doubleValue()); + pqLine.setDlcmp(line.getShortCapacity().doubleValue()); + pqLine.setJzcmp(line.getStandardCapacity().doubleValue()); + pqLine.setXycmp(line.getDealCapacity().doubleValue()); + pqLine.setScale(dictName(subVoltage.getScale())); + pqLine.setStatus(1); + ledger.setPqLine(pqLine); + PqLinedetail pqLinedetail = new PqLinedetail(); + pqLinedetail.setLineName(line.getName()); + pqLinedetail.setPttype(line.getPtType()); + pqLinedetail.setLastTime(device.getLoginTime()); + pqLinedetail.setTinterval(line.getTimeInterval()); + pqLinedetail.setLoadtype(dictName(line.getLoadType())); + pqLinedetail.setBusinesstype(dictName(line.getBusinessType())); + pqLinedetail.setRemark(line.getRemark()); + pqLinedetail.setMonitorId(line.getMonitorId()); + pqLinedetail.setPowerid(line.getPowerFlag()); + pqLinedetail.setObjname(line.getObjName()); + pqLinedetail.setStatflag(line.getStatFlag()); + pqLinedetail.setPowerSubstationName(line.getPowerSubstationName()); + pqLinedetail.setHangLine(line.getHangLine()); + pqLinedetail.setOwner(line.getOwner()); + pqLinedetail.setOwnerDuty(line.getOwnerDuty()); + pqLinedetail.setOwnerTel(line.getOwnerTel()); + pqLinedetail.setSuperiorsSubstation(line.getSuperiorsSubstation()); + pqLinedetail.setClassificationGrade(line.getCalssificationGrade()); + pqLinedetail.setIsGridPoint(1); +// pqLinedetail.setLineGrade(); +// pqLinedetail.setWiringDiagram(); + ledger.setPqLinedetail(pqLinedetail); + ledger.setLineNum(line.getNum()); + return ledger; + } + + private String dictName(String dicId) { + try { + DictData data = dicDataFeignClient.getDicDataById(dicId).getData(); + return data.getName(); + } catch (Exception e) { + throw new BusinessException("字典转换异常"); + } + + } } diff --git a/pqs-supervision/supervision-api/src/main/java/com/njcn/supervision/enums/SupervisionResponseEnum.java b/pqs-supervision/supervision-api/src/main/java/com/njcn/supervision/enums/SupervisionResponseEnum.java index 13a36a908..e584a1e29 100644 --- a/pqs-supervision/supervision-api/src/main/java/com/njcn/supervision/enums/SupervisionResponseEnum.java +++ b/pqs-supervision/supervision-api/src/main/java/com/njcn/supervision/enums/SupervisionResponseEnum.java @@ -27,9 +27,6 @@ public enum SupervisionResponseEnum { DELETE_TO_BE_SUBMITTED("A00550","流程删除失败,只有待提交信息可删除!"), EXISTENCE_OR_NOT("A00550","信息查询为空,请检查信息是否存在!"), NAME_EXISTS("A00550","名称重复"), - PROJECT_OR_NOT("A00550","项目名称为空,请检查信息是否存在!"), - PROVINCE_OR_NOT("A00550","省级名称为空,请检查信息是否存在!"), - GD_OR_NOT("A00550","供电名称为空,请检查信息是否存在!"), ; private final String code; diff --git a/pqs-supervision/supervision-boot/src/main/java/com/njcn/supervision/service/databank/impl/LibCaseServiceImpl.java b/pqs-supervision/supervision-boot/src/main/java/com/njcn/supervision/service/databank/impl/LibCaseServiceImpl.java index 492647116..1549c9ead 100644 --- a/pqs-supervision/supervision-boot/src/main/java/com/njcn/supervision/service/databank/impl/LibCaseServiceImpl.java +++ b/pqs-supervision/supervision-boot/src/main/java/com/njcn/supervision/service/databank/impl/LibCaseServiceImpl.java @@ -2,6 +2,7 @@ package com.njcn.supervision.service.databank.impl; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.date.DateUtil; +import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; @@ -78,7 +79,9 @@ public class LibCaseServiceImpl extends ServiceImpl impl QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("lib_case.status",1); //添加上时间范围 - queryWrapper.between("lib_case.Create_Time", + queryWrapper.like(StrUtil.isNotBlank(param.getSearchValue()),"lib_case.name",param.getSearchValue()); + queryWrapper.between(StrUtil.isNotBlank(param.getSearchBeginTime())&&StrUtil.isNotBlank(param.getSearchEndTime()), + "lib_case.Create_Time", DateUtil.beginOfDay(DateUtil.parse(param.getSearchBeginTime())), DateUtil.endOfDay(DateUtil.parse(param.getSearchEndTime()))); queryWrapper.orderByDesc("lib_case.Update_Time"); diff --git a/pqs-supervision/supervision-boot/src/main/java/com/njcn/supervision/service/databank/impl/LibTemplateServiceImpl.java b/pqs-supervision/supervision-boot/src/main/java/com/njcn/supervision/service/databank/impl/LibTemplateServiceImpl.java index eb8942309..38be94f9b 100644 --- a/pqs-supervision/supervision-boot/src/main/java/com/njcn/supervision/service/databank/impl/LibTemplateServiceImpl.java +++ b/pqs-supervision/supervision-boot/src/main/java/com/njcn/supervision/service/databank/impl/LibTemplateServiceImpl.java @@ -2,6 +2,7 @@ package com.njcn.supervision.service.databank.impl; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.date.DateUtil; +import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; @@ -74,10 +75,11 @@ public class LibTemplateServiceImpl extends ServiceImpl pageQuery(LibTemplateParam.LibTemplateParamQuery param) { QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.eq("lib_template.status",1); //添加上时间范围 - queryWrapper.between("lib_template.Create_Time", + queryWrapper.like(StrUtil.isNotBlank(param.getSearchValue()),"lib_template.name",param.getSearchValue()); + queryWrapper.between(StrUtil.isNotBlank(param.getSearchBeginTime())&&StrUtil.isNotBlank(param.getSearchEndTime()), + "lib_template.Create_Time", DateUtil.beginOfDay(DateUtil.parse(param.getSearchBeginTime())), DateUtil.endOfDay(DateUtil.parse(param.getSearchEndTime()))); queryWrapper.orderByDesc("lib_template.Update_Time"); diff --git a/pqs-supervision/supervision-boot/src/main/java/com/njcn/supervision/service/device/impl/SupervisionTempLineDebugPOServiceImpl.java b/pqs-supervision/supervision-boot/src/main/java/com/njcn/supervision/service/device/impl/SupervisionTempLineDebugPOServiceImpl.java index 3f623222f..e0ac97354 100644 --- a/pqs-supervision/supervision-boot/src/main/java/com/njcn/supervision/service/device/impl/SupervisionTempLineDebugPOServiceImpl.java +++ b/pqs-supervision/supervision-boot/src/main/java/com/njcn/supervision/service/device/impl/SupervisionTempLineDebugPOServiceImpl.java @@ -21,22 +21,17 @@ import com.njcn.bpm.pojo.dto.BpmProcessInstanceCreateReqDTO; import com.njcn.bpm.pojo.param.instance.BpmProcessInstanceCancelParam; import com.njcn.common.pojo.enums.common.DataStateEnum; import com.njcn.common.pojo.exception.BusinessException; -import com.njcn.device.biz.enums.DeviceResponseEnum; import com.njcn.device.pq.api.DeptLineFeignClient; import com.njcn.device.pq.api.LineFeignClient; -import com.njcn.device.pq.api.NodeClient; import com.njcn.device.pq.api.TerminalBaseClient; -import com.njcn.device.pq.pojo.dto.PollutionSubstationDTO; import com.njcn.device.pq.pojo.param.*; import com.njcn.device.pq.pojo.po.Line; -import com.njcn.device.pq.pojo.po.Node; import com.njcn.supervision.enums.SupervisionKeyEnum; import com.njcn.supervision.enums.SupervisionResponseEnum; import com.njcn.supervision.enums.UserNatureEnum; import com.njcn.supervision.mapper.device.SupervisionTempLineDebugPOMapper; import com.njcn.supervision.mapper.user.UserReportNormalMapper; import com.njcn.supervision.pojo.param.device.SupervisionTempLineDebugParam; -import com.njcn.supervision.pojo.param.oracle.*; import com.njcn.supervision.pojo.po.device.SupervisionTempDeviceReport; import com.njcn.supervision.pojo.po.device.SupervisionTempLineDebugPO; import com.njcn.supervision.pojo.po.device.SupervisionTempLineReport; @@ -52,22 +47,17 @@ import com.njcn.supervision.service.user.UserReportProjectPOService; import com.njcn.supervision.service.user.UserReportSensitivePOService; import com.njcn.supervision.service.user.UserReportSubstationPOService; import com.njcn.supervision.utils.InstanceUtil; -import com.njcn.system.api.AreaFeignClient; import com.njcn.system.api.DicDataFeignClient; import com.njcn.system.api.DictTreeFeignClient; import com.njcn.system.enums.DicDataTypeEnum; -import com.njcn.system.pojo.po.Area; import com.njcn.system.pojo.po.DictData; import com.njcn.system.pojo.po.SysDicTreePO; import com.njcn.user.api.DeptFeignClient; import com.njcn.user.api.UserFeignClient; import com.njcn.web.factory.PageFactory; import com.njcn.web.utils.RequestUtil; -import com.njcn.web.utils.RestTemplateUtil; import lombok.RequiredArgsConstructor; import org.springframework.beans.BeanUtils; -import org.springframework.beans.factory.annotation.Value; -import org.springframework.http.ResponseEntity; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -101,14 +91,6 @@ public class SupervisionTempLineDebugPOServiceImpl extends ServiceImpl userEntity = RestTemplateUtil.post(url, syncLedger, String.class); - } String substation = terminalBaseClient.terminalSync(syncTerminalParam).getData(); this.updateProcessStatus(id, 5); @@ -464,165 +439,6 @@ public class SupervisionTempLineDebugPOServiceImpl extends ServiceImpl().set(SupervisionTempLineDebugPO::getState, DataStateEnum.DELETED.getCode()) .in(SupervisionTempLineDebugPO::getId, supervisionId)); - } - private SyncLedger oracleSyncLedger(SyncTerminalParam param) { - SyncLedger ledger = new SyncLedger(); - List data = lineFeignClient.getBaseLineList(Arrays.asList(param.getProjectIndex(), - param.getProvinceIndex(), - param.getGdIndex() - )).getData(); - - //项目信息表 - PqProject pqProject=new PqProject(); - List project = data.stream().filter(x -> x.getId().equals(param.getProjectIndex())).collect(Collectors.toList()); - if(CollUtil.isNotEmpty(project)){ - pqProject.setName(project.get(0).getName()); - }else{ - throw new BusinessException(SupervisionResponseEnum.PROJECT_OR_NOT); - } - ledger.setPqProject(pqProject); - - - //省级项目表 - PqProvince pqProvince=new PqProvince(); - List province = data.stream().filter(x -> x.getId().equals(param.getProvinceIndex())).collect(Collectors.toList()); - if(CollUtil.isNotEmpty(province)){ - Area area = areaFeignClient.selectIdArea(province.get(0).getName()).getData(); - pqProvince.setName(area.getName()); - }else { - throw new BusinessException(SupervisionResponseEnum.PROVINCE_OR_NOT); - } - ledger.setPqProvince(pqProvince); - - //供电公司表 - PqGdinformation pqGdinformation=new PqGdinformation(); - List gd = data.stream().filter(x -> x.getId().equals(param.getGdIndex())).collect(Collectors.toList()); - if(CollUtil.isNotEmpty(gd)){ - pqGdinformation.setName(gd.get(0).getName()); - }else{ - throw new BusinessException(SupervisionResponseEnum.GD_OR_NOT); - } - ledger.setPqGdinformation(pqGdinformation); - - //变电站 - PqSubstation pqSubstation=new PqSubstation(); - SubStationParam subStation = param.getSubStationParam(); - if(ObjectUtil.isNull(subStation)){ - PollutionSubstationDTO sub = lineFeignClient.getSubstationInfo(param.getSubIndex()).getData(); - subStation =new SubStationParam(); - subStation.setName(sub.getName()); - subStation.setScale(sub.getVoltageLevel()); - subStation.setLng(sub.getLng()); - subStation.setLat(sub.getLat()); - } - pqSubstation.setName(subStation.getName()); - pqSubstation.setScale(subStation.getScale()); - ledger.setPqSubstation(pqSubstation); - PqsMap pqsMap=new PqsMap(); - pqsMap.setLongitude(subStation.getLng().doubleValue()); - pqsMap.setLatitude(subStation.getLat().doubleValue()); - pqsMap.setState(1); - ledger.setPqsMap(pqsMap); - - //终端 - PqDevice pqDevice=new PqDevice(); - DeviceParam device = param.getDeviceParam(); - pqDevice.setName(device.getName()); - pqDevice.setStatus(1); - pqDevice.setDevtype(dictName(device.getDevType())); - pqDevice.setLogontime(device.getLoginTime()); - pqDevice.setUpdatetime(device.getLoginTime()); - Node node = nodeClient.getNodeById(device.getNodeId()).getData(); - if(ObjectUtil.isNotNull(node)){ - pqDevice.setNodeName(node.getName()); - } - pqDevice.setPortid(device.getPort()); - pqDevice.setDevflag(0); - pqDevice.setDevSeries(device.getSeries()); - pqDevice.setDevKey(device.getDevKey()); - pqDevice.setIp(device.getIp()); - pqDevice.setDevmodel(device.getDevModel()); - pqDevice.setCallflag(device.getCallFlag()); - pqDevice.setDatatype(device.getDevDataType()); - ledger.setPqDevice(pqDevice); - - PqDevicedetail pqDevicedetail=new PqDevicedetail(); - pqDevicedetail.setManufacturer(dictName(device.getManufacturer())); - pqDevicedetail.setThistimecheck(device.getThisTimeCheck()); - pqDevicedetail.setNexttimecheck(device.getNextTimeCheck()); - pqDevicedetail.setElectroplate(device.getElectroplate()); - pqDevicedetail.setContract(device.getContract()); - pqDevicedetail.setSim(device.getSim()); - pqDevicedetail.setDevCatena(device.getDevSeries()); - pqDevicedetail.setDevLocation(device.getDevLocation()); - pqDevicedetail.setDevNo(device.getDevNo()); - pqDevicedetail.setIsAlarm(device.getIsAlarm()); -// pqDevicedetail.setOnlineratetj(); -// pqDevicedetail.setDataplan(); -// pqDevicedetail.setNewtraffic(); -// pqDevicedetail.setOntime(); -// pqDevicedetail.setCheckflag(); - ledger.setPqDevicedetail(pqDevicedetail); - - //母线 - PqSubvoltage pqSubvoltage=new PqSubvoltage(); - SubVoltageParam subVoltage = param.getSubVoltageParam(); - pqSubvoltage.setName(subVoltage.getName()); - pqSubvoltage.setSubvNum(subVoltage.getNum()); - pqSubvoltage.setScale(dictName(subVoltage.getScale())); - pqSubvoltage.setSubvmodel(subVoltage.getModel()); - ledger.setPqSubvoltage(pqSubvoltage); - - //监测点 - PqLine pqLine=new PqLine(); - LineParam line = param.getLineParam(); - pqLine.setName(line.getName()); - pqLine.setPt1(line.getPt1().doubleValue()); - pqLine.setPt2(line.getPt2().doubleValue()); - pqLine.setCt1(line.getCt1().doubleValue()); - pqLine.setCt2(line.getCt2().doubleValue()); - pqLine.setDevcmp(line.getDevCapacity().doubleValue()); - pqLine.setDlcmp(line.getShortCapacity().doubleValue()); - pqLine.setJzcmp(line.getStandardCapacity().doubleValue()); - pqLine.setXycmp(line.getDealCapacity().doubleValue()); - pqLine.setScale(dictName(subVoltage.getScale())); - pqLine.setStatus(1); - ledger.setPqLine(pqLine); - PqLinedetail pqLinedetail=new PqLinedetail(); - pqLinedetail.setLineName(line.getName()); - pqLinedetail.setPttype(line.getPtType()); - pqLinedetail.setLastTime(device.getLoginTime()); - pqLinedetail.setTinterval(line.getTimeInterval()); - pqLinedetail.setLoadtype(dictName(line.getLoadType())); - pqLinedetail.setBusinesstype(dictName(line.getBusinessType())); - pqLinedetail.setRemark(line.getRemark()); - pqLinedetail.setMonitorId(line.getMonitorId()); - pqLinedetail.setPowerid(line.getPowerFlag()); - pqLinedetail.setObjname(line.getObjName()); - pqLinedetail.setStatflag(line.getStatFlag()); - pqLinedetail.setPowerSubstationName(line.getPowerSubstationName()); - pqLinedetail.setHangLine(line.getHangLine()); - pqLinedetail.setOwner(line.getOwner()); - pqLinedetail.setOwnerDuty(line.getOwnerDuty()); - pqLinedetail.setOwnerTel(line.getOwnerTel()); - pqLinedetail.setSuperiorsSubstation(line.getSuperiorsSubstation()); - pqLinedetail.setClassificationGrade(line.getCalssificationGrade()); - pqLinedetail.setIsGridPoint(1); -// pqLinedetail.setLineGrade(); -// pqLinedetail.setWiringDiagram(); - ledger.setPqLinedetail(pqLinedetail); - ledger.setLineNum(line.getNum()); - return ledger; - } - - private String dictName(String dicId) { - try { - DictData data = dicDataFeignClient.getDicDataById(dicId).getData(); - return data.getName(); - } catch (Exception e) { - throw new BusinessException("字典转换异常"); - } - } private void assembleSyncTerminalParam(DeviceParam deviceParam, SupervisionTempDeviceReport tempDevice, SubVoltageParam subVoltageParam, LineParam lineParam, SupervisionTempLineReport tempLine) { //包装device