From 3d8ec5c23ef49d0908195c8b5b892920a46aaa8c Mon Sep 17 00:00:00 2001
From: java110 <928255095@qq.com>
Date: 星期二, 30 五月 2023 11:42:48 +0800
Subject: [PATCH] Merge branch 'master' of http://git.homecommunity.cn/supervip/MicroCommunity

---
 service-user/src/main/java/com/java110/user/cmd/ownerSettled/SaveOwnerSettledSettingCmd.java |   55 ++++++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 54 insertions(+), 1 deletions(-)

diff --git a/service-user/src/main/java/com/java110/user/cmd/ownerSettled/SaveOwnerSettledSettingCmd.java b/service-user/src/main/java/com/java110/user/cmd/ownerSettled/SaveOwnerSettledSettingCmd.java
index 2e6dd8c..b311011 100644
--- a/service-user/src/main/java/com/java110/user/cmd/ownerSettled/SaveOwnerSettledSettingCmd.java
+++ b/service-user/src/main/java/com/java110/user/cmd/ownerSettled/SaveOwnerSettledSettingCmd.java
@@ -22,11 +22,19 @@
 import com.java110.core.event.cmd.Cmd;
 import com.java110.core.event.cmd.CmdEvent;
 import com.java110.core.factory.GenerateCodeFactory;
+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;
@@ -52,6 +60,15 @@
     @Autowired
     private IOwnerSettledSettingV1InnerServiceSMO ownerSettledSettingV1InnerServiceSMOImpl;
 
+    @Autowired
+    private IWorkflowInnerServiceSMO workflowInnerServiceSMOImpl;
+
+    @Autowired
+    private IOaWorkflowInnerServiceSMO oaWorkflowInnerServiceSMOImpl;
+
+    @Autowired
+    private IOaWorkflowXmlInnerServiceSMO oaWorkflowXmlInnerServiceSMOImpl;
+
     @Override
     public void validate(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) {
         Assert.hasKeyAndValue(reqJson, "settingName", "璇锋眰鎶ユ枃涓湭鍖呭惈settingName");
@@ -63,9 +80,45 @@
     @Java110Transactional
     public void doCmd(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) throws CmdException {
 
+        String storeId = cmdDataFlowContext.getReqHeaders().get("store-id");
+        OaWorkflowPo oaWorkflowPo = new OaWorkflowPo();
+        oaWorkflowPo.setStoreId(storeId);
+        oaWorkflowPo.setFlowId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_flowId));
+        oaWorkflowPo.setFlowName(reqJson.getString("settingName")+"瀹℃壒娴佺▼");
+        oaWorkflowPo.setFlowType(OaWorkflowDto.FLOW_TYPE_OWNER_SETTLED);
+
+        //鍒涘缓model
+        WorkflowModelDto workflowModelDto = new WorkflowModelDto();
+        workflowModelDto.setName(oaWorkflowPo.getFlowName());
+        workflowModelDto.setKey(oaWorkflowPo.getFlowId());
+        workflowModelDto = workflowInnerServiceSMOImpl.createModel(workflowModelDto);
+
+        oaWorkflowPo.setModelId(workflowModelDto.getModelId());
+        oaWorkflowPo.setFlowKey(workflowModelDto.getKey());
+        oaWorkflowPo.setState(OaWorkflowDto.STATE_WAIT);
+        int flag = oaWorkflowInnerServiceSMOImpl.saveOaWorkflow(oaWorkflowPo);
+        if (flag < 1) {
+            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));
-        int flag = ownerSettledSettingV1InnerServiceSMOImpl.saveOwnerSettledSetting(ownerSettledSettingPo);
+        ownerSettledSettingPo.setFlowId(oaWorkflowPo.getFlowId());
+        ownerSettledSettingPo.setFlowName(oaWorkflowPo.getFlowName());
+        flag = ownerSettledSettingV1InnerServiceSMOImpl.saveOwnerSettledSetting(ownerSettledSettingPo);
 
         if (flag < 1) {
             throw new CmdException("淇濆瓨鏁版嵁澶辫触");

--
Gitblit v1.8.0