From bb2ed2e56da26a6b79575f5be9f60ca2d90774d0 Mon Sep 17 00:00:00 2001
From: 小小儁爺 <1694218219@qq.com>
Date: 星期四, 01 八月 2024 17:17:32 +0800
Subject: [PATCH] 1.工序、工价界面优化

---
 src/views/basicSettings/processList.vue |   84 ++++++++++++++++++++++++++++++++++-------
 1 files changed, 69 insertions(+), 15 deletions(-)

diff --git a/src/views/basicSettings/processList.vue b/src/views/basicSettings/processList.vue
index 1624cb1..1ae3d42 100644
--- a/src/views/basicSettings/processList.vue
+++ b/src/views/basicSettings/processList.vue
@@ -229,7 +229,7 @@
     >
       <el-divider content-position="left">鍩烘湰淇℃伅</el-divider>
 
-      <el-form ref="dialogForm" inline :rules="dialogFormRules" :model="dialogForm" label-width="80px">
+      <el-form ref="dialogForm" inline :rules="dialogFormRules" :model="dialogForm" label-width="110px">
         <el-form-item label="宸ュ簭缂栫爜" prop="stepcode">
           <el-input v-model="dialogForm.stepcode" :disabled="operation!=='add'" style="width: 200px" />
         </el-form-item>
@@ -244,6 +244,7 @@
             :popper-append-to-body="false"
             @change="steptypecodeChange"
           >
+
             <el-option
               v-for="item in steptypeArr"
               :key="item.code"
@@ -253,9 +254,8 @@
           </el-select>
         </el-form-item>
 
-        <el-form-item v-if="dialogForm.steptypecode==='Z'" label="鎵�灞炶溅闂�" required>
+        <el-form-item v-if="dialogForm.steptypecode==='Z'" label="鎵�灞炶溅闂�">
           <el-select
-
             v-model="dialogForm.Wkshop"
             style="width:200px"
             placeholder="璇烽�夋嫨"
@@ -269,6 +269,25 @@
               :key="item.torg_code"
               :label="item.torg_name"
               :value="item.torg_code"
+            />
+          </el-select>
+        </el-form-item>
+
+        <el-form-item v-if="dialogForm.steptypecode==='W'" label="寰�鏉ュ崟浣嶇被鍨�">
+          <el-select
+            v-model="dialogForm.CustomerType"
+            style="width:200px"
+            placeholder="璇烽�夋嫨"
+            multiple
+            collapse-tags
+            :popper-append-to-body="false"
+            @change="CustomerTypeChange"
+          >
+            <el-option
+              v-for="item in CustomerTypeArr"
+              :key="item.code"
+              :label="item.name"
+              :value="item.code"
             />
           </el-select>
         </el-form-item>
@@ -410,7 +429,13 @@
 import elDragDialog from '@/directive/el-drag-dialog'
 import waves from '@/directive/waves'
 import $ from 'jquery'
-import { CustomerPermissions, TorgWkshop, WkshopEqpPermissions } from '@/api/GeneralBasicData'
+import {
+  CustomerPermissions,
+  CustomerTypePermissions,
+  CustomerTypeSearchPermission,
+  TorgWkshop,
+  WkshopEqpPermissions
+} from '@/api/GeneralBasicData'
 
 export default {
   name: 'Zzjg',
@@ -427,8 +452,8 @@
         stepname: '', //
         enable: '', //
         steptypecode: '', // 宸ュ簭绫诲瀷
-        prop: 'stepcode', // 鎺掑簭瀛楁
-        order: 'asc', // 鎺掑簭瀛楁
+        prop: 'lm_date', // 鎺掑簭瀛楁
+        order: 'desc', // 鎺掑簭瀛楁
         page: 1, // 绗嚑椤�
         rows: 20 // 姣忛〉澶氬皯鏉�
       },
