@@ -108,6 +108,7 @@ const fApi = ref<ApiAttrs>()
108
108
// 指定审批人
109
109
const startUserSelectTasks: any = ref ([]) // 发起人需要选择审批人或抄送人的任务列表
110
110
const startUserSelectAssignees = ref ({}) // 发起人选择审批人的数据
111
+ const hisStartUserSelectAssignees = ref ({}) // 历史发起人选择审批人的数据
111
112
const bpmnXML: any = ref (null ) // BPMN 数据
112
113
const simpleJson = ref <string | undefined >() // Simple 设计器数据 json 格式
113
114
@@ -154,13 +155,15 @@ const initProcessInfo = async (row: any, formVariables?: any) => {
154
155
// 这里暂时无需加载流程图,因为跳出到另外个 Tab;
155
156
}
156
157
}
158
+
157
159
// 预测流程节点会因为输入的参数值而产生新的预测结果值,所以需重新预测一次
158
160
watch (
159
161
detailForm .value ,
160
162
(newValue ) => {
161
163
if (newValue && Object .keys (newValue .value ).length > 0 ) {
162
- // startUserSelectTasks.value = []
163
- // startUserSelectAssignees.value = []
164
+ // 记录之前的节点审批人
165
+ hisStartUserSelectAssignees .value = startUserSelectAssignees .value
166
+ startUserSelectAssignees .value = {}
164
167
getApprovalDetail ({
165
168
id: props .selectProcessDefinition .id ,
166
169
processVariablesStr: newValue .value
@@ -186,19 +189,24 @@ const getApprovalDetail = async (row: any) => {
186
189
message .error (' 查询不到审批详情信息!' )
187
190
return
188
191
}
192
+ // 获取审批节点,显示 Timeline 的数据
193
+ activityNodes .value = data .activityNodes
189
194
190
195
// 获取发起人自选的任务
191
196
startUserSelectTasks .value = data .activityNodes ?.filter (
192
197
(node : ApprovalNodeInfo ) => CandidateStrategy .START_USER_SELECT === node .candidateStrategy
193
198
)
199
+
194
200
if (startUserSelectTasks .value ?.length > 0 ) {
195
201
for (const node of startUserSelectTasks .value ) {
196
- startUserSelectAssignees .value [node .id ] = []
202
+ if (hisStartUserSelectAssignees .value [node .id ] && hisStartUserSelectAssignees .value [node .id ].length > 0 ) {
203
+ startUserSelectAssignees .value [node .id ] = hisStartUserSelectAssignees .value [node .id ]
204
+ } else {
205
+ startUserSelectAssignees .value [node .id ] = []
206
+ }
197
207
}
198
208
}
199
-
200
- // 获取审批节点,显示 Timeline 的数据
201
- activityNodes .value = data .activityNodes
209
+
202
210
// 获取表单字段权限
203
211
const formFieldsPermission = data .formFieldsPermission
204
212
// 设置表单字段权限
@@ -236,7 +244,6 @@ const submitForm = async () => {
236
244
}
237
245
// 流程表单校验
238
246
await fApi .value .validate ()
239
- // debugger
240
247
// 如果有指定审批人,需要校验
241
248
if (startUserSelectTasks .value ?.length > 0 ) {
242
249
for (const userTask of startUserSelectTasks .value ) {
0 commit comments