潘志宝
9 天以前 6b13839488edcd06046e26a41fe897358176689c
提交 | 用户 | 时间
e7c126 1 package com.iailab.module.bpm.controller.admin.task.vo.task;
H 2
bb2880 3 import com.fasterxml.jackson.annotation.JsonIgnore;
H 4 import com.iailab.module.bpm.controller.admin.base.user.UserSimpleBaseVO;
e7c126 5 import com.iailab.module.bpm.controller.admin.task.vo.instance.BpmProcessInstanceRespVO;
H 6 import io.swagger.v3.oas.annotations.media.Schema;
7 import lombok.Data;
8
9 import java.time.LocalDateTime;
10 import java.util.List;
11 import java.util.Map;
12
13 @Schema(description = "管理后台 - 流程任务 Response VO")
14 @Data
15 public class BpmTaskRespVO {
16
17     @Schema(description = "任务编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1024")
18     private String id;
19
bb2880 20     @Schema(description = "任务名字", requiredMode = Schema.RequiredMode.REQUIRED, example = "芋道")
e7c126 21     private String name;
H 22
23     @Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
24     private LocalDateTime createTime;
25
26     @Schema(description = "结束时间", requiredMode = Schema.RequiredMode.REQUIRED)
27     private LocalDateTime endTime;
28
29     @Schema(description = "持续时间", example = "1000")
30     private Long durationInMillis;
31
32     @Schema(description = "任务状态", requiredMode = Schema.RequiredMode.REQUIRED, example = "2")
33     private Integer status; // 参见 BpmTaskStatusEnum 枚举
34
35     @Schema(description = "审批理由", requiredMode = Schema.RequiredMode.REQUIRED, example = "2")
36     private String reason;
37
bb2880 38     @Schema(description = "任务负责人编号", requiredMode = Schema.RequiredMode.NOT_REQUIRED, example = "2048")
H 39     @JsonIgnore // 不返回,只是方便后续读取,赋值给 ownerUser
40     private Long owner;
e7c126 41     /**
H 42      * 负责人的用户信息
43      */
bb2880 44     private UserSimpleBaseVO ownerUser;
H 45
46     @Schema(description = "任务分配人编号", requiredMode = Schema.RequiredMode.NOT_REQUIRED, example = "2048")
47     @JsonIgnore // 不返回,只是方便后续读取,赋值给 assigneeUser
48     private Long assignee;
e7c126 49     /**
H 50      * 审核的用户信息
51      */
bb2880 52     private UserSimpleBaseVO assigneeUser;
e7c126 53
H 54     @Schema(description = "任务定义的标识", requiredMode = Schema.RequiredMode.REQUIRED, example = "Activity_one")
55     private String taskDefinitionKey;
56
57     @Schema(description = "所属流程实例编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "8888")
58     private String processInstanceId;
59     /**
60      * 所属流程实例
61      */
62     private ProcessInstance processInstance;
63
64     @Schema(description = "父任务编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1024")
65     private String parentTaskId;
66     @Schema(description = "子任务列表(由加签生成)", requiredMode = Schema.RequiredMode.REQUIRED, example = "childrenTask")
bb2880 67     private List<BpmTaskRespVO> children; // 由加签生成,包含多层子任务
e7c126 68
H 69     @Schema(description = "表单编号", example = "1024")
70     private Long formId;
71     @Schema(description = "表单名字", example = "请假表单")
72     private String formName;
bb2880 73     @Schema(description = "表单的配置,JSON 字符串")
e7c126 74     private String formConf;
H 75     @Schema(description = "表单项的数组")
76     private List<String> formFields;
77     @Schema(description = "提交的表单值", requiredMode = Schema.RequiredMode.REQUIRED)
78     private Map<String, Object> formVariables;
bb2880 79     @Schema(description = "操作按钮设置值")
H 80     private Map<Integer, OperationButtonSetting> buttonsSetting;
e7c126 81
H 82     @Data
83     @Schema(description = "流程实例")
84     public static class ProcessInstance {
85
86         @Schema(description = "流程实例编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1024")
87         private String id;
88
bb2880 89         @Schema(description = "流程实例名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "芋道")
e7c126 90         private String name;
H 91
92         @Schema(description = "提交时间", requiredMode = Schema.RequiredMode.REQUIRED)
93         private LocalDateTime createTime;
94
95         @Schema(description = "流程定义的编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "2048")
96         private String processDefinitionId;
97
98         /**
99          * 发起人的用户信息
100          */
bb2880 101         private UserSimpleBaseVO startUser;
e7c126 102
H 103     }
104
bb2880 105     @Data
H 106     @Schema(description = "操作按钮设置")
107     public static class OperationButtonSetting {
108
109         @Schema(description = "显示名称", example = "审批")
110         private String displayName;
111
112         @Schema(description = "是否启用", example = "true")
113         private Boolean enable;
114     }
115
116
e7c126 117 }