From a7f37d5a76f80df4bad37a58ad95ab41ba0be22e Mon Sep 17 00:00:00 2001
From: zuozhengqing <a13193816592@163.com>
Date: 星期四, 02 十一月 2023 09:40:53 +0800
Subject: [PATCH] 修改采购管理,供应商列表和产品名称列表展示

---
 src/store/modules/getSupplierName.js                                  |   25 ++++++++
 src/store/index.js                                                    |    2 
 src/views/purchaseManage/purchase/components/AddPurchase.vue          |   10 ++-
 src/views/purchaseManage/purchase/index.vue                           |   20 ++++++
 src/views/other/commonDialog/SelectCommonDialog.vue                   |   20 +++++-
 src/views/purchaseManage/purchase/components/SelectSupplierDialog.vue |   46 +++++++++++----
 6 files changed, 104 insertions(+), 19 deletions(-)

diff --git a/src/store/index.js b/src/store/index.js
index ceffa8e..3f464bf 100644
--- a/src/store/index.js
+++ b/src/store/index.js
@@ -1,5 +1,6 @@
 import Vue from 'vue'
 import Vuex from 'vuex'
+import getSupplierName from "./modules/getSupplierName"
 
 Vue.use(Vuex)
 
@@ -13,5 +14,6 @@
   actions: {
   },
   modules: {
+    getSupplierName
   }
 })
diff --git a/src/store/modules/getSupplierName.js b/src/store/modules/getSupplierName.js
new file mode 100644
index 0000000..3a9a5c5
--- /dev/null
+++ b/src/store/modules/getSupplierName.js
@@ -0,0 +1,25 @@
+import { getSupplierList } from "@/api/supplierManage/supplier"
+import { Message } from "element-ui"
+
+export default{
+  state:{
+    supplierList:[],  //渚涘簲鍟嗗垪琛�
+  },
+  mutations:{
+    supplierNameList(state, payload) {
+      state.supplierList = payload
+    },
+  },
+  actions:{
+    getSupplier(context){
+      getSupplierList({page:1,pageSize:50}).then((res) => {
+        if (res.data.code == 200) {
+          context.commit("supplierNameList", res.data.data.list)
+        } else {
+          Message.error(res.msg)
+        }
+      })
+    }
+  }
+
+}
\ No newline at end of file
diff --git a/src/views/other/commonDialog/SelectCommonDialog.vue b/src/views/other/commonDialog/SelectCommonDialog.vue
index 2e31f18..2b2516f 100644
--- a/src/views/other/commonDialog/SelectCommonDialog.vue
+++ b/src/views/other/commonDialog/SelectCommonDialog.vue
@@ -28,7 +28,13 @@
             <el-button type="primary" size="mini" disabled>蹇�熷垱寤�</el-button> -->
           </div>
         </div>
-        <TableCommonView ref="tableListRef" :table-list="tableList" :select-box="false" @selCommonClick="selNameClick">
+        <TableCommonView 
+          ref="tableListRef"
+          :table-list="tableList"
+          :select-box="false" 
+          @selCommonClick="selNameClick"
+          @selTableCol="selTableCol"
+        >
         </TableCommonView>
         <div slot="footer" class="dialog-footer">
           <!-- <div class="remark">璇存槑锛氭敮鎸佸瀛楁妯$硦鏌ヨ锛屼粎鏄剧ず绗﹀悎鏉′欢鐨勫墠5鏉℃暟鎹�</div> -->
@@ -127,9 +133,17 @@
       }
     },
     selTableCol(val) {
-      this.showcol = val
-      this.tableList.tableColumn = this.setColumnVisible(val)
+      this.showcol = val;
+      this.tableList.tableColumn = this.setColumnVisible(val);
     },
