Ver Fonte

流程修改

wangliang há 3 anos atrás
pai
commit
ef275b99bc

+ 3 - 0
distributed-print-business/src/main/java/com/qmth/distributed/print/business/entity/TFFlow.java

@@ -3,6 +3,7 @@ package com.qmth.distributed.print.business.entity;
 import com.fasterxml.jackson.databind.annotation.JsonSerialize;
 import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
 import com.qmth.teachcloud.common.base.BaseEntity;
+import com.qmth.teachcloud.common.contant.SystemConstant;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 
@@ -43,6 +44,7 @@ public class TFFlow extends BaseEntity implements Serializable {
     }
 
     public TFFlow(Long schoolId, Long orgId, String name, Long userId) {
+        setId(SystemConstant.getDbUuid());
         this.schoolId = schoolId;
         this.orgId = orgId;
         this.name = name;
@@ -50,6 +52,7 @@ public class TFFlow extends BaseEntity implements Serializable {
     }
 
     public TFFlow(Long schoolId, Long orgId, String name, Boolean publish, Long userId) {
+        setId(SystemConstant.getDbUuid());
         this.schoolId = schoolId;
         this.orgId = orgId;
         this.name = name;

+ 1 - 0
distributed-print-business/src/main/java/com/qmth/distributed/print/business/entity/TFFlowApprove.java

@@ -46,6 +46,7 @@ public class TFFlowApprove extends BaseEntity implements Serializable {
     }
 
     public TFFlowApprove(Long flowId, Long approveId, FlowStatusEnum status, Long userId) {
+        setId(SystemConstant.getDbUuid());
         this.flowId = flowId;
         this.approveId = approveId;
         this.status = status;

+ 13 - 0
distributed-print-business/src/main/java/com/qmth/distributed/print/business/entity/TFFlowApproveLog.java

@@ -3,6 +3,7 @@ package com.qmth.distributed.print.business.entity;
 import com.fasterxml.jackson.databind.annotation.JsonSerialize;
 import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
 import com.qmth.teachcloud.common.base.BaseEntity;
+import com.qmth.teachcloud.common.contant.SystemConstant;
 import com.qmth.teachcloud.common.enums.FlowApproveOperationEnum;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
@@ -57,6 +58,18 @@ public class TFFlowApproveLog extends BaseEntity implements Serializable {
     @ApiModelProperty(value = "是否启用,0:停用,1:启用")
     private Boolean enable;
 
+    public TFFlowApproveLog() {
+
+    }
+
+    public TFFlowApproveLog(Long flowId, Long taskId, Long teacherId, Long userId) {
+        setId(SystemConstant.getDbUuid());
+        this.flowId = flowId;
+        this.taskId = taskId;
+        this.teacherId = teacherId;
+        insertInfo(userId);
+    }
+
     public static long getSerialVersionUID() {
         return serialVersionUID;
     }

+ 2 - 0
distributed-print-business/src/main/java/com/qmth/distributed/print/business/entity/TFFlowLog.java

@@ -3,6 +3,7 @@ package com.qmth.distributed.print.business.entity;
 import com.fasterxml.jackson.databind.annotation.JsonSerialize;
 import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
 import com.qmth.teachcloud.common.base.BaseEntity;
+import com.qmth.teachcloud.common.contant.SystemConstant;
 import com.qmth.teachcloud.common.enums.FlowApproveOperationEnum;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
@@ -51,6 +52,7 @@ public class TFFlowLog extends BaseEntity implements Serializable {
     }
 
     public TFFlowLog(Long flowId, Long taskId, Long approveId, Long userId, String approveRemark) {
+        setId(SystemConstant.getDbUuid());
         this.flowId = flowId;
         this.approveId = approveId;
         this.taskId = taskId;

+ 31 - 4
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/ActivitiServiceImpl.java

@@ -3,11 +3,9 @@ package com.qmth.distributed.print.business.service.impl;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.qmth.distributed.print.business.entity.ExamTask;
 import com.qmth.distributed.print.business.entity.TFFlowApprove;
+import com.qmth.distributed.print.business.entity.TFFlowApproveLog;
 import com.qmth.distributed.print.business.entity.TFFlowLog;
-import com.qmth.distributed.print.business.service.ActivitiService;
-import com.qmth.distributed.print.business.service.ExamTaskService;
-import com.qmth.distributed.print.business.service.TFFlowApproveService;
-import com.qmth.distributed.print.business.service.TFFlowLogService;
+import com.qmth.distributed.print.business.service.*;
 import com.qmth.teachcloud.common.contant.SpringContextHolder;
 import com.qmth.teachcloud.common.contant.SystemConstant;
 import com.qmth.teachcloud.common.entity.SysUser;
@@ -71,6 +69,9 @@ public class ActivitiServiceImpl implements ActivitiService {
     @Resource
     ExamTaskService examTaskService;
 
+    @Resource
+    TFFlowApproveLogService tfFlowApproveLogService;
+
     /**
      * 注册流程
      *
@@ -221,12 +222,22 @@ public class ActivitiServiceImpl implements ActivitiService {
 
         String processDefinitionId = historyService.createHistoricProcessInstanceQuery().processInstanceId(processInstanceId).singleResult().getProcessDefinitionId();
         ProcessDefinitionEntity processDefinitionEntity = (ProcessDefinitionEntity) ((RepositoryServiceImpl) repositoryService).getDeployedProcessDefinition(processDefinitionId);
+        //获取当前流程节点
         String currActivityId = task.getTaskDefinitionKey();
         BpmnModel bpmnModel = repositoryService.getBpmnModel(task.getProcessDefinitionId());
         FlowNode currFlow = (FlowNode) bpmnModel.getMainProcess().getFlowElement(currActivityId);
+
+        //流程审批
         QueryWrapper<TFFlowApprove> tfFlowApproveQueryWrapper = new QueryWrapper<>();
         tfFlowApproveQueryWrapper.lambda().eq(TFFlowApprove::getFlowId, processInstanceId);
         TFFlowApprove tfFlowApprove = tfFlowApproveService.getOne(tfFlowApproveQueryWrapper);
+
+        //流程审批记录
+        QueryWrapper<TFFlowApproveLog> tfFlowApproveLogQueryWrapper = new QueryWrapper<>();
+        tfFlowApproveLogQueryWrapper.lambda().eq(TFFlowApproveLog::getFlowId, processInstanceId)
+                .eq(TFFlowApproveLog::getTaskId, examTask.getId());
+        TFFlowApproveLog tfFlowApproveLog = tfFlowApproveLogService.getOne(tfFlowApproveLogQueryWrapper);
+
         TFFlowLog tfFlowLog = null;
         if (currFlow instanceof UserTask) {
             UserTask userTask = (UserTask) currFlow;
@@ -240,6 +251,9 @@ public class ActivitiServiceImpl implements ActivitiService {
                     if (Objects.isNull(taskUser)) {
                         throw ExceptionResultEnum.ERROR.exception("不能提交他人的任务");
                     }
+                    if (Objects.isNull(tfFlowApproveLog)) {
+                        tfFlowApproveLog = new TFFlowApproveLog(Long.parseLong(processInstanceId), examTask.getId(), sysUser.getId(), sysUser.getId());
+                    }
                     tfFlowLog.setApproveSetup(FlowGdykdxApproveSetupEnum.SUBMIT.getSetup());
                     tfFlowLog.setApproveOperation(FlowApproveOperationEnum.SUBMIT);
                     tfFlowApprove.setStatus(FlowStatusEnum.AUDITING);
@@ -255,12 +269,16 @@ public class ActivitiServiceImpl implements ActivitiService {
                     FlowApprovePassEnum approvePass = (FlowApprovePassEnum) map.get(SystemConstant.APPROVE_OPERATION);
                     String approve = approvePass == FlowApprovePassEnum.PASS ? "1" : "0";
                     tfFlowLog.setApproveSetup(FlowGdykdxApproveSetupEnum.PRIMARY_APPROVE.getSetup());
+                    tfFlowApproveLog.setPrimaryApproveId(sysUser.getId());
+                    tfFlowApproveLog.setPrimaryApproveRemark(remark);
                     if (Objects.equals(approve, "0")) {//驳回命题
                         tfFlowLog.setApproveOperation(FlowApproveOperationEnum.REJECT);
+                        tfFlowApproveLog.setPrimaryApproveOperation(FlowApproveOperationEnum.REJECT);
                         tfFlowApprove.setStatus(FlowStatusEnum.REJECT);
                         tfFlowApprove.setSetup(FlowGdykdxApproveSetupEnum.SUBMIT.getSetup());
                     } else if (Objects.equals(approve, "1")) {//提交
                         tfFlowLog.setApproveOperation(FlowApproveOperationEnum.APPROVE);
+                        tfFlowApproveLog.setPrimaryApproveOperation(FlowApproveOperationEnum.APPROVE);
                         tfFlowApprove.setStatus(FlowStatusEnum.AUDITING);
                         tfFlowApprove.setSetup(FlowGdykdxApproveSetupEnum.SECOND_APPROVE.getSetup());
                     } else {
@@ -277,6 +295,8 @@ public class ActivitiServiceImpl implements ActivitiService {
                     }
                     FlowApprovePassEnum approvePass = (FlowApprovePassEnum) map.get(SystemConstant.APPROVE_OPERATION);
                     String approve = null;
+                    tfFlowApproveLog.setSecondApproveId(sysUser.getId());
+                    tfFlowApproveLog.setSecondApproveRemark(remark);
                     if (approvePass == FlowApprovePassEnum.PASS) {
                         approve = "2";
                     } else {
@@ -292,14 +312,17 @@ public class ActivitiServiceImpl implements ActivitiService {
                     tfFlowLog.setApproveSetup(FlowGdykdxApproveSetupEnum.SECOND_APPROVE.getSetup());
                     if (Objects.equals(approve, "0")) {//驳回命题
                         tfFlowLog.setApproveOperation(FlowApproveOperationEnum.REJECT);
+                        tfFlowApproveLog.setSecondApproveOperation(FlowApproveOperationEnum.REJECT);
                         tfFlowApprove.setStatus(FlowStatusEnum.REJECT);
                         tfFlowApprove.setSetup(FlowGdykdxApproveSetupEnum.SUBMIT.getSetup());
                     } else if (Objects.equals(approve, "1")) {//驳回主任
                         tfFlowLog.setApproveOperation(FlowApproveOperationEnum.REJECT);
+                        tfFlowApproveLog.setSecondApproveOperation(FlowApproveOperationEnum.REJECT);
                         tfFlowApprove.setStatus(FlowStatusEnum.REJECT);
                         tfFlowApprove.setSetup(FlowGdykdxApproveSetupEnum.PRIMARY_APPROVE.getSetup());
                     } else if (Objects.equals(approve, "2")) {//提交
                         tfFlowLog.setApproveOperation(FlowApproveOperationEnum.APPROVE);
+                        tfFlowApproveLog.setSecondApproveOperation(FlowApproveOperationEnum.APPROVE);
                         tfFlowApprove.setStatus(FlowStatusEnum.FINISH);
                         tfFlowApprove.setSetup(FlowGdykdxApproveSetupEnum.END.getSetup());
                     } else {
@@ -309,6 +332,7 @@ public class ActivitiServiceImpl implements ActivitiService {
                     map.computeIfAbsent(SystemConstant.APPROVE, v -> finalApprove);
                 }
                 tfFlowApprove.updateInfo(sysUser.getId());
+                tfFlowApproveLog.updateInfo(sysUser.getId());
             }
         }
         tfFlowApprove.setApproveId(sysUser.getId());
@@ -318,5 +342,8 @@ public class ActivitiServiceImpl implements ActivitiService {
         if (Objects.nonNull(tfFlowLog)) {
             tfFlowLogService.save(tfFlowLog);
         }
+        if (Objects.nonNull(tfFlowApproveLog)) {
+            tfFlowApproveLogService.saveOrUpdate(tfFlowApproveLog);
+        }
     }
 }

+ 0 - 19
distributed-print/src/main/java/com/qmth/distributed/print/api/TBDepartmentController.java

@@ -1,19 +0,0 @@
-package com.qmth.distributed.print.api;
-
-
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-
-/**
- * <p>
- * 部门设置表 前端控制器
- * </p>
- *
- * @author wangliang
- * @since 2021-07-29
- */
-@RestController
-@RequestMapping("/t-bdepartment")
-public class TBDepartmentController {
-
-}

+ 0 - 19
distributed-print/src/main/java/com/qmth/distributed/print/api/TFFlowApproveController.java

@@ -1,19 +0,0 @@
-package com.qmth.distributed.print.api;
-
-
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-
-/**
- * <p>
- * 流程审核表 前端控制器
- * </p>
- *
- * @author wangliang
- * @since 2021-08-02
- */
-@RestController
-@RequestMapping("/t-fflow-approve")
-public class TFFlowApproveController {
-
-}

+ 0 - 19
distributed-print/src/main/java/com/qmth/distributed/print/api/TFFlowLogController.java

@@ -1,19 +0,0 @@
-package com.qmth.distributed.print.api;
-
-
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-
-/**
- * <p>
- * 流程流水表 前端控制器
- * </p>
- *
- * @author wangliang
- * @since 2021-08-02
- */
-@RestController
-@RequestMapping("/t-fflow-log")
-public class TFFlowLogController {
-
-}