电能质量问题

This commit is contained in:
1771838663@qq.com
2022-11-22 14:53:44 +08:00
parent 94bb5ebb6f
commit 0b89050fdc
6 changed files with 104 additions and 5 deletions

View File

@@ -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不可为空")

View File

@@ -22,7 +22,6 @@ public class RMpOnlineMonitorOverproofProblem implements Serializable {
/**
* 电能质量问题编号
*/
@TableId(value = "power_quality_problem_no", type = IdType.AUTO)
private String powerQualityProblemNo;
/**

View File

@@ -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<String> 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<String> deleteIssues(@RequestParam("powerQualityProblemNo") String powerQualityProblemNo){
String methodDescribe = getMethodDescribe("deleteIssues");
issuesService.deleteIssues(powerQualityProblemNo);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe);
}
}

View File

@@ -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}
<if test="param.orgNo !=null and param.orgNo !=''">
AND org_no = #{param.orgNo}
</if>

View File

@@ -78,4 +78,14 @@ public interface IssuesService {
* 上传文件
*/
MinIoUploadResDTO uploadFile(MultipartFile issuesFile);
/**
* 下载文件
*/
String downloadFile(String powerQualityProblemNo, String reportProcess);
/**
* 删除问题
*/
void deleteIssues(String powerQualityProblemNo);
}

View File

@@ -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<IssuesVO> out = issuesMapper.getIssues(page,param,DateUtil.formatDateTime(dateBegin), DateUtil.formatDateTime(dateEnd));
out.getRecords().forEach(data -> data.setOrgName((deptFeignClient.getDeptById(data.getOrgNo()).getData().getName())));
/*问题来源*/
List<DictData> 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<DictData> 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<DictData> 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<RMpElectricQualityProblemFlowDetails> 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<RStatElectricQualityProblemFlow> query = new LambdaQueryWrapper<>();
query.eq(RStatElectricQualityProblemFlow::getPowerQualityProblemNo,powerQualityProblemNo);
RStatElectricQualityProblemFlow issuesOut = issuesMapper.selectOne(query);
if (DicDataEnum.ONLINE.getCode().equals(issuesOut.getProblemSources())){
LambdaQueryWrapper<RMpOnlineMonitorOverproofProblem> issuesQuery = new LambdaQueryWrapper<>();
issuesQuery.eq(RMpOnlineMonitorOverproofProblem::getPowerQualityProblemNo,powerQualityProblemNo);
excessiveMapper.delete(issuesQuery);
}else if (DicDataEnum.GENERAL.getCode().equals(issuesOut.getProblemSources())){
LambdaQueryWrapper<RMpGeneralSurveyOverproofProblem> issuesQuery = new LambdaQueryWrapper<>();
issuesQuery.eq(RMpGeneralSurveyOverproofProblem::getPowerQualityProblemNo,powerQualityProblemNo);
generalSurveyMapper.delete(issuesQuery);
}else if (DicDataEnum.USER_COMPLAINTS.getCode().equals(issuesOut.getProblemSources())){
LambdaQueryWrapper<RMpUserComplaint> issuesQuery = new LambdaQueryWrapper<>();
issuesQuery.eq(RMpUserComplaint::getPowerQualityProblemNo,powerQualityProblemNo);
complaintMapper.delete(issuesQuery);
}else if (DicDataEnum.DEV_EXCEPTION.getCode().equals(issuesOut.getProblemSources())){
LambdaQueryWrapper<RMpOperationMonitorAbnormal> issuesQuery = new LambdaQueryWrapper<>();
issuesQuery.eq(RMpOperationMonitorAbnormal::getPowerQualityProblemNo,powerQualityProblemNo);
abnormalMapper.delete(issuesQuery);
}
LambdaQueryWrapper<RMpElectricQualityProblemFlowDetails> issuesQuery = new LambdaQueryWrapper<>();
issuesQuery.eq(RMpElectricQualityProblemFlowDetails::getPowerQualityProblemNo,powerQualityProblemNo);
flowDetailsMapper.delete(issuesQuery);
issuesMapper.delete(query);
}
}