From 0b89050fdc17058e172b5bdfa8177f4ce51c6956 Mon Sep 17 00:00:00 2001 From: "1771838663@qq.com" <1771838663@qq.com> Date: Tue, 22 Nov 2022 14:53:44 +0800 Subject: [PATCH] =?UTF-8?q?=E7=94=B5=E8=83=BD=E8=B4=A8=E9=87=8F=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../pojo/param/GeneralSurveyParam.java | 4 +- .../po/RMpOnlineMonitorOverproofProblem.java | 1 - .../ElectricityQualityIssuesController.java | 24 +++++++ .../RStatElectricQualityProblemFlowMapper.xml | 2 +- .../njcn/process/service/IssuesService.java | 10 +++ .../service/impl/IssuesServiceImpl.java | 68 ++++++++++++++++++- 6 files changed, 104 insertions(+), 5 deletions(-) diff --git a/process-api/src/main/java/com/njcn/process/pojo/param/GeneralSurveyParam.java b/process-api/src/main/java/com/njcn/process/pojo/param/GeneralSurveyParam.java index aa7975224..906154184 100644 --- a/process-api/src/main/java/com/njcn/process/pojo/param/GeneralSurveyParam.java +++ b/process-api/src/main/java/com/njcn/process/pojo/param/GeneralSurveyParam.java @@ -20,9 +20,9 @@ public class GeneralSurveyParam extends IssuesParam { @NotNull(message = "变电站ID不可为空") private String substationId; - @ApiModelProperty(name = "busBarId",value = "母线ID") + @ApiModelProperty(name = "busbarId",value = "母线ID") @NotNull(message = "母线ID不可为空") - private String busBarId; + private String busbarId; @ApiModelProperty(name = "measurementPointId",value = "监测点ID") @NotNull(message = "监测点ID不可为空") diff --git a/process-api/src/main/java/com/njcn/process/pojo/po/RMpOnlineMonitorOverproofProblem.java b/process-api/src/main/java/com/njcn/process/pojo/po/RMpOnlineMonitorOverproofProblem.java index ef7be9f20..d07257bea 100644 --- a/process-api/src/main/java/com/njcn/process/pojo/po/RMpOnlineMonitorOverproofProblem.java +++ b/process-api/src/main/java/com/njcn/process/pojo/po/RMpOnlineMonitorOverproofProblem.java @@ -22,7 +22,6 @@ public class RMpOnlineMonitorOverproofProblem implements Serializable { /** * 电能质量问题编号 */ - @TableId(value = "power_quality_problem_no", type = IdType.AUTO) private String powerQualityProblemNo; /** diff --git a/process-boot/src/main/java/com/njcn/process/controller/ElectricityQualityIssuesController.java b/process-boot/src/main/java/com/njcn/process/controller/ElectricityQualityIssuesController.java index bb7e4eaee..39d8130e4 100644 --- a/process-boot/src/main/java/com/njcn/process/controller/ElectricityQualityIssuesController.java +++ b/process-boot/src/main/java/com/njcn/process/controller/ElectricityQualityIssuesController.java @@ -16,6 +16,7 @@ import com.njcn.system.enums.DicDataEnum; import com.njcn.web.controller.BaseController; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; +import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; @@ -187,4 +188,27 @@ public class ElectricityQualityIssuesController extends BaseController { MinIoUploadResDTO out = issuesService.uploadFile(issuesFile); return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, out, methodDescribe); } + + @OperateInfo(info = LogEnum.BUSINESS_COMMON, operateType = OperateType.DOWNLOAD) + @PostMapping("/downloadFile") + @ApiOperation("下载文件") + @ApiImplicitParams({ + @ApiImplicitParam(name = "powerQualityProblemNo", value = "电能质量问题编号", required = true), + @ApiImplicitParam(name = "reportProcess", value = "填报进度", required = true) + }) + public HttpResult downloadFile(@RequestParam("powerQualityProblemNo") String powerQualityProblemNo,@RequestParam("reportProcess") String reportProcess){ + String methodDescribe = getMethodDescribe("downloadFile"); + String out = issuesService.downloadFile(powerQualityProblemNo, reportProcess); + return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, out, methodDescribe); + } + + @OperateInfo(info = LogEnum.BUSINESS_COMMON, operateType = OperateType.DELETE) + @PostMapping("/deleteIssues") + @ApiOperation("删除问题") + @ApiImplicitParam(name = "powerQualityProblemNo", value = "电能质量问题编号", required = true) + public HttpResult deleteIssues(@RequestParam("powerQualityProblemNo") String powerQualityProblemNo){ + String methodDescribe = getMethodDescribe("deleteIssues"); + issuesService.deleteIssues(powerQualityProblemNo); + return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe); + } } diff --git a/process-boot/src/main/java/com/njcn/process/mapper/mapping/RStatElectricQualityProblemFlowMapper.xml b/process-boot/src/main/java/com/njcn/process/mapper/mapping/RStatElectricQualityProblemFlowMapper.xml index 510311b6f..afdfbc2eb 100644 --- a/process-boot/src/main/java/com/njcn/process/mapper/mapping/RStatElectricQualityProblemFlowMapper.xml +++ b/process-boot/src/main/java/com/njcn/process/mapper/mapping/RStatElectricQualityProblemFlowMapper.xml @@ -8,7 +8,7 @@ FROM r_stat_electric_quality_problem_flow WHERE - data_date between #{date.dateBegin} AND #{date.dateEnd} + data_date between #{dateBegin} AND #{dateEnd} AND org_no = #{param.orgNo} diff --git a/process-boot/src/main/java/com/njcn/process/service/IssuesService.java b/process-boot/src/main/java/com/njcn/process/service/IssuesService.java index 6857a75f8..8eb53d01f 100644 --- a/process-boot/src/main/java/com/njcn/process/service/IssuesService.java +++ b/process-boot/src/main/java/com/njcn/process/service/IssuesService.java @@ -78,4 +78,14 @@ public interface IssuesService { * 上传文件 */ MinIoUploadResDTO uploadFile(MultipartFile issuesFile); + + /** + * 下载文件 + */ + String downloadFile(String powerQualityProblemNo, String reportProcess); + + /** + * 删除问题 + */ + void deleteIssues(String powerQualityProblemNo); } diff --git a/process-boot/src/main/java/com/njcn/process/service/impl/IssuesServiceImpl.java b/process-boot/src/main/java/com/njcn/process/service/impl/IssuesServiceImpl.java index 606e0898b..beae3b6c5 100644 --- a/process-boot/src/main/java/com/njcn/process/service/impl/IssuesServiceImpl.java +++ b/process-boot/src/main/java/com/njcn/process/service/impl/IssuesServiceImpl.java @@ -17,7 +17,10 @@ import com.njcn.process.pojo.param.*; import com.njcn.process.pojo.po.*; import com.njcn.process.pojo.vo.*; import com.njcn.process.service.IssuesService; +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 lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; @@ -27,6 +30,7 @@ import org.springframework.web.multipart.MultipartFile; import javax.annotation.Resource; import java.time.LocalDateTime; import java.util.Date; +import java.util.List; /** * 电能质量问题实现类 @@ -41,6 +45,8 @@ public class IssuesServiceImpl implements IssuesService { private final DeptFeignClient deptFeignClient; + private final DicDataFeignClient dicDataFeignClient; + private final RStatElectricQualityProblemFlowMapper issuesMapper; private final RMpOnlineMonitorOverproofProblemMapper excessiveMapper; @@ -67,6 +73,8 @@ public class IssuesServiceImpl implements IssuesService { LocalDateTime local = LocalDateTimeUtil.now(); BeanUtil.copyProperties(issuesParam,issues); issues.setDataDate(local); + issues.setStartTime(null); + issues.setUpdateTime(null); issues.setReportProcess(DicDataEnum.NOT_REPORTED.getCode()); issues.setReportProcessStatus(DicDataEnum.AUDITT.getCode()); issuesMapper.insert(issues); @@ -150,6 +158,15 @@ public class IssuesServiceImpl implements IssuesService { } Page out = issuesMapper.getIssues(page,param,DateUtil.formatDateTime(dateBegin), DateUtil.formatDateTime(dateEnd)); out.getRecords().forEach(data -> data.setOrgName((deptFeignClient.getDeptById(data.getOrgNo()).getData().getName()))); + /*问题来源*/ + List problemSourcesDictData = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.PROBLEM_SOURCES.getCode()).getData(); + problemSourcesDictData.forEach(dict -> out.getRecords().stream().filter(data -> dict.getCode().equals(data.getProblemSources())).forEach(data -> data.setProblemSources(dict.getName()))); + /*填报进度*/ + List fillProgressDictData = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.FILL_PROGRESS.getCode()).getData(); + fillProgressDictData.forEach(dict -> out.getRecords().stream().filter(data -> dict.getCode().equals(data.getReportProcess())).forEach(data -> data.setReportProcess(dict.getName()))); + /*审核状态*/ + List auditStatusDictData = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.AUDIT_STATUS.getCode()).getData(); + auditStatusDictData.forEach(dict -> out.getRecords().stream().filter(data -> dict.getCode().equals(data.getReportProcessStatus())).forEach(data -> data.setReportProcessStatus(dict.getName()))); return out; } @@ -273,7 +290,7 @@ public class IssuesServiceImpl implements IssuesService { details.setDataDateZlxg(local); } flowDetailsMapper.update(details, query); - issuesOut.setReportProcess(DicDataEnum.CAUSE_ANALYSIS.getCode()); + issuesOut.setReportProcess(code); issuesMapper.update(issuesOut,issuesQuery); }else { throw new BusinessException(ProcessResponseEnum.PROCESS_ERROR); @@ -309,4 +326,53 @@ public class IssuesServiceImpl implements IssuesService { } } + @Override + public String downloadFile(String powerQualityProblemNo,String reportProcess) { + LambdaQueryWrapper issuesQuery = new LambdaQueryWrapper<>(); + issuesQuery.eq(RMpElectricQualityProblemFlowDetails::getPowerQualityProblemNo,powerQualityProblemNo); + RMpElectricQualityProblemFlowDetails details = flowDetailsMapper.selectOne(issuesQuery); + String filePath = null; + if (DicDataEnum.CAUSE_ANALYSIS.getName().equals(reportProcess)){ + filePath = details.getFilePathYyfx(); + }else if (DicDataEnum.PLAN_MEASURES.getName().equals(reportProcess)){ + filePath = details.getFilePathJhzg(); + }else if (DicDataEnum.ACTUAL_MEASURES.getName().equals(reportProcess)){ + filePath = details.getFilePathSjcq(); + }else if (DicDataEnum.INSIGHTS.getName().equals(reportProcess)){ + filePath = details.getFilePathZlxg(); + } + return minIoUtils.getObjectUrl (minIoProperties.getBucket ( ), filePath, 7 * 24 * 60 * 60); + } + + /** + * 删除问题 + */ + @Override + public void deleteIssues(String powerQualityProblemNo) { + LambdaQueryWrapper query = new LambdaQueryWrapper<>(); + query.eq(RStatElectricQualityProblemFlow::getPowerQualityProblemNo,powerQualityProblemNo); + RStatElectricQualityProblemFlow issuesOut = issuesMapper.selectOne(query); + if (DicDataEnum.ONLINE.getCode().equals(issuesOut.getProblemSources())){ + LambdaQueryWrapper issuesQuery = new LambdaQueryWrapper<>(); + issuesQuery.eq(RMpOnlineMonitorOverproofProblem::getPowerQualityProblemNo,powerQualityProblemNo); + excessiveMapper.delete(issuesQuery); + }else if (DicDataEnum.GENERAL.getCode().equals(issuesOut.getProblemSources())){ + LambdaQueryWrapper issuesQuery = new LambdaQueryWrapper<>(); + issuesQuery.eq(RMpGeneralSurveyOverproofProblem::getPowerQualityProblemNo,powerQualityProblemNo); + generalSurveyMapper.delete(issuesQuery); + }else if (DicDataEnum.USER_COMPLAINTS.getCode().equals(issuesOut.getProblemSources())){ + LambdaQueryWrapper issuesQuery = new LambdaQueryWrapper<>(); + issuesQuery.eq(RMpUserComplaint::getPowerQualityProblemNo,powerQualityProblemNo); + complaintMapper.delete(issuesQuery); + }else if (DicDataEnum.DEV_EXCEPTION.getCode().equals(issuesOut.getProblemSources())){ + LambdaQueryWrapper issuesQuery = new LambdaQueryWrapper<>(); + issuesQuery.eq(RMpOperationMonitorAbnormal::getPowerQualityProblemNo,powerQualityProblemNo); + abnormalMapper.delete(issuesQuery); + } + LambdaQueryWrapper issuesQuery = new LambdaQueryWrapper<>(); + issuesQuery.eq(RMpElectricQualityProblemFlowDetails::getPowerQualityProblemNo,powerQualityProblemNo); + flowDetailsMapper.delete(issuesQuery); + issuesMapper.delete(query); + } + }