1.技术监督试运行bug修改

2.审核不通过展示表单信息和审核信息
This commit is contained in:
wr
2024-07-16 09:33:05 +08:00
parent 458b2347ed
commit ee41b0a554
26 changed files with 212 additions and 189 deletions

View File

@@ -5,7 +5,8 @@ import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data; import lombok.Data;
import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotEmpty; import java.util.Collection;
import java.util.Map;
@Schema(description = "管理后台 - 不通过流程任务的 Request VO") @Schema(description = "管理后台 - 不通过流程任务的 Request VO")
@Data @Data
@@ -21,4 +22,9 @@ public class BpmTaskRejectParam {
@NotBlank(message = "审批意见不能为空") @NotBlank(message = "审批意见不能为空")
private String reason; private String reason;
@ApiModelProperty("抄送的用户编号数组")
private Collection<String> copyUserIds;
@ApiModelProperty("变量实例(动态表单)")
private Map<String, Object> variables;
} }

View File

@@ -4,6 +4,8 @@ import com.njcn.bpm.pojo.dto.BpmProcessInstanceCreateReqDTO;
import com.njcn.bpm.pojo.dto.PageResult; import com.njcn.bpm.pojo.dto.PageResult;
import com.njcn.bpm.pojo.param.instance.BpmProcessInstanceCancelParam; import com.njcn.bpm.pojo.param.instance.BpmProcessInstanceCancelParam;
import com.njcn.bpm.pojo.param.instance.BpmProcessInstancePageParam; import com.njcn.bpm.pojo.param.instance.BpmProcessInstancePageParam;
import com.njcn.bpm.pojo.param.task.BpmTaskRejectParam;
import org.flowable.engine.TaskService;
import org.flowable.engine.delegate.event.FlowableCancelledEvent; import org.flowable.engine.delegate.event.FlowableCancelledEvent;
import org.flowable.engine.history.HistoricProcessInstance; import org.flowable.engine.history.HistoricProcessInstance;
import org.flowable.engine.runtime.ProcessInstance; import org.flowable.engine.runtime.ProcessInstance;
@@ -146,6 +148,13 @@ public interface IBpmProcessInstanceService {
*/ */
void updateProcessInstanceReject(String id, String reason); void updateProcessInstanceReject(String id, String reason);
/**
* 更新 ProcessInstance 拓展记录为不通过
*
* @param id 流程编号
* @param reason 理由。例如说,审批不通过时,需要传递该值
*/
void updateProcessInstanceFromReject(String id, String reason, TaskService taskService, BpmTaskRejectParam bpmTaskRejectParam);
/** /**
* 用于测试过程删除流程,正式环境慎用 * 用于测试过程删除流程,正式环境慎用
* @author cdf * @author cdf

View File

@@ -1,6 +1,7 @@
package com.njcn.bpm.service.task.impl; package com.njcn.bpm.service.task.impl;
import cn.hutool.core.collection.CollUtil; import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.date.DatePattern; import cn.hutool.core.date.DatePattern;
import cn.hutool.core.date.LocalDateTimeUtil; import cn.hutool.core.date.LocalDateTimeUtil;
import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.StrUtil;
@@ -13,6 +14,7 @@ import com.njcn.bpm.pojo.dto.BpmProcessInstanceCreateReqDTO;
import com.njcn.bpm.pojo.dto.PageResult; import com.njcn.bpm.pojo.dto.PageResult;
import com.njcn.bpm.pojo.param.instance.BpmProcessInstanceCancelParam; import com.njcn.bpm.pojo.param.instance.BpmProcessInstanceCancelParam;
import com.njcn.bpm.pojo.param.instance.BpmProcessInstancePageParam; import com.njcn.bpm.pojo.param.instance.BpmProcessInstancePageParam;
import com.njcn.bpm.pojo.param.task.BpmTaskRejectParam;
import com.njcn.bpm.service.IBpmProcessDefinitionService; import com.njcn.bpm.service.IBpmProcessDefinitionService;
import com.njcn.bpm.service.task.IBpmProcessInstanceService; import com.njcn.bpm.service.task.IBpmProcessInstanceService;
import com.njcn.bpm.strategy.BpmTaskCandidateStartUserSelectStrategy; import com.njcn.bpm.strategy.BpmTaskCandidateStartUserSelectStrategy;
@@ -30,6 +32,7 @@ import org.flowable.bpmn.model.UserTask;
import org.flowable.common.engine.impl.identity.Authentication; import org.flowable.common.engine.impl.identity.Authentication;
import org.flowable.engine.HistoryService; import org.flowable.engine.HistoryService;
import org.flowable.engine.RuntimeService; import org.flowable.engine.RuntimeService;
import org.flowable.engine.TaskService;
import org.flowable.engine.delegate.event.FlowableCancelledEvent; import org.flowable.engine.delegate.event.FlowableCancelledEvent;
import org.flowable.engine.history.HistoricProcessInstance; import org.flowable.engine.history.HistoricProcessInstance;
import org.flowable.engine.repository.ProcessDefinition; import org.flowable.engine.repository.ProcessDefinition;
@@ -72,7 +75,7 @@ public class BpmProcessInstanceServiceImpl implements IBpmProcessInstanceService
@Resource @Resource
private IBpmProcessDefinitionService processDefinitionService; private IBpmProcessDefinitionService processDefinitionService;
// @Resource // @Resource
// private BpmMessageService messageService; // private BpmMessageService messageService;
// //
@Resource @Resource
@@ -90,7 +93,6 @@ public class BpmProcessInstanceServiceImpl implements IBpmProcessInstanceService
} }
@Override @Override
public List<ProcessInstance> getProcessInstances(Set<String> ids) { public List<ProcessInstance> getProcessInstances(Set<String> ids) {
return runtimeService.createProcessInstanceQuery().processInstanceIds(ids).list(); return runtimeService.createProcessInstanceQuery().processInstanceIds(ids).list();
@@ -285,9 +287,18 @@ public class BpmProcessInstanceServiceImpl implements IBpmProcessInstanceService
@Override @Override
public void updateProcessInstanceWhenApprove(ProcessInstance instance) { public void updateProcessInstanceWhenApprove(ProcessInstance instance) {
//判断传入参数是否是,不通过信息不通过则需要更新流程信息为不通过
Integer processInstanceStatus = BpmProcessInstanceStatusEnum.APPROVE.getStatus();
Map<String, Object> processVariables = instance.getProcessVariables();
if (processVariables.containsKey(BpmConstants.PROCESS_INSTANCE_VARIABLE_STATUS)) {
Integer stata =Integer.valueOf(processVariables.get(BpmConstants.PROCESS_INSTANCE_VARIABLE_STATUS).toString());
if (BpmProcessInstanceStatusEnum.REJECT.getStatus()==stata) {
processInstanceStatus = BpmProcessInstanceStatusEnum.REJECT.getStatus();
}
}
// 1. 更新流程实例 status // 1. 更新流程实例 status
runtimeService.setVariable(instance.getId(), BpmConstants.PROCESS_INSTANCE_VARIABLE_STATUS, runtimeService.setVariable(instance.getId(), BpmConstants.PROCESS_INSTANCE_VARIABLE_STATUS,
BpmProcessInstanceStatusEnum.APPROVE.getStatus()); processInstanceStatus);
// 2. 发送流程被【通过】的消息 // 2. 发送流程被【通过】的消息
// messageService.sendMessageWhenProcessInstanceApprove(BpmProcessInstanceConvert.INSTANCE.buildProcessInstanceApproveMessage(instance)); // messageService.sendMessageWhenProcessInstanceApprove(BpmProcessInstanceConvert.INSTANCE.buildProcessInstanceApproveMessage(instance));
@@ -296,7 +307,7 @@ public class BpmProcessInstanceServiceImpl implements IBpmProcessInstanceService
// 注意:此时如果去查询 ProcessInstance 的话,字段是不全的,所以去查询了 HistoricProcessInstance // 注意:此时如果去查询 ProcessInstance 的话,字段是不全的,所以去查询了 HistoricProcessInstance
HistoricProcessInstance processInstance = getHistoricProcessInstance(instance.getId()); HistoricProcessInstance processInstance = getHistoricProcessInstance(instance.getId());
processInstanceEventPublisher.sendProcessInstanceResultEvent( processInstanceEventPublisher.sendProcessInstanceResultEvent(
BpmProcessInstanceConvert.INSTANCE.buildProcessInstanceStatusEvent(this, processInstance, BpmProcessInstanceStatusEnum.APPROVE.getStatus())); BpmProcessInstanceConvert.INSTANCE.buildProcessInstanceStatusEvent(this, processInstance, processInstanceStatus));
} }
@Override @Override
@@ -314,7 +325,31 @@ public class BpmProcessInstanceServiceImpl implements IBpmProcessInstanceService
// 4. 发送流程实例的状态事件 // 4. 发送流程实例的状态事件
processInstanceEventPublisher.sendProcessInstanceResultEvent( processInstanceEventPublisher.sendProcessInstanceResultEvent(
BpmProcessInstanceConvert.INSTANCE.buildProcessInstanceStatusEvent(this, processInstance,reason ,BpmProcessInstanceStatusEnum.REJECT.getStatus())); BpmProcessInstanceConvert.INSTANCE.buildProcessInstanceStatusEvent(this, processInstance, reason, BpmProcessInstanceStatusEnum.REJECT.getStatus()));
}
@Override
@Transactional(rollbackFor = Exception.class)
public void updateProcessInstanceFromReject(String id, String reason, TaskService taskService, BpmTaskRejectParam bpmTaskRejectParam) {
// 1. 更新流程实例 status
runtimeService.setVariable(id, BpmConstants.PROCESS_INSTANCE_VARIABLE_STATUS, BpmProcessInstanceStatusEnum.REJECT.getStatus());
// 2. 删除流程实例,以实现驳回任务时,取消整个审批流程
ProcessInstance processInstance = getProcessInstance(id);
// 3.3 调用 BPM complete 去完成任务
// 其中variables 是存储动态表单到 local 任务级别。过滤一下,避免 ProcessInstance 系统级的变量被占用
if (CollectionUtil.isNotEmpty(bpmTaskRejectParam.getVariables())) {
Map<String, Object> variables = FlowableUtils.filterTaskFormVariable(bpmTaskRejectParam.getVariables());
taskService.complete(bpmTaskRejectParam.getId(), variables, false);
} else {
taskService.complete(bpmTaskRejectParam.getId());
}
//这是删除所有信息,
// deleteProcessInstance(id, StrUtil.format(BpmDeleteReasonEnum.REJECT_TASK.format(reason)));
// 4. 发送流程实例的状态事件
processInstanceEventPublisher.sendProcessInstanceResultEvent(
BpmProcessInstanceConvert.INSTANCE.buildProcessInstanceStatusEvent(this, processInstance, reason, BpmProcessInstanceStatusEnum.REJECT.getStatus()));
} }
public void deleteProcessInstance(String id, String reason) { public void deleteProcessInstance(String id, String reason) {

View File

@@ -346,7 +346,7 @@ public class BpmTaskServiceImpl implements IBpmTaskService {
BpmCommentTypeEnum.REJECT.formatComment(bpmTaskRejectParam.getReason())); BpmCommentTypeEnum.REJECT.formatComment(bpmTaskRejectParam.getReason()));
// 3. 更新流程实例,审批不通过! // 3. 更新流程实例,审批不通过!
processInstanceService.updateProcessInstanceReject(instance.getProcessInstanceId(), bpmTaskRejectParam.getReason()); processInstanceService.updateProcessInstanceFromReject(instance.getProcessInstanceId(), bpmTaskRejectParam.getReason(), taskService, bpmTaskRejectParam);
} }
/** /**

View File

@@ -89,6 +89,9 @@ public class SupervisionTempLineRunTestVO extends BaseEntity{
private String powerSubstationName; private String powerSubstationName;
private String reason; private String reason;
@ApiModelProperty(value = "监测点填报单位")
private String orgId;
/** /**

View File

@@ -16,6 +16,7 @@ import lombok.EqualsAndHashCode;
import java.time.LocalDate; import java.time.LocalDate;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.util.List;
/** /**
* *
@@ -174,4 +175,15 @@ public class UserReportVO {
private String userReportId; private String userReportId;
} }
@Data
@EqualsAndHashCode(callSuper = true)
public static class UserReportListVO extends UserReportVO{
@ApiModelProperty(value = "入网评估报告")
private List<String> netInReport;
@ApiModelProperty(value = "治理评估告")
private List<String> governReport;
}
} }

View File

@@ -16,7 +16,6 @@ import com.njcn.web.controller.BaseController;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import io.swagger.v3.oas.annotations.Operation;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;

View File

@@ -8,7 +8,6 @@ import com.njcn.common.pojo.enums.common.LogEnum;
import com.njcn.common.pojo.enums.response.CommonResponseEnum; import com.njcn.common.pojo.enums.response.CommonResponseEnum;
import com.njcn.common.pojo.response.HttpResult; import com.njcn.common.pojo.response.HttpResult;
import com.njcn.common.utils.HttpResultUtil; import com.njcn.common.utils.HttpResultUtil;
import com.njcn.supervision.pojo.param.device.SupervisionTempLineReportParam;
import com.njcn.supervision.pojo.param.device.SupervisionTempLineRunTestParam; import com.njcn.supervision.pojo.param.device.SupervisionTempLineRunTestParam;
import com.njcn.supervision.pojo.vo.device.SupervisionTempLineRunTestVO; import com.njcn.supervision.pojo.vo.device.SupervisionTempLineRunTestVO;
import com.njcn.supervision.service.device.ISupervisionTempLineRunTestService; import com.njcn.supervision.service.device.ISupervisionTempLineRunTestService;

View File

@@ -9,25 +9,19 @@ import com.njcn.common.pojo.enums.common.LogEnum;
import com.njcn.common.pojo.enums.response.CommonResponseEnum; import com.njcn.common.pojo.enums.response.CommonResponseEnum;
import com.njcn.common.pojo.response.HttpResult; import com.njcn.common.pojo.response.HttpResult;
import com.njcn.common.utils.HttpResultUtil; import com.njcn.common.utils.HttpResultUtil;
import com.njcn.supervision.pojo.param.device.QuitRunningDeviceParam;
import com.njcn.supervision.pojo.po.leaflet.WarningLeaflet;
import com.njcn.supervision.pojo.vo.device.QuitRunningDeviceVO;
import com.njcn.supervision.pojo.vo.leaflet.WarningLeafletVO; import com.njcn.supervision.pojo.vo.leaflet.WarningLeafletVO;
import com.njcn.harmonic.pojo.dto.RMpPartHarmonicDetailDTO; import com.njcn.harmonic.pojo.dto.RMpPartHarmonicDetailDTO;
import com.njcn.supervision.pojo.param.leaflet.WarningLeafletParam; import com.njcn.supervision.pojo.param.leaflet.WarningLeafletParam;
import com.njcn.supervision.pojo.vo.leaflet.WarningLeafletVO;
import com.njcn.supervision.service.leaflet.IWarningLeafletService; import com.njcn.supervision.service.leaflet.IWarningLeafletService;
import com.njcn.web.controller.BaseController; import com.njcn.web.controller.BaseController;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import io.swagger.v3.oas.annotations.Operation;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import com.njcn.web.controller.BaseController;
import springfox.documentation.annotations.ApiIgnore; import springfox.documentation.annotations.ApiIgnore;
import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestBody;

View File

@@ -15,7 +15,6 @@ import com.njcn.web.controller.BaseController;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import io.swagger.v3.oas.annotations.Operation;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
@@ -41,8 +40,8 @@ public class SupervisionPlanController extends BaseController {
@PostMapping("addPlan") @PostMapping("addPlan")
@OperateInfo(info = LogEnum.BUSINESS_COMMON, operateType = OperateType.ADD) @OperateInfo(info = LogEnum.BUSINESS_COMMON, operateType = OperateType.ADD)
@ApiOperation("新增技术监督计划") @ApiOperation("新增技术监督计划")
@ApiImplicitParam(name = "supvPlanParam",value = "请求体",required = true) @ApiImplicitParam(name = "supvPlanParam", value = "请求体", required = true)
public HttpResult<Object> addPlan(@RequestBody @Validated SupervisionPlanParam supvPlanParam){ public HttpResult<Object> addPlan(@RequestBody @Validated SupervisionPlanParam supvPlanParam) {
String methodDescribe = getMethodDescribe("addPlan"); String methodDescribe = getMethodDescribe("addPlan");
String id = supervisionPlanPOService.addPlan(supvPlanParam); String id = supervisionPlanPOService.addPlan(supvPlanParam);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, id, methodDescribe); return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, id, methodDescribe);
@@ -52,8 +51,8 @@ public class SupervisionPlanController extends BaseController {
@PostMapping("update") @PostMapping("update")
@OperateInfo(info = LogEnum.BUSINESS_COMMON, operateType = OperateType.UPDATE) @OperateInfo(info = LogEnum.BUSINESS_COMMON, operateType = OperateType.UPDATE)
@ApiOperation("新增技术监督计划") @ApiOperation("新增技术监督计划")
@ApiImplicitParam(name = "supvPlanParam",value = "请求体",required = true) @ApiImplicitParam(name = "supvPlanParam", value = "请求体", required = true)
public HttpResult<Object> updatePlan(@RequestBody @Validated SupervisionPlanParam.UpdateSupvPlanParam supvPlanParam){ public HttpResult<Object> updatePlan(@RequestBody @Validated SupervisionPlanParam.UpdateSupvPlanParam supvPlanParam) {
String methodDescribe = getMethodDescribe("updatePlan"); String methodDescribe = getMethodDescribe("updatePlan");
String id = supervisionPlanPOService.updatePlan(supvPlanParam); String id = supervisionPlanPOService.updatePlan(supvPlanParam);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, id, methodDescribe); return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, id, methodDescribe);
@@ -63,8 +62,8 @@ public class SupervisionPlanController extends BaseController {
@PostMapping("pagePlan") @PostMapping("pagePlan")
@OperateInfo(info = LogEnum.BUSINESS_COMMON) @OperateInfo(info = LogEnum.BUSINESS_COMMON)
@ApiOperation("分页查询监督计划") @ApiOperation("分页查询监督计划")
@ApiImplicitParam(name = "supvPlanParam",value = "请求体",required = true) @ApiImplicitParam(name = "supvPlanParam", value = "请求体", required = true)
public HttpResult<Page<SupervisionPlanVO>> pagePlan(@RequestBody SupervisionPlanParam supvPlanParam){ public HttpResult<Page<SupervisionPlanVO>> pagePlan(@RequestBody SupervisionPlanParam supvPlanParam) {
String methodDescribe = getMethodDescribe("pagePlan"); String methodDescribe = getMethodDescribe("pagePlan");
Page<SupervisionPlanVO> page = supervisionPlanPOService.pagePlan(supvPlanParam); Page<SupervisionPlanVO> page = supervisionPlanPOService.pagePlan(supvPlanParam);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, page, methodDescribe); return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, page, methodDescribe);
@@ -87,12 +86,13 @@ public class SupervisionPlanController extends BaseController {
SupervisionPlanVO out = supervisionPlanPOService.getDetailPlan(id); SupervisionPlanVO out = supervisionPlanPOService.getDetailPlan(id);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, out, methodDescribe); return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, out, methodDescribe);
} }
@GetMapping("/updateStatus") @GetMapping("/updateStatus")
@OperateInfo(info = LogEnum.BUSINESS_COMMON) @OperateInfo(info = LogEnum.BUSINESS_COMMON)
@ApiOperation("更改表单状态") @ApiOperation("更改表单状态")
public HttpResult<Object> updateStatus(String businessKey,Integer status) { public HttpResult<Object> updateStatus(String businessKey, Integer status) {
String methodDescribe = getMethodDescribe("updateStatus"); String methodDescribe = getMethodDescribe("updateStatus");
supervisionPlanPOService.updateProcessStatus(businessKey,status); supervisionPlanPOService.updateProcessStatus(businessKey, status);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe); return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe);
} }
@@ -100,7 +100,7 @@ public class SupervisionPlanController extends BaseController {
@OperateInfo(info = LogEnum.BUSINESS_COMMON) @OperateInfo(info = LogEnum.BUSINESS_COMMON)
@GetMapping("/initiateWarningLeaflet") @GetMapping("/initiateWarningLeaflet")
@ApiOperation("针对技术监督问题发起告警单") @ApiOperation("针对技术监督问题发起告警单")
public HttpResult<Boolean> initiateWarningLeaflet(@RequestParam("id") String id){ public HttpResult<Boolean> initiateWarningLeaflet(@RequestParam("id") String id) {
String methodDescribe = getMethodDescribe("initiateWarningLeaflet"); String methodDescribe = getMethodDescribe("initiateWarningLeaflet");
supervisionPlanPOService.initiateWarningLeaflet(id); supervisionPlanPOService.initiateWarningLeaflet(id);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, Boolean.TRUE, methodDescribe); return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, Boolean.TRUE, methodDescribe);

View File

@@ -44,8 +44,8 @@ public class SupervisionProblemController extends BaseController {
@PostMapping("addProblem") @PostMapping("addProblem")
@OperateInfo(info = LogEnum.BUSINESS_COMMON, operateType = OperateType.ADD) @OperateInfo(info = LogEnum.BUSINESS_COMMON, operateType = OperateType.ADD)
@ApiOperation("新增技术监督问题") @ApiOperation("新增技术监督问题")
@ApiImplicitParam(name = "supvProblemParam",value = "请求体",required = true) @ApiImplicitParam(name = "supvProblemParam", value = "请求体", required = true)
public HttpResult<Object> addProblem(@RequestBody @Validated SupervisopnProblemParam supvProblemParam){ public HttpResult<Object> addProblem(@RequestBody @Validated SupervisopnProblemParam supvProblemParam) {
String methodDescribe = getMethodDescribe("addProblem"); String methodDescribe = getMethodDescribe("addProblem");
supervisionProblemPOService.addProblem(supvProblemParam); supervisionProblemPOService.addProblem(supvProblemParam);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe); return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe);
@@ -54,10 +54,10 @@ public class SupervisionProblemController extends BaseController {
@PostMapping("pageProblem") @PostMapping("pageProblem")
@OperateInfo(info = LogEnum.BUSINESS_COMMON) @OperateInfo(info = LogEnum.BUSINESS_COMMON)
@ApiOperation("分页查询监督问题") @ApiOperation("分页查询监督问题")
@ApiImplicitParam(name = "supvProblemParam",value = "请求体",required = true) @ApiImplicitParam(name = "supvProblemParam", value = "请求体", required = true)
public HttpResult<Page<SupervisionProblemPO>> pageProblem(@RequestBody SupervisopnProblemParam supvProblemParam){ public HttpResult<Page<SupervisionProblemPO>> pageProblem(@RequestBody SupervisopnProblemParam supvProblemParam) {
String methodDescribe = getMethodDescribe("pageProblem"); String methodDescribe = getMethodDescribe("pageProblem");
if(StrUtil.isBlank(supvProblemParam.getPlanId())){ if (StrUtil.isBlank(supvProblemParam.getPlanId())) {
throw new BusinessException("监督计划索引不可为空"); throw new BusinessException("监督计划索引不可为空");
} }
Page<SupervisionProblemPO> page = supervisionProblemPOService.pageProblem(supvProblemParam); Page<SupervisionProblemPO> page = supervisionProblemPOService.pageProblem(supvProblemParam);
@@ -65,7 +65,4 @@ public class SupervisionProblemController extends BaseController {
} }
} }

View File

@@ -10,13 +10,11 @@ import com.njcn.common.pojo.enums.response.CommonResponseEnum;
import com.njcn.common.pojo.response.HttpResult; import com.njcn.common.pojo.response.HttpResult;
import com.njcn.common.utils.HttpResultUtil; import com.njcn.common.utils.HttpResultUtil;
import com.njcn.supervision.pojo.param.survey.SurveyPlanParam; import com.njcn.supervision.pojo.param.survey.SurveyPlanParam;
import com.njcn.supervision.pojo.vo.device.QuitRunningDeviceVO;
import com.njcn.supervision.pojo.vo.survey.SurveyPlanVO; import com.njcn.supervision.pojo.vo.survey.SurveyPlanVO;
import com.njcn.supervision.service.survey.ISurveyPlanService; import com.njcn.supervision.service.survey.ISurveyPlanService;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import io.swagger.v3.oas.annotations.Operation;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;

View File

@@ -96,9 +96,9 @@ public class UserReportManageController extends BaseController {
@GetMapping("/getById") @GetMapping("/getById")
@OperateInfo(info = LogEnum.BUSINESS_COMMON) @OperateInfo(info = LogEnum.BUSINESS_COMMON)
@ApiOperation("根据id获取用户档案录入的详细数据") @ApiOperation("根据id获取用户档案录入的详细数据")
public HttpResult<UserReportVO> getById(String id) { public HttpResult<UserReportVO.UserReportListVO> getById(String id) {
String methodDescribe = getMethodDescribe("getById"); String methodDescribe = getMethodDescribe("getById");
UserReportVO userReportVO = userReportPOService.getVOById(id); UserReportVO.UserReportListVO userReportVO = userReportPOService.getVOById(id);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, userReportVO, methodDescribe); return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, userReportVO, methodDescribe);
} }

View File

@@ -10,7 +10,6 @@ import com.njcn.common.pojo.enums.response.CommonResponseEnum;
import com.njcn.common.pojo.response.HttpResult; import com.njcn.common.pojo.response.HttpResult;
import com.njcn.common.utils.HttpResultUtil; import com.njcn.common.utils.HttpResultUtil;
import com.njcn.supervision.pojo.param.user.UserReportNormalParam; import com.njcn.supervision.pojo.param.user.UserReportNormalParam;
import com.njcn.supervision.pojo.param.user.UserReportParam;
import com.njcn.supervision.pojo.vo.user.UserReportVO; import com.njcn.supervision.pojo.vo.user.UserReportVO;
import com.njcn.supervision.service.user.IUserReportNormalService; import com.njcn.supervision.service.user.IUserReportNormalService;
import com.njcn.web.controller.BaseController; import com.njcn.web.controller.BaseController;

View File

@@ -1,7 +1,6 @@
package com.njcn.supervision.controller.user; package com.njcn.supervision.controller.user;
import com.njcn.bpm.pojo.dto.BpmInstanceInfo;
import com.njcn.bpm.pojo.param.instance.BpmProcessInstanceCancelParam; import com.njcn.bpm.pojo.param.instance.BpmProcessInstanceCancelParam;
import com.njcn.common.pojo.annotation.OperateInfo; import com.njcn.common.pojo.annotation.OperateInfo;
import com.njcn.common.pojo.constant.OperateType; import com.njcn.common.pojo.constant.OperateType;

View File

@@ -11,6 +11,7 @@
supervision_temp_line_report.Power_Substation_Name, supervision_temp_line_report.Power_Substation_Name,
supervision_temp_line_report.line_id lineId, supervision_temp_line_report.line_id lineId,
supervision_temp_line_report.line_name lineName, supervision_temp_line_report.line_name lineName,
supervision_temp_line_report.org_id orgId,
supervision_temp_line_debug.reason reason, supervision_temp_line_debug.reason reason,
supervision_temp_line_run_test.process_instance_id process_instanceId, supervision_temp_line_run_test.process_instance_id process_instanceId,
supervision_temp_line_run_test.history_instance_id historyInstanceId, supervision_temp_line_run_test.history_instance_id historyInstanceId,

View File

@@ -5,7 +5,6 @@ import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.collection.CollUtil; import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.date.DatePattern; import cn.hutool.core.date.DatePattern;
import cn.hutool.core.date.DateUnit;
import cn.hutool.core.date.DateUtil; import cn.hutool.core.date.DateUtil;
import cn.hutool.core.text.StrPool; import cn.hutool.core.text.StrPool;
import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.StrUtil;
@@ -18,7 +17,6 @@ import com.njcn.bpm.enums.BpmTaskStatusEnum;
import com.njcn.bpm.pojo.dto.BpmInstanceInfo; import com.njcn.bpm.pojo.dto.BpmInstanceInfo;
import com.njcn.bpm.pojo.dto.BpmProcessInstanceCreateReqDTO; import com.njcn.bpm.pojo.dto.BpmProcessInstanceCreateReqDTO;
import com.njcn.bpm.pojo.param.instance.BpmProcessInstanceCancelParam; import com.njcn.bpm.pojo.param.instance.BpmProcessInstanceCancelParam;
import com.njcn.bpm.utils.DateUtils;
import com.njcn.common.pojo.enums.common.DataStateEnum; import com.njcn.common.pojo.enums.common.DataStateEnum;
import com.njcn.common.pojo.enums.response.CommonResponseEnum; import com.njcn.common.pojo.enums.response.CommonResponseEnum;
import com.njcn.common.pojo.exception.BusinessException; import com.njcn.common.pojo.exception.BusinessException;
@@ -39,7 +37,6 @@ import com.njcn.supervision.pojo.param.device.SupervisionTempLineRunTestParam;
import com.njcn.supervision.pojo.po.device.SupervisionTempLineReport; import com.njcn.supervision.pojo.po.device.SupervisionTempLineReport;
import com.njcn.supervision.pojo.po.device.SupervisionTempLineRunTestPO; import com.njcn.supervision.pojo.po.device.SupervisionTempLineRunTestPO;
import com.njcn.supervision.pojo.po.device.TempLineRunTestWarning; import com.njcn.supervision.pojo.po.device.TempLineRunTestWarning;
import com.njcn.supervision.pojo.po.leaflet.WarningLeaflet;
import com.njcn.supervision.pojo.po.user.UserReportNormalPO; import com.njcn.supervision.pojo.po.user.UserReportNormalPO;
import com.njcn.supervision.pojo.po.user.UserReportProjectPO; import com.njcn.supervision.pojo.po.user.UserReportProjectPO;
import com.njcn.supervision.pojo.po.user.UserReportSensitivePO; import com.njcn.supervision.pojo.po.user.UserReportSensitivePO;
@@ -48,7 +45,6 @@ import com.njcn.supervision.pojo.vo.device.SupervisionTempLineRunTestVO;
import com.njcn.supervision.pojo.vo.device.TempLineRunTestWarningVO; import com.njcn.supervision.pojo.vo.device.TempLineRunTestWarningVO;
import com.njcn.supervision.service.device.ISupervisionTempLineRunTestService; import com.njcn.supervision.service.device.ISupervisionTempLineRunTestService;
import com.njcn.supervision.service.device.TempLineRunTestWarningService; import com.njcn.supervision.service.device.TempLineRunTestWarningService;
import com.njcn.supervision.service.leaflet.IWarningLeafletService;
import com.njcn.supervision.service.user.*; import com.njcn.supervision.service.user.*;
import com.njcn.supervision.utils.InstanceUtil; import com.njcn.supervision.utils.InstanceUtil;
import com.njcn.web.utils.RequestUtil; import com.njcn.web.utils.RequestUtil;
@@ -185,38 +181,38 @@ public class SupervisionTempLineRunTestServiceImpl extends ServiceImpl<Supervisi
//1.先判断是否发送告警单,没有则不允许重新发送 //1.先判断是否发送告警单,没有则不允许重新发送
List<TempLineRunTestWarningVO> tempLineRunTestWarningVOS = this.baseMapper.selectResults(supervisionTempLineRunTestParam.getId()); List<TempLineRunTestWarningVO> tempLineRunTestWarningVOS = this.baseMapper.selectResults(supervisionTempLineRunTestParam.getId());
long count = tempLineRunTestWarningVOS.stream().filter(x -> StrUtil.isBlank(x.getWarningId())).count(); long count = tempLineRunTestWarningVOS.stream().filter(x -> StrUtil.isBlank(x.getWarningId())).count();
if (count>0) { if (count > 0) {
throw new BusinessException(CommonResponseEnum.FAIL, "请先发送告警单信息!"); throw new BusinessException(CommonResponseEnum.FAIL, "请先发送告警单信息!");
} }
//2.判断告警单,是否有未审核通过则不允许重新发送 //2.判断告警单,是否有未审核通过则不允许重新发送
if(CollUtil.isNotEmpty(tempLineRunTestWarningVOS)){ if (CollUtil.isNotEmpty(tempLineRunTestWarningVOS)) {
Integer status = tempLineRunTestWarningVOS.get(0).getStatus(); Integer status = tempLineRunTestWarningVOS.get(0).getStatus();
if(!status.equals(FlowStatusEnum.APPROVE.getCode())){ if (!status.equals(FlowStatusEnum.APPROVE.getCode())) {
throw new BusinessException(CommonResponseEnum.FAIL, "请处理告警单信息,处理审核通过才可重新发送!"); throw new BusinessException(CommonResponseEnum.FAIL, "请处理告警单信息,处理审核通过才可重新发送!");
} }
String startTime = DateUtil.format(DateUtil.offsetDay(DateUtil.date(), 1), DatePattern.NORM_DATE_PATTERN); String startTime = DateUtil.format(DateUtil.offsetDay(DateUtil.date(), 1), DatePattern.NORM_DATE_PATTERN);
String endTime = DateUtil.format(DateUtil.offsetDay(DateUtil.date(), 3), DatePattern.NORM_DATE_PATTERN); String endTime = DateUtil.format(DateUtil.offsetDay(DateUtil.date(), 3), DatePattern.NORM_DATE_PATTERN);
supervisionTempLineRunTestPO.setTestRunTime(startTime + "--" + endTime); supervisionTempLineRunTestPO.setTestRunTime(startTime + "--" + endTime);
} }
supervisionTempLineRunTestPO.setStatus(1); supervisionTempLineRunTestPO.setStatus(9);
supervisionTempLineRunTestPO.setTestRunReport(""); supervisionTempLineRunTestPO.setTestRunReport("");
supervisionTempLineRunTestPO.setState(DataStateEnum.ENABLE.getCode()); supervisionTempLineRunTestPO.setState(DataStateEnum.ENABLE.getCode());
supervisionTempLineRunTestPO.setTestRunState(DataStateEnum.ENABLE.getCode()); supervisionTempLineRunTestPO.setTestRunState(DataStateEnum.ENABLE.getCode());
//处理历史流程id列表 // //处理历史流程id列表
String historyInstanceIds = InstanceUtil.dealHistoryId(supervisionTempLineRunTestPO.getProcessInstanceId(), supervisionTempLineRunTestPO.getHistoryInstanceId()); // String historyInstanceIds = InstanceUtil.dealHistoryId(supervisionTempLineRunTestPO.getProcessInstanceId(), supervisionTempLineRunTestPO.getHistoryInstanceId());
// 发起 BPM 流程 // // 发起 BPM 流程
Map<String, Object> processInstanceVariables = new HashMap<>(); // Map<String, Object> processInstanceVariables = new HashMap<>();
BpmProcessInstanceCreateReqDTO bpmProcessInstanceCreateReqDTO = new BpmProcessInstanceCreateReqDTO(); // BpmProcessInstanceCreateReqDTO bpmProcessInstanceCreateReqDTO = new BpmProcessInstanceCreateReqDTO();
bpmProcessInstanceCreateReqDTO.setProcessDefinitionKey(SupervisionKeyEnum.LINE_RUN_TEST.getKey()); // bpmProcessInstanceCreateReqDTO.setProcessDefinitionKey(SupervisionKeyEnum.LINE_RUN_TEST.getKey());
bpmProcessInstanceCreateReqDTO.setBusinessKey(supervisionTempLineRunTestPO.getId()); // bpmProcessInstanceCreateReqDTO.setBusinessKey(supervisionTempLineRunTestPO.getId());
bpmProcessInstanceCreateReqDTO.setStartUserSelectAssignees(new HashMap<>()); // bpmProcessInstanceCreateReqDTO.setStartUserSelectAssignees(new HashMap<>());
bpmProcessInstanceCreateReqDTO.setVariables(processInstanceVariables); // bpmProcessInstanceCreateReqDTO.setVariables(processInstanceVariables);
String processInstanceId = bpmProcessFeignClient.createProcessInstance(supervisionTempLineRunTestPO.getCreateBy(), bpmProcessInstanceCreateReqDTO).getData(); // String processInstanceId = bpmProcessFeignClient.createProcessInstance(supervisionTempLineRunTestPO.getCreateBy(), bpmProcessInstanceCreateReqDTO).getData();
// 将工作流的编号,更新到流程单中 // // 将工作流的编号,更新到流程单中
supervisionTempLineRunTestPO.setProcessInstanceId(processInstanceId); // supervisionTempLineRunTestPO.setProcessInstanceId(processInstanceId);
//保存历史流程id列表 // //保存历史流程id列表
supervisionTempLineRunTestPO.setHistoryInstanceId(historyInstanceIds); // supervisionTempLineRunTestPO.setHistoryInstanceId(historyInstanceIds);
this.baseMapper.updateById(supervisionTempLineRunTestPO); this.baseMapper.updateById(supervisionTempLineRunTestPO);
return supervisionTempLineRunTestPO.getId(); return supervisionTempLineRunTestPO.getId();
} }
@@ -226,7 +222,8 @@ public class SupervisionTempLineRunTestServiceImpl extends ServiceImpl<Supervisi
public void isTestRunStartOrEnd(HttpServletResponse response) { public void isTestRunStartOrEnd(HttpServletResponse response) {
LocalDateTime time = LocalDateTime.now(); LocalDateTime time = LocalDateTime.now();
LambdaQueryWrapper<SupervisionTempLineRunTestPO> lambdaQueryWrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<SupervisionTempLineRunTestPO> lambdaQueryWrapper = new LambdaQueryWrapper<>();
lambdaQueryWrapper.eq(SupervisionTempLineRunTestPO::getTestRunState, 1).eq(SupervisionTempLineRunTestPO::getState, DataStateEnum.ENABLE.getCode()); lambdaQueryWrapper.eq(SupervisionTempLineRunTestPO::getTestRunState, 1)
.eq(SupervisionTempLineRunTestPO::getState, DataStateEnum.ENABLE.getCode());
List<SupervisionTempLineRunTestPO> supervisionTempLineRunTestPOList = this.list(lambdaQueryWrapper); List<SupervisionTempLineRunTestPO> supervisionTempLineRunTestPOList = this.list(lambdaQueryWrapper);
List<SupervisionTempLineRunTestPO> usePoList = new ArrayList<>(); List<SupervisionTempLineRunTestPO> usePoList = new ArrayList<>();
for (SupervisionTempLineRunTestPO item : supervisionTempLineRunTestPOList) { for (SupervisionTempLineRunTestPO item : supervisionTempLineRunTestPOList) {
@@ -237,7 +234,6 @@ public class SupervisionTempLineRunTestServiceImpl extends ServiceImpl<Supervisi
usePoList.add(item); usePoList.add(item);
} }
} }
if (CollUtil.isNotEmpty(usePoList)) { if (CollUtil.isNotEmpty(usePoList)) {
List<String> lineRunTestIds = usePoList.stream().map(SupervisionTempLineRunTestPO::getId).collect(Collectors.toList()); List<String> lineRunTestIds = usePoList.stream().map(SupervisionTempLineRunTestPO::getId).collect(Collectors.toList());
List<SupervisionTempLineReport> supervisionTempLineReports = supervisionTempLineReportMapper.selectBatchIds(lineRunTestIds); List<SupervisionTempLineReport> supervisionTempLineReports = supervisionTempLineReportMapper.selectBatchIds(lineRunTestIds);
@@ -253,7 +249,11 @@ public class SupervisionTempLineRunTestServiceImpl extends ServiceImpl<Supervisi
for (SupervisionTempLineRunTestPO supervisionTempLineRunTestPO : val) { for (SupervisionTempLineRunTestPO supervisionTempLineRunTestPO : val) {
// 将工作流的编号,更新到流程单中 // 将工作流的编号,更新到流程单中
SupervisionTempLineRunTestPO po = new SupervisionTempLineRunTestPO(); SupervisionTempLineRunTestPO po = new SupervisionTempLineRunTestPO();
if(supervisionTempLineRunTestPO.getStatus()!=1&&StrUtil.isBlank(supervisionTempLineRunTestPO.getProcessInstanceId())){ if (StrUtil.isNotBlank(supervisionTempLineRunTestPO.getProcessInstanceId())) {
String historyInstanceIds = InstanceUtil.dealHistoryId(supervisionTempLineRunTestPO.getProcessInstanceId(),
supervisionTempLineRunTestPO.getHistoryInstanceId());
po.setHistoryInstanceId(historyInstanceIds);
}
// 发起 BPM 流程 // 发起 BPM 流程
Map<String, Object> processInstanceVariables = new HashMap<>(); Map<String, Object> processInstanceVariables = new HashMap<>();
BpmProcessInstanceCreateReqDTO bpmProcessInstanceCreateReqDTO = new BpmProcessInstanceCreateReqDTO(); BpmProcessInstanceCreateReqDTO bpmProcessInstanceCreateReqDTO = new BpmProcessInstanceCreateReqDTO();
@@ -263,7 +263,6 @@ public class SupervisionTempLineRunTestServiceImpl extends ServiceImpl<Supervisi
bpmProcessInstanceCreateReqDTO.setVariables(processInstanceVariables); bpmProcessInstanceCreateReqDTO.setVariables(processInstanceVariables);
String processInstanceId = bpmProcessFeignClient.createProcessInstance(supervisionTempLineRunTestPO.getCreateBy(), bpmProcessInstanceCreateReqDTO).getData(); String processInstanceId = bpmProcessFeignClient.createProcessInstance(supervisionTempLineRunTestPO.getCreateBy(), bpmProcessInstanceCreateReqDTO).getData();
po.setProcessInstanceId(processInstanceId); po.setProcessInstanceId(processInstanceId);
}
po.setId(supervisionTempLineRunTestPO.getId()); po.setId(supervisionTempLineRunTestPO.getId());
po.setStatus(1); po.setStatus(1);
po.setTestRunState(2); po.setTestRunState(2);
@@ -273,11 +272,11 @@ public class SupervisionTempLineRunTestServiceImpl extends ServiceImpl<Supervisi
po.setIntegrityRate(dto.getIntegrityRate()); po.setIntegrityRate(dto.getIntegrityRate());
po.setSuitRate(dto.getSuitRate()); po.setSuitRate(dto.getSuitRate());
MockMultipartFile file; MockMultipartFile file;
if(lineReportMap.containsKey(supervisionTempLineRunTestPO.getId())){ if (lineReportMap.containsKey(supervisionTempLineRunTestPO.getId())) {
String url = lineReportMap.get(supervisionTempLineRunTestPO.getId()); String url = lineReportMap.get(supervisionTempLineRunTestPO.getId());
InputStream fileStream = fileStorageUtil.getFileStream(url.substring(url.indexOf("/"))); InputStream fileStream = fileStorageUtil.getFileStream(url.substring(url.indexOf("/")));
try { try {
file = new MockMultipartFile("file",url.substring(url.lastIndexOf("/")+1), MediaType.IMAGE_PNG_VALUE, fileStream); file = new MockMultipartFile("file", url.substring(url.lastIndexOf("/") + 1), MediaType.IMAGE_PNG_VALUE, fileStream);
} catch (IOException e) { } catch (IOException e) {
throw new RuntimeException(e); throw new RuntimeException(e);
} finally { } finally {
@@ -289,8 +288,8 @@ public class SupervisionTempLineRunTestServiceImpl extends ServiceImpl<Supervisi
e.printStackTrace(); e.printStackTrace();
} }
} }
}else{ } else {
file= new MockMultipartFile("file", new byte[0]); file = new MockMultipartFile("file", new byte[0]);
} }
try { try {
startTime = DateUtil.beginOfDay(DateUtil.parse(startTime)).toString(); startTime = DateUtil.beginOfDay(DateUtil.parse(startTime)).toString();
@@ -321,7 +320,7 @@ public class SupervisionTempLineRunTestServiceImpl extends ServiceImpl<Supervisi
@Override @Override
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public void updateProcessStatus(String businessKey,String reason, Integer status) { public void updateProcessStatus(String businessKey, String reason, Integer status) {
SupervisionTempLineRunTestPO supervisionTempLineRunTestPO = this.baseMapper.selectById(businessKey); SupervisionTempLineRunTestPO supervisionTempLineRunTestPO = this.baseMapper.selectById(businessKey);
//如果状态为审批通过 //如果状态为审批通过
if (status.equals(BpmProcessInstanceStatusEnum.APPROVE.getStatus())) { if (status.equals(BpmProcessInstanceStatusEnum.APPROVE.getStatus())) {
@@ -371,6 +370,7 @@ public class SupervisionTempLineRunTestServiceImpl extends ServiceImpl<Supervisi
//取消流程 //取消流程
bpmProcessFeignClient.cancelProcessInstanceByStartUser(cancelReqVO); bpmProcessFeignClient.cancelProcessInstanceByStartUser(cancelReqVO);
//更新状态 //更新状态
supervisionTempLineRunTestPO.setTestRunState(0);
supervisionTempLineRunTestPO.setStatus(BpmProcessInstanceStatusEnum.CANCEL.getStatus()); supervisionTempLineRunTestPO.setStatus(BpmProcessInstanceStatusEnum.CANCEL.getStatus());
this.updateById(supervisionTempLineRunTestPO); this.updateById(supervisionTempLineRunTestPO);
return supervisionTempLineRunTestPO.getId(); return supervisionTempLineRunTestPO.getId();

View File

@@ -1,72 +1,32 @@
package com.njcn.supervision.service.leaflet.impl; package com.njcn.supervision.service.leaflet.impl;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.date.DatePattern;
import cn.hutool.core.date.DateUtil; import cn.hutool.core.date.DateUtil;
import cn.hutool.core.date.LocalDateTimeUtil;
import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.IdWorker; import com.baomidou.mybatisplus.core.toolkit.IdWorker;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.njcn.bpm.api.BpmProcessFeignClient;
import com.njcn.bpm.enums.BpmProcessInstanceStatusEnum;
import com.njcn.bpm.enums.BpmTaskStatusEnum;
import com.njcn.bpm.pojo.dto.BpmInstanceInfo;
import com.njcn.bpm.pojo.dto.BpmProcessInstanceCreateReqDTO;
import com.njcn.bpm.pojo.param.instance.BpmProcessInstanceCancelParam;
import com.njcn.common.pojo.enums.common.DataStateEnum; import com.njcn.common.pojo.enums.common.DataStateEnum;
import com.njcn.common.pojo.enums.response.CommonResponseEnum; import com.njcn.common.pojo.enums.response.CommonResponseEnum;
import com.njcn.common.pojo.exception.BusinessException; import com.njcn.common.pojo.exception.BusinessException;
import com.njcn.harmonic.pojo.dto.RMpPartHarmonicDetailDTO;
import com.njcn.oss.utils.FileStorageUtil;
import com.njcn.supervision.enums.FlowStatusEnum;
import com.njcn.supervision.enums.LeafletTypeEnum;
import com.njcn.supervision.enums.ProblemTypeEnum; import com.njcn.supervision.enums.ProblemTypeEnum;
import com.njcn.supervision.enums.SupervisionKeyEnum;
import com.njcn.supervision.mapper.device.SupervisionTempLineDebugPOMapper; import com.njcn.supervision.mapper.device.SupervisionTempLineDebugPOMapper;
import com.njcn.supervision.mapper.leaflet.WarningLeafletMapper;
import com.njcn.supervision.pojo.param.device.SupervisionTempLineDebugParam; import com.njcn.supervision.pojo.param.device.SupervisionTempLineDebugParam;
import com.njcn.supervision.pojo.param.leaflet.WarningAddParam; import com.njcn.supervision.pojo.param.leaflet.WarningAddParam;
import com.njcn.supervision.pojo.param.leaflet.WarningLeafletParam;
import com.njcn.supervision.pojo.po.device.SupervisionTempLineRunTestPO;
import com.njcn.supervision.pojo.po.leaflet.WarningLeaflet;
import com.njcn.supervision.pojo.po.problem.SupervisionUserComplaintPO;
import com.njcn.supervision.pojo.po.survey.SurveyTest;
import com.njcn.supervision.pojo.vo.device.SupervisionDevMainReportVO; import com.njcn.supervision.pojo.vo.device.SupervisionDevMainReportVO;
import com.njcn.supervision.pojo.vo.device.SupervisionTempLineDebugVO; import com.njcn.supervision.pojo.vo.device.SupervisionTempLineDebugVO;
import com.njcn.supervision.pojo.vo.device.SupervisionTempLineRunTestVO; import com.njcn.supervision.pojo.vo.device.SupervisionTempLineRunTestVO;
import com.njcn.supervision.pojo.vo.leaflet.WarningLeafletVO;
import com.njcn.supervision.service.device.ISupervisionTempLineRunTestService; import com.njcn.supervision.service.device.ISupervisionTempLineRunTestService;
import com.njcn.supervision.service.device.SupervisionTempLineDebugPOService;
import com.njcn.supervision.service.leaflet.ILineRunTestProblemService; import com.njcn.supervision.service.leaflet.ILineRunTestProblemService;
import com.njcn.supervision.service.leaflet.IWarningLeafletService; import com.njcn.supervision.service.leaflet.IWarningLeafletService;
import com.njcn.supervision.service.survey.ISurveyTestService;
import com.njcn.supervision.service.survey.SupervisionGeneralSurveyPlanPOService;
import com.njcn.supervision.utils.InstanceUtil;
import com.njcn.system.api.DicDataFeignClient;
import com.njcn.system.enums.DicDataTypeEnum;
import com.njcn.system.pojo.po.DictData;
import com.njcn.user.api.DeptFeignClient; import com.njcn.user.api.DeptFeignClient;
import com.njcn.user.api.UserFeignClient; import com.njcn.user.api.UserFeignClient;
import com.njcn.user.pojo.po.Dept;
import com.njcn.web.factory.PageFactory; import com.njcn.web.factory.PageFactory;
import com.njcn.web.utils.RequestUtil; import com.njcn.web.utils.RequestUtil;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import org.springframework.beans.BeanUtils;
import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.time.LocalDate;
import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.stream.Collectors;
/** /**
* @Description: 试运行评估问题 服务实现类 * @Description: 试运行评估问题 服务实现类
@@ -107,7 +67,7 @@ public class LineRunTestProblemServiceImpl implements ILineRunTestProblemService
@Override @Override
public void initiateWarningLeaflet(WarningAddParam.Extend warningAddParam) { public void initiateWarningLeaflet(WarningAddParam.Extend warningAddParam) {
SupervisionTempLineRunTestVO runTestById = lineRunTestService.getRunTestById(warningAddParam.getId()); SupervisionTempLineRunTestVO runTestById = lineRunTestService.getRunTestById(warningAddParam.getId());
if(ObjectUtil.isNull(runTestById)){ if (ObjectUtil.isNull(runTestById)) {
throw new BusinessException(CommonResponseEnum.FAIL, "无法查询到该信息,请检查信息是否存在!"); throw new BusinessException(CommonResponseEnum.FAIL, "无法查询到该信息,请检查信息是否存在!");
} }
//组装告警单 //组装告警单
@@ -122,7 +82,7 @@ public class LineRunTestProblemServiceImpl implements ILineRunTestProblemService
* */ * */
warningLeafletService.createLeaflet( warningLeafletService.createLeaflet(
complainteDetail, complainteDetail,
RequestUtil.getDeptIndex(), runTestById.getOrgId(),
IdWorker.get32UUID(), IdWorker.get32UUID(),
warningAddParam.getProblemId(), warningAddParam.getProblemId(),
ProblemTypeEnum.SITE_TEST.getCode(), ProblemTypeEnum.SITE_TEST.getCode(),
@@ -132,6 +92,7 @@ public class LineRunTestProblemServiceImpl implements ILineRunTestProblemService
null null
); );
} }
private String assembleWarningDetail(SupervisionTempLineRunTestVO byId) { private String assembleWarningDetail(SupervisionTempLineRunTestVO byId) {
String issueDetail = byId.getPowerSubstationName() String issueDetail = byId.getPowerSubstationName()
.concat("_") .concat("_")
@@ -140,8 +101,7 @@ public class LineRunTestProblemServiceImpl implements ILineRunTestProblemService
.concat(byId.getConnectedBus()) .concat(byId.getConnectedBus())
.concat("_") .concat("_")
.concat(byId.getLineName()) .concat(byId.getLineName())
.concat("试运行评估问题") .concat("试运行评估问题");
;
return issueDetail; return issueDetail;
} }
} }

