houzhongyi
2024-07-11 e7c1260db32209a078a962aaa0ad5492c35774fb
提交 | 用户 | 时间
e7c126 1 package com.iailab.module.bpm.enums.task;
H 2
3 import cn.hutool.core.util.StrUtil;
4 import lombok.AllArgsConstructor;
5 import lombok.Getter;
6
7 /**
8  * 流程实例/任务的删除原因枚举
9  *
10  * @author iailab
11  */
12 @Getter
13 @AllArgsConstructor
14 public enum BpmDeleteReasonEnum {
15
16     // ========== 流程实例的独有原因 ==========
17
18     REJECT_TASK("审批不通过任务,原因:{}"), // 场景:用户审批不通过任务。修改文案时,需要注意 isRejectReason 方法
19     CANCEL_PROCESS_INSTANCE_BY_START_USER("用户主动取消流程,原因:{}"), // 场景:用户主动取消流程
20     CANCEL_PROCESS_INSTANCE_BY_ADMIN("管理员【{}】取消流程,原因:{}"), // 场景:管理员取消流程
21
22     // ========== 流程任务的独有原因 ==========
23
24     CANCEL_BY_SYSTEM("系统自动取消"), // 场景:非常多,比如说:1)多任务审批已经满足条件,无需审批该任务;2)流程实例被取消,无需审批该任务;等等
25     ;
26
27     private final String reason;
28
29     /**
30      * 格式化理由
31      *
32      * @param args 参数
33      * @return 理由
34      */
35     public String format(Object... args) {
36         return StrUtil.format(reason, args);
37     }
38
39     // ========== 逻辑 ==========
40
41     public static boolean isRejectReason(String reason) {
42         return StrUtil.startWith(reason, "审批不通过任务,原因:");
43     }
44
45 }