Przeglądaj źródła

优化保养转单功能

Your Name 3 lat temu
rodzic
commit
cab3425bb9

Plik diff jest za duży
+ 53 - 0
java110-utils/src/main/java/com/java110/utils/util/BpmnXml.java


+ 7 - 3
service-common/src/main/java/com/java110/common/bmo/workflow/impl/QueryWorkFlowFirstStaffBMOImpl.java

@@ -417,17 +417,21 @@ public class QueryWorkFlowFirstStaffBMOImpl implements IQueryWorkFlowFirstStaffB
     //业务校验
     private void businessCheck(OaWorkflowDto oaWorkflowDto, WorkflowModelDto workflowModelDto) {
         if (OaWorkflowDto.FLOW_TYPE_VISIT.equals(oaWorkflowDto.getFlowType())) {
-            businessVisitCheck(oaWorkflowDto, workflowModelDto);
+            businessFirstAuditCheck(oaWorkflowDto, workflowModelDto);
+        }
+
+        if(OaWorkflowDto.FLOW_TYPE_OWNER_SETTLED.equals(oaWorkflowDto.getFlowType())){
+            businessFirstAuditCheck(oaWorkflowDto, workflowModelDto);
         }
     }
 
     /**
-     * 访客校验
+     * 第一审批人必须要固定
      *
      * @param oaWorkflowDto
      * @param workflowModelDto
      */
-    private void businessVisitCheck(OaWorkflowDto oaWorkflowDto, WorkflowModelDto workflowModelDto) {
+    private void businessFirstAuditCheck(OaWorkflowDto oaWorkflowDto, WorkflowModelDto workflowModelDto) {
         OaWorkflowXmlDto oaWorkflowXmlDto = new OaWorkflowXmlDto();
         oaWorkflowXmlDto.setBpmnXml(workflowModelDto.getJson_xml());
         List<JSONObject> outs = oaWorkflowActivitiInnerServiceSMOImpl.queryFirstAuditStaff(oaWorkflowXmlDto);

+ 19 - 0
service-user/src/main/java/com/java110/user/cmd/ownerSettled/SaveOwnerSettledSettingCmd.java

@@ -26,12 +26,15 @@ import com.java110.dto.oaWorkflow.OaWorkflowDto;
 import com.java110.dto.workflow.WorkflowModelDto;
 import com.java110.intf.common.IWorkflowInnerServiceSMO;
 import com.java110.intf.oa.IOaWorkflowInnerServiceSMO;
+import com.java110.intf.oa.IOaWorkflowXmlInnerServiceSMO;
 import com.java110.intf.user.IOwnerSettledSettingV1InnerServiceSMO;
 import com.java110.po.oaWorkflow.OaWorkflowPo;
+import com.java110.po.oaWorkflowXml.OaWorkflowXmlPo;
 import com.java110.po.ownerSettledSetting.OwnerSettledSettingPo;
 import com.java110.utils.exception.CmdException;
 import com.java110.utils.util.Assert;
 import com.java110.utils.util.BeanConvertUtil;
+import com.java110.utils.util.BpmnXml;
 import com.java110.vo.ResultVo;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.slf4j.Logger;
@@ -63,6 +66,9 @@ public class SaveOwnerSettledSettingCmd extends Cmd {
     @Autowired
     private IOaWorkflowInnerServiceSMO oaWorkflowInnerServiceSMOImpl;
 
+    @Autowired
+    private IOaWorkflowXmlInnerServiceSMO oaWorkflowXmlInnerServiceSMOImpl;
+
     @Override
     public void validate(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) {
         Assert.hasKeyAndValue(reqJson, "settingName", "请求报文中未包含settingName");
@@ -95,6 +101,19 @@ public class SaveOwnerSettledSettingCmd extends Cmd {
             throw new CmdException("保存数据失败");
         }
 
+        //默认 流程图以防画错
+        OaWorkflowXmlPo oaWorkflowXmlPo = new OaWorkflowXmlPo();
+        oaWorkflowXmlPo.setStoreId(storeId);
+        oaWorkflowXmlPo.setFlowId(oaWorkflowPo.getFlowId());
+        oaWorkflowXmlPo.setXmlId(GenerateCodeFactory.getGeneratorId("79"));
+        oaWorkflowXmlPo.setSvgXml("");
+        oaWorkflowXmlPo.setBpmnXml(BpmnXml.getDefaultOwnerSettledBpmnXml(oaWorkflowPo.getFlowId()));
+
+        flag = oaWorkflowXmlInnerServiceSMOImpl.saveOaWorkflowXml(oaWorkflowXmlPo);
+        if (flag < 1) {
+            throw new CmdException("保存模型数据失败");
+        }
+
         OwnerSettledSettingPo ownerSettledSettingPo = BeanConvertUtil.covertBean(reqJson, OwnerSettledSettingPo.class);
         ownerSettledSettingPo.setSettingId(GenerateCodeFactory.getGeneratorId(CODE_PREFIX_ID));
         ownerSettledSettingPo.setFlowId(oaWorkflowPo.getFlowId());