View File

@@ -25,12 +25,9 @@ import com.njcn.supervision.enums.ProblemTypeEnum;
import com.njcn.supervision.enums.SupervisionKeyEnum; import com.njcn.supervision.enums.SupervisionKeyEnum;
import com.njcn.supervision.mapper.leaflet.WarningLeafletMapper; import com.njcn.supervision.mapper.leaflet.WarningLeafletMapper;
import com.njcn.supervision.pojo.param.leaflet.WarningLeafletParam; import com.njcn.supervision.pojo.param.leaflet.WarningLeafletParam;
import com.njcn.supervision.pojo.po.device.SupervisionTempLineRunTestPO;
import com.njcn.supervision.pojo.po.device.TempLineRunTestWarning; import com.njcn.supervision.pojo.po.device.TempLineRunTestWarning;
import com.njcn.supervision.pojo.po.leaflet.WarningLeaflet; import com.njcn.supervision.pojo.po.leaflet.WarningLeaflet;
import com.njcn.supervision.pojo.po.survey.SurveyTest;
import com.njcn.supervision.pojo.vo.leaflet.WarningLeafletVO; import com.njcn.supervision.pojo.vo.leaflet.WarningLeafletVO;
import com.njcn.supervision.service.device.ISupervisionTempLineRunTestService;
import com.njcn.supervision.service.device.TempLineRunTestWarningService; import com.njcn.supervision.service.device.TempLineRunTestWarningService;
import com.njcn.supervision.service.leaflet.IWarningLeafletService; import com.njcn.supervision.service.leaflet.IWarningLeafletService;
import com.njcn.supervision.service.survey.ISurveyTestService; import com.njcn.supervision.service.survey.ISurveyTestService;

