Selaa lähdekoodia

fix 修复 AUTO_PASS 变量取值错误

疯狂的狮子Li 3 kuukautta sitten
vanhempi
commit
cf006a47da

+ 3 - 2
ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java

@@ -232,8 +232,9 @@ public class FlwTaskServiceImpl implements IFlwTaskService {
         if (BusinessStatusEnum.isDraftOrCancelOrBack(ins.getFlowStatus())) {
             variables.put(SUBMIT, true);
         }
+        Map<String, Object> insVariableMap = ins.getVariableMap();
         // 设置弹窗处理人
-        Map<String, Object> assigneeMap = setPopAssigneeMap(completeTaskBo.getAssigneeMap(), ins.getVariableMap());
+        Map<String, Object> assigneeMap = setPopAssigneeMap(completeTaskBo.getAssigneeMap(), insVariableMap);
         if (CollUtil.isNotEmpty(assigneeMap)) {
             variables.putAll(assigneeMap);
         }
@@ -249,7 +250,7 @@ public class FlwTaskServiceImpl implements IFlwTaskService {
             .flowStatus(BusinessStatusEnum.WAITING.getStatus())
             .hisStatus(TaskStatusEnum.PASS.getStatus())
             .hisTaskExt(completeTaskBo.getFileId());
-        Boolean autoPass = Convert.toBool(variables.getOrDefault(AUTO_PASS, false));
+        Boolean autoPass = Convert.toBool(insVariableMap.getOrDefault(AUTO_PASS, false));
         skipTask(taskId, flowParams, flowTask.getInstanceId(), autoPass);
         return true;
     }