1.下发接口修改

2.工单接口开发
This commit is contained in:
cdf
2024-06-18 17:04:22 +08:00
parent c508070c15
commit 0dd324c7ef
21 changed files with 1630 additions and 189 deletions

View File

@@ -35,6 +35,11 @@ public enum GWSendEnum {
SUBSTATION_MONITOR("pqSubstationMonitorCreate", "/WMCenter/powerQuality/substationMonitor/create"),
//接收其他干扰用户台账数据接口
OTHER_USER_CREATE("pqOtherUserCreate", "/WMCenter/powerQuality/archivalInformation/otherUserCreate"),
//调用总部下发工单的反馈单接口
WORK_ORDER_FEEDBACK("workOrderFeedBack", "/pms-ghq-powerquality-start/powerQuality/workOrder/receiveFeedbackInfo"),
;

View File

@@ -1,5 +1,6 @@
package com.njcn.web.utils;
import cn.hutool.core.text.StrBuilder;
import cn.hutool.core.util.ObjectUtil;
import com.alibaba.csb.sdk.*;
import com.alibaba.fastjson.JSON;
@@ -10,9 +11,12 @@ import com.njcn.web.pojo.param.SendParam;
import lombok.extern.slf4j.Slf4j;
import org.springframework.http.ResponseEntity;
import java.time.LocalDate;
import java.util.HashMap;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import java.util.concurrent.atomic.AtomicBoolean;
/**
* @author wr
@@ -106,4 +110,36 @@ public class GwSendUtil {
}
return token;
}
/**
* 用于单次调用的返回
* @author cdf
* @date 2024/6/18
*/
public static Integer returnInfoMsg(List<String> ids, Map<String, String> res) {
if (res.containsKey("succeed")) {
String succeed = res.get("succeed");
if (succeed.contains("\\\"")) {
succeed = succeed.replace("\\\"", "\"");
}
Map mapData = JSON.parseObject(succeed, Map.class);
String status = mapData.get("status").toString();
if ("000000".equals(status)) {
//修改数据上送状态
String result = mapData.get("result").toString();
Map mapCount = JSON.parseObject(result, Map.class);
String count = mapCount.get("count").toString();
return Integer.valueOf(count);
} else {
String errors = mapData.get("errors").toString();
String errorMsg = " 上送" + ids.size()+"条数据失败,错误信息:" + status + "_" + errors + " ;";
throw new BusinessException(errorMsg);
}
} else {
throw new BusinessException("当前时间段国网上送请求过多,请稍后再试");
}
}
}

View File

@@ -0,0 +1,43 @@
package com.njcn.harmonic.pojo.dto.upload;
import lombok.Data;
/**
* pqs
*
* @author cdf
* @date 2024/6/18
*/
@Data
public class FeedbackInfoDTO {
/**
* 主键
*/
private String objId;
/**
* 工单编号
*/
private String orderId;
/**
* 是否反馈
*/
private String isFeedback;
/**
* 反馈人员
*/
private String feedbackUser;
/**
* 反馈时间
*/
private String feedbackTime;
/**
* 处理措施
*/
private String handlingMeasures;
}

View File

