1
1
<template >
2
2
<div v-loading =" loading" class =" mb-20px" >
3
- <SimpleProcessViewer :flow-node =" simpleModel" :tasks =" tasks" :process-instance =" processInstance" />
3
+ <SimpleProcessViewer
4
+ :flow-node =" simpleModel"
5
+ :tasks =" tasks"
6
+ :process-instance =" processInstance"
7
+ />
4
8
</div >
5
9
</template >
6
10
<script lang="ts" setup>
@@ -12,72 +16,51 @@ defineOptions({ name: 'BpmProcessInstanceSimpleViewer' })
12
16
13
17
const props = defineProps ({
14
18
loading: propTypes .bool .def (false ), // 是否加载中
15
- modelView: propTypes .object
19
+ modelView: propTypes .object ,
20
+ simpleJson: propTypes .string // Simple 模型结构数据 (json 格式)
16
21
})
17
22
const simpleModel = ref ()
18
23
// 用户任务
19
24
const tasks = ref ([])
20
25
// 流程实例
21
26
const processInstance = ref ()
22
- // /** 只有 loading 完成时,才去加载流程列表 */
23
- // watch(
24
- // () => props.loading,
25
- // async (value) => {
26
- // if (value && props.id) {
27
- // const modelView = await ProcessInstanceApi.getProcessInstanceBpmnModelView(props.id)
28
- // if (modelView) {
29
- // tasks.value = modelView.tasks
30
- // processInstance.value = modelView.processInstance
31
- // // 已经拒绝的活动节点编号集合,只包括 UserTask
32
- // const rejectedTaskActivityIds: string[] = modelView.rejectedTaskActivityIds
33
- // // 进行中的活动节点编号集合, 只包括 UserTask
34
- // const unfinishedTaskActivityIds: string[] = modelView.unfinishedTaskActivityIds
35
- // // 已经完成的活动节点编号集合, 包括 UserTask、Gateway 等
36
- // const finishedActivityIds: string[] = modelView.finishedTaskActivityIds
37
- // // 已经完成的连线节点编号集合,只包括 SequenceFlow
38
- // const finishedSequenceFlowActivityIds: string[] = modelView.finishedSequenceFlowActivityIds
39
- // setSimpleModelNodeTaskStatus(
40
- // modelView.simpleModel,
41
- // modelView.processInstance.status,
42
- // rejectedTaskActivityIds,
43
- // unfinishedTaskActivityIds,
44
- // finishedActivityIds,
45
- // finishedSequenceFlowActivityIds
46
- // )
47
- // simpleModel.value = modelView.simpleModel
48
- // }
49
- // }
50
- // }
51
- // )
27
+
28
+ /** 监控模型视图 包括任务列表、进行中的活动节点编号等 */
52
29
watch (
53
30
() => props .modelView ,
54
31
async (newModelView ) => {
55
32
if (newModelView ) {
56
- if (newModelView ) {
57
- tasks .value = newModelView .tasks
58
- processInstance .value = newModelView .processInstance
59
- // 已经拒绝的活动节点编号集合,只包括 UserTask
60
- const rejectedTaskActivityIds: string [] = newModelView .rejectedTaskActivityIds
61
- // 进行中的活动节点编号集合, 只包括 UserTask
62
- const unfinishedTaskActivityIds: string [] = newModelView .unfinishedTaskActivityIds
63
- // 已经完成的活动节点编号集合, 包括 UserTask、Gateway 等
64
- const finishedActivityIds: string [] = newModelView .finishedTaskActivityIds
65
- // 已经完成的连线节点编号集合,只包括 SequenceFlow
66
- const finishedSequenceFlowActivityIds: string [] = newModelView .finishedSequenceFlowActivityIds
67
- setSimpleModelNodeTaskStatus (
68
- newModelView .simpleModel ,
69
- newModelView .processInstance .status ,
70
- rejectedTaskActivityIds ,
71
- unfinishedTaskActivityIds ,
72
- finishedActivityIds ,
73
- finishedSequenceFlowActivityIds
74
- )
75
- simpleModel .value = newModelView .simpleModel
76
- }
33
+ tasks .value = newModelView .tasks
34
+ processInstance .value = newModelView .processInstance
35
+ // 已经拒绝的活动节点编号集合,只包括 UserTask
36
+ const rejectedTaskActivityIds: string [] = newModelView .rejectedTaskActivityIds
37
+ // 进行中的活动节点编号集合, 只包括 UserTask
38
+ const unfinishedTaskActivityIds: string [] = newModelView .unfinishedTaskActivityIds
39
+ // 已经完成的活动节点编号集合, 包括 UserTask、Gateway 等
40
+ const finishedActivityIds: string [] = newModelView .finishedTaskActivityIds
41
+ // 已经完成的连线节点编号集合,只包括 SequenceFlow
42
+ const finishedSequenceFlowActivityIds: string [] = newModelView .finishedSequenceFlowActivityIds
43
+ setSimpleModelNodeTaskStatus (
44
+ newModelView .simpleModel ,
45
+ newModelView .processInstance .status ,
46
+ rejectedTaskActivityIds ,
47
+ unfinishedTaskActivityIds ,
48
+ finishedActivityIds ,
49
+ finishedSequenceFlowActivityIds
50
+ )
51
+ simpleModel .value = newModelView .simpleModel
52
+ }
53
+ }
54
+ )
55
+ /** 监控模型结构数据 */
56
+ watch (
57
+ () => props .simpleJson ,
58
+ async (value ) => {
59
+ if (value ) {
60
+ simpleModel .value = JSON .parse (value )
77
61
}
78
62
}
79
63
)
80
-
81
64
const setSimpleModelNodeTaskStatus = (
82
65
simpleModel : SimpleFlowNode | undefined ,
83
66
processStatus : number ,
0 commit comments