Переглянути джерело

流程回退数据处理/流程节点数据保存参数修改

lph 1 рік тому
батько
коміт
ad15292965

+ 126 - 108
zkqy-ui/src/views/bussiness/dialogCompments/test-component/CaiGou/CG02.vue

@@ -1,126 +1,144 @@
 <template>
-    <div>
-        <el-form ref="form" :model="form" :rules="rules" label-width="80px">
-            <el-form-item label="原材料" prop="ycl">
-              <el-select
-                v-model="form.ycl"
-                placeholder="请选择原材料"
-                clearable
-                filterable
-                >
-                <el-option
-                  v-for="item in formData.resultMap.goodsList"
-                  :key="item.goodsno"
-                  :label="item.goodsname"
-                  :value="item.goodsno"
-                >
-                </el-option>
-              </el-select>
-            </el-form-item>
-            <el-form-item label="重量" prop="zl">
-                <el-input v-model="form.zl" placeholder="请输入重量" />
-            </el-form-item>
-        </el-form>
-        <div slot="footer" class="dialog-footer">
-            <el-button type="primary" @click="submitHanfler">确 定</el-button>
-        </div>
+  <div>
+    <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+      <el-form-item label="原材料" prop="ycl">
+        <el-select
+          v-model="form.ycl"
+          placeholder="请选择原材料"
+          clearable
+          filterable
+        >
+          <el-option
+            v-for="item in formData.resultMap.goodsList"
+            :key="item.goodsno"
+            :label="item.goodsname"
+            :value="item.goodsno"
+          >
+          </el-option>
+        </el-select>
+      </el-form-item>
+      <el-form-item label="重量" prop="zl">
+        <el-input v-model="form.zl" placeholder="请输入重量" />
+      </el-form-item>
+    </el-form>
+    <div slot="footer" class="dialog-footer">
+      <el-button type="primary" @click="submitHanfler">确 定</el-button>
     </div>
+  </div>
 </template>
 
 <script>