@@ -13,38 +13,44 @@ import java.util.List;
@Data
public class DimBusBarParam {
private String deployState;
private Integer pageNum;
private Integer pageSize;
private String endTime;
private String startTime;
private String orgId;
private String orgLevel;
private String deployState;
private String statType;
private String dataSource;
private String indexType;
private Integer harmonicNum;
private String stationName;
private String voltageLevel;
private String busId;
private List<String> busIds;
private String busName;
private String dataSource;
private String detailType;
private Integer harmonicNum;
private String indexType;
private String monitorId;
private String nodeId;
private String nodeLevel;
private List<String> seqs;
private String statDate;
private String stationName;
private String voltageLevel;
private Integer pageNum;
private Integer pageSize;
private List<String> onlineBusIds;

View File

@@ -0,0 +1,182 @@
package com.njcn.harmonic.pojo.param.upload;
import com.baomidou.mybatisplus.annotation.TableName;
import com.njcn.web.pojo.param.BaseParam;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDate;
import java.time.LocalDateTime;
/**
* <p>
* 用于存储总部下发的工单信息
* </p>
*
* @author cdf
* @since 2024-06-18
*/
@Data
public class RUploadWorkOrderParam {
private static final long serialVersionUID = 1L;
/**
* 主键id
*/
private String objId;
/**
* 省公司id
*/
private String provinceId;
/**
* 省公司名称
*/
private String provinceName;
/**
* 市公司
*/
private String cityOrgId;
/**
* 市公司名称
*/
private String cityOrgName;
/**
* 运维单位ID
*/
private String maintainerId;
/**
* 运维单位名称
*/
private String maintainerName;
/**
* 运维班组Id
*/
private String maintcrewId;
/**
* 运维班组名称
*/
private String maintcrewName;
/**
* 工单编号
*/
private String orderId;
/**
* 工单类型(字典)
*/
private String orderType;
/**
* 工单来源(字典)
*/
private String orderSource;
/**
* 业务分类(字典)
*/
private String businessType;
/**
* 工单内容
*/
private String orderContent;
/**
* 事件时间
*/
@DateTimeFormat(pattern = "yyyy-MM-dd")
private LocalDate eventTime;
/**
* 下发时间
*/
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private LocalDateTime distributeTime;
/**
* 闭环时间
*/
@DateTimeFormat(pattern = "yyyy-MM-dd")
private LocalDate closedLoopTime;
/**
* 3-省4-市
*/
private String orgLevel;
/**
* 0-否1-是
*/
private String isFeedback;
/**
* 反馈人员
*/
private String feedbackUser;
/**
* 反馈时间
*/
@DateTimeFormat(pattern = "yyyy-MM-dd")
private LocalDate feedbackTime;
/**
* 处理措施
*/
private String handlingMeasures;
/**
* 接收时间
*/
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private LocalDateTime receiveTime;
/**
* 0-否1-是
*/
private String uploadStatus;
/**
* 工单状态(字典)
*/
private String orderStatus;
/**
* 上报时间
*/
@DateTimeFormat(pattern = "yyyy-MM-dd")
private LocalDate uploadTime;
/**
* 下发人员
*/
private String distributeUser;
/**
* 要求整改时间
*/
@DateTimeFormat(pattern = "yyyy-MM-dd")
private LocalDate planRectificationTime;
@Data
public static class RUploadWorkOrderQuery extends BaseParam {
}
}

View File

@@ -0,0 +1,177 @@
package com.njcn.harmonic.pojo.po.upload;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.time.LocalDate;
import java.time.LocalDateTime;
import lombok.Getter;
import lombok.Setter;
/**
* <p>
* 用于存储总部下发的工单信息
* </p>
*
* @author cdf
* @since 2024-06-18
*/
@Getter
@Setter
@TableName("r_upload_work_order")
public class RUploadWorkOrderPO {
private static final long serialVersionUID = 1L;
/**
* 主键id
*/
@TableId("obj_Id")
private String objId;
/**
* 省公司id
*/
private String provinceId;
/**
* 省公司名称
*/
private String provinceName;
/**
* 市公司
*/
private String cityOrgId;
/**
* 市公司名称
*/
private String cityOrgName;
/**
* 运维单位ID
*/
private String maintainerId;
/**
* 运维单位名称
*/
private String maintainerName;
/**
* 运维班组Id
*/
private String maintcrewId;
/**
* 运维班组名称
*/
private String maintcrewName;
/**
* 工单编号
*/
private String orderId;
/**
* 工单类型(字典)
*/
private String orderType;
/**
* 工单来源(字典)
*/
private String orderSource;
/**
* 业务分类(字典)
*/
private String businessType;
/**
* 工单内容
*/
private String orderContent;
/**
* 事件时间
*/
private LocalDate eventTime;
/**
* 下发时间
*/
private LocalDateTime distributeTime;
/**
* 闭环时间
*/
private LocalDate closedLoopTime;
private LocalDateTime ctime;
private LocalDateTime mtime;
/**
* 0.删除 1.正常
*/
private Boolean isDeleted;
/**
* 3-省4-市
*/
private String orgLevel;
/**
* 0-否1-是
*/
private String isFeedback;
/**
* 反馈人员
*/
private String feedbackUser;
/**
* 反馈时间
*/
private LocalDate feedbackTime;
/**
* 处理措施
*/
private String handlingMeasures;
/**
* 接收时间
*/
private LocalDateTime receiveTime;
/**
* 0-否1-是
*/
private String uploadStatus;
/**
* 工单状态(字典)
*/
private String orderStatus;
/**
* 上报时间
*/
private LocalDate uploadTime;
/**
* 下发人员
*/
private String distributeUser;
/**
* 要求整改时间
*/
private LocalDate planRectificationTime;
}

View File

@@ -11,6 +11,9 @@ import lombok.Data;
@Data
public class DimBusBarVO {
private String midId;
private String lineId;
private String astId;
private String busName;
private String busVoltageLevel;
@@ -64,7 +67,6 @@ public class DimBusBarVO {
private String whetherOptimalName;
private String maintOrg;
private String maintOrgName;
private String monitorId;
@@ -80,7 +82,7 @@ public class DimBusBarVO {
@Data
public static class DimBusBarMonitorVoltageVO{
private String actualCollectNum;
private String busId;
private String busName;
private String busVoltageLevel;
@@ -103,4 +105,81 @@ public class DimBusBarVO {
private String whetherOptimalName;
}
/**
* 母线下有效测点
* @author cdf
* @date 2024/6/17
*/
@Data
public static class DimBusBarEffectMonitorVO{
private String busId;
private String busName;
private String busVoltageLevel;
private String busVoltageLevelName;
private String cityOrg;
private String cityOrgName;
private String maintOrg;
private String maintOrgName;
private String monitorId;
private String monitorName;
private String stationId;
private String stationName;
private String status;
private String statusName;
}
/**
* 母线下有效测点
* @author cdf
* @date 2024/6/17
*/
@Data
public static class DimBusBarMonitorScaleVO{
private Integer actualCollectNum;
private String busId;
private String busName;
private String busVoltageLevel;
private String busVoltageLevelName;
private String cityOrg;
private String cityOrgName;
private String monitorId;
private String monitorName;
private Double dataFullRate;
private Integer expectCollectNum;
private String maintOrg;
private String maintOrgName;
private String statDate;
private String stationId;
private String stationName;
private String status;
private String statusName;
private String whetherOptimal;
private String whetherOptimalName;
}
@Data
public static class DimBusBarMonitorAvgVO{
private String busName;
private String cityOrg;
private String cityOrgName;
private String harmonicNum;
private String indexValue;
private String lineVoltage;
private String maintOrg;
private String maintOrgName;
private String monitorId;
private String monitorName;
private String seq;
private String statDate;
private String stationId;
private String stationName;
private String status;
private String statusName;
private String terminalConnect;
private String terminalConnectName;
}
}

View File

@@ -38,53 +38,63 @@ public class EvaluationDownController extends BaseController {
*/
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@PostMapping("/getBaseEvaOnlineBusDetail")
@ApiOperation("国网上送-接收总部基准水平评估在运母线数量详情下穿接口")
@ApiOperation("国网上送-在运母线数量详情下穿接口")
@ApiImplicitParam(name = "param", value = "实体参数", required = true)
public PmsHttpResult<Page<DimBusBarVO>> getBaseEvaOnlineBusDetail(@RequestBody DimBusBarParam param) {
public PmsHttpResult<PmsPage<DimBusBarVO>> getBaseEvaOnlineBusDetail(@RequestBody DimBusBarParam param) {
String methodDescribe = getMethodDescribe("getBaseEvaOnlineBusDetail");
Page<DimBusBarVO> page = evaluationDataService.getBaseEvaOnlineBusDetail(param);
PmsPage<DimBusBarVO> page = evaluationDataService.getBaseEvaOnlineBusDetail(param);
return new PmsHttpResult<>(0, page);
}
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@PostMapping("/getBaseEvaMonitorBusDetail")
@ApiOperation("国网上送-接收总部基准水平评估监测母线列表详情下穿接口")
@ApiOperation("国网上送-监测母线列表详情下穿接口")
@ApiImplicitParam(name = "param", value = "实体参数", required = true)
public PmsHttpResult<Page<DimBusBarVO>> getBaseEvaMonitorBusDetail(@RequestBody DimBusBarParam param) {
String methodDescribe = getMethodDescribe("getBaseEvaOnlineBusDetail");
Page<DimBusBarVO> page = evaluationDataService.getBaseEvaMonitorBusDetail(param);
public PmsHttpResult<PmsPage<DimBusBarVO>> getBaseEvaMonitorBusDetail(@RequestBody DimBusBarParam param) {
String methodDescribe = getMethodDescribe("getBaseEvaMonitorBusDetail");
PmsPage<DimBusBarVO> page = evaluationDataService.getBaseEvaMonitorBusDetail(param);
return new PmsHttpResult<>(0, page);
}
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@PostMapping("/getBusListByVoltageLevel")
@ApiOperation("国网上送-接收总部基准水平评估监测母线列表详情下穿接口")
@ApiOperation("国网上送-根据交流均值查询母线详情下穿接口")
@ApiImplicitParam(name = "param", value = "实体参数", required = true)
public PmsHttpResult<Page<DimBusBarVO>> getBusListByVoltageLevel(@RequestBody DimBusBarParam param) {
public PmsHttpResult<PmsPage<DimBusBarVO>> getBusListByVoltageLevel(@RequestBody DimBusBarParam param) {
String methodDescribe = getMethodDescribe("getBusListByVoltageLevel");
Page<DimBusBarVO> page = evaluationDataService.getBusListByVoltageLevel(param);
PmsPage<DimBusBarVO> page = evaluationDataService.getBusListByVoltageLevel(param);
return new PmsHttpResult<>(0, page);
}
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@PostMapping("/getMonitorListByBus")
@ApiOperation("国网上送-接收总部基准水平评估监测母线下有效监测点详情下穿接口")
@ApiOperation("国网上送-监测母线下有效监测点详情下穿接口")
@ApiImplicitParam(name = "param", value = "实体参数", required = true)
public PmsHttpResult<PmsPage<DimBusBarVO.DimBusBarMonitorVO>> getMonitorListByBus(@RequestBody DimBusBarParam param) {
public PmsHttpResult<PmsPage<DimBusBarVO.DimBusBarEffectMonitorVO>> getMonitorListByBus(@RequestBody DimBusBarParam param) {
String methodDescribe = getMethodDescribe("getMonitorListByBus");
PmsPage<DimBusBarVO.DimBusBarMonitorVO> page = evaluationDataService.getMonitorListByBus(param);
PmsPage<DimBusBarVO.DimBusBarEffectMonitorVO> page = evaluationDataService.getMonitorListByBus(param);
return new PmsHttpResult<>(0, page);
}
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@PostMapping("/getBaseEvaBusMonitorList")
@ApiOperation("国网上送-接收总部基准水平评估电压等级母线监测点列表详情下穿接口")
@ApiOperation("国网上送-电压等级母线监测点列表详情下穿接口")
@ApiImplicitParam(name = "param", value = "实体参数", required = true)
public PmsHttpResult<PmsPage<DimBusBarVO.DimBusBarMonitorVoltageVO>> getBaseEvaBusMonitorList(@RequestBody DimBusBarParam param) {
public PmsHttpResult<PmsPage<DimBusBarVO.DimBusBarMonitorVO>> getBaseEvaBusMonitorList(@RequestBody DimBusBarParam param) {
String methodDescribe = getMethodDescribe("getBaseEvaBusMonitorList");
PmsPage<DimBusBarVO.DimBusBarMonitorVoltageVO> page = evaluationDataService.getBaseEvaBusMonitorList(param);
PmsPage<DimBusBarVO.DimBusBarMonitorVO> page = evaluationDataService.getBaseEvaBusMonitorList(param);
return new PmsHttpResult<>(0, page);
}
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@PostMapping("/getBusAvgListByMonitorId")
@ApiOperation("国网上送-根据母线id查询均值列表详情下穿接口")
@ApiImplicitParam(name = "param", value = "实体参数", required = true)
public PmsHttpResult<PmsPage<DimBusBarVO.DimBusBarMonitorAvgVO>> getBusAvgListByMonitorId(@RequestBody DimBusBarParam param) {
String methodDescribe = getMethodDescribe("getBusAvgListByMonitorId");
PmsPage<DimBusBarVO.DimBusBarMonitorAvgVO> page = evaluationDataService.getBusAvgListByMonitorId(param);
return new PmsHttpResult<>(0, page);
}

View File

@@ -0,0 +1,135 @@
package com.njcn.harmonic.controller.upload;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.njcn.common.pojo.annotation.OperateInfo;
import com.njcn.common.pojo.constant.OperateType;
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.LogUtil;
import com.njcn.harmonic.pojo.param.UploadDataParam;
import com.njcn.harmonic.pojo.param.upload.RUploadWorkOrderParam;
import com.njcn.harmonic.pojo.po.upload.RUploadWorkOrderPO;
import com.njcn.harmonic.pojo.vo.upload.UploadEvaluationDataVo;
import com.njcn.harmonic.service.upload.IRUploadWorkOrderService;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiOperation;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.njcn.web.controller.BaseController;
import java.util.List;
import static org.reflections.Reflections.log;
/**
* <p>
* 用于存储总部下发的工单信息 前端控制器
* </p>
*
* @author cdf
* @since 2024-06-18
*/
@RestController
@RequestMapping("/pms-tech-powerquality-start/pqWorkorderDistributeSuperviseController/")
@RequiredArgsConstructor
@Slf4j
public class RUploadWorkOrderController extends BaseController {
private final IRUploadWorkOrderService irUploadWorkOrderService;
/**
* 用于总部调用省级下发工单信息(总部调用)
* @author cdf
* @date 2024/6/18
*/
@OperateInfo(info = LogEnum.BUSINESS_COMMON,operateType = OperateType.ADD)
@PostMapping("/insertWorkorderDistributeSupervise")
@ApiOperation("用于总部调用省级下发工单信息")
@ApiImplicitParam(name = "param", value = "实体参数", required = true)
public HttpResult<Object> insertWorkorderDistributeSupervise(@RequestBody RUploadWorkOrderParam param) {
String methodDescribe = getMethodDescribe("insertWorkorderDistributeSupervise");
LogUtil.njcnDebug(log, "{},实体参数:{}", methodDescribe, param);
boolean result = irUploadWorkOrderService.insertWorkorderDistributeSupervise(param);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, result, methodDescribe);
}
/**
* 总部下发工单后的闭环操作(总部调用)
* @author cdf
* @date 2024/6/18
*/
@OperateInfo(info = LogEnum.BUSINESS_COMMON,operateType = OperateType.UPDATE)
@PostMapping("/closeWorkorderDistributeSupervise")
@ApiOperation("总部下发工单后的闭环操作")
@ApiImplicitParam(name = "param", value = "实体参数", required = true)
public HttpResult<Object> closeWorkorderDistributeSupervise(@RequestBody RUploadWorkOrderParam param) {
String methodDescribe = getMethodDescribe("closeWorkorderDistributeSupervise");
LogUtil.njcnDebug(log, "{},实体参数:{}", methodDescribe, param);
boolean result = irUploadWorkOrderService.closeWorkorderDistributeSupervise(param);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, result, methodDescribe);
}
/**
* 调用总部反馈接口(总部调用)
* @author cdf
* @date 2024/6/18
*/
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@PostMapping("/receiveFeedbackInfo")
@ApiOperation("上送反馈工单处理措施")
@ApiImplicitParam(name = "ids", value = "工单主键", required = true)
public HttpResult<Object> receiveFeedbackInfo(@RequestBody List<String> ids) {
String methodDescribe = getMethodDescribe("receiveFeedbackInfo");
LogUtil.njcnDebug(log, "{},实体参数:{}", methodDescribe, ids);
boolean result = irUploadWorkOrderService.receiveFeedbackInfo(ids);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, result, methodDescribe);
}
/**
* 分页查询
* @author cdf
* @date 2024/6/18
*/
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@PostMapping("/pageList")
@ApiOperation("分页查询工单")
@ApiImplicitParam(name = "rUploadWorkOrderQuery", value = "请求参数", required = true)
public HttpResult<Page<RUploadWorkOrderPO>> pageList(@RequestBody RUploadWorkOrderParam.RUploadWorkOrderQuery rUploadWorkOrderQuery) {
String methodDescribe = getMethodDescribe("pageList");
Page<RUploadWorkOrderPO> result = irUploadWorkOrderService.pageList(rUploadWorkOrderQuery);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, result, methodDescribe);
}
/**
* 填写反馈措施
* @author cdf
* @date 2024/6/18
*/
@OperateInfo(info = LogEnum.BUSINESS_COMMON,operateType = OperateType.UPDATE)
@PostMapping("/feedBackAdd")
@ApiOperation("填写反馈措施")
@ApiImplicitParam(name = "param", value = "实体参数", required = true)
public HttpResult<Object> feedBackAdd(@RequestBody RUploadWorkOrderParam param) {
String methodDescribe = getMethodDescribe("feedBackAdd");
LogUtil.njcnDebug(log, "{},实体参数:{}", methodDescribe, param);
boolean result = irUploadWorkOrderService.feedBackAdd(param);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, result, methodDescribe);
}
}

View File

@@ -5,23 +5,31 @@
<select id="getBaseEvaOnlineBusDetail" resultType="DimBusBarVO">
select
mid.id astId,
mid.id midId,
wire.id lineId,
mid.Name busName,
mid.voltage_Level busVoltageLevel,
dicVoltage.name busVoltageLevelName,
mid.SectionId cityOrg,
mid.Section cityOrgName,
mid.Run_Status deviceStatus,
station.Power_Id stationId,
station.Power_Name stationName,
station.Voltage_Level stationVoltageLevel
mid.id astId,
mid.voltage_Level busVoltageLevel,
mid.maintCrew,
mid.maintCrewName,
mid.Operation_Id maintOrg,
mid.Operation_Name maintOrgName,
mid.Operation_Date,
mid.Run_Status psrStateName,
station.Id stationId,
station.name stationName,
station.voltage_Level stationVoltageLevel,
'zf01' stationType
from pms_mid_ledger mid
left join pms_mid_ledger station on mid.pid = station.id
left join pms_generatrix_wire wire on mid.id = wire.Mid_Bus_Id
left join sys_dict_data dicVoltage on mid.voltage_Level = dicVoltage.id
left join pms_statation_stat station on wire.Station_Id = station.Power_Id
where mid.level = 1
<if test="param.busId!=null and param.busId!='' ">
@@ -55,10 +63,86 @@
and mid.Run_Status = #{param.deployState}
</if>
<if test="param.busName!=null and param.busName!='' ">
and mid.name = #{param.busName}
</if>
<if test="param.stationName!=null and param.stationName!='' ">
and station.name = #{param.stationName}
</if>
</select>
<select id="getDetail" resultType="DimBusBarVO">
select
mid.id midId,
wire.id lineId,
mid.Name busName,
mid.voltage_Level busVoltageLevel,
dicVoltage.name busVoltageLevelName,
mid.SectionId cityOrg,
mid.Section cityOrgName,
mid.Run_Status deviceStatus,
mid.id astId,
mid.voltage_Level busVoltageLevel,
mid.maintCrew,
mid.maintCrewName,
mid.Operation_Id maintOrg,
mid.Operation_Name maintOrgName,
mid.Operation_Date,
mid.Run_Status psrStateName,
station.Id stationId,
station.name stationName,
station.voltage_Level stationVoltageLevel,
'zf01' stationType
from pms_mid_ledger mid
left join pms_mid_ledger station on mid.pid = station.id
left join pms_generatrix_wire wire on mid.id = wire.Mid_Bus_Id
left join sys_dict_data dicVoltage on mid.voltage_Level = dicVoltage.id
where mid.level = 1
<if test="param.busId!=null and param.busId!='' ">
and mid.id = #{param.busId}
</if>
<if test="param.busName!=null and param.busName!='' ">
and mid.name = #{param.busName}
</if>
<if test="param.busIds!=null and param.busIds.size>0">
and mid.id in
<foreach collection="param.busIds" item="item" open="(" close=")" separator=",">
#{item}
</foreach>
</if>
<if test="param.onlineBusIds!=null and param.onlineBusIds.size>0">
and mid.id in
<foreach collection="param.onlineBusIds" item="item" open="(" close=")" separator=",">
#{item}
</foreach>
</if>
<if test="param.orgIds!=null and param.orgIds.size>0">
and mid.SectionId in
<foreach collection="param.orgIds" item="item" open="(" close=")" separator=",">
#{item}
</foreach>
</if>
<if test="param.deployState!=null and param.deployState!='' ">
and mid.Run_Status = #{param.deployState}
</if>
<if test="param.busName!=null and param.busName!='' ">
and mid.name = #{param.busName}
</if>
<if test="param.stationName!=null and param.stationName!='' ">
and station.name = #{param.stationName}
</if>
</select>
</mapper>

View File

@@ -20,4 +20,5 @@ public interface RUploadEvaluationDataDMapper extends BaseMapper<RUploadEvaluati
Page<DimBusBarVO> getBaseEvaOnlineBusDetail(@Param("page") Page<DimBusBarVO> page, @Param("param") DimBusBarParam param);
DimBusBarVO getDetail(@Param("param") DimBusBarParam param);
}

View File

@@ -0,0 +1,17 @@
package com.njcn.harmonic.mapper.upload;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.njcn.harmonic.pojo.po.upload.RUploadWorkOrderPO;
/**
* <p>
* 用于存储总部下发的工单信息 Mapper 接口
* </p>
*
* @author cdf
* @since 2024-06-18
*/
public interface RUploadWorkOrderMapper extends BaseMapper<RUploadWorkOrderPO> {
}

View File

@@ -32,22 +32,28 @@ public interface IEvaluationDataService extends IService<RUploadEvaluationDataD>
*/
String uploadEvaluationData(UploadParam param);
/**
*接收总部基准水平评估在运母线数量详情下穿接口
*/
Page<DimBusBarVO> getBaseEvaOnlineBusDetail(DimBusBarParam param);
PmsPage<DimBusBarVO> getBaseEvaOnlineBusDetail(DimBusBarParam param);
/**
*接收总部基准水平评估监测母线列表详情下穿接口
*/
Page<DimBusBarVO>getBaseEvaMonitorBusDetail(DimBusBarParam param);
PmsPage<DimBusBarVO>getBaseEvaMonitorBusDetail(DimBusBarParam param);
Page<DimBusBarVO> getBusListByVoltageLevel(DimBusBarParam param);
PmsPage<DimBusBarVO> getBusListByVoltageLevel(DimBusBarParam param);
PmsPage<DimBusBarVO.DimBusBarMonitorVO> getMonitorListByBus(DimBusBarParam param);
PmsPage<DimBusBarVO.DimBusBarEffectMonitorVO> getMonitorListByBus(DimBusBarParam param);
PmsPage<DimBusBarVO.DimBusBarMonitorVO> getBaseEvaBusMonitorList(DimBusBarParam param);
PmsPage<DimBusBarVO.DimBusBarMonitorAvgVO> getBusAvgListByMonitorId(DimBusBarParam param);
PmsPage<DimBusBarVO.DimBusBarMonitorVoltageVO> getBaseEvaBusMonitorList(DimBusBarParam param);
}

View File

@@ -0,0 +1,36 @@
package com.njcn.harmonic.service.upload;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.njcn.common.pojo.response.HttpResult;
import com.njcn.harmonic.pojo.param.upload.RUploadWorkOrderParam;
import com.njcn.harmonic.pojo.po.upload.RUploadWorkOrderPO;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.RequestBody;
import java.util.List;
/**
* <p>
* 用于存储总部下发的工单信息 服务类
* </p>
*
* @author cdf
* @since 2024-06-18
*/
public interface IRUploadWorkOrderService extends IService<RUploadWorkOrderPO> {
Boolean insertWorkorderDistributeSupervise(RUploadWorkOrderParam param);
Boolean closeWorkorderDistributeSupervise(RUploadWorkOrderParam param);
Boolean receiveFeedbackInfo(List<String> ids);
Page<RUploadWorkOrderPO> pageList(RUploadWorkOrderParam.RUploadWorkOrderQuery query);
Boolean feedBackAdd(RUploadWorkOrderParam param);
}

View File

@@ -13,20 +13,29 @@ 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.core.toolkit.support.SFunction;
import com.baomidou.mybatisplus.extension.api.R;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.njcn.common.pojo.exception.BusinessException;
import com.njcn.device.pms.api.LineIntegrityDataClient;
import com.njcn.device.pms.api.MonitorClient;
import com.njcn.device.pms.api.PmsMidLedgerClient;
import com.njcn.device.pms.pojo.param.DataQualityDetailsParam;
import com.njcn.device.pms.pojo.param.TerminalQueryParam;
import com.njcn.device.pms.pojo.po.Monitor;
import com.njcn.device.pms.pojo.po.PmsMidLedger;
import com.njcn.device.pq.pojo.po.RStatIntegrityD;
import com.njcn.harmonic.mapper.RStatDataVDMapper;
import com.njcn.harmonic.mapper.RStatLimitRateDMapper;
import com.njcn.harmonic.mapper.upload.*;
import com.njcn.harmonic.pojo.dto.upload.PqEvaluationCreateDTO;
import com.njcn.harmonic.pojo.dto.upload.RDimUpDTO;
import com.njcn.harmonic.pojo.param.UploadDataParam;
import com.njcn.harmonic.pojo.param.UploadParam;
import com.njcn.harmonic.pojo.param.upload.DimBusBarParam;
import com.njcn.harmonic.pojo.po.RStatDataVD;
import com.njcn.harmonic.pojo.po.day.RStatDataVDPO;
import com.njcn.harmonic.pojo.po.day.RStatLimitRateDPO;
import com.njcn.harmonic.pojo.po.upload.*;
import com.njcn.harmonic.pojo.vo.upload.DimBusBarVO;
import com.njcn.harmonic.pojo.vo.upload.UploadEvaluationDataVo;
@@ -34,6 +43,7 @@ import com.njcn.harmonic.service.upload.IEvaluationDataService;
import com.njcn.harmonic.service.upload.IRUploadDataLogService;
import com.njcn.system.api.DicDataFeignClient;
import com.njcn.system.enums.DicDataEnum;
import com.njcn.system.enums.DicDataTypeEnum;
import com.njcn.system.pojo.po.DictData;
import com.njcn.user.api.DeptFeignClient;
import com.njcn.user.pojo.po.Dept;
@@ -48,6 +58,8 @@ import org.apache.commons.collections4.ListUtils;
import org.springframework.stereotype.Service;
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.text.DecimalFormat;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
@@ -91,7 +103,11 @@ public class REvaluationDataServiceImpl extends ServiceImpl<RUploadEvaluationDat
private final IRUploadDataLogService irUploadDataLogService;
private final LineIntegrityDataClient lineIntegrityDataClient;
private final RStatLimitRateDMapper rStatLimitRateDMapper;
private final RStatDataVDMapper rStatDataVDMapper;
@Override
@@ -142,7 +158,7 @@ public class REvaluationDataServiceImpl extends ServiceImpl<RUploadEvaluationDat
else {
list = this.lambdaQuery()
.eq(RUploadEvaluationDataD::getComputeDate, param.getTime())
.in(RUploadEvaluationDataD::getStatisticalLevel, Stream.of("3", "4","5").collect(Collectors.toList()))
.in(RUploadEvaluationDataD::getStatisticalLevel, Stream.of("3", "4", "5").collect(Collectors.toList()))
.list();
}
@@ -192,34 +208,34 @@ public class REvaluationDataServiceImpl extends ServiceImpl<RUploadEvaluationDat
//获取返回结果
List<String> l = dtoList.stream().map(PqEvaluationCreateDTO::getId).collect(Collectors.toList());
returnInformation(i, l, send,resultLog,resultFlag,localDate);
returnInformation(i, l, send, resultLog, resultFlag, localDate);
}
if(resultFlag.get()){
resultLog.append(" 上送" + list.size()+ "条数据成功");
assUploadLog(localDate,resultLog,resultFlag);
if (resultFlag.get()) {
resultLog.append(" 上送" + list.size() + "条数据成功");
assUploadLog(localDate, resultLog, resultFlag);
}
return "上送成功:成功数据" + list.size() + "";
}
private void assUploadLog(LocalDate statisticDate,StrBuilder msg,AtomicBoolean resultFlag){
private void assUploadLog(LocalDate statisticDate, StrBuilder msg, AtomicBoolean resultFlag) {
RUploadDataLog rUploadDataLog = new RUploadDataLog();
rUploadDataLog.setStatisticDate(statisticDate);
rUploadDataLog.setBigType(0);
rUploadDataLog.setSmallType(0);
rUploadDataLog.setCreateTime(LocalDateTime.now());
rUploadDataLog.setResult(resultFlag.get()?1:0);
rUploadDataLog.setResult(resultFlag.get() ? 1 : 0);
rUploadDataLog.setResultMsg(msg.toString());
irUploadDataLogService.saveOrUpdateByMultiId(rUploadDataLog);
}
@Override
public Page<DimBusBarVO> getBaseEvaOnlineBusDetail(DimBusBarParam param) {
public PmsPage<DimBusBarVO> getBaseEvaOnlineBusDetail(DimBusBarParam param) {
PmsPage<DimBusBarVO> pmsPage = new PmsPage<>(param.getPageNum(), param.getPageSize());
List<String> temBusIds = new ArrayList<>();
LocalDate begin = LocalDate.parse(param.getStartTime());
if (param.getStatType().equals(DicDataEnum.STATISTICAL_TYPE_D.getCode())) {
//具体日期投运,监测台账查询
@@ -228,7 +244,7 @@ public class REvaluationDataServiceImpl extends ServiceImpl<RUploadEvaluationDat
.eq(PmsRunStatisticD::getStatisticDate, begin).eq(PmsRunStatisticD::getDeptId, param.getOrgId());
PmsRunStatisticD pmsRunStatisticD = pmsRunStatisticDMapper.selectOne(dayLam);
if (Objects.nonNull(pmsRunStatisticD)) {
temBusIds = new ArrayList<>(Arrays.asList(pmsRunStatisticD.getRunBusIds().split(StrUtil.COMMA)));
temBusIds = new ArrayList<>(Arrays.asList(pmsRunStatisticD.getRunBusIds().split(StrUtil.COMMA)));
}
} else if (param.getStatType().equals(DicDataEnum.STATISTICAL_TYPE_M.getCode())) {
@@ -238,7 +254,7 @@ public class REvaluationDataServiceImpl extends ServiceImpl<RUploadEvaluationDat
.eq(PmsRunStatisticM::getStatisticDate, begin).eq(PmsRunStatisticM::getDeptId, param.getOrgId());
PmsRunStatisticM pmsRunStatisticM = pmsRunStatisticMMapper.selectOne(dayLam);
if (Objects.nonNull(pmsRunStatisticM)) {
temBusIds = new ArrayList<>(Arrays.asList(pmsRunStatisticM.getRunBusIds().split(StrUtil.COMMA)));
temBusIds = new ArrayList<>(Arrays.asList(pmsRunStatisticM.getRunBusIds().split(StrUtil.COMMA)));
}
} else if (param.getStatType().equals(DicDataEnum.STATISTICAL_TYPE_Y.getCode())) {
@@ -248,62 +264,135 @@ public class REvaluationDataServiceImpl extends ServiceImpl<RUploadEvaluationDat
.eq(PmsRunStatisticY::getStatisticDate, begin).eq(PmsRunStatisticY::getDeptId, param.getNodeId());
PmsRunStatisticY pmsRunStatisticY = pmsRunStatisticYMapper.selectOne(dayLam);
if (Objects.nonNull(pmsRunStatisticY)) {
temBusIds = new ArrayList<>(Arrays.asList(pmsRunStatisticY.getOnlineBusMidIds().split(StrUtil.COMMA)));
temBusIds = new ArrayList<>(Arrays.asList(pmsRunStatisticY.getOnlineBusMidIds().split(StrUtil.COMMA)));
}
}
if (CollectionUtil.isEmpty(temBusIds)) {
return new Page<>();
return new PmsPage<>();
}
param.setOnlineBusIds(temBusIds);
return this.baseMapper.getBaseEvaOnlineBusDetail(new Page<>(param.getPageNum(), param.getPageSize()), param);
Page<DimBusBarVO> page = this.baseMapper.getBaseEvaOnlineBusDetail(new Page<>(param.getPageNum(), param.getPageSize()), param);
if (CollUtil.isNotEmpty(page.getRecords())) {
List<DictData> voltageDic = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.DEV_VOLTAGE.getCode()).getData();
Map<String, DictData> voltageMap = voltageDic.stream().collect(Collectors.toMap(DictData::getId, Function.identity()));
List<DictData> monitorDic = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.LINE_STATE.getCode()).getData();
Map<String, DictData> monitorDicMap = monitorDic.stream().collect(Collectors.toMap(DictData::getId, Function.identity()));
for (DimBusBarVO dimBusBarVO : page.getRecords()) {
dimBusBarVO.setBusVoltageLevelName(voltageMap.get(dimBusBarVO.getBusVoltageLevel()).getName());
dimBusBarVO.setStationVoltageLevelName(voltageMap.get(dimBusBarVO.getStationVoltageLevel()).getName());
dimBusBarVO.setBusVoltageLevel(String.format("%02d", voltageMap.get(dimBusBarVO.getBusVoltageLevel()).getAlgoDescribe()));
dimBusBarVO.setStationVoltageLevel(String.format("%02d", voltageMap.get(dimBusBarVO.getStationVoltageLevel()).getAlgoDescribe()));
dimBusBarVO.setPsrStateName(monitorDicMap.get(dimBusBarVO.getPsrStateName()).getName());
}
}
BeanUtil.copyProperties(page, pmsPage);
pmsPage.setList(page.getRecords());
return pmsPage;
}
@Override
public Page<DimBusBarVO> getBaseEvaMonitorBusDetail(DimBusBarParam param) {
public PmsPage<DimBusBarVO> getBaseEvaMonitorBusDetail(DimBusBarParam param) {
PmsPage<DimBusBarVO> pmsPage = new PmsPage<>(param.getPageNum(), param.getPageSize());
List<String> temBusIds = new ArrayList<>();
Map<String, String> effectMap = new HashMap<>();
LocalDate begin = LocalDate.parse(param.getStartTime());
if (param.getStatType().equals(DicDataEnum.STATISTICAL_TYPE_D.getCode())) {
//具体日期投运,监测台账查询
LambdaQueryWrapper<PmsRunStatisticD> dayLam = new LambdaQueryWrapper<>();
dayLam.select(PmsRunStatisticD::getOnlineBusIds)
dayLam.select(PmsRunStatisticD::getOnlineBusMidIds)
.eq(PmsRunStatisticD::getStatisticDate, begin)
.eq(PmsRunStatisticD::getDeptId, param.getOrgId());
PmsRunStatisticD pmsRunStatisticD = pmsRunStatisticDMapper.selectOne(dayLam);
if (Objects.nonNull(pmsRunStatisticD)) {
temBusIds = new ArrayList<>(Arrays.asList(pmsRunStatisticD.getOnlineBusIds().split(StrUtil.COMMA)));
if (StrUtil.isNotBlank(pmsRunStatisticD.getOnlineBusMidIds())) {
temBusIds = new ArrayList<>(Arrays.asList(pmsRunStatisticD.getOnlineBusMidIds().split(StrUtil.COMMA)));
List<RDimBusUpD> rDimBusUpDList = rDimBusUpDMapper.selectList(new LambdaQueryWrapper<RDimBusUpD>().in(RDimBusUpD::getMidBusId, temBusIds)
.eq(RDimBusUpD::getStatisticDate, param.getStartTime()).eq(RDimBusUpD::getPhasicType, "A"));
effectMap = rDimBusUpDList.stream().collect(Collectors.toMap(RDimBusUpD::getBusId, RDimBusUpD::getEffectIds));
}
}
} else if (param.getStatType().equals(DicDataEnum.STATISTICAL_TYPE_M.getCode())) {
//具体日期投运,监测台账查询
LambdaQueryWrapper<PmsRunStatisticM> dayLam = new LambdaQueryWrapper<>();
dayLam.select(PmsRunStatisticM::getOnlineBusIds)
dayLam.select(PmsRunStatisticM::getOnlineBusMidIds)
.eq(PmsRunStatisticM::getStatisticDate, begin).eq(PmsRunStatisticM::getDeptId, param.getOrgId());
PmsRunStatisticM pmsRunStatisticM = pmsRunStatisticMMapper.selectOne(dayLam);
if (Objects.nonNull(pmsRunStatisticM)) {
temBusIds = new ArrayList<>(Arrays.asList(pmsRunStatisticM.getOnlineBusIds().split(StrUtil.COMMA)));
if (StrUtil.isNotBlank(pmsRunStatisticM.getOnlineBusMidIds())) {
temBusIds = new ArrayList<>(Arrays.asList(pmsRunStatisticM.getOnlineBusMidIds().split(StrUtil.COMMA)));
List<RDimBusUpM> rDimBusUpDList = rDimBusUpMMapper.selectList(new LambdaQueryWrapper<RDimBusUpM>().in(RDimBusUpM::getMidBusId, temBusIds)
.eq(RDimBusUpM::getStatisticDate, param.getStartTime()).eq(RDimBusUpM::getPhasicType, "A"));
effectMap = rDimBusUpDList.stream().collect(Collectors.toMap(RDimBusUpM::getBusId, RDimBusUpM::getEffectIds));
}
}
} else if (param.getStatType().equals(DicDataEnum.STATISTICAL_TYPE_Y.getCode())) {
//具体日期投运,监测台账查询
LambdaQueryWrapper<PmsRunStatisticY> dayLam = new LambdaQueryWrapper<>();
dayLam.select(PmsRunStatisticY::getOnlineBusIds)
dayLam.select(PmsRunStatisticY::getOnlineBusMidIds)
.eq(PmsRunStatisticY::getStatisticDate, begin).eq(PmsRunStatisticY::getDeptId, param.getNodeId());
PmsRunStatisticY pmsRunStatisticY = pmsRunStatisticYMapper.selectOne(dayLam);
if (Objects.nonNull(pmsRunStatisticY)) {
temBusIds = new ArrayList<>(Arrays.asList(pmsRunStatisticY.getOnlineBusIds().split(StrUtil.COMMA)));
if (StrUtil.isNotBlank(pmsRunStatisticY.getOnlineBusMidIds())) {
temBusIds = new ArrayList<>(Arrays.asList(pmsRunStatisticY.getOnlineBusMidIds().split(StrUtil.COMMA)));
List<RDimBusUpY> rDimBusUpDList = rDimBusUpYMapper.selectList(new LambdaQueryWrapper<RDimBusUpY>().in(RDimBusUpY::getMidBusId, temBusIds)
.eq(RDimBusUpY::getStatisticDate, param.getStartTime()).eq(RDimBusUpY::getPhasicType, "A"));
effectMap = rDimBusUpDList.stream().collect(Collectors.toMap(RDimBusUpY::getBusId, RDimBusUpY::getEffectIds));
}
}
}
if (CollectionUtil.isEmpty(temBusIds)) {
return new Page<>();
return new PmsPage<>();
}
param.setOnlineBusIds(temBusIds);
return this.baseMapper.getBaseEvaOnlineBusDetail(new Page<>(param.getPageNum(), param.getPageSize()), param);
Page<DimBusBarVO> page = this.baseMapper.getBaseEvaOnlineBusDetail(new Page<>(param.getPageNum(), param.getPageSize()), param);
if (CollUtil.isNotEmpty(page.getRecords())) {
List<DictData> voltageDic = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.DEV_VOLTAGE.getCode()).getData();
Map<String, DictData> voltageMap = voltageDic.stream().collect(Collectors.toMap(DictData::getId, Function.identity()));
List<DictData> monitorDic = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.LINE_STATE.getCode()).getData();
Map<String, DictData> monitorDicMap = monitorDic.stream().collect(Collectors.toMap(DictData::getId, Function.identity()));
for (DimBusBarVO dimBusBarVO : page.getRecords()) {
dimBusBarVO.setBusVoltageLevelName(voltageMap.get(dimBusBarVO.getBusVoltageLevel()).getName());
dimBusBarVO.setStationVoltageLevelName(voltageMap.get(dimBusBarVO.getStationVoltageLevel()).getName());
dimBusBarVO.setBusVoltageLevel(String.format("%02d", voltageMap.get(dimBusBarVO.getBusVoltageLevel()).getAlgoDescribe()));
dimBusBarVO.setStationVoltageLevel(String.format("%02d", voltageMap.get(dimBusBarVO.getStationVoltageLevel()).getAlgoDescribe()));
dimBusBarVO.setPsrStateName(monitorDicMap.get(dimBusBarVO.getPsrStateName()).getName());
String tem = effectMap.get(dimBusBarVO.getLineId());
int count = 0;
if (tem.length() > 0) {
for (int i = 0; i < tem.length(); i++) {
if (tem.charAt(i) == ',') {
count++;
}
}
}
dimBusBarVO.setBusEfectiveMnitorNum(count);
}
}
BeanUtil.copyProperties(page, pmsPage);
pmsPage.setList(page.getRecords());
return pmsPage;
}
@Override
public Page<DimBusBarVO> getBusListByVoltageLevel(DimBusBarParam param) {
public PmsPage<DimBusBarVO> getBusListByVoltageLevel(DimBusBarParam param) {
PmsPage<DimBusBarVO> result = new PmsPage<>(param.getPageNum(), param.getPageSize());
List<String> temBusIds = new ArrayList<>();
List<RDimUpDTO> rDimUpDTOList = new ArrayList<>();
@@ -320,12 +409,20 @@ public class REvaluationDataServiceImpl extends ServiceImpl<RUploadEvaluationDat
}
temBusIds = this.busTargetAss(param, temBusIds, rDimUpDTOList);
if (CollectionUtil.isEmpty(temBusIds)) {
return new Page<>();
return result;
}
param.setOnlineBusIds(temBusIds);
Page<DimBusBarVO> page = this.baseMapper.getBaseEvaOnlineBusDetail(new Page<>(param.getPageNum(), param.getPageSize()), param);
if (CollectionUtil.isNotEmpty(page.getRecords())) {
Map<String, RDimUpDTO> map = rDimUpDTOList.stream().collect(Collectors.toMap(RDimUpDTO::getBusMidId, Function.identity()));
List<DictData> voltageDic = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.DEV_VOLTAGE.getCode()).getData();
Map<String, DictData> voltageMap = voltageDic.stream().collect(Collectors.toMap(DictData::getId, Function.identity()));
List<DictData> monitorDic = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.LINE_STATE.getCode()).getData();
Map<String, DictData> monitorDicMap = monitorDic.stream().collect(Collectors.toMap(DictData::getId, Function.identity()));
page.getRecords().forEach(it -> {
if (map.containsKey(it.getAstId())) {
RDimUpDTO rDimUpDTO = map.get(it.getAstId());
@@ -333,74 +430,309 @@ public class REvaluationDataServiceImpl extends ServiceImpl<RUploadEvaluationDat
it.setMonitorId(rDimUpDTO.getEffectId());
it.setIndexAvgValue(rDimUpDTO.getV().toString());
}
it.setBusVoltageLevelName(voltageMap.get(it.getBusVoltageLevel()).getName());
it.setStationVoltageLevelName(voltageMap.get(it.getStationVoltageLevel()).getName());
it.setBusVoltageLevel(String.format("%02d", voltageMap.get(it.getBusVoltageLevel()).getAlgoDescribe()));
it.setStationVoltageLevel(String.format("%02d", voltageMap.get(it.getStationVoltageLevel()).getAlgoDescribe()));
it.setPsrStateName(monitorDicMap.get(it.getPsrStateName()).getName());
});
}
return page;
}
@Override
public PmsPage<DimBusBarVO.DimBusBarMonitorVO> getMonitorListByBus(DimBusBarParam param) {
if(StrUtil.isBlank(param.getBusId())){
return new PmsPage<>();
}
PmsPage<DimBusBarVO.DimBusBarMonitorVO> result = new PmsPage<>(param.getPageNum(),param.getPageSize());
List<RDimUpDTO> rDimUpDTOList = new ArrayList<>();
List<String> midBusIds = this.busTargetAss(param, Stream.of(param.getBusId()).collect(Collectors.toList()), rDimUpDTOList);
if(CollectionUtil.isEmpty(midBusIds)){
return new PmsPage<>();
}
List<PmsMidLedger> pmsMidLedgerList = pmsMidLedgerClient.getPmsMidLedgerList(midBusIds).getData();
if(CollectionUtil.isEmpty(pmsMidLedgerList)){
return new PmsPage<>();
}
Map<String,PmsMidLedger> midLedgerMap = pmsMidLedgerList.stream().collect(Collectors.toMap(PmsMidLedger::getId,Function.identity()));
List<String> effectIds = rDimUpDTOList.stream().map(RDimUpDTO::getEffectIds).filter(Objects::nonNull).collect(Collectors.toList());
List<String> effectId = rDimUpDTOList.stream().map(RDimUpDTO::getEffectId).filter(Objects::nonNull).collect(Collectors.toList());
Map<String,RDimUpDTO> busMap = rDimUpDTOList.stream().collect(Collectors.toMap(RDimUpDTO::getBusId,Function.identity()));
List<String> monitorIds = new ArrayList<>();
effectIds.forEach(it-> monitorIds.addAll(Arrays.asList(it.split(StrUtil.COMMA))));
TerminalQueryParam terminalQueryParam = new TerminalQueryParam();
terminalQueryParam.setMonitorIds(monitorIds);
Page<Monitor> page = monitorClient.getMonitorPage(terminalQueryParam).getData();
List<DimBusBarVO.DimBusBarMonitorVO> temList = new ArrayList<>();
page.getRecords().forEach(it->{
DimBusBarVO.DimBusBarMonitorVO tem = new DimBusBarVO.DimBusBarMonitorVO();
tem.setMonitorId(it.getMonitorId());
RDimUpDTO rDimUpDTO = busMap.get(it.getLineId());
PmsMidLedger pmsMidLedger = midLedgerMap.get(rDimUpDTO.getBusMidId());
tem.setBusId(pmsMidLedger.getId());
tem.setBusName(pmsMidLedger.getName());
tem.setId(IdUtil.simpleUUID());
tem.setCityOrg(pmsMidLedger.getCityOrg());
tem.setCityOrgName(pmsMidLedger.getCityOrgName());
tem.setMaintOrg(pmsMidLedger.getSectionId());
tem.setMaintOrgName(pmsMidLedger.getSection());
tem.setStatDate(param.getStatDate());
tem.setStatus("01");
tem.setStatusName("投运");
if(effectId.contains(it.getId())){
tem.setWhetherOptimal("");
tem.setWhetherOptimalName(it.getName());
}
tem.setMonitorName(it.getName());
temList.add(tem);
});
result.setTotal(page.getTotal());
result.setList(temList);
BeanUtil.copyProperties(page, result);
result.setList(page.getRecords());
return result;
}
@Override
public PmsPage<DimBusBarVO.DimBusBarMonitorVoltageVO> getBaseEvaBusMonitorList(DimBusBarParam param) {
return null;
public PmsPage<DimBusBarVO.DimBusBarEffectMonitorVO> getMonitorListByBus(DimBusBarParam param) {
PmsPage<DimBusBarVO.DimBusBarEffectMonitorVO> result = new PmsPage<>(param.getPageNum(), param.getPageSize());
if (StrUtil.isBlank(param.getBusId())) {
return result;
}
List<DimBusBarVO.DimBusBarEffectMonitorVO> voList = new ArrayList<>();
Page<DimBusBarVO> page = this.baseMapper.getBaseEvaOnlineBusDetail(new Page<>(param.getPageNum(), param.getPageSize()), param);
if (CollUtil.isNotEmpty(page.getRecords())) {
Map<String, String> effectMap = new HashMap<>();
if (param.getStatType().equals(DicDataEnum.STATISTICAL_TYPE_D.getCode())) {
//具体日期投运,监测台账查询
List<RDimBusUpD> rDimBusUpDList = rDimBusUpDMapper.selectList(new LambdaQueryWrapper<RDimBusUpD>().eq(RDimBusUpD::getMidBusId, param.getBusId())
.eq(RDimBusUpD::getStatisticDate, param.getStartTime()).eq(RDimBusUpD::getPhasicType, "A"));
effectMap = rDimBusUpDList.stream().collect(Collectors.toMap(RDimBusUpD::getBusId, RDimBusUpD::getEffectIds));
} else if (param.getStatType().equals(DicDataEnum.STATISTICAL_TYPE_M.getCode())) {
List<RDimBusUpM> rDimBusUpDList = rDimBusUpMMapper.selectList(new LambdaQueryWrapper<RDimBusUpM>().eq(RDimBusUpM::getMidBusId, param.getBusId())
.eq(RDimBusUpM::getStatisticDate, param.getStartTime()).eq(RDimBusUpM::getPhasicType, "A"));
effectMap = rDimBusUpDList.stream().collect(Collectors.toMap(RDimBusUpM::getBusId, RDimBusUpM::getEffectIds));
} else if (param.getStatType().equals(DicDataEnum.STATISTICAL_TYPE_Y.getCode())) {
List<RDimBusUpY> rDimBusUpDList = rDimBusUpYMapper.selectList(new LambdaQueryWrapper<RDimBusUpY>().eq(RDimBusUpY::getMidBusId, param.getBusId())
.eq(RDimBusUpY::getStatisticDate, param.getStartTime()).eq(RDimBusUpY::getPhasicType, "A"));
effectMap = rDimBusUpDList.stream().collect(Collectors.toMap(RDimBusUpY::getBusId, RDimBusUpY::getEffectIds));
}
DimBusBarVO dimBusBarVO = page.getRecords().get(0);
if (effectMap.containsKey(dimBusBarVO.getLineId())) {
String effectIds = effectMap.get(dimBusBarVO.getLineId());
if (StrUtil.isNotBlank(effectIds)) {
List<String> monitorIds = new ArrayList<>(Arrays.asList(effectIds.split(StrUtil.COMMA)));
List<Monitor> monitorList = monitorClient.getMonitorList(monitorIds).getData();
if (CollUtil.isNotEmpty(monitorList)) {
List<String> ids = monitorList.stream().map(Monitor::getId).collect(Collectors.toList());
QueryWrapper<RStatLimitRateDPO> queryWrapper = new QueryWrapper<>();
harmMonitorTarget(param, queryWrapper);
queryWrapper.in("my_index", ids);
List<RStatLimitRateDPO> rStatLimitRateDPOList = rStatLimitRateDMapper.selectList(queryWrapper);
if (CollUtil.isNotEmpty(rStatLimitRateDPOList)) {
Map<String, List<RStatLimitRateDPO>> map = rStatLimitRateDPOList.stream().collect(Collectors.groupingBy(RStatLimitRateDPO::getLineId));
List<DictData> voltageDic = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.DEV_VOLTAGE.getCode()).getData();
Map<String, DictData> voltageMap = voltageDic.stream().collect(Collectors.toMap(DictData::getId, Function.identity()));
for (Monitor monitor : monitorList) {
if (map.containsKey(monitor.getId())) {
DimBusBarVO.DimBusBarEffectMonitorVO vo = new DimBusBarVO.DimBusBarEffectMonitorVO();
vo.setBusId(dimBusBarVO.getMidId());
vo.setBusName(dimBusBarVO.getBusName());
vo.setBusVoltageLevelName(voltageMap.get(dimBusBarVO.getBusVoltageLevel()).getName());
vo.setBusVoltageLevel(String.format("%02d", voltageMap.get(dimBusBarVO.getBusVoltageLevel()).getAlgoDescribe()));
vo.setCityOrg(dimBusBarVO.getCityOrg());
vo.setCityOrgName(dimBusBarVO.getCityOrgName());
vo.setMaintOrg(dimBusBarVO.getMaintOrg());
vo.setMaintOrgName(dimBusBarVO.getMaintOrgName());
vo.setMonitorId(monitor.getMonitorId());
vo.setMonitorName(monitor.getName());
vo.setStationId(dimBusBarVO.getStationId());
vo.setStationName(dimBusBarVO.getStationName());
vo.setStatus("01");
vo.setStatusName("运行");
voList.add(vo);
}
}
}
}
}
}
}
result.setTotal(voList.size());
result.setList(voList);
return result;
}
@Override
public PmsPage<DimBusBarVO.DimBusBarMonitorVO> getBaseEvaBusMonitorList(DimBusBarParam param) {
PmsPage<DimBusBarVO.DimBusBarMonitorVO> result = new PmsPage<>(param.getPageNum(), param.getPageSize());
if (StrUtil.isBlank(param.getBusId())) {
return result;
}
Page<DimBusBarVO> page = this.baseMapper.getBaseEvaOnlineBusDetail(new Page<>(param.getPageNum(), param.getPageSize()), param);
if (CollUtil.isNotEmpty(page.getRecords())) {
List<DimBusBarVO.DimBusBarMonitorVO> voList = new ArrayList<>();
DimBusBarVO dimBusBarVO = page.getRecords().get(0);
Map<String, String> effectMap = new HashMap<>();
if (param.getStatType().equals(DicDataEnum.STATISTICAL_TYPE_D.getCode())) {
//具体日期投运,监测台账查询
List<RDimBusUpD> rDimBusUpDList = rDimBusUpDMapper.selectList(new LambdaQueryWrapper<RDimBusUpD>().eq(RDimBusUpD::getMidBusId, param.getBusId())
.eq(RDimBusUpD::getStatisticDate, param.getStartTime()).eq(RDimBusUpD::getPhasicType, "A"));
effectMap = rDimBusUpDList.stream().collect(Collectors.toMap(RDimBusUpD::getBusId, RDimBusUpD::getEffectIds));
} else if (param.getStatType().equals(DicDataEnum.STATISTICAL_TYPE_M.getCode())) {
List<RDimBusUpM> rDimBusUpDList = rDimBusUpMMapper.selectList(new LambdaQueryWrapper<RDimBusUpM>().eq(RDimBusUpM::getMidBusId, param.getBusId())
.eq(RDimBusUpM::getStatisticDate, param.getStartTime()).eq(RDimBusUpM::getPhasicType, "A"));
effectMap = rDimBusUpDList.stream().collect(Collectors.toMap(RDimBusUpM::getBusId, RDimBusUpM::getEffectIds));
} else if (param.getStatType().equals(DicDataEnum.STATISTICAL_TYPE_Y.getCode())) {
List<RDimBusUpY> rDimBusUpDList = rDimBusUpYMapper.selectList(new LambdaQueryWrapper<RDimBusUpY>().eq(RDimBusUpY::getMidBusId, param.getBusId())
.eq(RDimBusUpY::getStatisticDate, param.getStartTime()).eq(RDimBusUpY::getPhasicType, "A"));
effectMap = rDimBusUpDList.stream().collect(Collectors.toMap(RDimBusUpY::getBusId, RDimBusUpY::getEffectIds));
}
if (effectMap.containsKey(dimBusBarVO.getLineId())) {
String effectIds = effectMap.get(dimBusBarVO.getLineId());
if (StrUtil.isNotBlank(effectIds)) {
List<String> monitorIds = new ArrayList<>(Arrays.asList(effectIds.split(StrUtil.COMMA)));
List<Monitor> monitorList = monitorClient.getMonitorList(monitorIds).getData();
if (CollUtil.isNotEmpty(monitorList)) {
List<String> ids = monitorList.stream().map(Monitor::getId).collect(Collectors.toList());
QueryWrapper<RStatLimitRateDPO> queryWrapper = new QueryWrapper<>();
harmMonitorTarget(param, queryWrapper);
queryWrapper.in("my_index", ids);
List<RStatLimitRateDPO> rStatLimitRateDPOList = rStatLimitRateDMapper.selectList(queryWrapper);
if (CollUtil.isNotEmpty(rStatLimitRateDPOList)) {
Map<String, List<RStatLimitRateDPO>> map = rStatLimitRateDPOList.stream().collect(Collectors.groupingBy(RStatLimitRateDPO::getLineId));
if (CollUtil.isNotEmpty(monitorList)) {
DataQualityDetailsParam dataQualityDetailsParam = new DataQualityDetailsParam();
dataQualityDetailsParam.setCheckRules(monitorIds);
dataQualityDetailsParam.setStartTime(param.getStartTime());
dataQualityDetailsParam.setEndTime(param.getEndTime());
List<RStatIntegrityD> rStatIntegrityDList = lineIntegrityDataClient.getIntegrityData(dataQualityDetailsParam).getData();
Map<String, List<RStatIntegrityD>> stringListMap = rStatIntegrityDList.stream().collect(Collectors.groupingBy(RStatIntegrityD::getLineIndex));
List<DictData> voltageDic = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.DEV_VOLTAGE.getCode()).getData();
Map<String, DictData> voltageMap = voltageDic.stream().collect(Collectors.toMap(DictData::getId, Function.identity()));
for (Monitor monitor : monitorList) {
if (map.containsKey(monitor.getId())) {
DimBusBarVO.DimBusBarMonitorVO tem = new DimBusBarVO.DimBusBarMonitorVO();
tem.setMonitorId(monitor.getMonitorId());
if (monitor.getId().equals(monitorIds.get(monitorIds.size() - 1))) {
tem.setWhetherOptimal("1");
tem.setWhetherOptimalName("");
} else {
tem.setWhetherOptimal("0");
tem.setWhetherOptimalName("");
}
List<RStatIntegrityD> temR = stringListMap.get(monitor.getId());
int due = temR.stream().mapToInt(RStatIntegrityD::getDueTime).sum();
int real = temR.stream().mapToInt(RStatIntegrityD::getRealTime).sum();
tem.setActualCollectNum(real);
tem.setExpectCollectNum(due);
if (due == 0) {
tem.setDataFullRate(0.000f);
} else {
DecimalFormat decimalFormat = new DecimalFormat("#0.000");
String rate = decimalFormat.format((float) real / due * 100);
tem.setDataFullRate(Float.valueOf(rate));
}
tem.setBusId(dimBusBarVO.getMidId());
tem.setBusName(dimBusBarVO.getBusName());
tem.setId(IdUtil.simpleUUID());
tem.setCityOrg(dimBusBarVO.getCityOrg());
tem.setCityOrgName(dimBusBarVO.getCityOrgName());
tem.setMaintOrg(dimBusBarVO.getCityOrg());
tem.setMaintOrgName(dimBusBarVO.getCityOrgName());
tem.setStationId(dimBusBarVO.getStationId());
tem.setStationName(dimBusBarVO.getStationName());
tem.setBusVoltageLevelName(voltageMap.get(dimBusBarVO.getBusVoltageLevel()).getName());
tem.setBusVoltageLevel(String.format("%02d", voltageMap.get(dimBusBarVO.getBusVoltageLevel()).getAlgoDescribe()));
tem.setStatus("01");
tem.setStatusName("运行");
tem.setMonitorName(monitor.getName());
tem.setStatDate(param.getStatDate());
voList.add(tem);
}
result.setList(voList);
result.setTotal(voList.size());
}
}
}
}
}
}
}
return result;
}
@Override
public PmsPage<DimBusBarVO.DimBusBarMonitorAvgVO> getBusAvgListByMonitorId(DimBusBarParam param) {
PmsPage<DimBusBarVO.DimBusBarMonitorAvgVO> result = new PmsPage<>(param.getPageNum(), param.getPageSize());
if (StrUtil.isBlank(param.getBusId())) {
return result;
}
List<DimBusBarVO.DimBusBarMonitorAvgVO> voList = new ArrayList<>();
Page<DimBusBarVO> page = this.baseMapper.getBaseEvaOnlineBusDetail(new Page<>(param.getPageNum(), param.getPageSize()), param);
if (CollUtil.isNotEmpty(page.getRecords())) {
Map<String, String> effectMap = new HashMap<>();
if (param.getStatType().equals(DicDataEnum.STATISTICAL_TYPE_D.getCode())) {
//具体日期投运,监测台账查询
List<RDimBusUpD> rDimBusUpDList = rDimBusUpDMapper.selectList(new LambdaQueryWrapper<RDimBusUpD>().eq(RDimBusUpD::getMidBusId, param.getBusId())
.eq(RDimBusUpD::getStatisticDate, param.getStartTime()).eq(RDimBusUpD::getPhasicType, "A"));
effectMap = rDimBusUpDList.stream().collect(Collectors.toMap(RDimBusUpD::getBusId, RDimBusUpD::getEffectIds));
} else if (param.getStatType().equals(DicDataEnum.STATISTICAL_TYPE_M.getCode())) {
List<RDimBusUpM> rDimBusUpDList = rDimBusUpMMapper.selectList(new LambdaQueryWrapper<RDimBusUpM>().eq(RDimBusUpM::getMidBusId, param.getBusId())
.eq(RDimBusUpM::getStatisticDate, param.getStartTime()).eq(RDimBusUpM::getPhasicType, "A"));
effectMap = rDimBusUpDList.stream().collect(Collectors.toMap(RDimBusUpM::getBusId, RDimBusUpM::getEffectIds));
} else if (param.getStatType().equals(DicDataEnum.STATISTICAL_TYPE_Y.getCode())) {
List<RDimBusUpY> rDimBusUpDList = rDimBusUpYMapper.selectList(new LambdaQueryWrapper<RDimBusUpY>().eq(RDimBusUpY::getMidBusId, param.getBusId())
.eq(RDimBusUpY::getStatisticDate, param.getStartTime()).eq(RDimBusUpY::getPhasicType, "A"));
effectMap = rDimBusUpDList.stream().collect(Collectors.toMap(RDimBusUpY::getBusId, RDimBusUpY::getEffectIds));
}
DimBusBarVO dimBusBarVO = page.getRecords().get(0);
if (effectMap.containsKey(dimBusBarVO.getLineId())) {
String effectIds = effectMap.get(dimBusBarVO.getLineId());
if (StrUtil.isNotBlank(effectIds)) {
List<String> monitorIds = new ArrayList<>(Arrays.asList(effectIds.split(StrUtil.COMMA)));
List<Monitor> monitorList = monitorClient.getMonitorList(monitorIds).getData();
if (CollUtil.isNotEmpty(monitorList)) {
List<String> ids = monitorList.stream().map(Monitor::getId).collect(Collectors.toList());
Map<String, List<RStatLimitRateDPO>> map;
if (StrUtil.isNotBlank(param.getIndexType())) {
QueryWrapper<RStatLimitRateDPO> queryWrapper = new QueryWrapper<>();
harmMonitorTarget(param, queryWrapper);
queryWrapper.in("my_index", ids);
List<RStatLimitRateDPO> rStatLimitRateDPOList = rStatLimitRateDMapper.selectList(queryWrapper);
if (CollUtil.isNotEmpty(rStatLimitRateDPOList)) {
map = rStatLimitRateDPOList.stream().collect(Collectors.groupingBy(RStatLimitRateDPO::getLineId));
} else {
map = new HashMap<>();
}
monitorList = monitorList.stream().filter(item -> map.containsKey(item.getId())).collect(Collectors.toList());
}
if (CollUtil.isNotEmpty(monitorList)) {
List<String> temIds = monitorList.stream().map(Monitor::getId).collect(Collectors.toList());
QueryWrapper<RStatDataVD> queryWrapper = new QueryWrapper<>();
queryWrapper.select("avg(rms) as rms,line_id").in("line_id", temIds).between("time", param.getStartTime(), param.getEndTime()).in("phasic_type", Stream.of("A", "B", "C").collect(Collectors.toList())).eq("value_type", "AVG").groupBy("line_id");
List<RStatDataVD> rStatDataVDPOList = rStatDataVDMapper.selectList(queryWrapper);
Map<String, RStatDataVD> rStatDataVDMap = rStatDataVDPOList.stream().collect(Collectors.toMap(RStatDataVD::getLineId, Function.identity()));
List<DictData> dictDataList = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.DEV_CONNECT.getCode()).getData();
Map<String, DictData> terminalWireMap = dictDataList.stream().collect(Collectors.toMap(DictData::getId, Function.identity()));
for (Monitor monitor : monitorList) {
DimBusBarVO.DimBusBarMonitorAvgVO vo = new DimBusBarVO.DimBusBarMonitorAvgVO();
vo.setBusName(dimBusBarVO.getBusName());
vo.setCityOrg(dimBusBarVO.getCityOrg());
vo.setCityOrgName(dimBusBarVO.getCityOrgName());
vo.setMaintOrg(dimBusBarVO.getMaintOrg());
vo.setMaintOrgName(dimBusBarVO.getMaintOrgName());
vo.setMonitorId(monitor.getMonitorId());
vo.setMonitorName(monitor.getName());
vo.setStationId(dimBusBarVO.getStationId());
vo.setStationName(dimBusBarVO.getStationName());
vo.setSeq(CollUtil.isNotEmpty(param.getSeqs()) ? String.join(StrUtil.COMMA, param.getSeqs()):"");
vo.setHarmonicNum(Objects.nonNull(param.getHarmonicNum())? param.getHarmonicNum().toString():"");
vo.setStatDate(param.getStatDate());
vo.setStatus("01");
vo.setStatusName("运行");
if (rStatDataVDMap.containsKey(monitor.getId())) {
RStatDataVD rStatDataVD = rStatDataVDMap.get(monitor.getId());
vo.setLineVoltage(rStatDataVD.getRms().setScale(4, RoundingMode.HALF_UP).toString());
vo.setIndexValue(rStatDataVD.getRms().divide(BigDecimal.valueOf(Math.sqrt(3)), 4, RoundingMode.HALF_UP).toString());
}
DictData dictData = terminalWireMap.get(monitor.getTerminalWiringMethod());
vo.setTerminalConnect(dictData.getValue());
vo.setTerminalConnectName(dictData.getName());
voList.add(vo);
}
}
}
}
}
}
result.setTotal(voList.size());
result.setList(voList);
return result;
}
@@ -411,62 +743,62 @@ public class REvaluationDataServiceImpl extends ServiceImpl<RUploadEvaluationDat
* @date 2024/5/14
*/
private List<String> busTargetAss(DimBusBarParam param, List<String> temBusIds, List<RDimUpDTO> rDimUpDTOList) {
String statisticType = param.getStatType();
if (DicDataEnum.STATISTICAL_TYPE_D.getCode().equals(statisticType)) {
QueryWrapper<RDimBusUpD> queryWrapper = new QueryWrapper<>();
this.harmTarget(param, temBusIds, queryWrapper);
List<RDimBusUpD> rDimBusUpDList = rDimBusUpDMapper.selectList(queryWrapper);
Map<String,List<RDimBusUpD>> map = rDimBusUpDList.stream().collect(Collectors.groupingBy(RDimBusUpD::getBusId));
map.forEach((key,val)->{
RDimUpDTO rDimUpDTO = new RDimUpDTO();
rDimUpDTO.setBusMidId(val.get(0).getMidBusId());
rDimUpDTO.setEffectId(val.get(0).getEffectId());
rDimUpDTO.setEffectIds(val.get(0).getEffectIds());
rDimUpDTO.setBusId(val.get(0).getBusId());
rDimUpDTO.setV(val.stream().mapToDouble(RDimBusUpD::getV).filter(it->it!=3.14159).average().orElse(3.14159));
rDimUpDTOList.add(rDimUpDTO);
});
String statisticType = param.getStatType();
if (DicDataEnum.STATISTICAL_TYPE_D.getCode().equals(statisticType)) {
QueryWrapper<RDimBusUpD> queryWrapper = new QueryWrapper<>();
this.harmTarget(param, temBusIds, queryWrapper);
List<RDimBusUpD> rDimBusUpDList = rDimBusUpDMapper.selectList(queryWrapper);
Map<String, List<RDimBusUpD>> map = rDimBusUpDList.stream().collect(Collectors.groupingBy(RDimBusUpD::getBusId));
map.forEach((key, val) -> {
RDimUpDTO rDimUpDTO = new RDimUpDTO();
rDimUpDTO.setBusMidId(val.get(0).getMidBusId());
rDimUpDTO.setEffectId(val.get(0).getEffectId());
rDimUpDTO.setEffectIds(val.get(0).getEffectIds());
rDimUpDTO.setBusId(val.get(0).getBusId());
rDimUpDTO.setV(val.stream().mapToDouble(RDimBusUpD::getV).filter(it -> it != 3.14159).average().orElse(3.14159));
rDimUpDTOList.add(rDimUpDTO);
});
temBusIds = rDimBusUpDList.stream().map(RDimBusUpD::getMidBusId).distinct().collect(Collectors.toList());
this.harmTarget(param, temBusIds, queryWrapper);
} else if (DicDataEnum.STATISTICAL_TYPE_M.getCode().equals(statisticType)) {
QueryWrapper<RDimBusUpM> queryWrapper = new QueryWrapper<>();
this.harmTarget(param, temBusIds, queryWrapper);
List<RDimBusUpM> rDimBusUpMList = rDimBusUpMMapper.selectList(queryWrapper);
Map<String,List<RDimBusUpM>> map = rDimBusUpMList.stream().collect(Collectors.groupingBy(RDimBusUpM::getBusId));
map.forEach((key,val)->{
RDimUpDTO rDimUpDTO = new RDimUpDTO();
rDimUpDTO.setBusMidId(val.get(0).getMidBusId());
rDimUpDTO.setBusId(val.get(0).getBusId());
rDimUpDTO.setEffectId(val.get(0).getEffectId());
rDimUpDTO.setEffectIds(val.get(0).getEffectIds());
rDimUpDTO.setV(val.stream().mapToDouble(RDimBusUpM::getV).filter(it->it!=3.14159).average().orElse(3.14159));
rDimUpDTOList.add(rDimUpDTO);
});
temBusIds = rDimBusUpMList.stream().map(RDimBusUpM::getMidBusId).distinct().collect(Collectors.toList());
} else if (DicDataEnum.STATISTICAL_TYPE_Y.getCode().equals(statisticType)) {
QueryWrapper<RDimBusUpY> queryWrapper = new QueryWrapper<>();
this.harmTarget(param, temBusIds, queryWrapper);
List<RDimBusUpY> rDimBusUpYList = rDimBusUpYMapper.selectList(queryWrapper);
Map<String,List<RDimBusUpY>> map = rDimBusUpYList.stream().collect(Collectors.groupingBy(RDimBusUpY::getBusId));
map.forEach((key,val)->{
RDimUpDTO rDimUpDTO = new RDimUpDTO();
rDimUpDTO.setBusMidId(val.get(0).getMidBusId());
rDimUpDTO.setBusId(val.get(0).getBusId());
rDimUpDTO.setEffectId(val.get(0).getEffectId());
rDimUpDTO.setEffectIds(val.get(0).getEffectIds());
rDimUpDTO.setV(val.stream().mapToDouble(RDimBusUpY::getV).filter(it->it!=3.14159).average().orElse(3.14159));
rDimUpDTOList.add(rDimUpDTO);
});
temBusIds = rDimBusUpYList.stream().map(RDimBusUpY::getMidBusId).distinct().collect(Collectors.toList());
}
temBusIds = rDimBusUpDList.stream().map(RDimBusUpD::getMidBusId).distinct().collect(Collectors.toList());
this.harmTarget(param, temBusIds, queryWrapper);
} else if (DicDataEnum.STATISTICAL_TYPE_M.getCode().equals(statisticType)) {
QueryWrapper<RDimBusUpM> queryWrapper = new QueryWrapper<>();
this.harmTarget(param, temBusIds, queryWrapper);
List<RDimBusUpM> rDimBusUpMList = rDimBusUpMMapper.selectList(queryWrapper);
Map<String, List<RDimBusUpM>> map = rDimBusUpMList.stream().collect(Collectors.groupingBy(RDimBusUpM::getBusId));
map.forEach((key, val) -> {
RDimUpDTO rDimUpDTO = new RDimUpDTO();
rDimUpDTO.setBusMidId(val.get(0).getMidBusId());
rDimUpDTO.setBusId(val.get(0).getBusId());
rDimUpDTO.setEffectId(val.get(0).getEffectId());
rDimUpDTO.setEffectIds(val.get(0).getEffectIds());
rDimUpDTO.setV(val.stream().mapToDouble(RDimBusUpM::getV).filter(it -> it != 3.14159).average().orElse(3.14159));
rDimUpDTOList.add(rDimUpDTO);
});
temBusIds = rDimBusUpMList.stream().map(RDimBusUpM::getMidBusId).distinct().collect(Collectors.toList());
} else if (DicDataEnum.STATISTICAL_TYPE_Y.getCode().equals(statisticType)) {
QueryWrapper<RDimBusUpY> queryWrapper = new QueryWrapper<>();
this.harmTarget(param, temBusIds, queryWrapper);
List<RDimBusUpY> rDimBusUpYList = rDimBusUpYMapper.selectList(queryWrapper);
Map<String, List<RDimBusUpY>> map = rDimBusUpYList.stream().collect(Collectors.groupingBy(RDimBusUpY::getBusId));
map.forEach((key, val) -> {
RDimUpDTO rDimUpDTO = new RDimUpDTO();
rDimUpDTO.setBusMidId(val.get(0).getMidBusId());
rDimUpDTO.setBusId(val.get(0).getBusId());
rDimUpDTO.setEffectId(val.get(0).getEffectId());
rDimUpDTO.setEffectIds(val.get(0).getEffectIds());
rDimUpDTO.setV(val.stream().mapToDouble(RDimBusUpY::getV).filter(it -> it != 3.14159).average().orElse(3.14159));
rDimUpDTOList.add(rDimUpDTO);
});
temBusIds = rDimBusUpYList.stream().map(RDimBusUpY::getMidBusId).distinct().collect(Collectors.toList());
}
return temBusIds;
}
private List<String> getOnlineBusIds(String nodeId, LocalDate begin, Class<?> clazz) {
QueryWrapper<?> dayLam = new QueryWrapper<>();
dayLam.eq("statisticDate", begin).eq("deptId", nodeId);
dayLam.eq("statistic_Date", begin).eq("dept_Id", nodeId);
Object pmsRunStatistic = null;
if (PmsRunStatisticD.class.equals(clazz)) {
pmsRunStatistic = pmsRunStatisticDMapper.selectOne((QueryWrapper<PmsRunStatisticD>) dayLam);
@@ -484,7 +816,7 @@ public class REvaluationDataServiceImpl extends ServiceImpl<RUploadEvaluationDat
} else {
onlineBusMidIds = ((PmsRunStatisticY) pmsRunStatistic).getOnlineBusMidIds();
}
if (onlineBusMidIds != null) {
if (StrUtil.isNotBlank(onlineBusMidIds)) {
return Arrays.asList(onlineBusMidIds.split(StrUtil.COMMA));
}
}
@@ -492,6 +824,56 @@ public class REvaluationDataServiceImpl extends ServiceImpl<RUploadEvaluationDat
}
private void harmMonitorTarget(DimBusBarParam param, QueryWrapper queryWrapper) {
//稳态指标条件筛选
String target = "", harmV = "";
switch (param.getIndexType()) {
case "01":
target = "voltage_dev_overtime";
break;
case "02":
target = "flicker_overtime";
break;
case "03":
target = "ubalance_overtime";
break;
case "04":
target = "uaberrance_overtime";
break;
case "05":
target = "harm_v";
break;
}
if (CollectionUtil.isNotEmpty(param.getSeqs())) {
queryWrapper.in("phasic_type", param.getSeqs());
} else {
queryWrapper.eq("phasic_type", "T");
}
queryWrapper.between("time_id", LocalDate.parse(param.getStartTime()), LocalDate.parse(param.getEndTime()));
if (StrUtil.isNotBlank(param.getIndexType())) {
if (param.getIndexType().equals("05")) {
harmV = "uharm_" + param.getHarmonicNum() + "_overtime";
queryWrapper.gt(harmV, 0);
} else {
queryWrapper.gt(target, 0);
}
}
if (param.getIndexType().equals("05")) {
queryWrapper.select("time_id", "phasic_type", "my_index as lineId", harmV);
} else {
queryWrapper.select("time_id", "phasic_type", "my_index as lineId", target);
}
}
/**
* 母线层级的
*
* @author cdf
* @date 2024/6/17
*/
private void harmTarget(DimBusBarParam param, List<String> temBusIds, QueryWrapper queryWrapper) {
//稳态指标条件筛选
String target = "", harmV = "";
@@ -516,6 +898,12 @@ public class REvaluationDataServiceImpl extends ServiceImpl<RUploadEvaluationDat
if (CollectionUtil.isNotEmpty(param.getSeqs())) {
queryWrapper.in("phasic_type", param.getSeqs());
}
if (StrUtil.isNotBlank(param.getVoltageLevel())) {
List<DictData> voltageDic = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.DEV_VOLTAGE.getCode()).getData();
Map<String, DictData> voltageMap = voltageDic.stream().collect(Collectors.toMap(item -> String.format("%02d", item.getAlgoDescribe()), Function.identity()));
String voltage = voltageMap.get(param.getVoltageLevel()).getId();
queryWrapper.in("voltage_level", voltage);
}
queryWrapper.in("mid_bus_id", temBusIds);
queryWrapper.eq("statistic_date", LocalDate.parse(param.getStartTime()));
@@ -559,9 +947,9 @@ public class REvaluationDataServiceImpl extends ServiceImpl<RUploadEvaluationDat
default:
break;
}
lambdaQueryWrapper.eq(StrUtil.isNotBlank(param.getVoltageLevel()),RUploadEvaluationDataD::getVoltageLevel,param.getVoltageLevel())
.eq(StrUtil.isNotBlank(param.getTargetType()),RUploadEvaluationDataD::getIndexType,param.getTargetType())
.eq(StrUtil.isNotBlank(param.getTargetType())&&param.getTargetType().equals("05"),RUploadEvaluationDataD::getHarmonicNum,param.getHarmCount());
lambdaQueryWrapper.eq(StrUtil.isNotBlank(param.getVoltageLevel()), RUploadEvaluationDataD::getVoltageLevel, param.getVoltageLevel())
.eq(StrUtil.isNotBlank(param.getTargetType()), RUploadEvaluationDataD::getIndexType, param.getTargetType())
.eq(StrUtil.isNotBlank(param.getTargetType()) && param.getTargetType().equals("05"), RUploadEvaluationDataD::getHarmonicNum, param.getHarmCount());
return lambdaQueryWrapper;
}
@@ -604,7 +992,7 @@ public class REvaluationDataServiceImpl extends ServiceImpl<RUploadEvaluationDat
* @param send 上送结果
* @return
*/
private void returnInformation(Integer step, List<String> ids, Map<String, String> send,StrBuilder resultLog,AtomicBoolean resultFlag,LocalDate localDate) {
private void returnInformation(Integer step, List<String> ids, Map<String, String> send, StrBuilder resultLog, AtomicBoolean resultFlag, LocalDate localDate) {
int start = step * 100;
int end = (step + 1) * 100;
if (send.containsKey("succeed")) {
@@ -625,15 +1013,15 @@ public class REvaluationDataServiceImpl extends ServiceImpl<RUploadEvaluationDat
} else {
resultFlag.set(false);
String errors = mapData.get("errors").toString();
String errorMsg = " 上送" + start + "条至" + end + "条数据,上送失败:" + status + "_" + errors+" ;";
String errorMsg = " 上送" + start + "条至" + end + "条数据,上送失败:" + status + "_" + errors + " ;";
resultLog.append(errorMsg);
assUploadLog(localDate,resultLog,resultFlag);
assUploadLog(localDate, resultLog, resultFlag);
throw new BusinessException(errorMsg);
}
} else {
resultFlag.set(false);
resultLog.append(" 上送" + start + "条至" + end + "条数据网络异常;");
assUploadLog(localDate,resultLog,resultFlag);
assUploadLog(localDate, resultLog, resultFlag);
throw new BusinessException("当前时间段国网上送请求过多,请稍后再试");
}

View File

@@ -0,0 +1,109 @@
package com.njcn.harmonic.service.upload.impl;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.date.DatePattern;
import cn.hutool.core.date.DateUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.njcn.common.pojo.enums.response.CommonResponseEnum;
import com.njcn.common.pojo.exception.BusinessException;
import com.njcn.harmonic.mapper.upload.RUploadWorkOrderMapper;
import com.njcn.harmonic.pojo.dto.upload.FeedbackInfoDTO;
import com.njcn.harmonic.pojo.param.upload.RUploadWorkOrderParam;
import com.njcn.harmonic.pojo.po.upload.RUploadWorkOrderPO;
import com.njcn.harmonic.service.upload.IRUploadWorkOrderService;
import com.njcn.system.enums.DicDataEnum;
import com.njcn.web.enums.GWSendEnum;
import com.njcn.web.factory.PageFactory;
import com.njcn.web.pojo.param.SendParam;
import com.njcn.web.utils.GwSendUtil;
import com.njcn.web.utils.RequestUtil;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.stream.Collectors;
/**
* <p>
* 用于存储总部下发的工单信息 服务实现类
* </p>
*
* @author cdf
* @since 2024-06-18
*/
@Service
@RequiredArgsConstructor
public class RUploadWorkOrderServiceImpl extends ServiceImpl<RUploadWorkOrderMapper, RUploadWorkOrderPO> implements IRUploadWorkOrderService {
@Override
public Boolean insertWorkorderDistributeSupervise(RUploadWorkOrderParam param) {
RUploadWorkOrderPO rUploadWorkOrderPO = new RUploadWorkOrderPO();
BeanUtil.copyProperties(param,rUploadWorkOrderPO);
return this.saveOrUpdate(rUploadWorkOrderPO);
}
@Override
public Boolean closeWorkorderDistributeSupervise(RUploadWorkOrderParam param) {
LambdaUpdateWrapper<RUploadWorkOrderPO> updateWrapper = new LambdaUpdateWrapper<>();
updateWrapper.eq(RUploadWorkOrderPO::getOrderId,param.getOrderContent()).set(RUploadWorkOrderPO::getClosedLoopTime, LocalDate.now());
return this.update(updateWrapper);
}
@Override
public Boolean receiveFeedbackInfo(List<String> ids) {
List<RUploadWorkOrderPO> poList = this.listByIds(ids);
if(poList.size()>100){
throw new BusinessException(CommonResponseEnum.FAIL,"最多支持一百条工单同时反馈!");
}
long count = poList.stream().filter(item-> Objects.nonNull(item.getClosedLoopTime())).count();
if(count>0){
throw new BusinessException(CommonResponseEnum.FAIL,"请选择未完结的工单进行反馈!");
}
List<FeedbackInfoDTO> feedbackInfoDTOList = BeanUtil.copyToList(poList, FeedbackInfoDTO.class);
SendParam sendParam = new SendParam();
sendParam.setStats(feedbackInfoDTOList);
Map<String,String> result = GwSendUtil.send(sendParam, GWSendEnum.WORK_ORDER_FEEDBACK);
GwSendUtil.returnInfoMsg(ids,result);
List<RUploadWorkOrderPO> newPoList = new ArrayList<>();
for(RUploadWorkOrderPO rUploadWorkOrderPO : poList){
RUploadWorkOrderPO newPo = new RUploadWorkOrderPO();
newPo.setObjId(rUploadWorkOrderPO.getObjId());
newPo.setFeedbackTime(LocalDate.now());
newPoList.add(newPo);
}
this.updateBatchById(newPoList);
return true;
}
@Override
public Page<RUploadWorkOrderPO> pageList(RUploadWorkOrderParam.RUploadWorkOrderQuery query) {
LambdaQueryWrapper<RUploadWorkOrderPO> lambdaQueryWrapper = new LambdaQueryWrapper<>();
lambdaQueryWrapper.between(RUploadWorkOrderPO::getDistributeTime, DateUtil.beginOfDay(DateUtil.parse(query.getSearchBeginTime(), DatePattern.NORM_DATE_PATTERN)),DateUtil.endOfDay(DateUtil.parse(query.getSearchEndTime(), DatePattern.NORM_DATE_PATTERN)));
return this.page(new Page<>(PageFactory.getPageNum(query),PageFactory.getPageSize(query)),lambdaQueryWrapper);
}
@Override
public Boolean feedBackAdd(RUploadWorkOrderParam param) {
RUploadWorkOrderPO rUploadWorkOrderPO = new RUploadWorkOrderPO();
BeanUtil.copyProperties(param,rUploadWorkOrderPO);
rUploadWorkOrderPO.setObjId(param.getObjId());
rUploadWorkOrderPO.setIsFeedback("1");
rUploadWorkOrderPO.setFeedbackUser(RequestUtil.getUserNickname());
rUploadWorkOrderPO.setFeedbackTime(LocalDate.now());
rUploadWorkOrderPO.setHandlingMeasures(param.getHandlingMeasures());
rUploadWorkOrderPO.setOrderStatus(DicDataEnum.WORK_ORDER_STATUS_ING.getCode());
this.updateById(rUploadWorkOrderPO);
return true;
}
}

View File

@@ -1,8 +1,18 @@
package com.njcn.process.pojo.po;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.datatype.jsr310.deser.LocalDateTimeDeserializer;
import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateTimeSerializer;
import lombok.Data;
import java.time.LocalDateTime;
/**
* pqs
* 计划回退
@@ -10,10 +20,38 @@ import lombok.Data;
* @date 2024/5/30
*/
@Data
@TableName("")
@TableName("supv_plan_return")
public class SupvPlanReturn {
/**
* 主键
*/
@TableId
private String id;
/**
* 计划主键
*/
private String planId;
/**
* 拒绝理由
*/
private String rejectReason;
/**
* 评论
*/
private String rejectComment;
/**
* 创建时间
*/
@TableField(fill = FieldFill.INSERT)
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonDeserialize(using = LocalDateTimeDeserializer.class)
@JsonSerialize(using = LocalDateTimeSerializer.class)
private LocalDateTime createTime;
}

View File

@@ -1,5 +1,6 @@
package com.njcn.process.controller;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.njcn.common.pojo.annotation.OperateInfo;
import com.njcn.common.pojo.constant.OperateType;
import com.njcn.common.pojo.enums.common.LogEnum;
@@ -8,7 +9,9 @@ import com.njcn.common.pojo.response.HttpResult;
import com.njcn.common.utils.HttpResultUtil;
import com.njcn.process.mapper.SupvPlanReturnMapper;
import com.njcn.process.pojo.po.SupvPlanReturn;
import com.njcn.process.service.ISupvPlanReturnService;
import com.njcn.web.controller.BaseController;
import com.njcn.web.pojo.param.BaseParam;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiOperation;
@@ -31,15 +34,26 @@ import org.springframework.web.bind.annotation.RestController;
@RequiredArgsConstructor
public class SupvPlanReturnController extends BaseController {
private final SupvPlanReturnMapper supvPlanReturnMapper;
private final ISupvPlanReturnService iSupvPlanReturnService;
@PostMapping("reject")
@OperateInfo(info = LogEnum.BUSINESS_COMMON, operateType = OperateType.ADD)
@ApiOperation("新增技术监督计划")
@ApiImplicitParam(name = "supvPlanParam",value = "请求体",required = true)
public HttpResult<Object> reject(@RequestBody @Validated SupvPlanReturn supvPlanReturn){
@ApiImplicitParam(name = "supvPlanReturn",value = "请求体",required = true)
public HttpResult<Object> reject(@RequestBody SupvPlanReturn supvPlanReturn){
String methodDescribe = getMethodDescribe("reject");
supvPlanReturnMapper.insert(supvPlanReturn);
iSupvPlanReturnService.add(supvPlanReturn);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe);
}
@PostMapping("pageList")
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@ApiOperation("新增技术监督计划")
@ApiImplicitParam(name = "supvPlanReturn",value = "请求体",required = true)
public HttpResult<Page<SupvPlanReturn>> pageList(@RequestBody BaseParam baseParam){
String methodDescribe = getMethodDescribe("pageList");
Page<SupvPlanReturn> page = iSupvPlanReturnService.pageList(baseParam);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, page, methodDescribe);
}
}

