From a36a33fe9b9af48b3f03b7a6a19e622c8f3d376c Mon Sep 17 00:00:00 2001
From: ludc
Date: 星期四, 27 六月 2024 17:59:56 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 Source/plt-web/plt-web-ui/src/components/actions/base/startWorkFlow.vue |   66 ++++++++++++++++++++++-----------
 1 files changed, 44 insertions(+), 22 deletions(-)

diff --git a/Source/plt-web/plt-web-ui/src/components/actions/base/startWorkFlow.vue b/Source/plt-web/plt-web-ui/src/components/actions/base/startWorkFlow.vue
index 65e9ee6..ac10977 100644
--- a/Source/plt-web/plt-web-ui/src/components/actions/base/startWorkFlow.vue
+++ b/Source/plt-web/plt-web-ui/src/components/actions/base/startWorkFlow.vue
@@ -1,14 +1,14 @@
 <template>
   <el-dialog v-dialogDrag
-             append-to-body="true"
              :close-on-click-modal="false"
              :destroy-on-close="true"
              :visible.sync="visible"
              :width="width"
+             append-to-body="true"
              class="avue-dialog"
+             style="margin-top: -10% !important;"
              title="鍚姩娴佺▼"
              top="0"
-             style="margin-top: -10% !important;"
              @close="dialogClose">
 
     <el-form :model="saveParam" :rules="rules" class="demo-form-inline" label-position="left" label-width="auto">
@@ -26,15 +26,15 @@
     </el-form>
 
     <el-divider></el-divider>
-<!--    <div class="btns-icon">-->
-<!--      <el-button circle icon="el-icon-star-off" @click="handleCollect"></el-button>-->
-<!--    </div>-->
+    <!--    <div class="btns-icon">-->
+    <!--      <el-button circle icon="el-icon-star-off" @click="handleCollect"></el-button>-->
+    <!--    </div>-->
     <el-form :model="collectParam" class="demo-form-inline" label-position="left" label-width="auto">
-      <el-form-item v-for="(item, index) in initFrom" :key="index" :label="item.taskName">
-        <el-select v-model="collectParam.flowTaskUsers[index]['userId']" :placeholder="item.taskName" filterable
-                   style="width: 100%;" @change="handleSelect($event, index)">
-          <el-option v-for="(key, keyi) in typeName" :key="keyi" :label="key.userNames"
-                     :value="key.userId"></el-option>
+      <el-form-item v-for="(item, index) in initFrom" :key="index" :label="`鑺傜偣${index + 1}`">
+        <el-select style="width: 100%;" filterable v-model="collectParam.flowTaskUsers[index]['userId']"
+                   :placeholder="item.value" @change="handleSelect($event, index)">
+          <el-option :label="key.name" :value="key.name" v-for="(key, keyi) in item.processNodes"
+                     :key="keyi"></el-option>
         </el-select>
       </el-form-item>
     </el-form>
@@ -48,7 +48,8 @@
 
 <script>
 import {validatenull} from "@/util/validate";
-import {getTemplateByType} from "@/api/base/startWork/index"
+import {getTemplateByType, getAllProcessNode} from "@/api/base/startWork/index"
+
 export default {
   name: "startWorkFlow",
   props: {
@@ -76,8 +77,8 @@
       typeName: [], // 娴佺▼鑺傜偣option寰幆閫夐」
       rules: {
         processName: [
-          { required: true, message: '娴佺▼鍚嶇О涓嶈兘涓虹┖', trigger: 'blur' },
-          { min: 3, max: 50, message: '闀垮害鍦� 3 鍒� 50 涓瓧绗�', trigger: 'blur' }
+          {required: true, message: '娴佺▼鍚嶇О涓嶈兘涓虹┖', trigger: 'blur'},
+          {min: 3, max: 50, message: '闀垮害鍦� 3 鍒� 50 涓瓧绗�', trigger: 'blur'}
         ]
       }
     }
@@ -92,7 +93,7 @@
     },
     parameter: {
       handler(newval, oldval) {
-        this.saveParam = Object.assign({processName: '', processDesc: '' , }, newval);
+        this.saveParam = Object.assign({processName: '', processDesc: '',}, newval);
       },
       deep: true,
       immediate: true
@@ -127,15 +128,36 @@
   },
   methods: {
     // 鑾峰彇娴佺▼妯℃澘淇℃伅
-    getWorkByType(){
+    getWorkByType() {
       let params = {
-        type:'鏂囨。瀹$娴佺▼',
-        filterTemplate:""
+        type: '鏂囨。瀹$娴佺▼',
+        filterTemplate: ""
       }
       getTemplateByType(params).then(res => {
-        console.log(res)
+        const data = res.data.data;
+        data.forEach(item => {
+          this.getProcessNode(item);
+        })
+        this.initFrom = data;
+      }).catch(error => {
+        console.log(error);
       })
     },
+
+    // 璇锋眰娴佺▼鑺傜偣
+    getProcessNode(item) {
+      let params = {
+        processOid: item.attributes.oid,
+        maxSecret: -1
+      }
+      getAllProcessNode(params).then(res => {
+        const nodes = res.data.data;
+        item.processNodes = nodes;
+      }).catch(error => {
+        console.log(error);
+      })
+    },
+
     // 鍏抽棴寮圭獥
     dialogClose() {
       this.visible = false;
@@ -154,11 +176,11 @@
     },
 
     handleConfirm() {
-      console.log(this.paramVOS)
+      console.log(this.initFrom);
     },
 
-  //  娴佺▼鍚嶇О鍒濆鍖栫粦瀹�
-    modelNameChange(){
+    //  娴佺▼鍚嶇О鍒濆鍖栫粦瀹�
+    modelNameChange() {
       var userInfo = JSON.parse(localStorage.getItem('saber-userInfo'));
 
       if (this.paramVOS && this.paramVOS.modelName) {
@@ -173,6 +195,6 @@
 }
 </script>
 
-<style scoped lang="scss">
+<style lang="scss" scoped>
 
 </style>

--
Gitblit v1.9.3