Commit a240240c by 王志超

feat: 行动工单流程流转枚举改为常量

parent 47221b88
Pipeline #86541 passed with stages
in 1 minute 34 seconds
...@@ -17,6 +17,7 @@ import javax.servlet.http.HttpServletResponse; ...@@ -17,6 +17,7 @@ import javax.servlet.http.HttpServletResponse;
import javax.validation.Valid; import javax.validation.Valid;
import com.netease.mail.yanxuan.change.common.enums.*; import com.netease.mail.yanxuan.change.common.enums.*;
import com.netease.mail.yanxuan.change.common.constants.FlowTransitionType;
import com.netease.mail.yanxuan.change.dal.meta.model.vo.*; import com.netease.mail.yanxuan.change.dal.meta.model.vo.*;
import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
...@@ -723,9 +724,9 @@ public class ChangeFlowBiz { ...@@ -723,9 +724,9 @@ public class ChangeFlowBiz {
String mainFlowNodeId; String mainFlowNodeId;
if (mainFlowApproved) { if (mainFlowApproved) {
// 审批通过:流转到下一节点(type=1) // 审批通过:流转到下一节点
log.info("[{}] 审批通过,flowId:{}", node.getName(), flowId); log.info("[{}] 审批通过,flowId:{}", node.getName(), flowId);
mainFlowParamMap.put("type", 1); mainFlowParamMap.put("type", FlowTransitionType.TYPE_APPROVED);
mainFlowNodeId = flowService.submitFlowWithParamMap(flowId.toString(), flowDataDTO, uid, mainFlowNodeId = flowService.submitFlowWithParamMap(flowId.toString(), flowDataDTO, uid,
ChangeFlowEnum.NEW_CHANGE_FLOW.getTopoId(), JSON.toJSONString(content), mainFlowParamMap, ChangeFlowEnum.NEW_CHANGE_FLOW.getTopoId(), JSON.toJSONString(content), mainFlowParamMap,
...@@ -739,10 +740,10 @@ public class ChangeFlowBiz { ...@@ -739,10 +740,10 @@ public class ChangeFlowBiz {
log.info("[checkUpdateAndSubmit] 主工单流转完成,flowId:{}, 审批节点:{}, 新节点:{}, 审批结果:通过", log.info("[checkUpdateAndSubmit] 主工单流转完成,flowId:{}, 审批节点:{}, 新节点:{}, 审批结果:通过",
flowId, node.getName(), mainFlowNodeId); flowId, node.getName(), mainFlowNodeId);
} else { } else {
// 审批不通过:回退到确认变更方案节点(type=3) // 审批不通过:回退到确认变更方案节点
// todo: 实现审批不通过的逻辑(拒绝原因、状态更新、邮件通知等) // todo: 实现审批不通过的逻辑(拒绝原因、状态更新、邮件通知等)
log.warn("[{}] 审批不通过,flowId:{}", node.getName(), flowId); log.warn("[{}] 审批不通过,flowId:{}", node.getName(), flowId);
mainFlowParamMap.put("type", 3); mainFlowParamMap.put("type", FlowTransitionType.TYPE_BACK_TO_CONFIRM_PLAN);
mainFlowNodeId = flowService.submitFlowWithParamMap(flowId.toString(), flowDataDTO, uid, mainFlowNodeId = flowService.submitFlowWithParamMap(flowId.toString(), flowDataDTO, uid,
ChangeFlowEnum.NEW_CHANGE_FLOW.getTopoId(), JSON.toJSONString(content), mainFlowParamMap, ChangeFlowEnum.NEW_CHANGE_FLOW.getTopoId(), JSON.toJSONString(content), mainFlowParamMap,
...@@ -1642,9 +1643,9 @@ public class ChangeFlowBiz { ...@@ -1642,9 +1643,9 @@ public class ChangeFlowBiz {
content.put("updateTime", System.currentTimeMillis()); content.put("updateTime", System.currentTimeMillis());
content.put(CommonConstants.FLOW_OPERATION_KEY, FlowOperationTypeEnum.PASS.getValue()); content.put(CommonConstants.FLOW_OPERATION_KEY, FlowOperationTypeEnum.PASS.getValue());
// 使用paramMap控制流转方向(type=1表示所有子单审批通过) // 使用paramMap控制流转方向(所有子单审批通过)
Map<String, Object> paramMap = new HashMap<>(); Map<String, Object> paramMap = new HashMap<>();
paramMap.put("type", 1); paramMap.put("type", FlowTransitionType.TYPE_APPROVED);
// 流转主工单到部门负责人审批节点 // 流转主工单到部门负责人审批节点
String ownerApproveNodeId = flowService.submitFlowWithParamMap(flowId.toString(), flowDataDTO, uid, String ownerApproveNodeId = flowService.submitFlowWithParamMap(flowId.toString(), flowDataDTO, uid,
......
...@@ -16,6 +16,7 @@ import com.netease.mail.yanxuan.change.common.bean.CommonConstants; ...@@ -16,6 +16,7 @@ import com.netease.mail.yanxuan.change.common.bean.CommonConstants;
import com.netease.mail.yanxuan.change.biz.util.PageUtils; import com.netease.mail.yanxuan.change.biz.util.PageUtils;
import com.netease.mail.yanxuan.change.common.bean.RequestLocalBean; import com.netease.mail.yanxuan.change.common.bean.RequestLocalBean;
import com.netease.mail.yanxuan.change.common.bean.ResponseCode; import com.netease.mail.yanxuan.change.common.bean.ResponseCode;
import com.netease.mail.yanxuan.change.common.constants.FlowTransitionType;
import com.netease.mail.yanxuan.change.common.enums.ChangeFlowEnum; import com.netease.mail.yanxuan.change.common.enums.ChangeFlowEnum;
import com.netease.mail.yanxuan.change.common.enums.ChangeResultEnum; import com.netease.mail.yanxuan.change.common.enums.ChangeResultEnum;
import com.netease.mail.yanxuan.change.common.enums.ChangeSubFlowStatusEnum; import com.netease.mail.yanxuan.change.common.enums.ChangeSubFlowStatusEnum;
...@@ -227,7 +228,7 @@ public class ChangeSubFlowBiz { ...@@ -227,7 +228,7 @@ public class ChangeSubFlowBiz {
if (needApprove(expectedDepartment)) { if (needApprove(expectedDepartment)) {
// 需要审批:流转到审批行动方案节点,设置上级领导为审批人 // 需要审批:流转到审批行动方案节点,设置上级领导为审批人
log.info("[CHANGE_SUB_FLOW_START] 部门[{}]需要审批,等待上级审批", expectedDepartment); log.info("[CHANGE_SUB_FLOW_START] 部门[{}]需要审批,等待上级审批", expectedDepartment);
paramMap.put("type", 1); paramMap.put("type", FlowTransitionType.TYPE_APPROVED);
// 提交到审批行动方案节点 // 提交到审批行动方案节点
nextNodeId = flowService.submitFlowWithParamMap(subFlowId, flowDataDTO, uid, nextNodeId = flowService.submitFlowWithParamMap(subFlowId, flowDataDTO, uid,
...@@ -256,7 +257,7 @@ public class ChangeSubFlowBiz { ...@@ -256,7 +257,7 @@ public class ChangeSubFlowBiz {
} else { } else {
// 不需要审批:直接跳到审批变更方案节点,审批人保持为行动人自己 // 不需要审批:直接跳到审批变更方案节点,审批人保持为行动人自己
log.info("[CHANGE_SUB_FLOW_START] 部门[{}]不需要审批,自动跳过审批", expectedDepartment); log.info("[CHANGE_SUB_FLOW_START] 部门[{}]不需要审批,自动跳过审批", expectedDepartment);
paramMap.put("type", 2); paramMap.put("type", FlowTransitionType.TYPE_REJECTED);
// 提交到审批变更方案节点 // 提交到审批变更方案节点
nextNodeId = flowService.submitFlowWithParamMap(subFlowId, flowDataDTO, uid, nextNodeId = flowService.submitFlowWithParamMap(subFlowId, flowDataDTO, uid,
...@@ -293,9 +294,9 @@ public class ChangeSubFlowBiz { ...@@ -293,9 +294,9 @@ public class ChangeSubFlowBiz {
log.info("[CHANGE_SUB_FLOW_SUBMIT] 审批不通过,subFlowId:{}, rejectReason:{}", subFlowId, rejectReason); log.info("[CHANGE_SUB_FLOW_SUBMIT] 审批不通过,subFlowId:{}, rejectReason:{}", subFlowId, rejectReason);
} }
// 使用paramMap控制流转方向(type=1通过,type=2不通过) // 使用paramMap控制流转方向(通过/不通过)
Map<String, Object> approveParamMap = new HashMap<>(); Map<String, Object> approveParamMap = new HashMap<>();
approveParamMap.put("type", approved ? 1 : 2); approveParamMap.put("type", approved ? FlowTransitionType.TYPE_APPROVED : FlowTransitionType.TYPE_REJECTED);
String remark = approved ? "审批通过" : "审批不通过"; String remark = approved ? "审批通过" : "审批不通过";
String approveNodeId = flowService.submitFlowWithParamMap(subFlowId, flowDataDTO, uid, String approveNodeId = flowService.submitFlowWithParamMap(subFlowId, flowDataDTO, uid,
...@@ -328,7 +329,7 @@ public class ChangeSubFlowBiz { ...@@ -328,7 +329,7 @@ public class ChangeSubFlowBiz {
if (execApproved) { if (execApproved) {
// 审批通过:流转到提交执行结果节点 // 审批通过:流转到提交执行结果节点
log.info("[CHANGE_SUB_FLOW_EXE] 审批通过,subFlowId:{}", subFlowId); log.info("[CHANGE_SUB_FLOW_EXE] 审批通过,subFlowId:{}", subFlowId);
execParamMap.put("type", 1); execParamMap.put("type", FlowTransitionType.TYPE_APPROVED);
// 提交到提交执行结果节点 // 提交到提交执行结果节点
execNodeId = flowService.submitFlowWithParamMap(subFlowId, flowDataDTO, uid, execNodeId = flowService.submitFlowWithParamMap(subFlowId, flowDataDTO, uid,
...@@ -357,7 +358,7 @@ public class ChangeSubFlowBiz { ...@@ -357,7 +358,7 @@ public class ChangeSubFlowBiz {
} }
subFlowRecord.setRejectReason(execRejectReason); subFlowRecord.setRejectReason(execRejectReason);
log.info("[CHANGE_SUB_FLOW_EXE] 审批不通过,subFlowId:{}, rejectReason:{}", subFlowId, execRejectReason); log.info("[CHANGE_SUB_FLOW_EXE] 审批不通过,subFlowId:{}, rejectReason:{}", subFlowId, execRejectReason);
execParamMap.put("type", 2); execParamMap.put("type", FlowTransitionType.TYPE_REJECTED);
// 提交到确认行动方案节点 // 提交到确认行动方案节点
execNodeId = flowService.submitFlowWithParamMap(subFlowId, flowDataDTO, uid, execNodeId = flowService.submitFlowWithParamMap(subFlowId, flowDataDTO, uid,
......
package com.netease.mail.yanxuan.change.common.constants;
/**
* 工单流转类型常量
* 用于 paramMap 中的 type 参数,控制 topo 图的流转方向
*
* @Author AI Assistant
* @Date 2025/01/04
*/
public class FlowTransitionType {
/**
* 类型1:审批通过/前进到下一节点/需要审批
*/
public static final Integer TYPE_APPROVED = 1;
/**
* 类型2:审批不通过/回退/不需要审批(跳过)
*/
public static final Integer TYPE_REJECTED = 2;
/**
* 类型3:回退到确认变更方案节点(主单审批不通过专用)
*/
public static final Integer TYPE_BACK_TO_CONFIRM_PLAN = 3;
private FlowTransitionType() {
// 工具类,禁止实例化
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment