diff --git a/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/vo/RunTimeVO.java b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/vo/RunTimeVO.java index 99c583483..30875e8b0 100644 --- a/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/vo/RunTimeVO.java +++ b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/vo/RunTimeVO.java @@ -59,4 +59,7 @@ public class RunTimeVO implements Serializable { @ApiModelProperty(name = "onlineEvaluate",value = "在线率评价") private Double onlineEvaluate; + + @ApiModelProperty(name = "objName",value = "用户对象名称") + private String objName; } diff --git a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/controller/RunManageController.java b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/controller/RunManageController.java index 8582b0def..ba2911ca3 100644 --- a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/controller/RunManageController.java +++ b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/controller/RunManageController.java @@ -42,6 +42,17 @@ public class RunManageController extends BaseController { private final RunManageService runManageService; + @OperateInfo(info = LogEnum.BUSINESS_COMMON) + @PostMapping("/getLineLedgerComm") + @ApiOperation("监测点台账信息") + @ApiImplicitParam(name = "runManageParam", value = "监测点台账参数", required = true) + public HttpResult> getLineLedgerComm(@RequestBody @Validated RunManageParam runManageParam) { + String methodDescribe = getMethodDescribe("getLineLedgerComm"); + Page res = runManageService.getLineLedgerComm(runManageParam); + return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, res, methodDescribe); + } + + @OperateInfo(info = LogEnum.BUSINESS_COMMON) @PostMapping("/getLineLedger") @ApiOperation("监测点台账信息") @@ -54,18 +65,18 @@ public class RunManageController extends BaseController { @OperateInfo(info = LogEnum.BUSINESS_COMMON) @PostMapping("/getRuntimeData") - @ApiOperation("终端台账信息") + @ApiOperation("终端台账信息(通用)") @ApiImplicitParam(name = "runManageParam", value = "终端台账参数", required = true) - public HttpResult> getRuntimeData(@RequestBody @Validated RunManageParam runManageParam) { + public HttpResult> getRuntimeData(@RequestBody @Validated RunManageParam runManageParam) { String methodDescribe = getMethodDescribe("getRuntimeData"); - List result = runManageService.getRuntimeDetail(runManageParam); + Page result = runManageService.getRuntimeDetail(runManageParam); return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, result, methodDescribe); } @OperateInfo(info = LogEnum.BUSINESS_COMMON) @PostMapping("/getDeviceLedger") - @ApiOperation("获取基本的终端台账信息") + @ApiOperation("获取基本的终端台账信息(冀北)") @ApiImplicitParam(name = "runManageParam", value = "终端台账参数", required = true) public HttpResult> getDeviceLedger(@RequestBody @Validated RunManageParam runManageParam) { String methodDescribe = getMethodDescribe("getRuntimeData"); diff --git a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/RunManageService.java b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/RunManageService.java index 55fd1c641..82a52e6dd 100644 --- a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/RunManageService.java +++ b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/RunManageService.java @@ -15,6 +15,9 @@ import java.util.List; * @date 2022/3/30 */ public interface RunManageService { + + Page getLineLedgerComm(RunManageParam runManageParam); + /** * 获取监测点台账信息 * @param runManageParam 参数 @@ -27,7 +30,7 @@ public interface RunManageService { * @param runManageParam 参数 * @return 结果 */ - List getRuntimeDetail(RunManageParam runManageParam); + Page getRuntimeDetail(RunManageParam runManageParam); Page getDeviceLedger(RunManageParam runManageParam); diff --git a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/RunManageServiceImpl.java b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/RunManageServiceImpl.java index 2a4fd5150..f5d1b421e 100644 --- a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/RunManageServiceImpl.java +++ b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/RunManageServiceImpl.java @@ -72,6 +72,33 @@ public class RunManageServiceImpl implements RunManageService { private final UserLedgerService userLedgerService; + + /** + * 通用监测点台账,区别冀北版本的 + * @author cdf + * @date 2026/3/22 + */ + @Override + public Page getLineLedgerComm(RunManageParam runManageParam) { + Page pageResult = new Page<>(PageFactory.getPageNum(runManageParam),PageFactory.getPageSize(runManageParam)); + List lineIndexes ; + if(CollUtil.isNotEmpty(runManageParam.getIds())){ + lineIndexes =runManageParam.getIds(); + }else{ + DeviceInfoParam deviceInfoParam = new DeviceInfoParam(); + BeanUtil.copyProperties(runManageParam, deviceInfoParam); + deviceInfoParam.setServerName("pqs-common"); + List generalDeviceDTOList = generalDeviceService.getDeviceInfo(deviceInfoParam, null, Stream.of(1).collect(Collectors.toList())); + lineIndexes = generalDeviceDTOList.stream().flatMap(list -> list.getLineIndexes().stream()).collect(Collectors.toList()); + } + if(CollectionUtil.isEmpty(lineIndexes)){ + return pageResult; + } + pageResult = deviceMapper.getRunManageCommList(new Page<>(PageFactory.getPageNum(runManageParam),PageFactory.getPageSize(runManageParam)),lineIndexes, runManageParam.getComFlag(),Objects.isNull(runManageParam.getRunFlag())?new ArrayList<>():runManageParam.getRunFlag(), Objects.isNull(runManageParam.getSearchValue())?null:runManageParam.getSearchValue()); + return pageResult; + } + + @Override public List getLineLedger(RunManageParam runManageParam) { List resultList = new ArrayList<>(); @@ -103,34 +130,18 @@ public class RunManageServiceImpl implements RunManageService { } @Override - public List getRuntimeDetail(RunManageParam runManageParam) { - List runManageDevList = new ArrayList<>(); + public Page getRuntimeDetail(RunManageParam runManageParam) { DeviceInfoParam deviceInfoParam = new DeviceInfoParam(); BeanUtil.copyProperties(runManageParam, deviceInfoParam); + deviceInfoParam.setServerName("pqs-common"); List generalDeviceDTOList = generalDeviceService.getDeviceInfo(deviceInfoParam, runManageParam.getRunFlag(), Stream.of(1).collect(Collectors.toList())); - if (!CollectionUtils.isEmpty(generalDeviceDTOList)) { List devIndexes = generalDeviceDTOList.stream().flatMap(list -> list.getDeviceIndexes().stream()).collect(Collectors.toList()); - DateFormat bf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); - - if (StrUtil.isNotBlank(runManageParam.getSearchBeginTime()) && StrUtil.isNotBlank(runManageParam.getSearchEndTime())) { - runManageParam.setSearchBeginTime(bf.format(DateUtil.beginOfDay(DateUtil.parse(runManageParam.getSearchBeginTime())))); - runManageParam.setSearchEndTime(bf.format(DateUtil.beginOfDay(DateUtil.parse(runManageParam.getSearchEndTime())))); - } - List manuList = runManageParam.getManufacturer().stream().map(SimpleDTO::getId).collect(Collectors.toList()); - if (CollectionUtil.isNotEmpty(devIndexes)) { - runManageDevList = deviceMapper.getRunManageDevList(devIndexes, runManageParam.getComFlag(), runManageParam.getRunFlag(), manuList, runManageParam.getSearchValue()); - List lineInfluxDbOnlineVOList = deviceMapper.getOnlineEvaluate(devIndexes, runManageParam.getSearchBeginTime(), runManageParam.getSearchEndTime()); - Map map = lineInfluxDbOnlineVOList.stream().collect(Collectors.toMap(LineInfluxDbOnlineVO::getDevIndex, Function.identity())); - runManageDevList = runManageDevList.stream().peek(item -> item.setOnlineEvaluate(!map.containsKey(item.getId()) ? 3.14159 : NumberUtil.round(map.get(item.getId()).getOnlineRate(), 4).doubleValue())).collect(Collectors.toList()); - String evaluate = runManageParam.getEvaluate(); - if (StrUtil.isNotBlank(evaluate)) { - runManageDevList = runManageDevList.stream().filter(x -> filterOnlineEvaluate(evaluate, x.getOnlineEvaluate())).collect(Collectors.toList()); - } + if (CollectionUtil.isEmpty(devIndexes)) { + throw new BusinessException("当前部门没有装置台账"); } - } - return runManageDevList; + return deviceMapper.getRunManageDevList(new Page<>(PageFactory.getPageNum(runManageParam), PageFactory.getPageSize(runManageParam)),devIndexes, runManageParam.getComFlag(), runManageParam.getRunFlag(), manuList, runManageParam.getSearchValue()); } @Override diff --git a/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/device/mapper/DeviceMapper.java b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/device/mapper/DeviceMapper.java index a9a69bf22..4265ddb83 100644 --- a/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/device/mapper/DeviceMapper.java +++ b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/device/mapper/DeviceMapper.java @@ -36,6 +36,19 @@ public interface DeviceMapper extends BaseMapper { List getDeviceBySubId(@Param("subId") String subId,@Param("ip") String ip,@Param("port") Integer port,@Param("devId")String devId); + /** + * 获取监测点台账信息 + * @param list 监测点集合 + * @param comFlag 状态 + * @param searchValue + * @return 结果 + */ + Page getRunManageCommList(@Param("page")Page page, + @Param("list") List list, + @Param("comFlag") List comFlag, + @Param("runFlag") List runFlag, + @Param("searchValue") String searchValue); + /** * 获取监测点台账信息 * @param list 监测点集合 @@ -57,7 +70,8 @@ public interface DeviceMapper extends BaseMapper { * @param searchValue * @return 结果 */ - List getRunManageDevList(@Param("list") List list, + Page getRunManageDevList(@Param("page")Page page, + @Param("list") List list, @Param("comFlag") List comFlag, @Param("runFlag") List runFlag, @Param("manufacturers") List manufacturer, diff --git a/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/device/mapper/mapping/DeviceMapper.xml b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/device/mapper/mapping/DeviceMapper.xml index e47dad1f1..48ce0948b 100644 --- a/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/device/mapper/mapping/DeviceMapper.xml +++ b/pqs-device/pq-device/pq-device-com/src/main/java/com/njcn/device/device/mapper/mapping/DeviceMapper.xml @@ -16,6 +16,128 @@ + + + SELECT + DISTINCT dev.Id AS id, area.NAME AS areaName, gd.NAME AS gdName, sub.NAME AS bdName, + obj.project_name objName, manufacturerId.NAME AS manufacturer, dev.NAME AS devName, device.IP AS ip, @@ -152,7 +276,7 @@ WHEN 0 THEN '投运' WHEN 1 THEN - '热备用' + '检修' WHEN 2 THEN '停运' END AS runFlag, @@ -165,8 +289,12 @@ END AS comFlag, device.Update_Time AS updateTime FROM - pq_line dev - INNER JOIN pq_line sub ON sub.Id = dev.Pid + pq_line line + left join pq_line_detail detail on line.id = detail.id + left join supervision_user_report obj on obj.id = detail.obj_id + inner join pq_line busBar on line.pid = busBar.id + inner join pq_line dev on busBar.pid = dev.id + INNER JOIN pq_line sub ON sub.id = dev.Pid INNER JOIN pq_line gd ON gd.Id = sub.Pid INNER JOIN pq_line areaId ON areaId.Id = gd.Pid INNER JOIN sys_area area ON area.Id = areaId.NAME @@ -197,10 +325,13 @@ - AND sub.NAME LIKE #{searchValueLike} + AND + (sub.NAME LIKE #{searchValueLike} OR dev.NAME LIKE #{searchValueLike} OR devT.Name LIKE #{searchValueLike} OR device.IP LIKE #{searchValueLike} + OR obj.project_name LIKE #{searchValueLike} + ) ORDER BY gdName,