View File

@@ -0,0 +1,28 @@
package com.njcn.process.service;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.njcn.process.pojo.po.SupvPlanReturn;
import com.njcn.web.pojo.param.BaseParam;
/**
* <p>
* 总部监督计划退回表 服务类
* </p>
*
* @author cdf
* @since 2024-06-17
*/
public interface ISupvPlanReturnService extends IService<SupvPlanReturn> {
boolean add(SupvPlanReturn supvPlanReturn);
Page<SupvPlanReturn> pageList(BaseParam baseParam);
}

View File

@@ -0,0 +1,36 @@
package com.njcn.process.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.njcn.process.mapper.SupvPlanReturnMapper;
import com.njcn.process.pojo.po.SupvPlanReturn;
import com.njcn.process.service.ISupvPlanReturnService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.njcn.web.factory.PageFactory;
import com.njcn.web.pojo.param.BaseParam;
import org.springframework.stereotype.Service;
/**
* <p>
* 总部监督计划退回表 服务实现类
* </p>
*
* @author cdf
* @since 2024-06-17
*/
@Service
public class SupvPlanReturnServiceImpl extends ServiceImpl<SupvPlanReturnMapper, SupvPlanReturn> implements ISupvPlanReturnService {
@Override
public boolean add(SupvPlanReturn supvPlanReturn) {
return this.save(supvPlanReturn);
}
@Override
public Page<SupvPlanReturn> pageList(BaseParam baseParam) {
LambdaQueryWrapper<SupvPlanReturn> lambdaQueryWrapper = new LambdaQueryWrapper<>();
lambdaQueryWrapper.between(SupvPlanReturn::getCreateTime,baseParam.getSearchBeginTime(),baseParam.getSearchEndTime());
return this.page(new Page<>(PageFactory.getPageNum(baseParam),PageFactory.getPageSize(baseParam)),lambdaQueryWrapper);
}
}

View File

@@ -614,6 +614,17 @@ public enum DicDataEnum {
COMMUNICATION("通讯","Communication"),
ELECTRIC_POWER("电力","Electric_Power"),
OTHER_INDUSTRY("其他","Other_Industry"),
//河北工单相关
//3.67工单状态
WORK_ORDER_STATUS_NO("未处理","01"),
WORK_ORDER_STATUS_ING("处理中","02"),
WORK_ORDER_STATUS_HAS("已上报","03"),
WORK_ORDER_STATUS_CLOSE("已闭环","04"),
;
private final String name;