From 76afa647bb68939a5cdf79a7852f2362e8c1b3d0 Mon Sep 17 00:00:00 2001 From: wr <1754607820@qq.com> Date: Thu, 28 Sep 2023 14:33:24 +0800 Subject: [PATCH] =?UTF-8?q?1.=E6=8A=80=E6=9C=AF=E7=9B=91=E7=9D=A3=E6=9C=88?= =?UTF-8?q?=E6=8A=A5=EF=BC=8C=E4=BE=9B=E7=94=B5=E6=AC=A1=E6=95=B0=E9=87=8D?= =?UTF-8?q?=E6=96=B0=E7=BB=9F=E8=AE=A1=202.=E7=BB=88=E7=AB=AF=E9=80=9A?= =?UTF-8?q?=E4=BF=A1=E7=AE=A1=E7=90=86=5F=E6=97=A5=E8=A1=A8=E5=92=8C?= =?UTF-8?q?=E7=BB=88=E7=AB=AF=E6=95=B0=E6=8D=AE=E8=AF=84=E4=BB=B7=5F?= =?UTF-8?q?=E6=97=A5=E8=A1=A8=EF=BC=8Cpq=E5=92=8Cpms=E5=85=BC=E5=AE=B9?= =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../handler/RMpDevEvaluateDetailJob.java | 12 +++-- .../executor/handler/RStatDevSignalJob.java | 33 ++++++++++++ .../line/RMpDevEvaluateDetailFeignClient.java | 3 +- ...luateDetailFeignClientFallbackFactory.java | 3 +- .../RStatDevSignalFeignClient.java | 22 ++++++++ .../RStatDevSignalClientFallbackFactory.java | 34 ++++++++++++ .../harmonic/pojo/param/DeviceParam.java | 21 +++++++- .../harmonic/pojo/po/RStatDevSignalDPO.java | 4 +- .../RMpDevEvaluateDetailController.java | 52 ++++++++++--------- .../RStatDevSignalController.java | 48 +++++++++-------- .../RMpDevEvaluateDetailPOServiceImpl.java | 10 +--- .../device/RStatDevSignalDPOServiceImpl.java | 15 +++--- .../area/RMpDevEvaluateDetailPOService.java | 1 - .../device/RStatDevSignalDPOService.java | 8 +-- .../mapper/mapping/SupvReportMMapper.xml | 6 ++- .../service/impl/SupvReportMServiceImpl.java | 4 +- 16 files changed, 196 insertions(+), 80 deletions(-) create mode 100644 pqs-job/job-executor/src/main/java/com/njcn/executor/handler/RStatDevSignalJob.java create mode 100644 pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/newalgorithm/RStatDevSignalFeignClient.java create mode 100644 pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/newalgorithm/fallback/RStatDevSignalClientFallbackFactory.java diff --git a/pqs-job/job-executor/src/main/java/com/njcn/executor/handler/RMpDevEvaluateDetailJob.java b/pqs-job/job-executor/src/main/java/com/njcn/executor/handler/RMpDevEvaluateDetailJob.java index 884fbb5e3..9ba585b20 100644 --- a/pqs-job/job-executor/src/main/java/com/njcn/executor/handler/RMpDevEvaluateDetailJob.java +++ b/pqs-job/job-executor/src/main/java/com/njcn/executor/handler/RMpDevEvaluateDetailJob.java @@ -4,12 +4,15 @@ import com.njcn.common.pojo.constant.BizParamConstant; import com.njcn.executor.utils.CommonExecutorUtils; import com.njcn.prepare.harmonic.api.line.RMpDevEvaluateDetailFeignClient; import com.njcn.prepare.harmonic.api.line.RStatOrgFeignClient; +import com.njcn.prepare.harmonic.pojo.param.DeviceParam; import com.njcn.prepare.harmonic.pojo.param.OrgParam; import com.xxl.job.core.handler.annotation.XxlJob; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Component; +import java.time.LocalDateTime; + /** * pqs * 终端数据评价_日统计 @@ -25,9 +28,10 @@ public class RMpDevEvaluateDetailJob { @XxlJob("rMpDevEvaluateDetailDHandler") public void rMpDevEvaluateDetailDHandler(){ - OrgParam orgParam = new OrgParam(); - orgParam.setType(Integer.valueOf(BizParamConstant.STAT_BIZ_DAY)); - orgParam.setDataDate(CommonExecutorUtils.prepareTimeDeal(BizParamConstant.STAT_BIZ_DAY)); - rMpDevEvaluateDetailFeignClient.handler(orgParam); + log.info(LocalDateTime.now()+"终端数据评价_日统计------------------------"); + DeviceParam deviceParam = new DeviceParam(); + deviceParam.setDataDate(CommonExecutorUtils.prepareTimeDeal(BizParamConstant.STAT_BIZ_DAY)); + CommonExecutorUtils.commDefineDateObj(BizParamConstant.STAT_BIZ_DAY,deviceParam); + rMpDevEvaluateDetailFeignClient.handler(deviceParam); } } diff --git a/pqs-job/job-executor/src/main/java/com/njcn/executor/handler/RStatDevSignalJob.java b/pqs-job/job-executor/src/main/java/com/njcn/executor/handler/RStatDevSignalJob.java new file mode 100644 index 000000000..c698c8083 --- /dev/null +++ b/pqs-job/job-executor/src/main/java/com/njcn/executor/handler/RStatDevSignalJob.java @@ -0,0 +1,33 @@ +package com.njcn.executor.handler; + +import com.njcn.common.pojo.constant.BizParamConstant; +import com.njcn.executor.utils.CommonExecutorUtils; +import com.njcn.prepare.harmonic.api.newalgorithm.RStatDevSignalFeignClient; +import com.njcn.prepare.harmonic.pojo.param.DeviceParam; +import com.xxl.job.core.handler.annotation.XxlJob; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Component; + +import java.time.LocalDateTime; + +/** + * @author wr + * @description + * @date 2023/9/28 9:46 + */ +@Slf4j +@Component +@RequiredArgsConstructor +public class RStatDevSignalJob { + + private final RStatDevSignalFeignClient rStatDevSignalFeignClient; + @XxlJob("rStatDevSignalDay") + public void rStatDevSignalDay(){ + log.info(LocalDateTime.now()+"终端通信管理_日统计------------------------"); + DeviceParam deviceParam = new DeviceParam(); + deviceParam.setDataDate(CommonExecutorUtils.prepareTimeDeal(BizParamConstant.STAT_BIZ_DAY)); + CommonExecutorUtils.commDefineDateObj(BizParamConstant.STAT_BIZ_DAY,deviceParam); + rStatDevSignalFeignClient.rstatdevsignalHandler(deviceParam); + } +} diff --git a/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/line/RMpDevEvaluateDetailFeignClient.java b/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/line/RMpDevEvaluateDetailFeignClient.java index 6f40b72c9..46ade62ec 100644 --- a/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/line/RMpDevEvaluateDetailFeignClient.java +++ b/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/line/RMpDevEvaluateDetailFeignClient.java @@ -4,6 +4,7 @@ import com.njcn.common.pojo.constant.ServerInfo; import com.njcn.common.pojo.response.HttpResult; import com.njcn.prepare.harmonic.api.line.fallback.RMpDevEvaluateDetailFeignClientFallbackFactory; import com.njcn.prepare.harmonic.api.line.fallback.RStatOrgFeignClientFallbackFactory; +import com.njcn.prepare.harmonic.pojo.param.DeviceParam; import com.njcn.prepare.harmonic.pojo.param.OrgParam; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.web.bind.annotation.PostMapping; @@ -17,6 +18,6 @@ import org.springframework.web.bind.annotation.RequestBody; public interface RMpDevEvaluateDetailFeignClient { @PostMapping("/handler") - HttpResult handler(@RequestBody OrgParam orgParam); + HttpResult handler(@RequestBody DeviceParam deviceParam); } diff --git a/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/line/fallback/RMpDevEvaluateDetailFeignClientFallbackFactory.java b/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/line/fallback/RMpDevEvaluateDetailFeignClientFallbackFactory.java index 9a0880c4d..6efc7e9a8 100644 --- a/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/line/fallback/RMpDevEvaluateDetailFeignClientFallbackFactory.java +++ b/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/line/fallback/RMpDevEvaluateDetailFeignClientFallbackFactory.java @@ -6,6 +6,7 @@ import com.njcn.common.pojo.response.HttpResult; import com.njcn.prepare.harmonic.api.line.RMpDevEvaluateDetailFeignClient; import com.njcn.prepare.harmonic.api.line.RStatOrgFeignClient; +import com.njcn.prepare.harmonic.pojo.param.DeviceParam; import com.njcn.prepare.harmonic.pojo.param.OrgParam; import com.njcn.prepare.harmonic.utils.PrepareEnumUtil; import feign.hystrix.FallbackFactory; @@ -31,7 +32,7 @@ public class RMpDevEvaluateDetailFeignClientFallbackFactory implements FallbackF return new RMpDevEvaluateDetailFeignClient() { @Override - public HttpResult handler(OrgParam orgParam) { + public HttpResult handler(DeviceParam deviceParam) { log.error("{}异常,降级处理,异常为:{}", "终端数据评价_日统计: ", throwable.toString()); throw new BusinessException(finalExceptionEnum); } diff --git a/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/newalgorithm/RStatDevSignalFeignClient.java b/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/newalgorithm/RStatDevSignalFeignClient.java new file mode 100644 index 000000000..589c361c4 --- /dev/null +++ b/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/newalgorithm/RStatDevSignalFeignClient.java @@ -0,0 +1,22 @@ +package com.njcn.prepare.harmonic.api.newalgorithm; + + +import com.njcn.common.pojo.constant.ServerInfo; +import com.njcn.common.pojo.response.HttpResult; +import com.njcn.prepare.harmonic.api.newalgorithm.fallback.RStatAbnormalFeignClientFallbackFactory; +import com.njcn.prepare.harmonic.pojo.param.DeviceParam; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; + +@FeignClient( + value = ServerInfo.PREPARE_BOOT,//对应模块名 + path = "/rstatdevsignal",//对应controller请求类 + fallbackFactory = RStatAbnormalFeignClientFallbackFactory.class//服务降级处理类 +) +public interface RStatDevSignalFeignClient { + + @PostMapping("/rstatdevsignalHandler") + HttpResult rstatdevsignalHandler(@RequestBody @Validated DeviceParam deviceParam); +} diff --git a/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/newalgorithm/fallback/RStatDevSignalClientFallbackFactory.java b/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/newalgorithm/fallback/RStatDevSignalClientFallbackFactory.java new file mode 100644 index 000000000..67ce5d1bc --- /dev/null +++ b/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/api/newalgorithm/fallback/RStatDevSignalClientFallbackFactory.java @@ -0,0 +1,34 @@ +package com.njcn.prepare.harmonic.api.newalgorithm.fallback; + +import com.njcn.common.pojo.enums.response.CommonResponseEnum; +import com.njcn.common.pojo.exception.BusinessException; +import com.njcn.common.pojo.response.HttpResult; +import com.njcn.prepare.harmonic.api.newalgorithm.RStatDevSignalFeignClient; +import com.njcn.prepare.harmonic.pojo.param.DeviceParam; +import com.njcn.prepare.harmonic.utils.PrepareEnumUtil; +import feign.hystrix.FallbackFactory; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Component; + +@Slf4j +@Component +public class RStatDevSignalClientFallbackFactory implements FallbackFactory { + @Override + public RStatDevSignalFeignClient create(Throwable throwable) { + Enum exceptionEnum = CommonResponseEnum.SERVICE_FALLBACK; + if (throwable.getCause() instanceof BusinessException) { + BusinessException businessException = (BusinessException) throwable.getCause(); + exceptionEnum = PrepareEnumUtil.getExceptionEnum(businessException.getResult()); + } + + Enum finalExceptionEnum = exceptionEnum; + return new RStatDevSignalFeignClient() { + + @Override + public HttpResult rstatdevsignalHandler(DeviceParam deviceParam) { + log.error("{}异常,降级处理,异常为:{}", "终端通信管理_日统计: ", throwable.toString()); + throw new BusinessException(finalExceptionEnum); + } + }; + } +} diff --git a/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/pojo/param/DeviceParam.java b/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/pojo/param/DeviceParam.java index ad1a9e51a..d8444b1fc 100644 --- a/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/pojo/param/DeviceParam.java +++ b/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/pojo/param/DeviceParam.java @@ -18,20 +18,39 @@ import java.util.List; @Data public class DeviceParam { - private List detailList; @ApiModelProperty(name = "dataDate",value = "时间") @NotBlank(message = "报表时间不可为空") private String dataDate; + /** + * 调度任务开始时间 + */ + @NotBlank(message = "调度任务开始时间不可为空") + private String beginTime; + + /** + * 调度任务结束时间 + */ + @NotBlank(message = "调度任务结束时间不可为空") + private String endTime; + + + /** + * 是否补招标识,默认false不补招 + */ + @ApiModelProperty(name = "repairFlag",value = "0.不补招 1.补招",example = "false") + private Boolean repairFlag = false; @Data public static class DeviceDetail{ @ApiModelProperty(name = "devId",value = "终端id") private String devId; + @ApiModelProperty(name = "updateTime",value = "终端最后统计时间") private String updateTime; + @ApiModelProperty(name = "lineIds",value = "监测点索引集合") private List lineIds; diff --git a/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/pojo/po/RStatDevSignalDPO.java b/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/pojo/po/RStatDevSignalDPO.java index 6b5904ff4..9c3d61efb 100644 --- a/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/pojo/po/RStatDevSignalDPO.java +++ b/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/pojo/po/RStatDevSignalDPO.java @@ -28,8 +28,8 @@ public class RStatDevSignalDPO { /** * 终端Id */ - @MppMultiId(value = "dev_id") - private String devId; + @MppMultiId(value = "device_id") + private String deviceId; /** * 设备状态 diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/controller/newalgorithm/RMpDevEvaluateDetailController.java b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/controller/newalgorithm/RMpDevEvaluateDetailController.java index f45778351..d097f21dd 100644 --- a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/controller/newalgorithm/RMpDevEvaluateDetailController.java +++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/controller/newalgorithm/RMpDevEvaluateDetailController.java @@ -6,13 +6,13 @@ import com.njcn.common.pojo.enums.common.LogEnum; import com.njcn.common.pojo.enums.response.CommonResponseEnum; import com.njcn.common.pojo.response.HttpResult; import com.njcn.common.utils.HttpResultUtil; +import com.njcn.common.utils.NjcnDateUtils; import com.njcn.device.biz.commApi.CommTerminalGeneralClient; import com.njcn.device.biz.pojo.dto.DeptGetDeviceDTO; import com.njcn.device.biz.pojo.dto.LineDevGetDTO; import com.njcn.device.biz.pojo.param.DeptGetLineParam; import com.njcn.prepare.harmonic.pojo.param.DeviceParam; import com.njcn.prepare.harmonic.service.mysql.area.RMpDevEvaluateDetailPOService; -import com.njcn.prepare.harmonic.service.mysql.device.RStatDevSignalDPOService; import com.njcn.user.api.DeptFeignClient; import com.njcn.user.pojo.po.Dept; import com.njcn.web.controller.BaseController; @@ -32,7 +32,6 @@ import java.time.LocalDateTime; import java.util.ArrayList; import java.util.Collection; import java.util.List; -import java.util.Map; import java.util.stream.Collectors; /** @@ -59,45 +58,50 @@ public class RMpDevEvaluateDetailController extends BaseController { @PostMapping("/handler") @ApiOperation("终端数据评价_日统计") @ApiImplicitParam(name = "deviceParam", value = "参数", required = true) - public HttpResult handler(@RequestBody @Validated DeviceParam deviceParam){ - log.info(LocalDateTime.now()+"handler始执行"); + public HttpResult handler(@RequestBody @Validated DeviceParam deviceParam) { + log.info(LocalDateTime.now() + "handler始执行"); String methodDescribe = getMethodDescribe("handler"); -/** - * 支持补录 - */ - if(CollectionUtils.isEmpty(deviceParam.getDetailList())){ + /** + * 支持补录 + */ + if (CollectionUtils.isEmpty(deviceParam.getDetailList())) { List list = new ArrayList<>(); Dept data = deptFeignClient.getRootDept().getData(); DeptGetLineParam deptGetLineParam = new DeptGetLineParam(); deptGetLineParam.setDeptId(data.getId()); deptGetLineParam.setServerName(ServerInfo.PREPARE_BOOT); - List data1 = commTerminalGeneralClient.deptGetDevice(deptGetLineParam).getData(); + List data1 = commTerminalGeneralClient.deptGetDeviceAndMonitor(deptGetLineParam).getData(); + + List info = new ArrayList<>(); /*主网*/ - List collect = data1.stream().map(DeptGetDeviceDTO::getDeviceList).flatMap(Collection::stream).collect(Collectors.toList()); - collect.forEach(temp -> { - DeviceParam.DeviceDetail deviceDetail = new DeviceParam.DeviceDetail(); - deviceDetail.setDevId(temp.getDevId()); - deviceDetail.setLineIds(temp.getMonitorIds()); - deviceDetail.setUpdateTime(temp.getUpdateTime()+""); - list.add(deviceDetail); - }); - /*配网*/ List collect2 = data1.stream().map(DeptGetDeviceDTO::getPwDeviceList).flatMap(Collection::stream).collect(Collectors.toList()); - - collect2.forEach(temp -> { + info.addAll(collect); + info.addAll(collect2); + List collect1 = info.stream().distinct().collect(Collectors.toList()); + collect1.forEach(temp -> { DeviceParam.DeviceDetail deviceDetail = new DeviceParam.DeviceDetail(); deviceDetail.setDevId(temp.getDevId()); deviceDetail.setLineIds(temp.getMonitorIds()); - deviceDetail.setUpdateTime(temp.getUpdateTime()+""); + deviceDetail.setUpdateTime(temp.getUpdateTime() + ""); + deviceDetail.setDeviceStatus(temp.getComFlag() + ""); list.add(deviceDetail); }); - deviceParam.setDetailList(list); } - - rMpDevEvaluateDetailPOService.handler (deviceParam); + if (deviceParam.getRepairFlag()) { + List timeRange = NjcnDateUtils.findEveryDay(deviceParam.getBeginTime(), deviceParam.getEndTime()); + for (String item : timeRange) { + log.info(item + "-->开始执行"); + deviceParam.setDataDate(item); + deviceParam.setBeginTime(item + " " + "00:00:00"); + deviceParam.setEndTime(item + " " + "23:59:59"); + rMpDevEvaluateDetailPOService.handler(deviceParam); + } + } else { + rMpDevEvaluateDetailPOService.handler(deviceParam); + } return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe); } } diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/controller/newalgorithm/RStatDevSignalController.java b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/controller/newalgorithm/RStatDevSignalController.java index 26bc0fb40..fe85efb34 100644 --- a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/controller/newalgorithm/RStatDevSignalController.java +++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/controller/newalgorithm/RStatDevSignalController.java @@ -6,16 +6,13 @@ import com.njcn.common.pojo.enums.common.LogEnum; import com.njcn.common.pojo.enums.response.CommonResponseEnum; import com.njcn.common.pojo.response.HttpResult; import com.njcn.common.utils.HttpResultUtil; +import com.njcn.common.utils.NjcnDateUtils; import com.njcn.device.biz.commApi.CommTerminalGeneralClient; import com.njcn.device.biz.pojo.dto.DeptGetDeviceDTO; import com.njcn.device.biz.pojo.dto.LineDevGetDTO; import com.njcn.device.biz.pojo.param.DeptGetLineParam; -import com.njcn.device.pq.api.DeptLineFeignClient; -import com.njcn.device.pq.api.LineFeignClient; import com.njcn.prepare.harmonic.pojo.param.DeviceParam; -import com.njcn.prepare.harmonic.pojo.param.LineParam; import com.njcn.prepare.harmonic.service.mysql.device.RStatDevSignalDPOService; -import com.njcn.prepare.harmonic.service.mysql.line.RMpEventDetailService; import com.njcn.user.api.DeptFeignClient; import com.njcn.user.pojo.po.Dept; import com.njcn.web.controller.BaseController; @@ -35,7 +32,6 @@ import java.time.LocalDateTime; import java.util.ArrayList; import java.util.Collection; import java.util.List; -import java.util.Map; import java.util.stream.Collectors; /** @@ -57,46 +53,56 @@ public class RStatDevSignalController extends BaseController { private final RStatDevSignalDPOService rStatDevSignalDPOService; private final CommTerminalGeneralClient commTerminalGeneralClient; private final DeptFeignClient deptFeignClient; + @OperateInfo(info = LogEnum.BUSINESS_COMMON) @PostMapping("/rstatdevsignalHandler") @ApiOperation("终端通信管理_日统计") @ApiImplicitParam(name = "deviceParam", value = "参数", required = true) - public HttpResult rstatdevsignalHandler(@RequestBody @Validated DeviceParam deviceParam ){ - log.info(LocalDateTime.now()+"rstatdevsignalHandler始执行"); + public HttpResult rstatdevsignalHandler(@RequestBody @Validated DeviceParam deviceParam) { + log.info(LocalDateTime.now() + "rstatdevsignalHandler始执行"); String methodDescribe = getMethodDescribe("rstatdevsignalHandler"); /** * 支持补录 */ - if(CollectionUtils.isEmpty(deviceParam.getDetailList())){ + if (CollectionUtils.isEmpty(deviceParam.getDetailList())) { List list = new ArrayList<>(); Dept data = deptFeignClient.getRootDept().getData(); DeptGetLineParam deptGetLineParam = new DeptGetLineParam(); deptGetLineParam.setDeptId(data.getId()); deptGetLineParam.setServerName(ServerInfo.PREPARE_BOOT); - List data1 = commTerminalGeneralClient.deptGetDevice(deptGetLineParam).getData(); + List data1 = commTerminalGeneralClient.deptGetDeviceAndMonitor(deptGetLineParam).getData(); + + List info=new ArrayList<>(); /*主网*/ - List collect = data1.stream().map(DeptGetDeviceDTO::getDeviceList).flatMap(Collection::stream).collect(Collectors.toList()); - collect.forEach(temp -> { - DeviceParam.DeviceDetail deviceDetail = new DeviceParam.DeviceDetail(); - deviceDetail.setDevId(temp.getDevId()); - deviceDetail.setLineIds(temp.getMonitorIds()); - deviceDetail.setUpdateTime(temp.getUpdateTime()+""); - list.add(deviceDetail); - }); - /*配网*/ List collect2 = data1.stream().map(DeptGetDeviceDTO::getPwDeviceList).flatMap(Collection::stream).collect(Collectors.toList()); - collect2.forEach(temp -> { + info.addAll(collect); + info.addAll(collect2); + List collect1 = info.stream().distinct().collect(Collectors.toList()); + collect1.forEach(temp -> { DeviceParam.DeviceDetail deviceDetail = new DeviceParam.DeviceDetail(); deviceDetail.setDevId(temp.getDevId()); deviceDetail.setLineIds(temp.getMonitorIds()); - deviceDetail.setUpdateTime(temp.getUpdateTime()+""); + deviceDetail.setUpdateTime(temp.getUpdateTime() + ""); + deviceDetail.setDeviceStatus(temp.getComFlag()+ ""); list.add(deviceDetail); }); + deviceParam.setDetailList(list); } - rStatDevSignalDPOService.eventdetailHandler (deviceParam); + if (deviceParam.getRepairFlag()) { + List timeRange = NjcnDateUtils.findEveryDay(deviceParam.getBeginTime(), deviceParam.getEndTime()); + for (String item : timeRange) { + log.info(item + "-->开始执行"); + deviceParam.setDataDate(item); + deviceParam.setBeginTime(item + " " + "00:00:00"); + deviceParam.setEndTime(item + " " + "23:59:59"); + rStatDevSignalDPOService.eventdetailHandler(deviceParam); + } + } else { + rStatDevSignalDPOService.eventdetailHandler(deviceParam); + } return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe); } } diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/Impl/area/RMpDevEvaluateDetailPOServiceImpl.java b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/Impl/area/RMpDevEvaluateDetailPOServiceImpl.java index fca394a1a..d5b8ba21c 100644 --- a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/Impl/area/RMpDevEvaluateDetailPOServiceImpl.java +++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/Impl/area/RMpDevEvaluateDetailPOServiceImpl.java @@ -1,5 +1,6 @@ package com.njcn.prepare.harmonic.service.mysql.Impl.area; +import cn.hutool.core.collection.CollUtil; import cn.hutool.core.date.DateUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.github.jeffreyning.mybatisplus.service.MppServiceImpl; @@ -7,17 +8,11 @@ import com.njcn.common.utils.PubUtils; import com.njcn.harmonic.pojo.po.RMpDevEvaluateDetailPO; import com.njcn.prepare.harmonic.mapper.mysql.area.RMpDevEvaluateDetailPOMapper; import com.njcn.prepare.harmonic.mapper.mysql.line.ROperatingMonitorDMapper; -import com.njcn.prepare.harmonic.pojo.mysql.RMpMonitorEvaluateDPO; import com.njcn.prepare.harmonic.pojo.mysql.ROperatingMonitorDPO; import com.njcn.prepare.harmonic.pojo.param.DeviceParam; import com.njcn.prepare.harmonic.pojo.po.RMpDevSolveDetailPO; -import com.njcn.prepare.harmonic.pojo.po.RStatDevSignalDPO; import com.njcn.prepare.harmonic.service.mysql.area.RMpDevEvaluateDetailPOService; -import com.njcn.prepare.harmonic.service.mysql.area.ROperatingIndexDPOService; import com.njcn.prepare.harmonic.service.mysql.device.RMpDevSolveDetailPOService; -import com.njcn.system.api.DicDataFeignClient; -import com.njcn.system.enums.DicDataEnum; -import com.njcn.system.pojo.po.DictData; import lombok.RequiredArgsConstructor; import lombok.SneakyThrows; import org.springframework.scheduling.annotation.Async; @@ -29,7 +24,6 @@ import java.text.DecimalFormat; import java.util.ArrayList; import java.util.Date; import java.util.List; -import java.util.OptionalDouble; /** * @@ -77,7 +71,7 @@ public class RMpDevEvaluateDetailPOServiceImpl extends MppServiceImpl rOperatingMonitorDPOS = new ArrayList<>(); List lineIds = temp.getLineIds(); - if(lineIds.size() > 0){ + if(CollUtil.isNotEmpty(lineIds)){ wrapper.in("measurement_point_id", lineIds); rOperatingMonitorDPOS = rOperatingMonitorDMapper.selectList(wrapper); } diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/Impl/device/RStatDevSignalDPOServiceImpl.java b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/Impl/device/RStatDevSignalDPOServiceImpl.java index 471e343b2..b6016ebca 100644 --- a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/Impl/device/RStatDevSignalDPOServiceImpl.java +++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/Impl/device/RStatDevSignalDPOServiceImpl.java @@ -1,5 +1,6 @@ package com.njcn.prepare.harmonic.service.mysql.Impl.device; +import cn.hutool.core.collection.CollUtil; import cn.hutool.core.date.DateUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.github.jeffreyning.mybatisplus.service.MppServiceImpl; @@ -24,22 +25,20 @@ import java.util.Date; import java.util.List; /** - * * Description: * Date: 2023/5/4 14:25【需求编号】 * - - * @author clam * @version V1.0.0 */ @Service @RequiredArgsConstructor -public class RStatDevSignalDPOServiceImpl extends MppServiceImpl implements RStatDevSignalDPOService{ +public class RStatDevSignalDPOServiceImpl extends MppServiceImpl implements RStatDevSignalDPOService { private final RMpMonitorEvaluateDMapper revaluateDMapper; private final DicDataFeignClient dicDataFeignClient; + @Override @Transactional(rollbackFor = {Exception.class}) @Async("asyncExecutor") @@ -52,7 +51,7 @@ public class RStatDevSignalDPOServiceImpl extends MppServiceImpl { RStatDevSignalDPO rStatDevSignalDPO = new RStatDevSignalDPO(); - rStatDevSignalDPO.setDevId(temp.getDevId()); + rStatDevSignalDPO.setDeviceId(temp.getDevId()); rStatDevSignalDPO.setDeviceStatus(data.getId()); rStatDevSignalDPO.setUpdateTime(temp.getUpdateTime()); rStatDevSignalDPO.setDataDate(date); @@ -61,7 +60,7 @@ public class RStatDevSignalDPOServiceImpl extends MppServiceImpl lineIds = temp.getLineIds(); - if(lineIds.size() > 0){ + if (CollUtil.isNotEmpty(lineIds)) { wrapper.clear(); wrapper.select("sum(effective_minute_count) as effective_minute_count "); wrapper.eq("device_id", temp.getDevId()); @@ -70,13 +69,13 @@ public class RStatDevSignalDPOServiceImpl extends MppServiceImpl0&&temp.getDeviceStatus().equals("0")){ + if (effective_minute_count > 0 && temp.getDeviceStatus().equals("1")) { runStatus = "1"; } rStatDevSignalDPO.setRunStatus(runStatus); rStatDevSignalDPOList.add(rStatDevSignalDPO); }); - this.saveOrUpdateBatchByMultiId(rStatDevSignalDPOList,500); + this.saveOrUpdateBatchByMultiId(rStatDevSignalDPOList, 500); } } diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/area/RMpDevEvaluateDetailPOService.java b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/area/RMpDevEvaluateDetailPOService.java index 7ec6c25a7..0c7ea9a30 100644 --- a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/area/RMpDevEvaluateDetailPOService.java +++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/area/RMpDevEvaluateDetailPOService.java @@ -4,7 +4,6 @@ import com.github.jeffreyning.mybatisplus.service.IMppService; import com.njcn.harmonic.pojo.po.RMpDevEvaluateDetailPO; import com.njcn.prepare.harmonic.pojo.param.DeviceParam; -import java.util.List; /** * diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/device/RStatDevSignalDPOService.java b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/device/RStatDevSignalDPOService.java index 6e2eeba96..254c543db 100644 --- a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/device/RStatDevSignalDPOService.java +++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/device/RStatDevSignalDPOService.java @@ -3,12 +3,8 @@ package com.njcn.prepare.harmonic.service.mysql.device; import com.github.jeffreyning.mybatisplus.service.IMppService; import com.njcn.prepare.harmonic.pojo.param.DeviceParam; import com.njcn.prepare.harmonic.pojo.po.RStatDevSignalDPO; -import com.baomidou.mybatisplus.extension.service.IService; - -import java.util.List; /** - * * Description: * Date: 2023/5/4 14:25【需求编号】 * @@ -17,6 +13,6 @@ import java.util.List; */ public interface RStatDevSignalDPOService extends IMppService { + void eventdetailHandler(DeviceParam deviceParam); - void eventdetailHandler(DeviceParam deviceParam); - } +} diff --git a/pqs-process/process-boot/src/main/java/com/njcn/process/mapper/mapping/SupvReportMMapper.xml b/pqs-process/process-boot/src/main/java/com/njcn/process/mapper/mapping/SupvReportMMapper.xml index ba1579b8b..e7d680d2f 100644 --- a/pqs-process/process-boot/src/main/java/com/njcn/process/mapper/mapping/SupvReportMMapper.xml +++ b/pqs-process/process-boot/src/main/java/com/njcn/process/mapper/mapping/SupvReportMMapper.xml @@ -8,6 +8,7 @@ select count(1) value,supv_Org_Id id from supv_plan where + (delete_Flag = 0 or delete_Flag is null ) and supv_Type = #{statisticType} and plan_Supv_Date between #{startTime} and #{endTime} diff --git a/pqs-process/process-boot/src/main/java/com/njcn/process/service/impl/SupvReportMServiceImpl.java b/pqs-process/process-boot/src/main/java/com/njcn/process/service/impl/SupvReportMServiceImpl.java index da9f138e3..39c566de5 100644 --- a/pqs-process/process-boot/src/main/java/com/njcn/process/service/impl/SupvReportMServiceImpl.java +++ b/pqs-process/process-boot/src/main/java/com/njcn/process/service/impl/SupvReportMServiceImpl.java @@ -151,8 +151,8 @@ public class SupvReportMServiceImpl extends MppServiceImpl processPublicDTOQesMingGanYesAll = this.baseMapper.statisticQueReportRectify(firstYearDay,endTime,mapStatistic.get(DicDataEnum.POWER_QUALITY.getCode()).getId(),"02",null); //供电电压本月前统计 - List processPublicDTODianYaListM = this.baseMapper.statisticPlanReport(firstYearDay,lastEndTime,mapStatistic.get(DicDataEnum.Technical_Super.getCode()).getId(),null,null); - List processPublicDTODianYaListAll = this.baseMapper.statisticPlanReport(firstYearDay,lastEndTime,mapStatistic.get(DicDataEnum.Technical_Super.getCode()).getId(),null,null); + List processPublicDTODianYaListM = this.baseMapper.statisticPlanReport(firstYearDay,endTime,mapStatistic.get(DicDataEnum.Technical_Super.getCode()).getId(),null,null); + List processPublicDTODianYaListAll = this.baseMapper.statisticPlanReport(firstYearDay,endTime,mapStatistic.get(DicDataEnum.Technical_Super.getCode()).getId(),null,null); //供电电压问题数量 List processPublicDTODianYaGanM = this.baseMapper.statisticQueReport(firstDay,endTime,mapStatistic.get(DicDataEnum.Technical_Super.getCode()).getId(),null,null);