1.技术监督月报,供电次数重新统计
2.终端通信管理_日表和终端数据评价_日表,pq和pms兼容修改
This commit is contained in:
@@ -4,12 +4,15 @@ import com.njcn.common.pojo.constant.BizParamConstant;
|
|||||||
import com.njcn.executor.utils.CommonExecutorUtils;
|
import com.njcn.executor.utils.CommonExecutorUtils;
|
||||||
import com.njcn.prepare.harmonic.api.line.RMpDevEvaluateDetailFeignClient;
|
import com.njcn.prepare.harmonic.api.line.RMpDevEvaluateDetailFeignClient;
|
||||||
import com.njcn.prepare.harmonic.api.line.RStatOrgFeignClient;
|
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.pojo.param.OrgParam;
|
||||||
import com.xxl.job.core.handler.annotation.XxlJob;
|
import com.xxl.job.core.handler.annotation.XxlJob;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.springframework.stereotype.Component;
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
|
import java.time.LocalDateTime;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* pqs
|
* pqs
|
||||||
* 终端数据评价_日统计
|
* 终端数据评价_日统计
|
||||||
@@ -25,9 +28,10 @@ public class RMpDevEvaluateDetailJob {
|
|||||||
|
|
||||||
@XxlJob("rMpDevEvaluateDetailDHandler")
|
@XxlJob("rMpDevEvaluateDetailDHandler")
|
||||||
public void rMpDevEvaluateDetailDHandler(){
|
public void rMpDevEvaluateDetailDHandler(){
|
||||||
OrgParam orgParam = new OrgParam();
|
log.info(LocalDateTime.now()+"终端数据评价_日统计------------------------");
|
||||||
orgParam.setType(Integer.valueOf(BizParamConstant.STAT_BIZ_DAY));
|
DeviceParam deviceParam = new DeviceParam();
|
||||||
orgParam.setDataDate(CommonExecutorUtils.prepareTimeDeal(BizParamConstant.STAT_BIZ_DAY));
|
deviceParam.setDataDate(CommonExecutorUtils.prepareTimeDeal(BizParamConstant.STAT_BIZ_DAY));
|
||||||
rMpDevEvaluateDetailFeignClient.handler(orgParam);
|
CommonExecutorUtils.commDefineDateObj(BizParamConstant.STAT_BIZ_DAY,deviceParam);
|
||||||
|
rMpDevEvaluateDetailFeignClient.handler(deviceParam);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -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);
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -4,6 +4,7 @@ import com.njcn.common.pojo.constant.ServerInfo;
|
|||||||
import com.njcn.common.pojo.response.HttpResult;
|
import com.njcn.common.pojo.response.HttpResult;
|
||||||
import com.njcn.prepare.harmonic.api.line.fallback.RMpDevEvaluateDetailFeignClientFallbackFactory;
|
import com.njcn.prepare.harmonic.api.line.fallback.RMpDevEvaluateDetailFeignClientFallbackFactory;
|
||||||
import com.njcn.prepare.harmonic.api.line.fallback.RStatOrgFeignClientFallbackFactory;
|
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 com.njcn.prepare.harmonic.pojo.param.OrgParam;
|
||||||
import org.springframework.cloud.openfeign.FeignClient;
|
import org.springframework.cloud.openfeign.FeignClient;
|
||||||
import org.springframework.web.bind.annotation.PostMapping;
|
import org.springframework.web.bind.annotation.PostMapping;
|
||||||
@@ -17,6 +18,6 @@ import org.springframework.web.bind.annotation.RequestBody;
|
|||||||
public interface RMpDevEvaluateDetailFeignClient {
|
public interface RMpDevEvaluateDetailFeignClient {
|
||||||
|
|
||||||
@PostMapping("/handler")
|
@PostMapping("/handler")
|
||||||
HttpResult<Boolean> handler(@RequestBody OrgParam orgParam);
|
HttpResult<Boolean> handler(@RequestBody DeviceParam deviceParam);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -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.RMpDevEvaluateDetailFeignClient;
|
||||||
import com.njcn.prepare.harmonic.api.line.RStatOrgFeignClient;
|
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.pojo.param.OrgParam;
|
||||||
import com.njcn.prepare.harmonic.utils.PrepareEnumUtil;
|
import com.njcn.prepare.harmonic.utils.PrepareEnumUtil;
|
||||||
import feign.hystrix.FallbackFactory;
|
import feign.hystrix.FallbackFactory;
|
||||||
@@ -31,7 +32,7 @@ public class RMpDevEvaluateDetailFeignClientFallbackFactory implements FallbackF
|
|||||||
return new RMpDevEvaluateDetailFeignClient() {
|
return new RMpDevEvaluateDetailFeignClient() {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public HttpResult<Boolean> handler(OrgParam orgParam) {
|
public HttpResult<Boolean> handler(DeviceParam deviceParam) {
|
||||||
log.error("{}异常,降级处理,异常为:{}", "终端数据评价_日统计: ", throwable.toString());
|
log.error("{}异常,降级处理,异常为:{}", "终端数据评价_日统计: ", throwable.toString());
|
||||||
throw new BusinessException(finalExceptionEnum);
|
throw new BusinessException(finalExceptionEnum);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -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<String> rstatdevsignalHandler(@RequestBody @Validated DeviceParam deviceParam);
|
||||||
|
}
|
||||||
@@ -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<RStatDevSignalFeignClient> {
|
||||||
|
@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<String> rstatdevsignalHandler(DeviceParam deviceParam) {
|
||||||
|
log.error("{}异常,降级处理,异常为:{}", "终端通信管理_日统计: ", throwable.toString());
|
||||||
|
throw new BusinessException(finalExceptionEnum);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -18,20 +18,39 @@ import java.util.List;
|
|||||||
@Data
|
@Data
|
||||||
public class DeviceParam {
|
public class DeviceParam {
|
||||||
|
|
||||||
|
|
||||||
private List<DeviceDetail> detailList;
|
private List<DeviceDetail> detailList;
|
||||||
|
|
||||||
@ApiModelProperty(name = "dataDate",value = "时间")
|
@ApiModelProperty(name = "dataDate",value = "时间")
|
||||||
@NotBlank(message = "报表时间不可为空")
|
@NotBlank(message = "报表时间不可为空")
|
||||||
private String dataDate;
|
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
|
@Data
|
||||||
public static class DeviceDetail{
|
public static class DeviceDetail{
|
||||||
@ApiModelProperty(name = "devId",value = "终端id")
|
@ApiModelProperty(name = "devId",value = "终端id")
|
||||||
private String devId;
|
private String devId;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "updateTime",value = "终端最后统计时间")
|
||||||
private String updateTime;
|
private String updateTime;
|
||||||
|
|
||||||
@ApiModelProperty(name = "lineIds",value = "监测点索引集合")
|
@ApiModelProperty(name = "lineIds",value = "监测点索引集合")
|
||||||
private List<String> lineIds;
|
private List<String> lineIds;
|
||||||
|
|
||||||
|
|||||||
@@ -28,8 +28,8 @@ public class RStatDevSignalDPO {
|
|||||||
/**
|
/**
|
||||||
* 终端Id
|
* 终端Id
|
||||||
*/
|
*/
|
||||||
@MppMultiId(value = "dev_id")
|
@MppMultiId(value = "device_id")
|
||||||
private String devId;
|
private String deviceId;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 设备状态
|
* 设备状态
|
||||||
|
|||||||
@@ -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.enums.response.CommonResponseEnum;
|
||||||
import com.njcn.common.pojo.response.HttpResult;
|
import com.njcn.common.pojo.response.HttpResult;
|
||||||
import com.njcn.common.utils.HttpResultUtil;
|
import com.njcn.common.utils.HttpResultUtil;
|
||||||
|
import com.njcn.common.utils.NjcnDateUtils;
|
||||||
import com.njcn.device.biz.commApi.CommTerminalGeneralClient;
|
import com.njcn.device.biz.commApi.CommTerminalGeneralClient;
|
||||||
import com.njcn.device.biz.pojo.dto.DeptGetDeviceDTO;
|
import com.njcn.device.biz.pojo.dto.DeptGetDeviceDTO;
|
||||||
import com.njcn.device.biz.pojo.dto.LineDevGetDTO;
|
import com.njcn.device.biz.pojo.dto.LineDevGetDTO;
|
||||||
import com.njcn.device.biz.pojo.param.DeptGetLineParam;
|
import com.njcn.device.biz.pojo.param.DeptGetLineParam;
|
||||||
import com.njcn.prepare.harmonic.pojo.param.DeviceParam;
|
import com.njcn.prepare.harmonic.pojo.param.DeviceParam;
|
||||||
import com.njcn.prepare.harmonic.service.mysql.area.RMpDevEvaluateDetailPOService;
|
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.api.DeptFeignClient;
|
||||||
import com.njcn.user.pojo.po.Dept;
|
import com.njcn.user.pojo.po.Dept;
|
||||||
import com.njcn.web.controller.BaseController;
|
import com.njcn.web.controller.BaseController;
|
||||||
@@ -32,7 +32,6 @@ import java.time.LocalDateTime;
|
|||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -71,33 +70,38 @@ public class RMpDevEvaluateDetailController extends BaseController {
|
|||||||
DeptGetLineParam deptGetLineParam = new DeptGetLineParam();
|
DeptGetLineParam deptGetLineParam = new DeptGetLineParam();
|
||||||
deptGetLineParam.setDeptId(data.getId());
|
deptGetLineParam.setDeptId(data.getId());
|
||||||
deptGetLineParam.setServerName(ServerInfo.PREPARE_BOOT);
|
deptGetLineParam.setServerName(ServerInfo.PREPARE_BOOT);
|
||||||
List<DeptGetDeviceDTO> data1 = commTerminalGeneralClient.deptGetDevice(deptGetLineParam).getData();
|
List<DeptGetDeviceDTO> data1 = commTerminalGeneralClient.deptGetDeviceAndMonitor(deptGetLineParam).getData();
|
||||||
|
|
||||||
|
List<LineDevGetDTO> info = new ArrayList<>();
|
||||||
/*主网*/
|
/*主网*/
|
||||||
|
|
||||||
List<LineDevGetDTO> collect = data1.stream().map(DeptGetDeviceDTO::getDeviceList).flatMap(Collection::stream).collect(Collectors.toList());
|
List<LineDevGetDTO> 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<LineDevGetDTO> collect2 = data1.stream().map(DeptGetDeviceDTO::getPwDeviceList).flatMap(Collection::stream).collect(Collectors.toList());
|
List<LineDevGetDTO> collect2 = data1.stream().map(DeptGetDeviceDTO::getPwDeviceList).flatMap(Collection::stream).collect(Collectors.toList());
|
||||||
|
info.addAll(collect);
|
||||||
collect2.forEach(temp -> {
|
info.addAll(collect2);
|
||||||
|
List<LineDevGetDTO> collect1 = info.stream().distinct().collect(Collectors.toList());
|
||||||
|
collect1.forEach(temp -> {
|
||||||
DeviceParam.DeviceDetail deviceDetail = new DeviceParam.DeviceDetail();
|
DeviceParam.DeviceDetail deviceDetail = new DeviceParam.DeviceDetail();
|
||||||
deviceDetail.setDevId(temp.getDevId());
|
deviceDetail.setDevId(temp.getDevId());
|
||||||
deviceDetail.setLineIds(temp.getMonitorIds());
|
deviceDetail.setLineIds(temp.getMonitorIds());
|
||||||
deviceDetail.setUpdateTime(temp.getUpdateTime() + "");
|
deviceDetail.setUpdateTime(temp.getUpdateTime() + "");
|
||||||
|
deviceDetail.setDeviceStatus(temp.getComFlag() + "");
|
||||||
list.add(deviceDetail);
|
list.add(deviceDetail);
|
||||||
});
|
});
|
||||||
|
|
||||||
deviceParam.setDetailList(list);
|
deviceParam.setDetailList(list);
|
||||||
}
|
}
|
||||||
|
if (deviceParam.getRepairFlag()) {
|
||||||
|
List<String> 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);
|
rMpDevEvaluateDetailPOService.handler(deviceParam);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
rMpDevEvaluateDetailPOService.handler(deviceParam);
|
||||||
|
}
|
||||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe);
|
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -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.enums.response.CommonResponseEnum;
|
||||||
import com.njcn.common.pojo.response.HttpResult;
|
import com.njcn.common.pojo.response.HttpResult;
|
||||||
import com.njcn.common.utils.HttpResultUtil;
|
import com.njcn.common.utils.HttpResultUtil;
|
||||||
|
import com.njcn.common.utils.NjcnDateUtils;
|
||||||
import com.njcn.device.biz.commApi.CommTerminalGeneralClient;
|
import com.njcn.device.biz.commApi.CommTerminalGeneralClient;
|
||||||
import com.njcn.device.biz.pojo.dto.DeptGetDeviceDTO;
|
import com.njcn.device.biz.pojo.dto.DeptGetDeviceDTO;
|
||||||
import com.njcn.device.biz.pojo.dto.LineDevGetDTO;
|
import com.njcn.device.biz.pojo.dto.LineDevGetDTO;
|
||||||
import com.njcn.device.biz.pojo.param.DeptGetLineParam;
|
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.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.device.RStatDevSignalDPOService;
|
||||||
import com.njcn.prepare.harmonic.service.mysql.line.RMpEventDetailService;
|
|
||||||
import com.njcn.user.api.DeptFeignClient;
|
import com.njcn.user.api.DeptFeignClient;
|
||||||
import com.njcn.user.pojo.po.Dept;
|
import com.njcn.user.pojo.po.Dept;
|
||||||
import com.njcn.web.controller.BaseController;
|
import com.njcn.web.controller.BaseController;
|
||||||
@@ -35,7 +32,6 @@ import java.time.LocalDateTime;
|
|||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -57,6 +53,7 @@ public class RStatDevSignalController extends BaseController {
|
|||||||
private final RStatDevSignalDPOService rStatDevSignalDPOService;
|
private final RStatDevSignalDPOService rStatDevSignalDPOService;
|
||||||
private final CommTerminalGeneralClient commTerminalGeneralClient;
|
private final CommTerminalGeneralClient commTerminalGeneralClient;
|
||||||
private final DeptFeignClient deptFeignClient;
|
private final DeptFeignClient deptFeignClient;
|
||||||
|
|
||||||
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
|
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
|
||||||
@PostMapping("/rstatdevsignalHandler")
|
@PostMapping("/rstatdevsignalHandler")
|
||||||
@ApiOperation("终端通信管理_日统计")
|
@ApiOperation("终端通信管理_日统计")
|
||||||
@@ -73,30 +70,39 @@ public class RStatDevSignalController extends BaseController {
|
|||||||
DeptGetLineParam deptGetLineParam = new DeptGetLineParam();
|
DeptGetLineParam deptGetLineParam = new DeptGetLineParam();
|
||||||
deptGetLineParam.setDeptId(data.getId());
|
deptGetLineParam.setDeptId(data.getId());
|
||||||
deptGetLineParam.setServerName(ServerInfo.PREPARE_BOOT);
|
deptGetLineParam.setServerName(ServerInfo.PREPARE_BOOT);
|
||||||
List<DeptGetDeviceDTO> data1 = commTerminalGeneralClient.deptGetDevice(deptGetLineParam).getData();
|
List<DeptGetDeviceDTO> data1 = commTerminalGeneralClient.deptGetDeviceAndMonitor(deptGetLineParam).getData();
|
||||||
|
|
||||||
|
List<LineDevGetDTO> info=new ArrayList<>();
|
||||||
/*主网*/
|
/*主网*/
|
||||||
|
|
||||||
List<LineDevGetDTO> collect = data1.stream().map(DeptGetDeviceDTO::getDeviceList).flatMap(Collection::stream).collect(Collectors.toList());
|
List<LineDevGetDTO> 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<LineDevGetDTO> collect2 = data1.stream().map(DeptGetDeviceDTO::getPwDeviceList).flatMap(Collection::stream).collect(Collectors.toList());
|
List<LineDevGetDTO> collect2 = data1.stream().map(DeptGetDeviceDTO::getPwDeviceList).flatMap(Collection::stream).collect(Collectors.toList());
|
||||||
collect2.forEach(temp -> {
|
info.addAll(collect);
|
||||||
|
info.addAll(collect2);
|
||||||
|
List<LineDevGetDTO> collect1 = info.stream().distinct().collect(Collectors.toList());
|
||||||
|
collect1.forEach(temp -> {
|
||||||
DeviceParam.DeviceDetail deviceDetail = new DeviceParam.DeviceDetail();
|
DeviceParam.DeviceDetail deviceDetail = new DeviceParam.DeviceDetail();
|
||||||
deviceDetail.setDevId(temp.getDevId());
|
deviceDetail.setDevId(temp.getDevId());
|
||||||
deviceDetail.setLineIds(temp.getMonitorIds());
|
deviceDetail.setLineIds(temp.getMonitorIds());
|
||||||
deviceDetail.setUpdateTime(temp.getUpdateTime() + "");
|
deviceDetail.setUpdateTime(temp.getUpdateTime() + "");
|
||||||
|
deviceDetail.setDeviceStatus(temp.getComFlag()+ "");
|
||||||
list.add(deviceDetail);
|
list.add(deviceDetail);
|
||||||
});
|
});
|
||||||
|
|
||||||
deviceParam.setDetailList(list);
|
deviceParam.setDetailList(list);
|
||||||
}
|
}
|
||||||
|
if (deviceParam.getRepairFlag()) {
|
||||||
|
List<String> 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);
|
rStatDevSignalDPOService.eventdetailHandler(deviceParam);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
rStatDevSignalDPOService.eventdetailHandler(deviceParam);
|
||||||
|
}
|
||||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe);
|
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
package com.njcn.prepare.harmonic.service.mysql.Impl.area;
|
package com.njcn.prepare.harmonic.service.mysql.Impl.area;
|
||||||
|
|
||||||
|
import cn.hutool.core.collection.CollUtil;
|
||||||
import cn.hutool.core.date.DateUtil;
|
import cn.hutool.core.date.DateUtil;
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||||
import com.github.jeffreyning.mybatisplus.service.MppServiceImpl;
|
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.harmonic.pojo.po.RMpDevEvaluateDetailPO;
|
||||||
import com.njcn.prepare.harmonic.mapper.mysql.area.RMpDevEvaluateDetailPOMapper;
|
import com.njcn.prepare.harmonic.mapper.mysql.area.RMpDevEvaluateDetailPOMapper;
|
||||||
import com.njcn.prepare.harmonic.mapper.mysql.line.ROperatingMonitorDMapper;
|
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.mysql.ROperatingMonitorDPO;
|
||||||
import com.njcn.prepare.harmonic.pojo.param.DeviceParam;
|
import com.njcn.prepare.harmonic.pojo.param.DeviceParam;
|
||||||
import com.njcn.prepare.harmonic.pojo.po.RMpDevSolveDetailPO;
|
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.RMpDevEvaluateDetailPOService;
|
||||||
import com.njcn.prepare.harmonic.service.mysql.area.ROperatingIndexDPOService;
|
|
||||||
import com.njcn.prepare.harmonic.service.mysql.device.RMpDevSolveDetailPOService;
|
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.RequiredArgsConstructor;
|
||||||
import lombok.SneakyThrows;
|
import lombok.SneakyThrows;
|
||||||
import org.springframework.scheduling.annotation.Async;
|
import org.springframework.scheduling.annotation.Async;
|
||||||
@@ -29,7 +24,6 @@ import java.text.DecimalFormat;
|
|||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.OptionalDouble;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
@@ -77,7 +71,7 @@ public class RMpDevEvaluateDetailPOServiceImpl extends MppServiceImpl<RMpDevEval
|
|||||||
List<ROperatingMonitorDPO> rOperatingMonitorDPOS = new ArrayList<>();
|
List<ROperatingMonitorDPO> rOperatingMonitorDPOS = new ArrayList<>();
|
||||||
|
|
||||||
List<String> lineIds = temp.getLineIds();
|
List<String> lineIds = temp.getLineIds();
|
||||||
if(lineIds.size() > 0){
|
if(CollUtil.isNotEmpty(lineIds)){
|
||||||
wrapper.in("measurement_point_id", lineIds);
|
wrapper.in("measurement_point_id", lineIds);
|
||||||
rOperatingMonitorDPOS = rOperatingMonitorDMapper.selectList(wrapper);
|
rOperatingMonitorDPOS = rOperatingMonitorDMapper.selectList(wrapper);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
package com.njcn.prepare.harmonic.service.mysql.Impl.device;
|
package com.njcn.prepare.harmonic.service.mysql.Impl.device;
|
||||||
|
|
||||||
|
import cn.hutool.core.collection.CollUtil;
|
||||||
import cn.hutool.core.date.DateUtil;
|
import cn.hutool.core.date.DateUtil;
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||||
import com.github.jeffreyning.mybatisplus.service.MppServiceImpl;
|
import com.github.jeffreyning.mybatisplus.service.MppServiceImpl;
|
||||||
@@ -24,12 +25,9 @@ import java.util.Date;
|
|||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
|
||||||
* Description:
|
* Description:
|
||||||
* Date: 2023/5/4 14:25【需求编号】
|
* Date: 2023/5/4 14:25【需求编号】
|
||||||
*
|
*
|
||||||
|
|
||||||
|
|
||||||
* @author clam
|
* @author clam
|
||||||
* @version V1.0.0
|
* @version V1.0.0
|
||||||
*/
|
*/
|
||||||
@@ -40,6 +38,7 @@ public class RStatDevSignalDPOServiceImpl extends MppServiceImpl<RStatDevSignalD
|
|||||||
private final RMpMonitorEvaluateDMapper revaluateDMapper;
|
private final RMpMonitorEvaluateDMapper revaluateDMapper;
|
||||||
private final
|
private final
|
||||||
DicDataFeignClient dicDataFeignClient;
|
DicDataFeignClient dicDataFeignClient;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@Transactional(rollbackFor = {Exception.class})
|
@Transactional(rollbackFor = {Exception.class})
|
||||||
@Async("asyncExecutor")
|
@Async("asyncExecutor")
|
||||||
@@ -52,7 +51,7 @@ public class RStatDevSignalDPOServiceImpl extends MppServiceImpl<RStatDevSignalD
|
|||||||
deviceParam.getDetailList().forEach(temp -> {
|
deviceParam.getDetailList().forEach(temp -> {
|
||||||
|
|
||||||
RStatDevSignalDPO rStatDevSignalDPO = new RStatDevSignalDPO();
|
RStatDevSignalDPO rStatDevSignalDPO = new RStatDevSignalDPO();
|
||||||
rStatDevSignalDPO.setDevId(temp.getDevId());
|
rStatDevSignalDPO.setDeviceId(temp.getDevId());
|
||||||
rStatDevSignalDPO.setDeviceStatus(data.getId());
|
rStatDevSignalDPO.setDeviceStatus(data.getId());
|
||||||
rStatDevSignalDPO.setUpdateTime(temp.getUpdateTime());
|
rStatDevSignalDPO.setUpdateTime(temp.getUpdateTime());
|
||||||
rStatDevSignalDPO.setDataDate(date);
|
rStatDevSignalDPO.setDataDate(date);
|
||||||
@@ -61,7 +60,7 @@ public class RStatDevSignalDPOServiceImpl extends MppServiceImpl<RStatDevSignalD
|
|||||||
*/
|
*/
|
||||||
Integer effective_minute_count = 0;
|
Integer effective_minute_count = 0;
|
||||||
List<String> lineIds = temp.getLineIds();
|
List<String> lineIds = temp.getLineIds();
|
||||||
if(lineIds.size() > 0){
|
if (CollUtil.isNotEmpty(lineIds)) {
|
||||||
wrapper.clear();
|
wrapper.clear();
|
||||||
wrapper.select("sum(effective_minute_count) as effective_minute_count ");
|
wrapper.select("sum(effective_minute_count) as effective_minute_count ");
|
||||||
wrapper.eq("device_id", temp.getDevId());
|
wrapper.eq("device_id", temp.getDevId());
|
||||||
@@ -70,7 +69,7 @@ public class RStatDevSignalDPOServiceImpl extends MppServiceImpl<RStatDevSignalD
|
|||||||
effective_minute_count = rMpMonitorEvaluateDPO.getEffectiveMinuteCount();
|
effective_minute_count = rMpMonitorEvaluateDPO.getEffectiveMinuteCount();
|
||||||
}
|
}
|
||||||
String runStatus = "0";
|
String runStatus = "0";
|
||||||
if(effective_minute_count>0&&temp.getDeviceStatus().equals("0")){
|
if (effective_minute_count > 0 && temp.getDeviceStatus().equals("1")) {
|
||||||
runStatus = "1";
|
runStatus = "1";
|
||||||
}
|
}
|
||||||
rStatDevSignalDPO.setRunStatus(runStatus);
|
rStatDevSignalDPO.setRunStatus(runStatus);
|
||||||
|
|||||||
@@ -4,7 +4,6 @@ import com.github.jeffreyning.mybatisplus.service.IMppService;
|
|||||||
import com.njcn.harmonic.pojo.po.RMpDevEvaluateDetailPO;
|
import com.njcn.harmonic.pojo.po.RMpDevEvaluateDetailPO;
|
||||||
import com.njcn.prepare.harmonic.pojo.param.DeviceParam;
|
import com.njcn.prepare.harmonic.pojo.param.DeviceParam;
|
||||||
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
|
|||||||
@@ -3,12 +3,8 @@ package com.njcn.prepare.harmonic.service.mysql.device;
|
|||||||
import com.github.jeffreyning.mybatisplus.service.IMppService;
|
import com.github.jeffreyning.mybatisplus.service.IMppService;
|
||||||
import com.njcn.prepare.harmonic.pojo.param.DeviceParam;
|
import com.njcn.prepare.harmonic.pojo.param.DeviceParam;
|
||||||
import com.njcn.prepare.harmonic.pojo.po.RStatDevSignalDPO;
|
import com.njcn.prepare.harmonic.pojo.po.RStatDevSignalDPO;
|
||||||
import com.baomidou.mybatisplus.extension.service.IService;
|
|
||||||
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
|
||||||
* Description:
|
* Description:
|
||||||
* Date: 2023/5/4 14:25【需求编号】
|
* Date: 2023/5/4 14:25【需求编号】
|
||||||
*
|
*
|
||||||
@@ -17,6 +13,6 @@ import java.util.List;
|
|||||||
*/
|
*/
|
||||||
public interface RStatDevSignalDPOService extends IMppService<RStatDevSignalDPO> {
|
public interface RStatDevSignalDPOService extends IMppService<RStatDevSignalDPO> {
|
||||||
|
|
||||||
|
|
||||||
void eventdetailHandler(DeviceParam deviceParam);
|
void eventdetailHandler(DeviceParam deviceParam);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -8,6 +8,7 @@
|
|||||||
<select id="statisticPlanReport" resultType="ProcessPublicDTO">
|
<select id="statisticPlanReport" resultType="ProcessPublicDTO">
|
||||||
select count(1) value,supv_Org_Id id from supv_plan
|
select count(1) value,supv_Org_Id id from supv_plan
|
||||||
where
|
where
|
||||||
|
(delete_Flag = 0 or delete_Flag is null ) and
|
||||||
supv_Type = #{statisticType}
|
supv_Type = #{statisticType}
|
||||||
<if test="startTime!=null and endTime!=null">
|
<if test="startTime!=null and endTime!=null">
|
||||||
and effect_End_Time between #{startTime} and #{endTime}
|
and effect_End_Time between #{startTime} and #{endTime}
|
||||||
@@ -28,6 +29,7 @@
|
|||||||
select count(1) value,a.duty_Org_Id id from supv_problem a
|
select count(1) value,a.duty_Org_Id id from supv_problem a
|
||||||
inner join supv_plan b on a.plan_Id = b.plan_id
|
inner join supv_plan b on a.plan_Id = b.plan_id
|
||||||
where
|
where
|
||||||
|
(b.delete_Flag = 0 or b.delete_Flag is null ) and
|
||||||
b.supv_Type = #{statisticType}
|
b.supv_Type = #{statisticType}
|
||||||
<if test="startTime!=null and endTime!=null">
|
<if test="startTime!=null and endTime!=null">
|
||||||
and a.discovery_Time between #{startTime} and #{endTime}
|
and a.discovery_Time between #{startTime} and #{endTime}
|
||||||
@@ -45,6 +47,7 @@
|
|||||||
select count(1) value,a.duty_Org_Id id from supv_problem a
|
select count(1) value,a.duty_Org_Id id from supv_problem a
|
||||||
inner join supv_plan b on a.plan_Id = b.plan_id
|
inner join supv_plan b on a.plan_Id = b.plan_id
|
||||||
where
|
where
|
||||||
|
(b.delete_Flag = 0 or b.delete_Flag is null ) and
|
||||||
b.supv_Type = #{statisticType}
|
b.supv_Type = #{statisticType}
|
||||||
<if test="startTime!=null and endTime!=null">
|
<if test="startTime!=null and endTime!=null">
|
||||||
and a.rectification_Time between #{startTime} and #{endTime}
|
and a.rectification_Time between #{startTime} and #{endTime}
|
||||||
@@ -60,6 +63,7 @@
|
|||||||
<select id="statisticPlanReportYear" resultType="com.njcn.process.pojo.dto.ProcessPublicDTO">
|
<select id="statisticPlanReportYear" resultType="com.njcn.process.pojo.dto.ProcessPublicDTO">
|
||||||
select count(1) value,supv_Org_Id id from supv_plan
|
select count(1) value,supv_Org_Id id from supv_plan
|
||||||
where
|
where
|
||||||
|
(delete_Flag = 0 or delete_Flag is null ) and
|
||||||
supv_Type = #{statisticType}
|
supv_Type = #{statisticType}
|
||||||
<if test="startTime!=null and endTime!=null">
|
<if test="startTime!=null and endTime!=null">
|
||||||
and plan_Supv_Date between #{startTime} and #{endTime}
|
and plan_Supv_Date between #{startTime} and #{endTime}
|
||||||
|
|||||||
@@ -151,8 +151,8 @@ public class SupvReportMServiceImpl extends MppServiceImpl<SupvReportMMapper, Su
|
|||||||
List<ProcessPublicDTO> processPublicDTOQesMingGanYesAll = this.baseMapper.statisticQueReportRectify(firstYearDay,endTime,mapStatistic.get(DicDataEnum.POWER_QUALITY.getCode()).getId(),"02",null);
|
List<ProcessPublicDTO> processPublicDTOQesMingGanYesAll = this.baseMapper.statisticQueReportRectify(firstYearDay,endTime,mapStatistic.get(DicDataEnum.POWER_QUALITY.getCode()).getId(),"02",null);
|
||||||
|
|
||||||
//供电电压本月前统计
|
//供电电压本月前统计
|
||||||
List<ProcessPublicDTO> processPublicDTODianYaListM = this.baseMapper.statisticPlanReport(firstYearDay,lastEndTime,mapStatistic.get(DicDataEnum.Technical_Super.getCode()).getId(),null,null);
|
List<ProcessPublicDTO> processPublicDTODianYaListM = this.baseMapper.statisticPlanReport(firstYearDay,endTime,mapStatistic.get(DicDataEnum.Technical_Super.getCode()).getId(),null,null);
|
||||||
List<ProcessPublicDTO> processPublicDTODianYaListAll = this.baseMapper.statisticPlanReport(firstYearDay,lastEndTime,mapStatistic.get(DicDataEnum.Technical_Super.getCode()).getId(),null,null);
|
List<ProcessPublicDTO> processPublicDTODianYaListAll = this.baseMapper.statisticPlanReport(firstYearDay,endTime,mapStatistic.get(DicDataEnum.Technical_Super.getCode()).getId(),null,null);
|
||||||
|
|
||||||
//供电电压问题数量
|
//供电电压问题数量
|
||||||
List<ProcessPublicDTO> processPublicDTODianYaGanM = this.baseMapper.statisticQueReport(firstDay,endTime,mapStatistic.get(DicDataEnum.Technical_Super.getCode()).getId(),null,null);
|
List<ProcessPublicDTO> processPublicDTODianYaGanM = this.baseMapper.statisticQueReport(firstDay,endTime,mapStatistic.get(DicDataEnum.Technical_Super.getCode()).getId(),null,null);
|
||||||
|
|||||||
Reference in New Issue
Block a user