From 38b5988fc107d74b4f3183734daa41dd08239b1a Mon Sep 17 00:00:00 2001
From: yangfeng <wanwan926_4@163.com>
Date: 星期三, 30 八月 2023 17:56:03 +0800
Subject: [PATCH] 供应商附件删除和创建时间及产品供货时长等字段联调

---
 src/views/purchaseManage/purchase/index.vue |  159 +++++++++++++++++++++++++++++++++++++++-------------
 1 files changed, 119 insertions(+), 40 deletions(-)

diff --git a/src/views/purchaseManage/purchase/index.vue b/src/views/purchaseManage/purchase/index.vue
index 52a58c6..7f4dfa0 100644
--- a/src/views/purchaseManage/purchase/index.vue
+++ b/src/views/purchaseManage/purchase/index.vue
@@ -1,6 +1,6 @@
 <template>
   <div class="rightContent">
-    <div class="content-box">
+    <div class="content-box" v-loading="tableLoading">
       <div class="supplier-search">
         <SearchCommonView
           ref="searchCommonView"
@@ -21,9 +21,14 @@
           @selCommonClick="selCommonClick"
         >
           <template slot="tableButton">
+            <el-table-column label="鐘舵��" width="120">
+              <template slot-scope="scope">
+               {{ getpurchaseStatus(scope.row.status) }}
+              </template>
+            </el-table-column>
             <el-table-column label="鎿嶄綔" width="120" fixed="right">
               <template slot-scope="scope">
-                <el-button type="text"  size="small" @click="editClick"  style="margin-right: 5px"
+                <el-button type="text"  size="small" @click="editClick(scope.row)"  style="margin-right: 5px"
                   >缂栬緫</el-button
                 >
                 <el-button  @click="submitClick(scope.row)" type="text" size="small">鎻愪氦</el-button>
@@ -40,30 +45,44 @@
     <!-- 鏂板缓/缂栬緫閿�鍞嚎绱� -->
     <!-- <AddSalesLeadDialog v-if="editSalesLeadConfig.visible" :edit-rightContent-config="editSalesLeadConfig" /> -->
     <!-- 璇︽儏 -->
-    <DetailSupplier v-if="commonDetail.visible" :common-detail="commonDetail" @submitClick="submitClick" />
+    <DetailSupplier v-if="commonDetail.visible" :common-detail="commonDetail"  />
+    <!-- 鏂板缓/缂栬緫 -->
+    <AddPurchase v-if="editConfig.visible" :edit-common-config="editConfig" />
   </div>
 </template>
 
 <script>
-import pageMixin from "@/components/makepager/pager/mixin/pageMixin"
-import { getSalesLeadsList, getDeleteSalesLeads } from "@/api/client/salesLead"
-import DetailSupplier from "@/views/purchaseManage/purchase/DetailSupplier"
 