@@ -443,12 +468,14 @@
         { code: 'N', name: '鍋滅敤' }
       ],
       WkshopArr: [], // 杞﹂棿涓嬫媺鏁扮粍
+      CustomerTypeArr: [], // 寰�鏉ュ崟浣嶄笅鎷夋暟缁�
       dialogVisible: false,
       dialogForm: {
         id: '',
         stepcode: '', //
         stepname: '', //
         Wkshop: '', //
+        CustomerType: '', //
         steptypecode: 'Z',
         description: '', // 鎻忚堪
         enable: 'Y'// 鐘舵��
@@ -486,6 +513,7 @@
   created() {
     this.getStepSearch()
     this.getTorgWkshop()
+    this.getCustomerTypePermissions()
   },
   mounted() {
     window.addEventListener('resize', this.getHeight)
@@ -503,6 +531,11 @@
       const { data: res } = await TorgWkshop()
       this.WkshopArr = res
     },
+    // 寰�鏉ュ崟浣嶇被鍨�
+    async getCustomerTypePermissions() {
+      const { data: res } = await CustomerTypePermissions()
+      this.CustomerTypeArr = res
+    },
     // 鏌ョ湅寰�鏉ヨ祫鏂�
     async getCustomerPermissions() {
       const { data: res } = await CustomerPermissions()
@@ -515,21 +548,39 @@
     },
 
     async steptypecodeChange(val) {
-      if (val === 'W') { // 澶栧崗
-        await this.getCustomerPermissions()
-      } else { // 鑷埗
-        this.dialogForm.Wkshop = []
-        this.dialogTreeArr = []
-      }
+      // if (val === 'W') { // 澶栧崗
+      //   this.dialogForm.CustomerType = []
+      //   // await this.getCustomerPermissions()
+      // } else { // 鑷埗
+      //   this.dialogForm.Wkshop = []
+      // }
+      this.dialogForm.CustomerType = []
+      this.dialogForm.Wkshop = []
+      this.dialogTreeArr = []
     },
 
     // 杞﹂棿鍊兼敼鍙樻椂瑙﹀彂
     async WkshopChange(val) {
       if (val.length === 0) {
+        this.dialogTreeArr = []
         return
       }
-
       const { data: res } = await WkshopEqpPermissions({ wkshopcode: val.join(',') })
+      this.dialogTreeArr = [
+        { code: '',
+          name: '鍏ㄩ儴',
+          children: res
+        }
+      ]
+    },
+
+    // 寰�鏉ュ崟浣嶇被鍨嬪�兼敼鍙樻椂
+    async CustomerTypeChange(val) {
+      if (val.length === 0) {
+        this.dialogTreeArr = []
+        return
+      }
+      const { data: res } = await CustomerTypeSearchPermission({ customertypecode: val.join(',') })
       this.dialogTreeArr = [
         { code: '',
           name: '鍏ㄩ儴',
@@ -585,14 +636,17 @@
         })
         await this.WkshopChange(this.dialogForm.Wkshop)
       } else if (row.flwtype === 'W') {
-        await this.steptypecodeChange(row.flwtype)
+        this.dialogForm.CustomerType = []
+        // await this.steptypecodeChange(row.flwtype)
         res.filter(i => i.type === 'W' && i.flag === 'Y').forEach(i => {
+          this.dialogForm.CustomerType.push(i.code)
           i.children.forEach(j => {
             if (j.flag === 'Y') {
               this.dialogTreeSelectedArr.push(j.code)
             }
           })
         })
+        await this.CustomerTypeChange(this.dialogForm.CustomerType)
       }
 
       this.$nextTick(() => {
@@ -636,7 +690,7 @@
       this.dialogForm.steptypecode = 'Z'
       this.dialogTreeArr = []
       this.dialogForm.Wkshop = []
-
+      this.dialogForm.CustomerType = []
       this.dialogTreeSelectedArr = []
       this.$refs.dialogForm.clearValidate()
     },

--
Gitblit v1.9.3