yangys
2025-06-17 ceb4fde6edb1f73bc45f54129432ec8068875b6d
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
/**
 * BladeX Commercial License Agreement
 * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
 * <p>
 * Use of this software is governed by the Commercial License Agreement
 * obtained after purchasing a license from BladeX.
 * <p>
 * 1. This software is for development use only under a valid license
 * from BladeX.
 * <p>
 * 2. Redistribution of this software's source code to any third party
 * without a commercial license is strictly prohibited.
 * <p>
 * 3. Licensees may copyright their own code but cannot use segments
 * from this software for such purposes. Copyright of this software
 * remains with BladeX.
 * <p>
 * Using this software signifies agreement to this License, and the software
 * must not be used for illegal purposes.
 * <p>
 * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
 * not liable for any claims arising from secondary or illegal development.
 * <p>
 * Author: Chill Zhuang (bladejava@qq.com)
 */
package org.springblade.mdm.flow.vo;
 
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import org.springblade.flow.core.constant.ProcessConstant;
 
import java.io.Serial;
import java.io.Serializable;
import java.util.Date;
import java.util.Map;
 
/**
 * mdm工作流通用实体类
 *
 * @author yangys
 */
@Data
public class FlowVO implements Serializable {
    @Serial
    private static final long serialVersionUID = 1L;
 
    /**
     * 任务编号
     */
    private String taskId;
    /**
     * 任务名称
     */
    private String taskName;
    /**
     * 任务定义Key
     */
    private String taskDefinitionKey;
    /**
     * 任务执行人编号
     */
    private String assignee;
    /**
     * 任务执行人名称
     */
    private String assigneeName;
    /**
     * 流程分类
     */
    private String category;
    /**
     * 流程分类名
     */
    private String categoryName;
    /**
     * 创建时间
     */
    @Schema(description = "任务创建时间")
    private Date createTime;
    /**
     * 结束时间
     */
    private Date endTime;
 
    @Schema(description = "流程创建时间")
    private Date processCreateTime;
    @Schema(description = "流程启动用户姓名")
    private String startUserName;
    /**
     * 签收时间
     */
    private Date claimTime;
    /**
     * 历史任务结束时间
     */
    private Date historyTaskEndTime;
    /**
     * 执行ID
     */
    private String executionId;
    /**
     * 流程实例ID
     */
    private String processInstanceId;
    /**
     * 流程ID
     */
    private String processDefinitionId;
    /**
     * 流程标识
     */
    private String processDefinitionKey;
    /**
     * 流程名
     */
    private String processDefinitionName;
    /**
     * 流程版本
     */
    private int processDefinitionVersion;
    /**
     * 流程说明
     */
    private String processDefinitionDesc;
    /**
     * 流程简图名
     */
    private String processDefinitionDiagramResName;
    /**
     * 流程重命名
     */
    private String processDefinitionResName;
    /**
     * 历史任务流程实例ID 查看流程图会用到
     */
    private String historyProcessInstanceId;
    /**
     * 流程实例是否结束
     */
    private String processIsFinished;
    /**
     * 历史活动ID
     */
    private String historyActivityId;
    /**
     * 历史活动流程
     */
    private String historyActivityName;
    /**
     * 历史活动耗时
     */
    private String historyActivityDurationTime;
    /**
     * 业务绑定Table
     */
    private String businessTable;
    /**
     * 业务绑定ID
     */
    private String businessId;
    /**
     * 任务状态
     */
    private String status;
    /**
     * 任务意见
     */
    private String comment;
    /**
     * 是否通过
     */
    private boolean isPass;
    /**
     * 是否通过代号
     */
    private String flag;
    /**
     * 开始查询日期
     */
    private Date beginDate;
    /**
     * 结束查询日期
     */
    private Date endDate;
    /**
     * 流程参数
     */
    private Map<String, Object> variables;
 
    /**
     * 要求完成的时间(超时时间)
     */
    private Date dueDate;
 
    /**
     * 获取是否通过
     */
    public boolean isPass() {
        return ProcessConstant.PASS_ALIAS.equals(flag) || ProcessConstant.PASS_COMMENT.equals(comment);
    }
 
}