提交 | 用户 | 时间
|
3e359e
|
1 |
// @ts-ignore |
H |
2 |
import { DictDataVO } from '@/api/system/dict/types' |
|
3 |
import { TaskStatusEnum } from '@/api/bpm/task' |
|
4 |
/** |
|
5 |
* 节点类型 |
|
6 |
*/ |
|
7 |
export enum NodeType { |
|
8 |
/** |
|
9 |
* 结束节点 |
|
10 |
*/ |
|
11 |
END_EVENT_NODE = 1, |
|
12 |
/** |
|
13 |
* 发起人节点 |
|
14 |
*/ |
|
15 |
START_USER_NODE = 10, |
|
16 |
/** |
|
17 |
* 审批人节点 |
|
18 |
*/ |
|
19 |
USER_TASK_NODE = 11, |
|
20 |
|
|
21 |
/** |
|
22 |
* 抄送人节点 |
|
23 |
*/ |
|
24 |
COPY_TASK_NODE = 12, |
|
25 |
|
|
26 |
/** |
|
27 |
* 条件节点 |
|
28 |
*/ |
|
29 |
CONDITION_NODE = 50, |
|
30 |
/** |
|
31 |
* 条件分支节点 (对应排他网关) |
|
32 |
*/ |
|
33 |
CONDITION_BRANCH_NODE = 51, |
|
34 |
/** |
|
35 |
* 并行分支节点 (对应并行网关) |
|
36 |
*/ |
|
37 |
PARALLEL_BRANCH_NODE = 52, |
|
38 |
|
|
39 |
/** |
|
40 |
* 包容分支节点 (对应包容网关) |
|
41 |
*/ |
|
42 |
INCLUSIVE_BRANCH_NODE = 53 |
|
43 |
} |
|
44 |
|
|
45 |
export enum NodeId { |
|
46 |
/** |
|
47 |
* 发起人节点 Id |
|
48 |
*/ |
|
49 |
START_USER_NODE_ID = 'StartUserNode', |
|
50 |
|
|
51 |
/** |
|
52 |
* 发起人节点 Id |
|
53 |
*/ |
|
54 |
END_EVENT_NODE_ID = 'EndEvent' |
|
55 |
} |
|
56 |
|
|
57 |
/** |
|
58 |
* 节点结构定义 |
|
59 |
*/ |
|
60 |
export interface SimpleFlowNode { |
|
61 |
id: string |
|
62 |
type: NodeType |
|
63 |
name: string |
|
64 |
showText?: string |
|
65 |
// 孩子节点 |
|
66 |
childNode?: SimpleFlowNode |
|
67 |
// 条件节点 |
|
68 |
conditionNodes?: SimpleFlowNode[] |
|
69 |
// 审批类型 |
|
70 |
approveType?: ApproveType |
|
71 |
// 候选人策略 |
|
72 |
candidateStrategy?: number |
|
73 |
// 候选人参数 |
|
74 |
candidateParam?: string |
|
75 |
// 多人审批方式 |
|
76 |
approveMethod?: ApproveMethodType |
|
77 |
//通过比例 |
|
78 |
approveRatio?: number |
|
79 |
// 审批按钮设置 |
|
80 |
buttonsSetting?: any[] |
|
81 |
// 表单权限 |
|
82 |
fieldsPermission?: Array<Record<string, any>> |
|
83 |
// 审批任务超时处理 |
|
84 |
timeoutHandler?: TimeoutHandler |
|
85 |
// 审批任务拒绝处理 |
|
86 |
rejectHandler?: RejectHandler |
|
87 |
// 审批人为空的处理 |
|
88 |
assignEmptyHandler?: AssignEmptyHandler |
|
89 |
// 审批节点的审批人与发起人相同时,对应的处理类型 |
|
90 |
assignStartUserHandlerType?: number |
|
91 |
// 条件类型 |
|
92 |
conditionType?: ConditionType |
|
93 |
// 条件表达式 |
|
94 |
conditionExpression?: string |
|
95 |
// 条件组 |
|
96 |
conditionGroups?: ConditionGroup |
|
97 |
// 是否默认的条件 |
|
98 |
defaultFlow?: boolean |
|
99 |
// 活动的状态,用于前端节点状态展示 |
|
100 |
activityStatus?: TaskStatusEnum |
|
101 |
} |
|
102 |
// 候选人策略枚举 ( 用于审批节点。抄送节点 ) |
|
103 |
export enum CandidateStrategy { |
|
104 |
/** |
|
105 |
* 指定角色 |
|
106 |
*/ |
|
107 |
ROLE = 10, |
|
108 |
/** |
|
109 |
* 部门成员 |
|
110 |
*/ |
|
111 |
DEPT_MEMBER = 20, |
|
112 |
/** |
|
113 |
* 部门的负责人 |
|
114 |
*/ |
|
115 |
DEPT_LEADER = 21, |
|
116 |
/** |
|
117 |
* 连续多级部门的负责人 |
|
118 |
*/ |
|
119 |
MULTI_LEVEL_DEPT_LEADER = 23, |
|
120 |
/** |
|
121 |
* 指定岗位 |
|
122 |
*/ |
|
123 |
POST = 22, |
|
124 |
/** |
|
125 |
* 指定用户 |
|
126 |
*/ |
|
127 |
USER = 30, |
|
128 |
/** |
|
129 |
* 发起人自选 |
|
130 |
*/ |
|
131 |
START_USER_SELECT = 35, |
|
132 |
/** |
|
133 |
* 发起人自己 |
|
134 |
*/ |
|
135 |
START_USER = 36, |
|
136 |
/** |
|
137 |
* 发起人部门负责人 |
|
138 |
*/ |
|
139 |
START_USER_DEPT_LEADER = 37, |
|
140 |
/** |
|
141 |
* 发起人连续多级部门的负责人 |
|
142 |
*/ |
|
143 |
START_USER_MULTI_LEVEL_DEPT_LEADER = 38, |
|
144 |
/** |
|
145 |
* 指定用户组 |
|
146 |
*/ |
|
147 |
USER_GROUP = 40, |
|
148 |
/** |
|
149 |
* 表单内用户字段 |
|
150 |
*/ |
|
151 |
FORM_USER = 50, |
|
152 |
/** |
|
153 |
* 表单内部门负责人 |
|
154 |
*/ |
|
155 |
FORM_DEPT_LEADER = 51, |
|
156 |
/** |
|
157 |
* 流程表达式 |
|
158 |
*/ |
|
159 |
EXPRESSION = 60 |
|
160 |
} |
|
161 |
|
|
162 |
// 多人审批方式类型枚举 ( 用于审批节点 ) |
|
163 |
export enum ApproveMethodType { |
|
164 |
/** |
|
165 |
* 随机挑选一人审批 |
|
166 |
*/ |
|
167 |
RANDOM_SELECT_ONE_APPROVE = 1, |
|
168 |
|
|
169 |
/** |
|
170 |
* 多人会签(按通过比例) |
|
171 |
*/ |
|
172 |
APPROVE_BY_RATIO = 2, |
|
173 |
|
|
174 |
/** |
|
175 |
* 多人或签(通过只需一人,拒绝只需一人) |
|
176 |
*/ |
|
177 |
ANY_APPROVE = 3, |
|
178 |
/** |
|
179 |
* 多人依次审批 |
|
180 |
*/ |
|
181 |
SEQUENTIAL_APPROVE = 4 |
|
182 |
} |
|
183 |
|
|
184 |
/** |
|
185 |
* 审批拒绝结构定义 |
|
186 |
*/ |
|
187 |
export type RejectHandler = { |
|
188 |
// 审批拒绝类型 |
|
189 |
type: RejectHandlerType |
|
190 |
// 退回节点 Id |
|
191 |
returnNodeId?: string |
|
192 |
} |
|
193 |
|
|
194 |
/** |
|
195 |
* 审批超时结构定义 |
|
196 |
*/ |
|
197 |
export type TimeoutHandler = { |
|
198 |
// 是否开启超时处理 |
|
199 |
enable: boolean |
|
200 |
// 超时执行的动作 |
|
201 |
type?: number |
|
202 |
// 超时时间设置 |
|
203 |
timeDuration?: string |
|
204 |
// 执行动作是自动提醒, 最大提醒次数 |
|
205 |
maxRemindCount?: number |
|
206 |
} |
|
207 |
|
|
208 |
/** |
|
209 |
* 审批人为空的结构定义 |
|
210 |
*/ |
|
211 |
export type AssignEmptyHandler = { |
|
212 |
// 审批人为空的处理类型 |
|
213 |
type: AssignEmptyHandlerType |
|
214 |
// 指定用户的编号数组 |
|
215 |
userIds?: number[] |
|
216 |
} |
|
217 |
|
|
218 |
// 审批拒绝类型枚举 |
|
219 |
export enum RejectHandlerType { |
|
220 |
/** |
|
221 |
* 结束流程 |
|
222 |
*/ |
|
223 |
FINISH_PROCESS = 1, |
|
224 |
/** |
|
225 |
* 驳回到指定节点 |
|
226 |
*/ |
|
227 |
RETURN_USER_TASK = 2 |
|
228 |
} |
|
229 |
// 用户任务超时处理类型枚举 |
|
230 |
export enum TimeoutHandlerType { |
|
231 |
/** |
|
232 |
* 自动提醒 |
|
233 |
*/ |
|
234 |
REMINDER = 1, |
|
235 |
/** |
|
236 |
* 自动同意 |
|
237 |
*/ |
|
238 |
APPROVE = 2, |
|
239 |
/** |
|
240 |
* 自动拒绝 |
|
241 |
*/ |
|
242 |
REJECT = 3 |
|
243 |
} |
|
244 |
// 用户任务的审批人为空时,处理类型枚举 |
|
245 |
export enum AssignEmptyHandlerType { |
|
246 |
/** |
|
247 |
* 自动通过 |
|
248 |
*/ |
|
249 |
APPROVE = 1, |
|
250 |
/** |
|
251 |
* 自动拒绝 |
|
252 |
*/ |
|
253 |
REJECT = 2, |
|
254 |
/** |
|
255 |
* 指定人员审批 |
|
256 |
*/ |
|
257 |
ASSIGN_USER, |
|
258 |
/** |
|
259 |
* 转交给流程管理员 |
|
260 |
*/ |
|
261 |
ASSIGN_ADMIN = 4 |
|
262 |
} |
|
263 |
// 用户任务的审批人与发起人相同时,处理类型枚举 |
|
264 |
export enum AssignStartUserHandlerType { |
|
265 |
/** |
|
266 |
* 由发起人对自己审批 |
|
267 |
*/ |
|
268 |
START_USER_AUDIT = 1, |
|
269 |
/** |
|
270 |
* 自动跳过【参考飞书】:1)如果当前节点还有其他审批人,则交由其他审批人进行审批;2)如果当前节点没有其他审批人,则该节点自动通过 |
|
271 |
*/ |
|
272 |
SKIP = 2, |
|
273 |
/** |
|
274 |
* 转交给部门负责人审批 |
|
275 |
*/ |
|
276 |
ASSIGN_DEPT_LEADER = 3 |
|
277 |
} |
|
278 |
|
|
279 |
// 用户任务的审批类型。 【参考飞书】 |
|
280 |
export enum ApproveType { |
|
281 |
/** |
|
282 |
* 人工审批 |
|
283 |
*/ |
|
284 |
USER = 1, |
|
285 |
/** |
|
286 |
* 自动通过 |
|
287 |
*/ |
|
288 |
AUTO_APPROVE = 2, |
|
289 |
/** |
|
290 |
* 自动拒绝 |
|
291 |
*/ |
|
292 |
AUTO_REJECT = 3 |
|
293 |
} |
|
294 |
|
|
295 |
// 时间单位枚举 |
|
296 |
export enum TimeUnitType { |
|
297 |
/** |
|
298 |
* 分钟 |
|
299 |
*/ |
|
300 |
MINUTE = 1, |
|
301 |
/** |
|
302 |
* 小时 |
|
303 |
*/ |
|
304 |
HOUR = 2, |
|
305 |
/** |
|
306 |
* 天 |
|
307 |
*/ |
|
308 |
DAY = 3 |
|
309 |
} |
|
310 |
|
|
311 |
// 条件配置类型 ( 用于条件节点配置 ) |
|
312 |
export enum ConditionType { |
|
313 |
/** |
|
314 |
* 条件表达式 |
|
315 |
*/ |
|
316 |
EXPRESSION = 1, |
|
317 |
|
|
318 |
/** |
|
319 |
* 条件规则 |
|
320 |
*/ |
|
321 |
RULE = 2 |
|
322 |
} |
|
323 |
/** |
|
324 |
* 表单权限的枚举 |
|
325 |
*/ |
|
326 |
export enum FieldPermissionType { |
|
327 |
/** |
|
328 |
* 只读 |
|
329 |
*/ |
|
330 |
READ = '1', |
|
331 |
/** |
|
332 |
* 编辑 |
|
333 |
*/ |
|
334 |
WRITE = '2', |
|
335 |
/** |
|
336 |
* 隐藏 |
|
337 |
*/ |
|
338 |
NONE = '3' |
|
339 |
} |
|
340 |
/** |
|
341 |
* 操作按钮权限结构定义 |
|
342 |
*/ |
|
343 |
export type ButtonSetting = { |
|
344 |
id: OperationButtonType |
|
345 |
displayName: string |
|
346 |
enable: boolean |
|
347 |
} |
|
348 |
|
|
349 |
// 操作按钮类型枚举 (用于审批节点) |
|
350 |
export enum OperationButtonType { |
|
351 |
/** |
|
352 |
* 通过 |
|
353 |
*/ |
|
354 |
APPROVE = 1, |
|
355 |
/** |
|
356 |
* 拒绝 |
|
357 |
*/ |
|
358 |
REJECT = 2, |
|
359 |
/** |
|
360 |
* 转办 |
|
361 |
*/ |
|
362 |
TRANSFER = 3, |
|
363 |
/** |
|
364 |
* 委派 |
|
365 |
*/ |
|
366 |
DELEGATE = 4, |
|
367 |
/** |
|
368 |
* 加签 |
|
369 |
*/ |
|
370 |
ADD_SIGN = 5, |
|
371 |
/** |
|
372 |
* 退回 |
|
373 |
*/ |
|
374 |
RETURN = 6, |
|
375 |
/** |
|
376 |
* 抄送 |
|
377 |
*/ |
|
378 |
COPY = 7 |
|
379 |
} |
|
380 |
|
|
381 |
/** |
|
382 |
* 条件规则结构定义 |
|
383 |
*/ |
|
384 |
export type ConditionRule = { |
|
385 |
type: number |
|
386 |
opName: string |
|
387 |
opCode: string |
|
388 |
leftSide: string |
|
389 |
rightSide: string |
|
390 |
} |
|
391 |
|
|
392 |
/** |
|
393 |
* 条件组结构定义 |
|
394 |
*/ |
|
395 |
export type ConditionGroup = { |
|
396 |
// 条件组的逻辑关系是否为且 |
|
397 |
and: boolean |
|
398 |
// 条件数组 |
|
399 |
conditions: Condition[] |
|
400 |
} |
|
401 |
|
|
402 |
/** |
|
403 |
* 条件结构定义 |
|
404 |
*/ |
|
405 |
export type Condition = { |
|
406 |
// 条件规则的逻辑关系是否为且 |
|
407 |
and: boolean |
|
408 |
rules: ConditionRule[] |
|
409 |
} |
|
410 |
|
|
411 |
export const NODE_DEFAULT_TEXT = new Map<number, string>() |
|
412 |
NODE_DEFAULT_TEXT.set(NodeType.USER_TASK_NODE, '请配置审批人') |
|
413 |
NODE_DEFAULT_TEXT.set(NodeType.COPY_TASK_NODE, '请配置抄送人') |
|
414 |
NODE_DEFAULT_TEXT.set(NodeType.CONDITION_NODE, '请设置条件') |
|
415 |
NODE_DEFAULT_TEXT.set(NodeType.START_USER_NODE, '请设置发起人') |
|
416 |
|
|
417 |
export const NODE_DEFAULT_NAME = new Map<number, string>() |
|
418 |
NODE_DEFAULT_NAME.set(NodeType.USER_TASK_NODE, '审批人') |
|
419 |
NODE_DEFAULT_NAME.set(NodeType.COPY_TASK_NODE, '抄送人') |
|
420 |
NODE_DEFAULT_NAME.set(NodeType.CONDITION_NODE, '条件') |
|
421 |
NODE_DEFAULT_NAME.set(NodeType.START_USER_NODE, '发起人') |
|
422 |
|
|
423 |
// 候选人策略。暂时不从字典中取。 后续可能调整。控制显示顺序 |
|
424 |
export const CANDIDATE_STRATEGY: DictDataVO[] = [ |
|
425 |
{ label: '指定成员', value: CandidateStrategy.USER }, |
|
426 |
{ label: '指定角色', value: CandidateStrategy.ROLE }, |
|
427 |
{ label: '部门成员', value: CandidateStrategy.DEPT_MEMBER }, |
|
428 |
{ label: '部门负责人', value: CandidateStrategy.DEPT_LEADER }, |
|
429 |
{ label: '连续多级部门负责人', value: CandidateStrategy.MULTI_LEVEL_DEPT_LEADER }, |
|
430 |
{ label: '发起人自选', value: CandidateStrategy.START_USER_SELECT }, |
|
431 |
{ label: '发起人本人', value: CandidateStrategy.START_USER }, |
|
432 |
{ label: '发起人部门负责人', value: CandidateStrategy.START_USER_DEPT_LEADER }, |
|
433 |
{ label: '发起人连续部门负责人', value: CandidateStrategy.START_USER_MULTI_LEVEL_DEPT_LEADER }, |
|
434 |
{ label: '用户组', value: CandidateStrategy.USER_GROUP }, |
|
435 |
{ label: '表单内用户字段', value: CandidateStrategy.FORM_USER }, |
|
436 |
{ label: '表单内部门负责人', value: CandidateStrategy.FORM_DEPT_LEADER }, |
|
437 |
{ label: '流程表达式', value: CandidateStrategy.EXPRESSION } |
|
438 |
] |
|
439 |
// 审批节点 的审批类型 |
|
440 |
export const APPROVE_TYPE: DictDataVO[] = [ |
|
441 |
{ label: '人工审批', value: ApproveType.USER }, |
|
442 |
{ label: '自动通过', value: ApproveType.AUTO_APPROVE }, |
|
443 |
{ label: '自动拒绝', value: ApproveType.AUTO_REJECT } |
|
444 |
] |
|
445 |
|
|
446 |
export const APPROVE_METHODS: DictDataVO[] = [ |
|
447 |
{ label: '按顺序依次审批', value: ApproveMethodType.SEQUENTIAL_APPROVE }, |
|
448 |
{ label: '会签(可同时审批,至少 % 人必须审批通过)', value: ApproveMethodType.APPROVE_BY_RATIO }, |
|
449 |
{ label: '或签(可同时审批,有一人通过即可)', value: ApproveMethodType.ANY_APPROVE }, |
|
450 |
{ label: '随机挑选一人审批', value: ApproveMethodType.RANDOM_SELECT_ONE_APPROVE } |
|
451 |
] |
|
452 |
|
|
453 |
export const CONDITION_CONFIG_TYPES: DictDataVO[] = [ |
|
454 |
{ label: '条件表达式', value: ConditionType.EXPRESSION }, |
|
455 |
{ label: '条件规则', value: ConditionType.RULE } |
|
456 |
] |
|
457 |
|
|
458 |
// 时间单位类型 |
|
459 |
export const TIME_UNIT_TYPES: DictDataVO[] = [ |
|
460 |
{ label: '分钟', value: TimeUnitType.MINUTE }, |
|
461 |
{ label: '小时', value: TimeUnitType.HOUR }, |
|
462 |
{ label: '天', value: TimeUnitType.DAY } |
|
463 |
] |
|
464 |
// 超时处理执行动作类型 |
|
465 |
export const TIMEOUT_HANDLER_TYPES: DictDataVO[] = [ |
|
466 |
{ label: '自动提醒', value: 1 }, |
|
467 |
{ label: '自动同意', value: 2 }, |
|
468 |
{ label: '自动拒绝', value: 3 } |
|
469 |
] |
|
470 |
export const REJECT_HANDLER_TYPES: DictDataVO[] = [ |
|
471 |
{ label: '终止流程', value: RejectHandlerType.FINISH_PROCESS }, |
|
472 |
{ label: '驳回到指定节点', value: RejectHandlerType.RETURN_USER_TASK } |
|
473 |
// { label: '结束任务', value: RejectHandlerType.FINISH_TASK } |
|
474 |
] |
|
475 |
export const ASSIGN_EMPTY_HANDLER_TYPES: DictDataVO[] = [ |
|
476 |
{ label: '自动通过', value: 1 }, |
|
477 |
{ label: '自动拒绝', value: 2 }, |
|
478 |
{ label: '指定成员审批', value: 3 }, |
|
479 |
{ label: '转交给流程管理员', value: 4 } |
|
480 |
] |
|
481 |
export const ASSIGN_START_USER_HANDLER_TYPES: DictDataVO[] = [ |
|
482 |
{ label: '由发起人对自己审批', value: 1 }, |
|
483 |
{ label: '自动跳过', value: 2 }, |
|
484 |
{ label: '转交给部门负责人审批', value: 3 } |
|
485 |
] |
|
486 |
|
|
487 |
// 比较运算符 |
|
488 |
export const COMPARISON_OPERATORS: DictDataVO = [ |
|
489 |
{ |
|
490 |
value: '==', |
|
491 |
label: '等于' |
|
492 |
}, |
|
493 |
{ |
|
494 |
value: '!=', |
|
495 |
label: '不等于' |
|
496 |
}, |
|
497 |
{ |
|
498 |
value: '>', |
|
499 |
label: '大于' |
|
500 |
}, |
|
501 |
{ |
|
502 |
value: '>=', |
|
503 |
label: '大于等于' |
|
504 |
}, |
|
505 |
{ |
|
506 |
value: '<', |
|
507 |
label: '小于' |
|
508 |
}, |
|
509 |
{ |
|
510 |
value: '<=', |
|
511 |
label: '小于等于' |
|
512 |
} |
|
513 |
] |
|
514 |
// 审批操作按钮名称 |
|
515 |
export const OPERATION_BUTTON_NAME = new Map<number, string>() |
|
516 |
OPERATION_BUTTON_NAME.set(OperationButtonType.APPROVE, '通过') |
|
517 |
OPERATION_BUTTON_NAME.set(OperationButtonType.REJECT, '拒绝') |
|
518 |
OPERATION_BUTTON_NAME.set(OperationButtonType.TRANSFER, '转办') |
|
519 |
OPERATION_BUTTON_NAME.set(OperationButtonType.DELEGATE, '委派') |
|
520 |
OPERATION_BUTTON_NAME.set(OperationButtonType.ADD_SIGN, '加签') |
|
521 |
OPERATION_BUTTON_NAME.set(OperationButtonType.RETURN, '退回') |
|
522 |
OPERATION_BUTTON_NAME.set(OperationButtonType.COPY, '抄送') |
|
523 |
|
|
524 |
// 默认的按钮权限设置 |
|
525 |
export const DEFAULT_BUTTON_SETTING: ButtonSetting[] = [ |
|
526 |
{ id: OperationButtonType.APPROVE, displayName: '通过', enable: true }, |
|
527 |
{ id: OperationButtonType.REJECT, displayName: '拒绝', enable: true }, |
|
528 |
{ id: OperationButtonType.TRANSFER, displayName: '转办', enable: true }, |
|
529 |
{ id: OperationButtonType.DELEGATE, displayName: '委派', enable: true }, |
|
530 |
{ id: OperationButtonType.ADD_SIGN, displayName: '加签', enable: true }, |
|
531 |
{ id: OperationButtonType.RETURN, displayName: '退回', enable: true } |
|
532 |
] |
|
533 |
|
|
534 |
// 发起人的按钮权限。暂时定死,不可以编辑 |
|
535 |
export const START_USER_BUTTON_SETTING: ButtonSetting[] = [ |
|
536 |
{ id: OperationButtonType.APPROVE, displayName: '提交', enable: true }, |
|
537 |
{ id: OperationButtonType.REJECT, displayName: '拒绝', enable: false }, |
|
538 |
{ id: OperationButtonType.TRANSFER, displayName: '转办', enable: false }, |
|
539 |
{ id: OperationButtonType.DELEGATE, displayName: '委派', enable: false }, |
|
540 |
{ id: OperationButtonType.ADD_SIGN, displayName: '加签', enable: false }, |
|
541 |
{ id: OperationButtonType.RETURN, displayName: '退回', enable: false } |
|
542 |
] |
|
543 |
|
|
544 |
export const MULTI_LEVEL_DEPT: DictDataVO = [ |
|
545 |
{ label: '第 1 级部门', value: 1 }, |
|
546 |
{ label: '第 2 级部门', value: 2 }, |
|
547 |
{ label: '第 3 级部门', value: 3 }, |
|
548 |
{ label: '第 4 级部门', value: 4 }, |
|
549 |
{ label: '第 5 级部门', value: 5 }, |
|
550 |
{ label: '第 6 级部门', value: 6 }, |
|
551 |
{ label: '第 7 级部门', value: 7 }, |
|
552 |
{ label: '第 8 级部门', value: 8 }, |
|
553 |
{ label: '第 9 级部门', value: 9 }, |
|
554 |
{ label: '第 10 级部门', value: 10 }, |
|
555 |
{ label: '第 11 级部门', value: 11 }, |
|
556 |
{ label: '第 12 级部门', value: 12 }, |
|
557 |
{ label: '第 13 级部门', value: 13 }, |
|
558 |
{ label: '第 14 级部门', value: 14 }, |
|
559 |
{ label: '第 15 级部门', value: 15 } |
|
560 |
] |
|
561 |
|
|
562 |
/** |
|
563 |
* 流程实例的变量枚举 |
|
564 |
*/ |
|
565 |
export enum ProcessVariableEnum { |
|
566 |
/** |
|
567 |
* 发起用户 ID |
|
568 |
*/ |
|
569 |
START_USER_ID = 'PROCESS_START_USER_ID' |
|
570 |
} |