-import { submitNodeForm } from "@/api/bpmprocess/runDialogApi/index"
+import { submitNodeForm } from "@/api/bpmprocess/runDialogApi/index";
 export default {
-    name: 'CG02',
-    props: ["formData", "row"],
-    data() {
-        return {
-            // 表单参数
-            form: {
-                zl:'',
-                ycl: '',
-            },
-            // 表单校验
-            rules: {
-                ycl: [{ required: true, message: "请选择原材料", trigger: "change" }],
-                zl:{ required: true, message: "请输入重量", trigger: "blur" },
-            },
-        };
-    },
-    watch: {
-        myFormData: {
-            handler(nval) {
-                this.realFormData = nval;
-            },
-            deep: true,
-            immediate: true,
-        },
+  name: "CG02",
+  props: ["formData", "row"],
+  data() {
+    return {
+      // 表单参数
+      form: {
+        zl: "",
+        ycl: "",
+      },
+      // 表单校验
+      rules: {
+        ycl: [{ required: true, message: "请选择原材料", trigger: "change" }],
+        zl: { required: true, message: "请输入重量", trigger: "blur" },
+      },
+    };
+  },
+  watch: {
+    myFormData: {
+      handler(nval) {
+        this.realFormData = nval;
+      },
+      deep: true,
+      immediate: true,
     },
+  },
 
-    mounted() {
-        
-    },
+  mounted() {},
 
-    methods: {
-        async submitHanfler() {
-        let res = await this.$refs.form?.validate();
-        if (res) {
-            let payLoad = {};
-            let { ycl, zl } = this.form;
-            if (this.isEdit) {
-            payLoad.updateCommonEntityList = [
+  methods: {
+    async submitHanfler() {
+      let res = await this.$refs.form?.validate();
+      if (res) {
+        let payLoad = {};
+        let { ycl, zl } = this.form;
+        if (this.isEdit) {
+          payLoad.updateCommonEntityList = [
+            {
+              basicMap: {
+                tableName: "kucun",
+              },
+              addListMap: [
                 {
-                    basicMap: {
-                        tableName: "kucun",
-                    },
-                    addListMap: [
-                        {
-                        ycl,
-                        zl,
-                        taskKey: this.row.benTaskProcessKey,
-                        taskNodeKey: this.row.benTaskNodeKey,
-                        },
-                    ],
+                  ycl,
+                  zl,
+                  taskKey: this.row.benTaskProcessKey,
+                  taskNodeKey: this.row.benTaskNodeKey,
                 },
-            ];
-            } else {
-            payLoad.insertCommonEntityList = [
+              ],
+            },
+          ];
+        } else {
+          payLoad.insertCommonEntityList = [
+            {
+              basicMap: {
+                tableName: "kucun",
+              },
+              addListMap: [
                 {
-                basicMap: {
-                    tableName: "kucun",
+                  ycl,
+                  zl,
+                  taskKey: this.row.benTaskProcessKey,
+                  taskNodeKey: this.row.benTaskNodeKey,
                 },
-                addListMap: [
-                    {
-                    ycl,
-                    zl,
-                    taskKey: this.row.benTaskProcessKey,
-                    taskNodeKey: this.row.benTaskNodeKey,
-                    },
-                ],
-                },
-            ];
-            }
-            submitNodeForm(payLoad).then((response) => {
-            if (response.code == 200) {
-                this.$modal.msgSuccess("保存成功");
-            } else {
-                this.$modal.error("保存失败,请稍后再试");
-            }
-            });
+              ],
+            },
+          ];
         }
+        submitNodeForm(payLoad).then((response) => {
+          if (response.code == 200) {
+            this.$modal.msgSuccess("保存成功");
+          } else {
+            this.$modal.error("保存失败,请稍后再试");
+          }
+        });
+      }
     },
-},
-    
-    computed: {
-        myFormData() {
-            return this.formData;
-            },
-            isEdit() {
-            return this.formData.resultMap?.id ? true : false;
-            }, 
-    }
+    // 获取表单数据
+    async getFormData() {
+      let formData = {
+        flag: false,
+        msg: "",
+      };
+      try {
+        let valid = await this.$refs.form.validate();
+        if (valid) {
+          formData.flag = true;
+          formData.data = this.form;
+          return formData;
+        } else {
+          formData.msg = "表单校验异常,请规范填写表单数据";
+          return formData;
+        }
+      } catch (error) {
+        // console.log(error);
+        formData.msg = "表单校验异常,请规范填写表单数据";
+        return formData;
+      }
+    },
+  },
+
+  computed: {
+    myFormData() {
+      return this.formData;
+    },
+    isEdit() {
+      return this.formData.resultMap?.id ? true : false;
+    },
+  },
 };
 </script>
 
-<style lang="scss" scoped>
-
-</style>
+<style lang="scss" scoped></style>

+ 5 - 4
zkqy-ui/src/views/bussiness/processMange.vue

@@ -184,7 +184,7 @@
             :subTableName="subTableName"
             @addList="() => {}"
           ></DialogTemplate> -->
-          ></DialogTemplate> -->
+          <!-- ></DialogTemplate> -->
           <component
             :is="myForm"
             :formData="formData"
@@ -223,7 +223,7 @@ import DialogTemplate from "@/views/dialogTemplate/components/index.vue";
 import GY01 from "./dialogCompments/GongYi/GY01.vue";
 import GY03 from "./dialogCompments/GongYi/GY03.vue";
 import CG1 from "./dialogCompments/test-component/CaiGou/CG1.vue";
-import CG02 from "./dialogCompments/test-component/CaiGou/CG02.vue";
+import CG2 from "./dialogCompments/test-component/CaiGou/CG02.vue";
 import KC1 from "./dialogCompments/test-component/KuCun/KC1.vue";
 import KC02 from "./dialogCompments/test-component/KuCun/KC02.vue";
 import GY06 from "./dialogCompments/GongYi/GY06.vue";
@@ -231,7 +231,7 @@ import GY06 from "./dialogCompments/GongYi/GY06.vue";
 export default {
   name: "processMange",
   props: [],
-  components: { GY01, DialogTemplate, CG1,CG02, KC1, GY06, GY03, KC02, GY02 },
+  components: { GY01, DialogTemplate, CG1, CG2, KC1, GY06, GY03, KC02, GY02 },
   dicts: ["bpm_type", "task_process_state"],
   data() {
     return {
@@ -372,7 +372,8 @@ export default {
       this.resetDialogForm();
       console.log(row);
       this.nodeTitle = row.benTaskNodeName;
-      let preFix = row.benTaskNodeName.split("-")[0];
+      // let preFix = row.benTaskNodeName.split("-")[0];
+      let preFix = row.benTaskNodeFormKey;
       let {
         benTaskNodeFormKey,
         benTaskNodeFormType,

+ 26 - 7
zkqy-ui/src/views/system/bpmnPro/components/bo-utils/getNodeMsg.js

@@ -1,5 +1,4 @@
-import { getProcessEngine } from "@packages/bpmn-utils/BpmnDesignerUtils";
-import { getModeler } from "@packages/bpmn-utils/BpmnDesignerUtils";
+import { getProcessEngine, getModeler } from "@packages/bpmn-utils/BpmnDesignerUtils";
 import { v4 as uuidv4 } from "uuid";
 
 function getSecondStr(str) {
@@ -38,7 +37,7 @@ export function getNodeMsg(xmlObj) {
   let prefix = getProcessEngine();
   let { attributes, childNodes } = xmlObj
     .getElementsByTagName("bpmn:process")[0];
-  let bpmProcessConfigurationList = [], bpmNodeHandleUserList = [], bpmNodeScriptRelevanceList = [], bpmTableNameList = [], attributeArray = ['nodeKey', 'nodeFormKey', 'nodeFormType', 'nodeProcessKey', 'nodeRolePremission', 'spare1', 'spare2', 'spare3', 'createBy', 'updateBy', 'remark', 'nodeExecuteType'];
+  let bpmProcessConfigurationList = [], bpmNodeHandleUserList = [], bpmNodeScriptRelevanceList = [], bpmTableNameList = [], attributeArray = ['nodeKey', 'nodeFormKey', 'nodeProcessKey', 'nodeRolePremission', 'spare1', 'spare2', 'spare3', 'createBy', 'updateBy', 'remark', 'nodeExecuteType'];
   childNodes.forEach((node) => {
     // let uuid = uuidv4();
 
@@ -74,6 +73,10 @@ export function getNodeMsg(xmlObj) {
     });
     nodeObj.nodeKey = node.id;
     nodeObj.nodeName = node.getAttribute('name');
+    if (nodeObj.nodeName.includes('-')) {
+      nodeObj.nodeFormType = 'designForm';
+      nodeObj.nodeFormKey = nodeObj.nodeName.split('-')[0]
+    }
     bpmNodeHandleUser.length && (nodeObj.nodeRolePermission = node.getAttribute(`${prefix}:virtuallyRole`));
     let asyncBefore = node.getAttribute(`${prefix}:asyncBefore`)
     if (asyncBefore == 'true') {
@@ -98,16 +101,30 @@ function getNodeException(node, nodeObj) {
   let prefix = getProcessEngine();
   let res = []
   let { children } = node;
+  let nodeName = node.getAttribute('name'), nodeFormType = '', formKey = '';
+
+  if (nodeName.includes('-')) {
+    nodeFormType = 'designForm';
+    formKey = nodeName.split('-')[0]
+  }
   if (node.getAttribute(`${prefix}:NormalScriptKey`)) {
+
     res.push({
       scriptKey: node.getAttribute(`${prefix}:NormalScriptKey`),
-      scriptTriggerType: node.getAttribute(`${prefix}:NormalScriptTriggerType`)
+      scriptTriggerType: node.getAttribute(`${prefix}:NormalScriptTriggerType`),
+      // 统一格式修改
+      scriptNodeName: nodeName,
+      scriptNodeFormType: nodeFormType,
+      formKey: formKey,
     })
   }
   if (node.getAttribute(`${prefix}:asyncScriptKey`)) {
     res.push({
       scriptKey: node.getAttribute(`${prefix}:asyncScriptKey`),
-      scriptTriggerType: '2'
+      scriptTriggerType: '2',
+      scriptNodeName: nodeName,
+      scriptNodeFormType: nodeFormType,
+      formKey: formKey,
     })
   }
   if (children.length) {
@@ -128,9 +145,11 @@ function getNodeException(node, nodeObj) {
             scriptKey: item.attributes.scriptKey?.nodeValue,
             // scriptTriggerType: item.attributes?.scriptTriggerType?.nodeValue || 0,
             scriptTriggerType: 0,
-            scriptNodeFormType: item.getAttribute('formType'),
+            // scriptNodeFormType: item.getAttribute('formType'),
+            scriptNodeFormType: 'designForm',
             scriptNodeName: formName,
-            formKey: item.getAttribute('formId')
+            // formKey: item.getAttribute('formId')
+            formKey: item.getAttribute('compName')
           })
         }
       })