From ec29f1ad88021cc49884d7dda09d0a78764ffd22 Mon Sep 17 00:00:00 2001
From: yangfeng <wanwan926_4@163.com>
Date: 星期五, 20 十月 2023 19:00:45 +0800
Subject: [PATCH] 下拉选择框可搜索公共组件及新建调拨和新建报废选择产品内容修改

---
 src/views/operate/scrap/AddScrapDialog.vue |   44 ++++++++++++++++++++++++--------------------
 1 files changed, 24 insertions(+), 20 deletions(-)

diff --git a/src/views/operate/scrap/AddScrapDialog.vue b/src/views/operate/scrap/AddScrapDialog.vue
index 3dc7f47..f7a8db1 100644
--- a/src/views/operate/scrap/AddScrapDialog.vue
+++ b/src/views/operate/scrap/AddScrapDialog.vue
@@ -45,22 +45,16 @@
             <el-row>
               <el-col :span="12">
                 <el-form-item label="浜у搧" prop="productName">
-                  <el-select
-                    v-model="editConfig.infomation.productName"
-                    placeholder="璇烽�夋嫨"
-                    size="mini"
-                    style="width: 90%"
+                  <SimpleSearchInput
+                    :echoValue="editConfig.infomation.productName"
+                    :echoName="editConfig.infomation.productName"
+                    checkedNum="1"
+                    :clearable="true"
+                    @select-user="selProductChange"
                     :disabled="!showFooter"
-                    @change="selProductChange"
+                    style="width: 90%"
                   >
-                    <el-option
-                      v-for="item in productOptions"
-                      :key="item.id"
-                      :label="item.name"
-                      :value="{ value: item.id, label: item.name, unit: item.unit }"
-                    >
-                    </el-option>
-                  </el-select>
+                  </SimpleSearchInput>
                 </el-form-item>
               </el-col>
               <el-col :span="12">
@@ -85,7 +79,7 @@
                     :min="0"
                     :precision="2"
                     :controls="false"
-                    style="width: 85%"
+                    style="width: 90%"
                     :disabled="!showFooter"
                   ></el-input-number>
                   <span>{{ " " + unit }}</span>
@@ -132,6 +126,7 @@
 import { getProductList } from "@/api/product/product"
 import { getLocationList } from "@/api/overview/overview"
 import { addDisuse, finishDisuse } from "@/api/operate/scrap"
+import SimpleSearchInput from "@/components/makepager/SimpleSearchInput"
 export default {
   name: "AddScrapDialog",
   props: {
@@ -146,7 +141,7 @@
       }
     }
   },
-  components: {},
+  components: { SimpleSearchInput },
   computed: {},
   data() {
     return {
@@ -154,7 +149,7 @@
       editConfig: this.editCommonConfig,
       rules: {
         // 浜у搧锛屾暟閲忓繀濉�
-        productName: [{ required: true, message: "璇烽�夋嫨浜у搧", trigger: "change" }],
+        productName: [{ required: true, validator: this.validatorProduct, trigger: "change" }],
         amount: [{ required: true, message: "璇疯緭鍏ユ暟閲�", trigger: "blur" }],
         fromLocationId: [{ required: true, message: "璇烽�夋嫨婧愪綅缃�", trigger: "change" }],
         toLocationId: [{ required: true, message: "璇烽�夋嫨鎶ュ簾浣嶇疆", trigger: "change" }],
@@ -212,7 +207,7 @@
     },
     // 璁剧疆鍒犻櫎/鎵撳嵃/缂栬緫鏄惁鏄剧ず
     setBottonView() {
-      if (this.editConfig.title === "鏂板缓"||this.editConfig.title==="缂栬緫") {
+      if (this.editConfig.title === "鏂板缓" || this.editConfig.title === "缂栬緫") {
         this.showButton = false
         this.showEdit = false
         this.showFooter = true
@@ -272,8 +267,9 @@
     // 閫夋嫨浜у搧
     selProductChange(val) {
       this.unit = val.unit
-      this.productName = val.label
-      this.productId = val.value
+      this.productName = val.name
+      this.productId = val.id
+      this.editConfig.infomation.productName = val.name
     },
     // 楠岃瘉
     async validateClick() {
@@ -285,6 +281,14 @@
           this.$parent.getData()
         }
       })
+    },
+    // 浜у搧鍗曠嫭鏍¢獙
+    validatorProduct(rule, value, callback) {
+      if (this.editConfig.infomation.productName && this.editConfig.infomation.productName.length > 0) {
+        callback()
+      } else {
+        callback(new Error("璇烽�夋嫨浜у搧"))
+      }
     }
   }
 }

--
Gitblit v1.8.0