View File

@@ -4,18 +4,18 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.njcn.supervision.pojo.param.plan.SupervisopnProblemParam; import com.njcn.supervision.pojo.param.plan.SupervisopnProblemParam;
import com.njcn.supervision.pojo.po.plan.SupervisionProblemPO; import com.njcn.supervision.pojo.po.plan.SupervisionProblemPO;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;
/**
* /**
* Description: * Description:
* Date: 2024/5/20 19:50【需求编号】 * Date: 2024/5/20 19:50【需求编号】
* *
* @author clam * @author clam
* @version V1.0.0 * @version V1.0.0
*/ */
public interface SupervisionProblemPOService extends IService<SupervisionProblemPO>{ public interface SupervisionProblemPOService extends IService<SupervisionProblemPO> {
void addProblem(SupervisopnProblemParam supvProblemParam); void addProblem(SupervisopnProblemParam supvProblemParam);
Page<SupervisionProblemPO> pageProblem(SupervisopnProblemParam supvProblemParam); Page<SupervisionProblemPO> pageProblem(SupervisopnProblemParam supvProblemParam);
} }

View File

@@ -8,7 +8,6 @@ import cn.hutool.core.date.DateUtil;
import cn.hutool.core.date.LocalDateTimeUtil; import cn.hutool.core.date.LocalDateTimeUtil;
import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.IdWorker;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.njcn.bpm.api.BpmProcessFeignClient; import com.njcn.bpm.api.BpmProcessFeignClient;
@@ -20,8 +19,6 @@ import com.njcn.bpm.pojo.param.instance.BpmProcessInstanceCancelParam;
import com.njcn.common.pojo.enums.common.DataStateEnum; import com.njcn.common.pojo.enums.common.DataStateEnum;
import com.njcn.common.pojo.exception.BusinessException; import com.njcn.common.pojo.exception.BusinessException;
import com.njcn.common.utils.PubUtils; import com.njcn.common.utils.PubUtils;
import com.njcn.supervision.enums.LeafletTypeEnum;
import com.njcn.supervision.enums.ProblemTypeEnum;
import com.njcn.supervision.enums.SupervisionKeyEnum; import com.njcn.supervision.enums.SupervisionKeyEnum;
import com.njcn.supervision.mapper.plan.SupervisionPlanPOMapper; import com.njcn.supervision.mapper.plan.SupervisionPlanPOMapper;
import com.njcn.supervision.pojo.param.plan.SupervisionPlanParam; import com.njcn.supervision.pojo.param.plan.SupervisionPlanParam;

View File

@@ -32,7 +32,6 @@ import java.util.function.Function;
import java.util.stream.Collectors; import java.util.stream.Collectors;
/** /**
*
* Description: * Description:
* Date: 2024/5/20 19:50【需求编号】 * Date: 2024/5/20 19:50【需求编号】
* *
@@ -41,21 +40,22 @@ import java.util.stream.Collectors;
*/ */
@Service @Service
@RequiredArgsConstructor @RequiredArgsConstructor
public class SupervisionProblemPOServiceImpl extends ServiceImpl<SupervisionProblemPOMapper, SupervisionProblemPO> implements SupervisionProblemPOService{ public class SupervisionProblemPOServiceImpl extends ServiceImpl<SupervisionProblemPOMapper, SupervisionProblemPO> implements SupervisionProblemPOService {
private final SupervisionPlanPOMapper supervisionPlanPOMapper; private final SupervisionPlanPOMapper supervisionPlanPOMapper;
private final DicDataFeignClient dicDataFeignClient; private final DicDataFeignClient dicDataFeignClient;
private final DeptFeignClient deptFeignClient; private final DeptFeignClient deptFeignClient;
@Override @Override
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public void addProblem(SupervisopnProblemParam supvProblemParam) { public void addProblem(SupervisopnProblemParam supvProblemParam) {
checkParam(supvProblemParam.getPlanId(),supvProblemParam.getDiscoveryTime()); checkParam(supvProblemParam.getPlanId(), supvProblemParam.getDiscoveryTime());
SupervisionProblemPO supvProblem = new SupervisionProblemPO(); SupervisionProblemPO supvProblem = new SupervisionProblemPO();
BeanUtil.copyProperties(supvProblemParam, supvProblem); BeanUtil.copyProperties(supvProblemParam, supvProblem);
supvProblem.setPlanRectificationTime(LocalDateTimeUtil.parse(supvProblemParam.getPlanRectificationTime(), DatePattern.NORM_DATETIME_PATTERN)); supvProblem.setPlanRectificationTime(LocalDateTimeUtil.parse(supvProblemParam.getPlanRectificationTime(), DatePattern.NORM_DATETIME_PATTERN));
if(StrUtil.isNotBlank(supvProblemParam.getRectificationTime())) { if (StrUtil.isNotBlank(supvProblemParam.getRectificationTime())) {
supvProblem.setRectificationTime(LocalDateTimeUtil.parse(supvProblemParam.getRectificationTime(), DatePattern.NORM_DATETIME_PATTERN)); supvProblem.setRectificationTime(LocalDateTimeUtil.parse(supvProblemParam.getRectificationTime(), DatePattern.NORM_DATETIME_PATTERN));
} }
this.save(supvProblem); this.save(supvProblem);
@@ -94,12 +94,12 @@ public class SupervisionProblemPOServiceImpl extends ServiceImpl<SupervisionProb
} }
//判断是否存在时间范围内 //判断是否存在时间范围内
public void checkParam(String id,String time) { public void checkParam(String id, String time) {
if(StrUtil.isNotBlank(time)){ if (StrUtil.isNotBlank(time)) {
SupervisionPlanPO supvPlan = supervisionPlanPOMapper.selectById(id); SupervisionPlanPO supvPlan = supervisionPlanPOMapper.selectById(id);
if(ObjectUtil.isNotNull(supvPlan)){ if (ObjectUtil.isNotNull(supvPlan)) {
//判断时间范围 //判断时间范围
if (ObjectUtil.isAllNotEmpty(supvPlan.getEffectStartTime(), supvPlan.getEffectEndTime())|| if (ObjectUtil.isAllNotEmpty(supvPlan.getEffectStartTime(), supvPlan.getEffectEndTime()) ||
ObjectUtil.isAllNotEmpty(supvPlan.getEffectStartTime(), supvPlan.getReportIssueTime()) ObjectUtil.isAllNotEmpty(supvPlan.getEffectStartTime(), supvPlan.getReportIssueTime())
) { ) {
//实施开始时间 //实施开始时间
@@ -107,14 +107,14 @@ public class SupervisionProblemPOServiceImpl extends ServiceImpl<SupervisionProb
//问题发现时间 //问题发现时间
DateTime problemOcTime = DateUtil.parse(time, "yyyy-MM-dd HH:mm:ss"); DateTime problemOcTime = DateUtil.parse(time, "yyyy-MM-dd HH:mm:ss");
Boolean fly = false; Boolean fly = false;
if(ObjectUtil.isNotNull(supvPlan.getEffectEndTime())){ if (ObjectUtil.isNotNull(supvPlan.getEffectEndTime())) {
//实施结束时间 //实施结束时间
DateTime effectEndTime = DateUtil.parse(DateUtil.formatLocalDateTime(supvPlan.getEffectEndTime()), "yyyy-MM-dd HH:mm:ss"); DateTime effectEndTime = DateUtil.parse(DateUtil.formatLocalDateTime(supvPlan.getEffectEndTime()), "yyyy-MM-dd HH:mm:ss");
if (DateUtil.isIn(problemOcTime, effectStartTime, effectEndTime)) { if (DateUtil.isIn(problemOcTime, effectStartTime, effectEndTime)) {
fly = true; fly = true;
} }
} }
if(ObjectUtil.isNotNull(supvPlan.getReportIssueTime())){ if (ObjectUtil.isNotNull(supvPlan.getReportIssueTime())) {
//报告出具时间 //报告出具时间
DateTime reportIssueTime = DateUtil.parse(DateUtil.formatLocalDateTime(supvPlan.getReportIssueTime()), "yyyy-MM-dd HH:mm:ss"); DateTime reportIssueTime = DateUtil.parse(DateUtil.formatLocalDateTime(supvPlan.getReportIssueTime()), "yyyy-MM-dd HH:mm:ss");
if (DateUtil.isIn(problemOcTime, effectStartTime, reportIssueTime)) { if (DateUtil.isIn(problemOcTime, effectStartTime, reportIssueTime)) {

View File

@@ -5,7 +5,6 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.njcn.bpm.pojo.param.instance.BpmProcessInstanceCancelParam; import com.njcn.bpm.pojo.param.instance.BpmProcessInstanceCancelParam;
import com.njcn.bpm.service.IBpmService; import com.njcn.bpm.service.IBpmService;
import com.njcn.supervision.pojo.param.user.UserReportNormalParam; import com.njcn.supervision.pojo.param.user.UserReportNormalParam;
import com.njcn.supervision.pojo.param.user.UserReportParam;
import com.njcn.supervision.pojo.po.user.UserReportNormalPO; import com.njcn.supervision.pojo.po.user.UserReportNormalPO;
import com.njcn.supervision.pojo.vo.user.UserReportVO; import com.njcn.supervision.pojo.vo.user.UserReportVO;

View File

@@ -31,7 +31,7 @@ public interface UserReportPOService extends IBpmService<UserReportPO> {
Boolean removeUserReport(List<String> ids); Boolean removeUserReport(List<String> ids);
UserReportVO getVOById(String id); UserReportVO.UserReportListVO getVOById(String id);
List<UserReportVO> getUserReportList(); List<UserReportVO> getUserReportList();

View File

@@ -14,6 +14,7 @@ import com.njcn.bpm.pojo.dto.BpmInstanceInfo;
import com.njcn.bpm.pojo.dto.BpmProcessInstanceCreateReqDTO; import com.njcn.bpm.pojo.dto.BpmProcessInstanceCreateReqDTO;
import com.njcn.bpm.pojo.param.instance.BpmProcessInstanceCancelParam; import com.njcn.bpm.pojo.param.instance.BpmProcessInstanceCancelParam;
import com.njcn.common.pojo.enums.common.DataStateEnum; import com.njcn.common.pojo.enums.common.DataStateEnum;
import com.njcn.common.pojo.exception.BusinessException;
import com.njcn.supervision.enums.SupervisionKeyEnum; import com.njcn.supervision.enums.SupervisionKeyEnum;
import com.njcn.supervision.mapper.user.UserReportNormalMapper; import com.njcn.supervision.mapper.user.UserReportNormalMapper;
import com.njcn.supervision.pojo.param.user.UserReportNormalParam; import com.njcn.supervision.pojo.param.user.UserReportNormalParam;
@@ -23,7 +24,6 @@ import com.njcn.supervision.pojo.vo.user.UserReportVO;
import com.njcn.supervision.service.user.IUserReportNormalService; import com.njcn.supervision.service.user.IUserReportNormalService;
import com.njcn.supervision.service.user.UserReportPOService; import com.njcn.supervision.service.user.UserReportPOService;
import com.njcn.supervision.utils.InstanceUtil; import com.njcn.supervision.utils.InstanceUtil;
import com.njcn.user.api.DeptFeignClient;
import com.njcn.user.api.UserFeignClient; import com.njcn.user.api.UserFeignClient;
import com.njcn.web.factory.PageFactory; import com.njcn.web.factory.PageFactory;
import com.njcn.web.utils.RequestUtil; import com.njcn.web.utils.RequestUtil;
@@ -50,39 +50,54 @@ public class UserReportNormalServiceImpl extends ServiceImpl<UserReportNormalMap
private final BpmProcessFeignClient bpmProcessFeignClient; private final BpmProcessFeignClient bpmProcessFeignClient;
private final UserReportPOService userReportPOService; private final UserReportPOService userReportPOService;
private final DeptFeignClient deptFeignClient;
private final UserFeignClient userFeignClient; private final UserFeignClient userFeignClient;
@Override @Override
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public String addUserNormal(UserReportNormalParam userReportNormalParam) { public String addUserNormal(UserReportNormalParam userReportNormalParam) {
//添加治理评估文件,需先判断入网评估是否审核通过
if (1 == userReportNormalParam.getType()) {
List<UserReportNormalPO> list = this.list(new LambdaQueryWrapper<UserReportNormalPO>()
.eq(UserReportNormalPO::getUserReportId, userReportNormalParam.getUserReportId())
.eq(UserReportNormalPO::getState, DataStateEnum.ENABLE.getCode())
.ne(UserReportNormalPO::getStatus, BpmTaskStatusEnum.CANCEL.getStatus())
.eq(UserReportNormalPO::getType, 0)
.orderByDesc(UserReportNormalPO::getCreateTime)
);
if(CollUtil.isNotEmpty(list)){
List<String> collect = list.stream().filter(x -> Objects.equals(x.getStatus(), BpmTaskStatusEnum.APPROVE.getStatus()))
.map(UserReportNormalPO::getId)
.collect(Collectors.toList());
if(CollUtil.isNotEmpty(collect)){
throw new BusinessException("入网方案申请未都通过!");
}
}else{
throw new BusinessException("请先进行入网方案申请!");
}
}
UserReportNormalPO userReportNormalPO = new UserReportNormalPO(); UserReportNormalPO userReportNormalPO = new UserReportNormalPO();
BeanUtil.copyProperties(userReportNormalParam, userReportNormalPO); BeanUtil.copyProperties(userReportNormalParam, userReportNormalPO);
userReportNormalPO.setState(DataStateEnum.ENABLE.getCode()); userReportNormalPO.setState(DataStateEnum.ENABLE.getCode());
if(Objects.equals(userReportNormalParam.getSaveOrCheckflag(),"1")){ if (Objects.equals(userReportNormalParam.getSaveOrCheckflag(), "1")) {
userReportNormalPO.setStatus(BpmTaskStatusEnum.WAIT.getStatus()); userReportNormalPO.setStatus(BpmTaskStatusEnum.WAIT.getStatus());
}else { } else {
userReportNormalPO.setStatus(BpmTaskStatusEnum.RUNNING.getStatus()); userReportNormalPO.setStatus(BpmTaskStatusEnum.RUNNING.getStatus());
} }
this.saveOrUpdate(userReportNormalPO); this.saveOrUpdate(userReportNormalPO);
userReportNormalPO =this.getById(userReportNormalPO.getId()); userReportNormalPO = this.getById(userReportNormalPO.getId());
if(Objects.equals(userReportNormalParam.getSaveOrCheckflag(),"2")){ if (Objects.equals(userReportNormalParam.getSaveOrCheckflag(), "2")) {
// 发起 BPM 流程 // 发起 BPM 流程
Map<String, Object> processInstanceVariables = new HashMap<>(); Map<String, Object> processInstanceVariables = new HashMap<>();
BpmProcessInstanceCreateReqDTO bpmProcessInstanceCreateReqDTO = new BpmProcessInstanceCreateReqDTO(); BpmProcessInstanceCreateReqDTO bpmProcessInstanceCreateReqDTO = new BpmProcessInstanceCreateReqDTO();
if(userReportNormalParam.getType() == 0){ if (0 == userReportNormalParam.getType()) {
bpmProcessInstanceCreateReqDTO.setProcessDefinitionKey(SupervisionKeyEnum.USER_GO_NET.getKey()); bpmProcessInstanceCreateReqDTO.setProcessDefinitionKey(SupervisionKeyEnum.USER_GO_NET.getKey());
}else { } else {
bpmProcessInstanceCreateReqDTO.setProcessDefinitionKey(SupervisionKeyEnum.USER_TREAT_CHECK.getKey()); bpmProcessInstanceCreateReqDTO.setProcessDefinitionKey(SupervisionKeyEnum.USER_TREAT_CHECK.getKey());
} }
bpmProcessInstanceCreateReqDTO.setBusinessKey(userReportNormalPO.getId()); bpmProcessInstanceCreateReqDTO.setBusinessKey(userReportNormalPO.getId());
bpmProcessInstanceCreateReqDTO.setStartUserSelectAssignees(userReportNormalParam.getStartUserSelectAssignees()); bpmProcessInstanceCreateReqDTO.setStartUserSelectAssignees(userReportNormalParam.getStartUserSelectAssignees());
bpmProcessInstanceCreateReqDTO.setVariables(processInstanceVariables); bpmProcessInstanceCreateReqDTO.setVariables(processInstanceVariables);
@@ -99,7 +114,7 @@ public class UserReportNormalServiceImpl extends ServiceImpl<UserReportNormalMap
public String updateUserNormal(UserReportNormalParam userReportParam) { public String updateUserNormal(UserReportNormalParam userReportParam) {
UserReportNormalPO userReportNormalPO = this.baseMapper.selectById(userReportParam.getId()); UserReportNormalPO userReportNormalPO = this.baseMapper.selectById(userReportParam.getId());
//判断是否有权限操作 //判断是否有权限操作
InstanceUtil.judgeUserPower(RequestUtil.getUserIndex(),userReportNormalPO.getCreateBy()); InstanceUtil.judgeUserPower(RequestUtil.getUserIndex(), userReportNormalPO.getCreateBy());
//处理历史流程id列表 //处理历史流程id列表
String historyInstanceIds = InstanceUtil.dealHistoryId(userReportNormalPO.getProcessInstanceId(), userReportNormalPO.getHistoryInstanceId()); String historyInstanceIds = InstanceUtil.dealHistoryId(userReportNormalPO.getProcessInstanceId(), userReportNormalPO.getHistoryInstanceId());
BeanUtils.copyProperties(userReportParam, userReportNormalPO); BeanUtils.copyProperties(userReportParam, userReportNormalPO);
@@ -108,9 +123,9 @@ public class UserReportNormalServiceImpl extends ServiceImpl<UserReportNormalMap
// 发起 BPM 流程 // 发起 BPM 流程
Map<String, Object> processInstanceVariables = new HashMap<>(); Map<String, Object> processInstanceVariables = new HashMap<>();
BpmProcessInstanceCreateReqDTO bpmProcessInstanceCreateReqDTO = new BpmProcessInstanceCreateReqDTO(); BpmProcessInstanceCreateReqDTO bpmProcessInstanceCreateReqDTO = new BpmProcessInstanceCreateReqDTO();
if(userReportNormalPO.getType() == 0){ if (userReportNormalPO.getType() == 0) {
bpmProcessInstanceCreateReqDTO.setProcessDefinitionKey(SupervisionKeyEnum.USER_GO_NET.getKey()); bpmProcessInstanceCreateReqDTO.setProcessDefinitionKey(SupervisionKeyEnum.USER_GO_NET.getKey());
}else { } else {
bpmProcessInstanceCreateReqDTO.setProcessDefinitionKey(SupervisionKeyEnum.USER_TREAT_CHECK.getKey()); bpmProcessInstanceCreateReqDTO.setProcessDefinitionKey(SupervisionKeyEnum.USER_TREAT_CHECK.getKey());
} }
bpmProcessInstanceCreateReqDTO.setBusinessKey(userReportNormalPO.getId()); bpmProcessInstanceCreateReqDTO.setBusinessKey(userReportNormalPO.getId());
@@ -131,15 +146,15 @@ public class UserReportNormalServiceImpl extends ServiceImpl<UserReportNormalMap
List<String> colleaguesIds = userFeignClient.getColleaguesIdByUserId(RequestUtil.getUserIndex()).getData(); List<String> colleaguesIds = userFeignClient.getColleaguesIdByUserId(RequestUtil.getUserIndex()).getData();
if(CollUtil.isEmpty(colleaguesIds)){ if (CollUtil.isEmpty(colleaguesIds)) {
return pageResult; return pageResult;
} }
LambdaQueryWrapper<UserReportNormalPO> lambdaQueryWrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<UserReportNormalPO> lambdaQueryWrapper = new LambdaQueryWrapper<>();
lambdaQueryWrapper.orderByDesc(UserReportNormalPO::getCreateTime) lambdaQueryWrapper.orderByDesc(UserReportNormalPO::getCreateTime)
.eq(UserReportNormalPO::getType,userReportNormalParam.getType()) .eq(UserReportNormalPO::getType, userReportNormalParam.getType())
.in(UserReportNormalPO::getCreateBy, colleaguesIds) .in(UserReportNormalPO::getCreateBy, colleaguesIds)
.eq(UserReportNormalPO::getUserReportId,userReportNormalParam.getUserReportId()).eq(Objects.nonNull(userReportNormalParam.getStatus()),UserReportNormalPO::getStatus,userReportNormalParam.getStatus()); .eq(UserReportNormalPO::getUserReportId, userReportNormalParam.getUserReportId()).eq(Objects.nonNull(userReportNormalParam.getStatus()), UserReportNormalPO::getStatus, userReportNormalParam.getStatus());
Page<UserReportNormalPO> page = this.page(new Page<>(PageFactory.getPageNum(userReportNormalParam), PageFactory.getPageSize(userReportNormalParam)), lambdaQueryWrapper); Page<UserReportNormalPO> page = this.page(new Page<>(PageFactory.getPageNum(userReportNormalParam), PageFactory.getPageSize(userReportNormalParam)), lambdaQueryWrapper);
if (CollUtil.isNotEmpty(page.getRecords())) { if (CollUtil.isNotEmpty(page.getRecords())) {
@@ -151,7 +166,7 @@ public class UserReportNormalServiceImpl extends ServiceImpl<UserReportNormalMap
page.getRecords().forEach(item -> { page.getRecords().forEach(item -> {
UserReportVO.UserReportGoNetVO vo = new UserReportVO.UserReportGoNetVO(); UserReportVO.UserReportGoNetVO vo = new UserReportVO.UserReportGoNetVO();
UserReportPO userReportPO = map.get(item.getUserReportId()); UserReportPO userReportPO = map.get(item.getUserReportId());
BeanUtil.copyProperties(userReportPO,vo); BeanUtil.copyProperties(userReportPO, vo);
vo.setId(item.getId()); vo.setId(item.getId());
vo.setUserReportId(item.getUserReportId()); vo.setUserReportId(item.getUserReportId());
vo.setOtherReport(item.getReportUrl()); vo.setOtherReport(item.getReportUrl());
@@ -161,7 +176,7 @@ public class UserReportNormalServiceImpl extends ServiceImpl<UserReportNormalMap
vo.setReporter(item.getCreateBy()); vo.setReporter(item.getCreateBy());
temList.add(vo); temList.add(vo);
}); });
BeanUtil.copyProperties(page,pageResult); BeanUtil.copyProperties(page, pageResult);
pageResult.setRecords(temList); pageResult.setRecords(temList);
} }
return pageResult; return pageResult;
@@ -170,11 +185,11 @@ public class UserReportNormalServiceImpl extends ServiceImpl<UserReportNormalMap
@Override @Override
public UserReportVO.UserReportGoNetVO userReportGoNetById(String id) { public UserReportVO.UserReportGoNetVO userReportGoNetById(String id) {
UserReportNormalPO userReportNormalPO = this.getById(id); UserReportNormalPO userReportNormalPO = this.getById(id);
if(Objects.nonNull(userReportNormalPO)){ if (Objects.nonNull(userReportNormalPO)) {
UserReportPO userReportPO = userReportPOService.getById(userReportNormalPO.getUserReportId()); UserReportPO userReportPO = userReportPOService.getById(userReportNormalPO.getUserReportId());
UserReportVO.UserReportGoNetVO vo = new UserReportVO.UserReportGoNetVO(); UserReportVO.UserReportGoNetVO vo = new UserReportVO.UserReportGoNetVO();
BeanUtil.copyProperties(userReportPO,vo); BeanUtil.copyProperties(userReportPO, vo);
BeanUtil.copyProperties(userReportNormalPO,vo); BeanUtil.copyProperties(userReportNormalPO, vo);
vo.setOtherReport(userReportNormalPO.getReportUrl()); vo.setOtherReport(userReportNormalPO.getReportUrl());
return vo; return vo;
} }
@@ -183,14 +198,14 @@ public class UserReportNormalServiceImpl extends ServiceImpl<UserReportNormalMap
@Override @Override
public void updateProcessStatus(String businessKey, Integer status) { public void updateProcessStatus(String businessKey, Integer status) {
this.update(new UpdateWrapper<UserReportNormalPO>().lambda().set(UserReportNormalPO::getStatus,status).eq(UserReportNormalPO::getId,businessKey)); this.update(new UpdateWrapper<UserReportNormalPO>().lambda().set(UserReportNormalPO::getStatus, status).eq(UserReportNormalPO::getId, businessKey));
} }
@Override @Override
public BpmInstanceInfo getInstanceInfo(String businessId) { public BpmInstanceInfo getInstanceInfo(String businessId) {
BpmInstanceInfo bpmInstanceInfo = new BpmInstanceInfo(); BpmInstanceInfo bpmInstanceInfo = new BpmInstanceInfo();
UserReportVO.UserReportGoNetVO userReportGoNet = this.userReportGoNetById(businessId); UserReportVO.UserReportGoNetVO userReportGoNet = this.userReportGoNetById(businessId);
if(Objects.nonNull(userReportGoNet)){ if (Objects.nonNull(userReportGoNet)) {
bpmInstanceInfo.setHistoryInstanceId(userReportGoNet.getHistoryInstanceId()); bpmInstanceInfo.setHistoryInstanceId(userReportGoNet.getHistoryInstanceId());
bpmInstanceInfo.setInstanceSign(userReportGoNet.getProjectName()); bpmInstanceInfo.setInstanceSign(userReportGoNet.getProjectName());
} }
@@ -202,7 +217,7 @@ public class UserReportNormalServiceImpl extends ServiceImpl<UserReportNormalMap
//准备取消该流程,需要远程调用接口 //准备取消该流程,需要远程调用接口
UserReportNormalPO userReportNormalPO = this.baseMapper.selectById(cancelReqVO.getId()); UserReportNormalPO userReportNormalPO = this.baseMapper.selectById(cancelReqVO.getId());
//判断是否有权限操作 //判断是否有权限操作
InstanceUtil.judgeUserPower(RequestUtil.getUserIndex(),userReportNormalPO.getCreateBy()); InstanceUtil.judgeUserPower(RequestUtil.getUserIndex(), userReportNormalPO.getCreateBy());
//取消流程 //取消流程
bpmProcessFeignClient.cancelProcessInstanceByStartUser(cancelReqVO); bpmProcessFeignClient.cancelProcessInstanceByStartUser(cancelReqVO);
//更新状态 //更新状态

View File

@@ -33,20 +33,15 @@ import com.njcn.supervision.enums.SupervisionKeyEnum;
import com.njcn.supervision.enums.SupervisionResponseEnum; import com.njcn.supervision.enums.SupervisionResponseEnum;
import com.njcn.supervision.enums.UserNatureEnum; import com.njcn.supervision.enums.UserNatureEnum;
import com.njcn.supervision.mapper.device.SupervisionTempLineReportMapper; import com.njcn.supervision.mapper.device.SupervisionTempLineReportMapper;
import com.njcn.supervision.mapper.user.UserReportNormalMapper;
import com.njcn.supervision.mapper.user.UserReportPOMapper; import com.njcn.supervision.mapper.user.UserReportPOMapper;
import com.njcn.supervision.pojo.dto.SensitiveReportExcel; import com.njcn.supervision.pojo.dto.SensitiveReportExcel;
import com.njcn.supervision.pojo.dto.SensitiveUserSExcel; import com.njcn.supervision.pojo.dto.SensitiveUserSExcel;
import com.njcn.supervision.pojo.param.user.UserReportParam; import com.njcn.supervision.pojo.param.user.UserReportParam;
import com.njcn.supervision.pojo.po.device.SupervisionTempLineReport; import com.njcn.supervision.pojo.po.device.SupervisionTempLineReport;
import com.njcn.supervision.pojo.po.user.UserReportPO; import com.njcn.supervision.pojo.po.user.*;
import com.njcn.supervision.pojo.po.user.UserReportProjectPO;
import com.njcn.supervision.pojo.po.user.UserReportSensitivePO;
import com.njcn.supervision.pojo.po.user.UserReportSubstationPO;
import com.njcn.supervision.pojo.vo.user.UserReportVO; import com.njcn.supervision.pojo.vo.user.UserReportVO;
import com.njcn.supervision.service.user.UserReportPOService; import com.njcn.supervision.service.user.*;
import com.njcn.supervision.service.user.UserReportProjectPOService;
import com.njcn.supervision.service.user.UserReportSensitivePOService;
import com.njcn.supervision.service.user.UserReportSubstationPOService;
import com.njcn.supervision.utils.InstanceUtil; import com.njcn.supervision.utils.InstanceUtil;
import com.njcn.system.api.DicDataFeignClient; import com.njcn.system.api.DicDataFeignClient;
import com.njcn.system.api.DictTreeFeignClient; import com.njcn.system.api.DictTreeFeignClient;
@@ -95,6 +90,7 @@ public class UserReportPOServiceImpl extends ServiceImpl<UserReportPOMapper, Use
private final LineFeignClient lineFeignClient; private final LineFeignClient lineFeignClient;
private final DicDataFeignClient dicDataFeignClient; private final DicDataFeignClient dicDataFeignClient;
private final DictTreeFeignClient dictTreeFeignClient; private final DictTreeFeignClient dictTreeFeignClient;
private final UserReportNormalMapper userReportNormalMapper;
@Override @Override
@@ -320,8 +316,8 @@ public class UserReportPOServiceImpl extends ServiceImpl<UserReportPOMapper, Use
} }
@Override @Override
public UserReportVO getVOById(String id) { public UserReportVO.UserReportListVO getVOById(String id) {
UserReportVO userReportVO = new UserReportVO(); UserReportVO.UserReportListVO userReportVO = new UserReportVO.UserReportListVO();
UserReportPO userReportPO = this.baseMapper.selectById(id); UserReportPO userReportPO = this.baseMapper.selectById(id);
//复制基础信息 //复制基础信息
BeanUtil.copyProperties(userReportPO, userReportVO); BeanUtil.copyProperties(userReportPO, userReportVO);
@@ -359,6 +355,14 @@ public class UserReportPOServiceImpl extends ServiceImpl<UserReportPOMapper, Use
UserReportSensitivePO byId = userReportSensitivePOService.getById(id); UserReportSensitivePO byId = userReportSensitivePOService.getById(id);
userReportVO.setUserReportSensitivePO(byId); userReportVO.setUserReportSensitivePO(byId);
} }
List<UserReportNormalPO> list = userReportNormalMapper.selectList(new LambdaQueryWrapper<UserReportNormalPO>()
.eq(UserReportNormalPO::getUserReportId, id)
.eq(UserReportNormalPO::getStatus, BpmTaskStatusEnum.APPROVE.getStatus())
.eq(UserReportNormalPO::getState, DataStateEnum.ENABLE.getCode())
.orderByDesc(UserReportNormalPO::getCreateTime)
);
userReportVO.setNetInReport(list.stream().filter(x -> 0==x.getType()).map(UserReportNormalPO::getReportUrl).collect(Collectors.toList()));
userReportVO.setGovernReport(list.stream().filter(x -> 1==x.getType()).map(UserReportNormalPO::getReportUrl).collect(Collectors.toList()));
return userReportVO; return userReportVO;
} }