Bläddra i källkod

fix 修复 流程重新提交报错问题

疯狂的狮子Li 10 månader sedan
förälder
incheckning
d98d11ae2d

+ 1 - 1
ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwInstanceBizExtServiceImpl.java

@@ -39,7 +39,7 @@ public class FlwInstanceBizExtServiceImpl implements IFlwInstanceBizExtService {
             .eq(FlowInstanceBizExt::getInstanceId, bo.getInstanceId()));
         if (flowInstanceBizExt != null) {
             flowInstanceBizExt.setBusinessTitle(convert.getBusinessTitle());
-            return baseMapper.insertOrUpdate(convert);
+            return baseMapper.insertOrUpdate(flowInstanceBizExt);
         }
         return baseMapper.insertOrUpdate(convert);
     }

+ 5 - 6
ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java

@@ -83,7 +83,6 @@ public class FlwTaskServiceImpl implements IFlwTaskService {
     private final IFlwTaskAssigneeService flwTaskAssigneeService;
     private final IFlwCommonService flwCommonService;
     private final IFlwNodeExtService flwNodeExtService;
-    private final FlowDefinitionMapper flowDefinitionMapper;
     private final IFlwInstanceBizExtService flowInstanceBizExtService;
 
     /**
@@ -108,6 +107,11 @@ public class FlwTaskServiceImpl implements IFlwTaskService {
         variables.put(BUSINESS_ID, businessId);
         FlowInstance flowInstance = flowInstanceMapper.selectOne(new LambdaQueryWrapper<>(FlowInstance.class)
             .eq(FlowInstance::getBusinessId, businessId));
+        FlowInstanceBizExtBo extBo = startProcessBo.getFlowInstanceBizExtBo();
+        if (ObjectUtil.isEmpty(extBo)) {
+            extBo = new FlowInstanceBizExtBo();
+            startProcessBo.setFlowInstanceBizExtBo(extBo);
+        }
         if (ObjectUtil.isNotNull(flowInstance)) {
             BusinessStatusEnum.checkStartStatus(flowInstance.getFlowStatus());
             List<Task> taskList = taskService.list(new FlowTask().setInstanceId(flowInstance.getId()));
@@ -120,12 +124,7 @@ public class FlwTaskServiceImpl implements IFlwTaskService {
             buildFlowInstanceBizExt(flowInstance, startProcessBo.getFlowInstanceBizExtBo());
             return dto;
         }
-        FlowInstanceBizExtBo extBo = startProcessBo.getFlowInstanceBizExtBo();
         String businessCode;
-        if (ObjectUtil.isEmpty(extBo)) {
-            extBo = new FlowInstanceBizExtBo();
-            startProcessBo.setFlowInstanceBizExtBo(extBo);
-        }
         // 生成业务编号
         if (StringUtils.isBlank(extBo.getBusinessCode())) {
             //todo 按照自己业务自行修改