diff --git a/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/vo/DevDetail.java b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/vo/DevDetail.java index 7137891f1..c5ead4a2d 100644 --- a/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/vo/DevDetail.java +++ b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/vo/DevDetail.java @@ -53,4 +53,12 @@ public class DevDetail { @JsonFormat(pattern = "yyyy-MM-dd") private LocalDate nextTimeCheck; + @Data + public static class DevPowerFlag{ + @ApiModelProperty("终端id") + private String devIndex; + + @ApiModelProperty(name = "powerFlag",value = "用户性质") + private String powerFlag; + } } diff --git a/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/vo/LineDetailDataVO.java b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/vo/LineDetailDataVO.java index 9b96d517d..ec96abec6 100644 --- a/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/vo/LineDetailDataVO.java +++ b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/vo/LineDetailDataVO.java @@ -46,7 +46,7 @@ public class LineDetailDataVO { @ApiModelProperty(name = "devName",value = "终端名称") private String devName; - @ApiModelProperty(name = "装置型号") + @ApiModelProperty("装置型号") private String devType; @ApiModelProperty(name = "ip",value = "网络参数") diff --git a/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/vo/RunManageVO.java b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/vo/RunManageVO.java index e2f7e8414..ab9d2b23c 100644 --- a/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/vo/RunManageVO.java +++ b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/pojo/vo/RunManageVO.java @@ -44,6 +44,9 @@ public class RunManageVO { @ApiModelProperty(name = "ip",value = "网络参数") private String ip; + @ApiModelProperty(name = "powerFlag",value = "用户性质") + private String powerFlag; + @ApiModelProperty(name = "runFlag",value = "终端运行状态") private String runFlag; 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 30875e8b0..2644f25e9 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 @@ -36,6 +36,9 @@ public class RunTimeVO implements Serializable { @ApiModelProperty(name = "devName",value = "终端名称") private String devName; + @ApiModelProperty(name = "powerFlag",value = "用户性质") + private String powerFlag; + @ApiModelProperty(name = "ip",value = "网络参数") private String ip; 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 0281c2674..e16533c93 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 @@ -20,10 +20,7 @@ import com.njcn.device.pq.pojo.param.DeviceInfoParam; import com.njcn.device.pq.pojo.param.RunManageParam; import com.njcn.device.pq.pojo.po.Line; import com.njcn.device.pq.pojo.po.LineDetail; -import com.njcn.device.pq.pojo.vo.LineInfluxDbOnlineVO; -import com.njcn.device.pq.pojo.vo.RunManageVO; -import com.njcn.device.pq.pojo.vo.RunTimeVO; -import com.njcn.device.pq.pojo.vo.TerminalLedgerVO; +import com.njcn.device.pq.pojo.vo.*; import com.njcn.device.pq.service.RunManageService; import com.njcn.device.userledger.service.UserLedgerService; import com.njcn.supervision.pojo.vo.user.NewUserReportVO; @@ -31,6 +28,7 @@ import com.njcn.system.api.DicDataFeignClient; import com.njcn.system.enums.DicDataTypeEnum; import com.njcn.system.pojo.enums.StatisticsEnum; import com.njcn.system.pojo.po.DictData; +import com.njcn.user.pojo.dto.DeptDTO; import com.njcn.web.factory.PageFactory; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; @@ -39,10 +37,7 @@ import org.springframework.util.CollectionUtils; import java.text.DateFormat; import java.text.SimpleDateFormat; -import java.util.ArrayList; -import java.util.List; -import java.util.Map; -import java.util.Objects; +import java.util.*; import java.util.function.Function; import java.util.stream.Collectors; import java.util.stream.Stream; @@ -157,7 +152,28 @@ public class RunManageServiceImpl implements RunManageService { if(CollUtil.isEmpty(devIndexes)){ return new Page<>(); } - return deviceMapper.getDeviceLedger(new Page<>(PageFactory.getPageNum(runManageParam), PageFactory.getPageSize(runManageParam)), devIndexes, new ArrayList<>(), new ArrayList<>(), new ArrayList<>(), runManageParam.getSearchValue()); + Page deviceLedger = deviceMapper.getDeviceLedger(new Page<>(PageFactory.getPageNum(runManageParam), PageFactory.getPageSize(runManageParam)), devIndexes, new ArrayList<>(), new ArrayList<>(), new ArrayList<>(), runManageParam.getSearchValue()); + List devID = deviceLedger.getRecords().stream().map(RunTimeVO::getId).collect(Collectors.toList()); + if(CollUtil.isNotEmpty(devID)){ + //添加装置用户性质 + List devPowerFlags = deviceMapper.selectDevPowerFlagByIds(devID); + Map> devPowerFlag = + devPowerFlags.stream().collect(Collectors.groupingBy(DevDetail.DevPowerFlag::getDevIndex)); + deviceLedger.getRecords().stream().forEach( + vo -> { + if (devPowerFlag.containsKey(vo.getId())) { + String powerFlagStr = Optional.ofNullable(devPowerFlag.get(vo.getId())) + .orElse(Collections.emptyList()) + .stream() + .map(DevDetail.DevPowerFlag::getPowerFlag) + .distinct() + .collect(Collectors.joining("/")); + vo.setPowerFlag(powerFlagStr); + } + } + ); + } + return deviceLedger; } /** 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 4265ddb83..8aacb35d4 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 @@ -102,4 +102,6 @@ public interface DeviceMapper extends BaseMapper { void updateDeviceRunFlag(@Param("id")String deviceId, @Param("runFlag")Integer status); List getPollutionDeviceInfo(@Param("id")List devId); + + List selectDevPowerFlagByIds(@Param("ids") List ids); } 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 48ce0948b..898843de6 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 @@ -28,6 +28,10 @@ manufacturerId.name as manufacturer, dev.name as devName, device.IP as ip, + CASE linedetail.Power_Flag + WHEN 0 THEN '电网侧' + WHEN 1 THEN '非电网侧' + END AS powerFlag, case linedetail.Run_Flag when 0 then '投运' when 1 then '检修' @@ -149,6 +153,10 @@ manufacturerId.name as manufacturer, dev.name as devName, device.IP as ip, + CASE linedetail.Power_Flag + WHEN 0 THEN '电网侧' + WHEN 1 THEN '非电网侧' + END AS powerFlag, case linedetail.Run_Flag when 0 then '投运' when 1 then '检修' @@ -530,5 +538,31 @@ AND substation.id = pqsub.id AND subv.id = pv.id +