From f45b159864ad79f326884ab3644269ef9eb7ee9d Mon Sep 17 00:00:00 2001
From: zuozhengqing <a13193816592@163.com>
Date: 星期四, 04 一月 2024 11:49:16 +0800
Subject: [PATCH] 出入库bug修复,调整仓库位置字段绑定,编辑时列表绑定源位置

---
 src/components/makepager/CommonFormTableView.vue |   56 ++++++++++++++++++++++++++++++++++++++++++++------------
 1 files changed, 44 insertions(+), 12 deletions(-)

diff --git a/src/components/makepager/CommonFormTableView.vue b/src/components/makepager/CommonFormTableView.vue
index 4cfa286..9437f52 100644
--- a/src/components/makepager/CommonFormTableView.vue
+++ b/src/components/makepager/CommonFormTableView.vue
@@ -118,6 +118,7 @@
                     :controls="false"
                     size="mini"
                     style="width: 100%; margin-right: 5px"
+                    :min="item.prop==='minInventory'?0:1"
                     @change="
                       (val) => {
                         commonInputChange(val, item.prop, scope.row)
@@ -284,6 +285,25 @@
                   </template>
                 </div>
               </el-form-item>
+              <!-- 浠� -->
+              <el-form-item v-else-if="item.formLocation" label=" " :prop="'tableData.' + scope.$index + '.' + item.prop">
+                <div class="custom-name">
+                  <span v-if="scope.row.isEdit || scope.row.editable">{{ scope.row.formLocation }}</span>
+                  <el-autocomplete
+                    v-else
+                    style="width: 100%"
+                    v-model="scope.row.productCategory"
+                    @focus="productTypeFocus"
+                    :fetch-suggestions="
+                      (queryString, callback) => {
+                        querySearchAsync(queryString, callback, 'formLocation')
+                      }
+                    "
+                    value-key="name"
+                    @select="handleSelectClient('formLocation', $event)"
+                  ></el-autocomplete>
+                </div>
+              </el-form-item>
               <!-- 浜у搧绫诲埆 -->
               <el-form-item
                 v-else-if="item.productType"
@@ -368,7 +388,7 @@
         <slot name="tableButton" />
       </el-table>
     </el-form>
-    <div v-if="!detailEnter && !isinventory && !islistingrules && !isReorder" style="margin: 10px">
+    <div v-if="!detailEnter && !isinventory  && !isReorder" style="margin: 10px">
       <el-button size="small" type="primary" @click="add">娣诲姞鏄庣粏琛�</el-button>
       <!-- <el-button size="small" type="primary" @click="empty">娓呯┖</el-button> -->
     </div>
@@ -457,7 +477,8 @@
       locacionId: 0,
       productName: "",
       productId: "",
-      initialPosition: ""
+      initialPosition: "",
+      formLocationList:[],
     }
   },
   created() {
@@ -496,6 +517,7 @@
         }
       })
     },
+    // 涓嬫媺鎼滅储
     async handleSelectClient(value, item) {
       this.$emit("selProductClick", value, item)
       if (value === "product") {
@@ -526,6 +548,8 @@
         restaurants = this.productNameOptions
       } else if (value === "productType") {
         restaurants = this.productTypeNameOptions
+      }else if(value==="formLocation"){
+        restaurants = this.selLocationOptions
       }
       var results = queryString ? restaurants.filter(this.createStateFilter(queryString, value)) : restaurants
       cb(results)
@@ -572,8 +596,10 @@
         }
       })
     },
+
     // 浣嶇疆
     async getLocationList() {
+      this.locacionName = ""
       await getLocationList({
         // keyword: "",
         jointName: this.initialPosition ? this.initialPosition : null,
@@ -617,19 +643,14 @@
     // 璁剧疆瀛愪綅缃�
     async setLocationList(jointName) {
       await getLocationList({
-        // keyword: "",
         jointName: jointName,
         page: 1,
         pageSize: 100
       }).then((res) => {
         if (res.code === 200) {
-          const list = res.data ? res.data : []
-          this.selSonLocationOptions = list
-          // if (this.isReorder) {
-          //   this.locacionName = list[0]?.name
-          //   this.locacionId = list[0]?.id
-          //   this.$emit("selLocationClick", list[0], "locacionName")
-          // }
+          // const list = res.data ? res.data : []
+          this.selSonLocationOptions = res.data
+          console.log(this.selSonLocationOptions,"鐪嬬湅鍙樹簡娌�")
         }
       })
     },
@@ -661,7 +682,16 @@
       } else {
         let selIndex = 0
         this.tableList.tableData.map((ite, index) => {
-          if (ite.id === row.id) {
+          // ite.id 鏄笂鏋惰鍒欑殑, ite.productId鏄簱瀛樿皟鏁寸殑
+          if (ite.id === row.id&&ite.id!=undefined&&row.id!=undefined) {
+            selIndex = index
+            ite.productId = item.id
+            ite.productName = item.name
+            ite.categoryId = item.categoryId
+            ite.productCategory = item.categoryName
+            ite.amount = item.amount
+            ite.unit = item.unit
+          }else if(ite.productId===row.productId){
             selIndex = index
             ite.productId = item.id
             ite.productName = item.name
@@ -872,7 +902,9 @@
     },
     // 琛岀偣鍑�
     tableRowClick(row) {
-      this.locacionName = row.location.name
+      if (this.isReorder) {
+        this.locacionName = row.location.name
+      }
       this.$emit("tableRowClick", row, row.index)
     },
     // 鍗曢�夎鐩稿叧

--
Gitblit v1.8.0