+import pageMixin from "@/components/makepager/pager/mixin/pageMixin"
+import {
+  getPurchaseList,getPurchaseInfo,submitPurchase, 
+} from "@/api/purchaseManage/purchase";
+import DetailSupplier from "@/views/purchaseManage/purchase/DetailSupplier"
+import AddPurchase from "@/views/purchaseManage/purchase/components/AddPurchase"
+import { getDataByType } from "@/api/data";
 export default {
   name: "SupplierManage",
   props: {},
-  components: { DetailSupplier },
+  components: { DetailSupplier,AddPurchase },
   mixins: [pageMixin],
   computed: {},
   data() {
     return {
+      tableLoading:false,
       tableList: {}, // 鍒楄〃
       selValueList: [],
       commonDetail: {
         visible: false,
         infomation: {}
       },
-      search_map: {}
+      search:'',
+      editRow:{},
+      editConfig: {
+        visible: false,
+        title: "鍒涘缓",
+        infomation: {}
+      },
+      purchaseStatusList:getDataByType('purchaseStatus'),
     }
   },
   created() {
@@ -71,42 +90,46 @@
     this.getData()
   },
   methods: {
+    getpurchaseStatus(val) {
+      if (val) {
+        for (let i in this.purchaseStatusList) {
+          if (this.purchaseStatusList[i].id == val) {
+            return this.purchaseStatusList[i].name;
+          }
+        }
+      } else {
+        return "--";
+      }
+    },
     setTable() {
       this.tableList = {
         tableInfomation: [],
         selectIndex: true,
         tableColumn: [
           { label: "閲囪喘鍗曞彿", prop: "number", min: 150, isCommonClick: true },
-          { label: "閲囪喘鍗曞悕绉�", prop: "name", min: 130,},
-          { label: "鍗曟嵁绫诲瀷", prop: "contact_name", min: 130 },
-          { label: "渚涘簲鍟嗗悕绉�", prop: "contact_phone", min: 130 },
-          { label: "閲囪喘鏁伴噺", prop: "sales_resources", min: 130 },
-          { label: "鏀惰揣浠撳簱", prop: "province", min: 130 },
-          { label: "缁忓姙浜�", prop: "city", min: 130 },
-          { label: "鍒跺崟浜�", prop: "member_name", min: 130 },
-          { label: "鐘舵��", prop: "member_name", min: 130 },
+          { label: "閲囪喘鍗曞悕绉�", prop: "name", min: 130, isCommonClick: true},
+          { label: "鍗曟嵁绫诲瀷", prop: "orderType", min: 130 },
+          { label: "渚涘簲鍟嗗悕绉�", prop: "contact", min: 130 },
+          { label: "閲囪喘鏁伴噺", prop: "quantity", min: 130 },
+          { label: "鏀惰揣浠撳簱", prop: "warehouse", min: 130 },
+          { label: "缁忓姙浜�", prop: "handledBy", min: 130 },
+          { label: "鍒跺崟浜�", prop: "creator", min: 130 },
         ]
       }
     },
     // 璇锋眰鏁版嵁
     async getData() {
-      await getSalesLeadsList({
-        search_map: this.search_map,
+      await getPurchaseList({
+        keyword: this.search,
         page: this.pagerOptions.currPage,
         pageSize: this.pagerOptions.pageSize
       })
         .then((res) => {
-          const list = res.data.list.map((item) => {
-            return {
-              ...item,
-              province: item.Province.name,
-              city: item.City.name,
-              sales_resources: item.sales_sources.name,
-              member_name: item.member.username
-            }
-          })
-          this.tableList.tableInfomation = list || []
-          this.pagerOptions.totalCount = res.data.count
+          if (res.data.code === 200) {
+            const list = res.data.data.list
+            this.tableList.tableInfomation = list || []
+            this.pagerOptions.totalCount = res.data.data.total
+          }
         })
         .catch((err) => {
           console.log(err)
@@ -115,23 +138,65 @@
     // 鎼滅储
     searchClick(val, content) {
       console.log(val, content)
-      this.search_map = {
-        [val.value]: content
-      }
+      this.search =  content
       this.getData()
     },
     resetClick() {
-      this.search_map = {}
+      this.search = ''
       this.getData()
     },
     // 鏂板缓
-    addBtnClick() {},
+    addBtnClick() {
+      // this.editRow = {};
+      // this.$refs.add.islook = true;
+      this.editConfig.visible = true
+      this.editConfig.title = "鍒涘缓"
+      this.editConfig.infomation = {
+        productList:[],
+        purchaseTypeId:'',
+        supplierId:'',
+        supplierName:'',
+        orderSource:'鎵嬪姩鍒涘缓',
+        name:'',
+        contact:'',
+        phone:'',
+          signingDate:'',
+          deliveryDate:'',
+          remark:'',
+          wholeDiscountType:null,
+          wholeDiscount:0,
+          priceAdjustmentType:null,
+          priceAdjustment:0,
+          realTotalPrice:0,
+       }
+    },
+    
     // 缂栬緫
-    editClick(){
-
+    editClick(row){
+      this.tableLoading=true
+      getPurchaseInfo({id:row.ID}).then((res) => {
+        if (res.code == 200) {
+          this.tableLoading=false
+          this.editConfig.visible = true
+          this.editConfig.title = "缂栬緫"
+          this.editConfig.infomation = { 
+            productList:res.data.productList,
+            supplierName:res.data.purchase.supplier.name,
+            ...res.data.purchase,
+           }
+        }else{
+          this.$message.error(res.msg?res.msg+',':''+'鑾峰彇淇℃伅澶辫触锛�')
+        }
+      })
+      setTimeout(()=>{
+        this.tableLoading=false
+      },3000)
+      // this.editRow = row;
+      // this.$refs.add.islook = true;
+      
     },
     // 纭鍙戣揣
-    submitClick() {
+    submitClick(row) {
         this.$confirm("鏄惁鎻愪氦?", "鎻愮ず", {
           confirmButtonText: "纭畾",
           cancelButtonText: "鍙栨秷",
@@ -139,7 +204,7 @@
         })
           .then(() => {
             console.log("dddd")
-            getDeleteSalesLeads({ ids: this.selValueList }).then((response) => {
+            submitPurchase({ id: row.ID }).then((response) => {
               if (response.code === 200) {
                 this.$message.success("鎻愪氦鎴愬姛")
                 this.getData()
@@ -154,8 +219,22 @@
     // 璇︽儏
     selCommonClick(row) {
       console.log(row)
-      this.commonDetail.visible = true
-      this.commonDetail.infomation = { ...row }
+      this.tableLoading=true
+      getPurchaseInfo({id:row.ID}).then((res) => {
+        if (res.code == 200) {
+          this.tableLoading=false
+          this.commonDetail.visible = true
+          this.commonDetail.infomation = { 
+            productList:res.data.productList,
+            ...res.data.purchase
+           }
+        }else{
+          this.$message.error(res.msg?res.msg+',':''+'鑾峰彇淇℃伅澶辫触锛�')
+        }
+      })
+      setTimeout(()=>{
+        this.tableLoading=false
+      },3000)
     }
   }
 }

--
Gitblit v1.8.0