+    // setColumnVisible(showCol){
+    //   return  this.tableColumn.map(ele=>{
+    //     return {
+    //       ...ele,
+    //       isShowColumn:showCol.includes(ele.label)
+    //     }
+    //   })
+    // },
     // 璇锋眰鏁版嵁
     async getData() {
       this.loading = true
diff --git a/src/views/purchaseManage/purchase/components/AddPurchase.vue b/src/views/purchaseManage/purchase/components/AddPurchase.vue
index 260540a..5dcef72 100644
--- a/src/views/purchaseManage/purchase/components/AddPurchase.vue
+++ b/src/views/purchaseManage/purchase/components/AddPurchase.vue
@@ -59,7 +59,7 @@
                       v-model="editConfig.infomation.supplierName"
                       :fetch-suggestions="
                         (queryString, callback) => {
-                          querySearchAsync(queryString, callback, 'client');
+                          querySearchAsync(queryString, callback, 'supplier');
                         }
                       "
                       value-key="name"
@@ -358,8 +358,12 @@
   },
   created() {
     this.handleGetBomKindDictList();
+    this.$store.dispatch("getSupplier")
   },
   computed: {
+    supplierList() {
+      return this.$store.state.getSupplierName.supplierList
+    }
   },
   watch:{
     'editCommonConfig.visible':{
@@ -557,8 +561,8 @@
     // 閫夋嫨瀹㈡埛鐩稿叧鏂规硶
     querySearchAsync(queryString, cb, value) {
       var restaurants = [];
-      if (value === "client") {
-        restaurants = this.clientList;
+      if (value === "supplier") {
+        restaurants = this.supplierList;
       } 
       var results = queryString
         ? restaurants.filter(this.createStateFilter(queryString))
diff --git a/src/views/purchaseManage/purchase/components/SelectSupplierDialog.vue b/src/views/purchaseManage/purchase/components/SelectSupplierDialog.vue
index a5dd842..0c11b8c 100644
--- a/src/views/purchaseManage/purchase/components/SelectSupplierDialog.vue
+++ b/src/views/purchaseManage/purchase/components/SelectSupplierDialog.vue
@@ -27,6 +27,7 @@
           :table-list="tableList"
           :select-box="false"
           @selCommonClick="selNameClick"
+          @selTableCol="selTableCol"
         >
         </TableCommonView>
         <div slot="footer" class="dialog-footer">
@@ -66,34 +67,54 @@
       loading: false,
       searchOptions: [],
       tableList: {},
-      search_map: {}
+      search_map: {},
+      tableColumn: [
+        { label: "渚涘簲鍟嗙紪鍙�", prop: "number", min: 190, isCommonClick: true },
+        { label: "渚涘簲鍟嗗悕绉�", prop: "name", min: 130 },
+        { label: "渚涘簲鍟嗙被鍨�", prop: "supplierType", min: 130 },
+        { label: "鎵�灞炶涓�", prop: "industry", min: 130 },
+        { label: "鑱旂郴浜�", prop: "contact", min: 130 },
+        { label: "鑱旂郴鐢佃瘽", prop: "phone", min: 130 },
+        { label: "鐘舵��", prop: "status_name", min: 130 },
+        { label: "鍒涘缓鏃堕棿", prop: "member_name", min: 130 }
+      ],
+      showCol: ['渚涘簲鍟嗙紪鍙�', '渚涘簲鍟嗗悕绉�', '渚涘簲鍟嗙被鍨�', '鎵�灞炶涓�', '鑱旂郴浜�', '鑱旂郴鐢佃瘽','鐘舵��','鍒涘缓鏃堕棿']
+
     }
   },
   created() {
     this.setTable()
     this.getData()
   },
+  mounted(){
+  },
   methods: {
     setTable() {
       this.tableList = {
         tableInfomation: [],
-        tableColumn: [
-         { label: "渚涘簲鍟嗙紪鍙�", prop: "number", min: 190, isCommonClick: true },
-          { label: "渚涘簲鍟嗗悕绉�", prop: "name", min: 130 },
-          { label: "渚涘簲鍟嗙被鍨�", prop: "supplierType", min: 130 },
-          { label: "鎵�灞炶涓�", prop: "industry", min: 130 },
-          { label: "鑱旂郴浜�", prop: "contact", min: 130 },
-          { label: "鑱旂郴鐢佃瘽", prop: "phone", min: 130 },
-          { label: "鐘舵��", prop: "status_name", min: 130 },
-          { label: "鍒涘缓鏃堕棿", prop: "member_name", min: 130 }
-        ]
+        tableColumn:this.setColumnVisible(this.showCol),
+        showcol: this.showCol,
+        allcol:[]
       }
+      this.tableList.allcol = this.tableList.tableColumn.filter(ele=>!ele.default).map(ele=>ele.label);
       this.searchOptions = []
       for (let i = 0; i < this.tableList.tableColumn.length; i++) {
         const label = this.tableList.tableColumn[i].label
         const value = this.tableList.tableColumn[i].prop
         this.searchOptions.push({ value: value, label: label })
       }
+    },
+    selTableCol(val) {
+      this.showcol = val;
+      this.tableList.tableColumn = this.setColumnVisible(val);
+    },
+    setColumnVisible(showCol){
+      return  this.tableColumn.map(ele=>{
+        return {
+          ...ele,
+          isShowColumn:showCol.includes(ele.label)
+        }
+      })
     },
     handleClose() {
       this.editConfig.editVisible = false
@@ -115,7 +136,8 @@
                   status_name: item.status === 0 ? "鏈惎鐢�" : "鍚敤"
                 }
               })
-              this.tableList.tableInfomation = list.slice(0, 5) || []
+              // this.tableList.tableInfomation = list.slice(0, 5) || []
+              this.tableList.tableInfomation = list
             } else {
               this.tableList.tableInfomation = []
             }
diff --git a/src/views/purchaseManage/purchase/index.vue b/src/views/purchaseManage/purchase/index.vue
index ae0314a..4a12b42 100644
--- a/src/views/purchaseManage/purchase/index.vue
+++ b/src/views/purchaseManage/purchase/index.vue
@@ -63,6 +63,7 @@
 import DetailSupplier from "@/views/purchaseManage/purchase/DetailSupplier"
 import AddPurchase from "@/views/purchaseManage/purchase/components/AddPurchase"
 import { getDataByType } from "@/api/data"
+import { getSupplierList } from "@/api/supplierManage/supplier"
 export default {
   name: "SupplierManage",
   props: {},
@@ -83,7 +84,9 @@
       editConfig: {
         visible: false,
         title: "鍒涘缓",
-        infomation: {}
+        infomation: {
+          supplierList:[]
+        }
       },
       purchaseStatusList: getDataByType("purchaseStatus"),
       tableColumn: [
@@ -102,6 +105,7 @@
   created() {
     this.setTable()
     this.getData()
+    this.getSupplierData()
   },
   methods: {
     getpurchaseStatus(val) {
@@ -155,6 +159,20 @@
           console.log(err)
         })
     },
+    // 鑾峰彇渚涘簲鍟嗘暟鎹�
+    async getSupplierData() {
+      await getSupplierList({
+        // [val]: content,
+        page:1,
+        pageSize: 10
+      })
+      .then((res) => {
+        if (res.data.code == 200) {
+          this.editConfig.infomation.supplierList=res.data.data.list
+          
+        }
+      })
+    },
     // 鎼滅储
     onFilterSearch(searchText){
       this.search = searchText ?? ''

--
Gitblit v1.8.0