From 435eee87aa1858b639ba7ae9311b77c5622a7c6c Mon Sep 17 00:00:00 2001
From: spring <2396852758@qq.com>
Date: 星期三, 01 四月 2026 09:36:56 +0800
Subject: [PATCH] fix: 质量管理添加批号字段

---
 src/views/qualityManagement/nonconformingManagement/components/formDia.vue |   31 ++++++++++++++++++++++++++++++-
 1 files changed, 30 insertions(+), 1 deletions(-)

diff --git a/src/views/qualityManagement/nonconformingManagement/components/formDia.vue b/src/views/qualityManagement/nonconformingManagement/components/formDia.vue
index 2301cee..06adf63 100644
--- a/src/views/qualityManagement/nonconformingManagement/components/formDia.vue
+++ b/src/views/qualityManagement/nonconformingManagement/components/formDia.vue
@@ -49,6 +49,18 @@
             </el-form-item>
           </el-col>
           <el-col :span="12">
+            <el-form-item label="鎵瑰彿锛�" prop="batchNo" :required="operationType === 'add'">
+              <el-input
+                v-model="form.batchNo"
+                placeholder="璇疯緭鍏�"
+                clearable
+                :disabled="operationType === 'edit'"
+              />
+            </el-form-item>
+          </el-col>
+        </el-row>
+        <el-row :gutter="30">
+          <el-col :span="12">
             <el-form-item label="鍗曚綅锛�" prop="unit">
               <el-input v-model="form.unit" placeholder="璇疯緭鍏�" disabled/>
             </el-form-item>
@@ -125,7 +137,7 @@
 </template>
 
 <script setup>
-import {ref, reactive, toRefs} from "vue";
+import {ref, reactive, toRefs, getCurrentInstance} from "vue";
 import {modelList, productTreeList} from "@/api/basicData/product.js";
 import {
   getQualityUnqualifiedInfo,
@@ -140,6 +152,19 @@
 
 const dialogFormVisible = ref(false);
 const operationType = ref('')
+
+const validateBatchNo = (rule, value, callback) => {
+  if (operationType.value !== 'add') {
+    callback();
+    return;
+  }
+  if (value === undefined || value === null || String(value).trim() === '') {
+    callback(new Error('璇疯緭鍏ユ壒鍙�'));
+    return;
+  }
+  callback();
+};
+
 const { rejection_handling } = proxy.useDict("rejection_handling")
 const data = reactive({
   form: {
@@ -150,6 +175,7 @@
     productId: "",
     model: "",
     uidNo: "",
+    batchNo: "",
     unit: "",
     quantity: "",
     checkCompany: "",
@@ -171,6 +197,7 @@
     checkCompany: [{ required: false, message: "璇疯緭鍏�", trigger: "blur" }],
     checkResult: [{ required: false, message: "璇疯緭鍏�", trigger: "blur" }],
     dealName: [{ required: true, message: "璇烽�夋嫨澶勭悊浜�", trigger: "change" }],
+    batchNo: [{ validator: validateBatchNo, trigger: "blur" }],
   },
 });
 const { form, rules } = toRefs(data);
@@ -201,6 +228,7 @@
       productId: '',
       model: '',
       uidNo: '',
+      batchNo: '',
       unit: '',
       quantity: '',
       productName: '',
@@ -233,6 +261,7 @@
   form.value.model = undefined;
   form.value.unit = undefined;
   form.value.uidNo = undefined;
+  form.value.batchNo = "";
   modelOptions.value = [];
   form.value.productName = findNodeById(productOptions.value, value);
   modelList({ id: value }).then((res) => {

--
Gitblit v1.9.3