From 15be8eba6451b1a5d4b7cefaeb9e48fd4a601ae7 Mon Sep 17 00:00:00 2001
From: yuan <123@>
Date: 星期日, 09 八月 2026 18:37:54 +0800
Subject: [PATCH] fix: 优化页面

---
 src/views/procurementManagement/procurementLedger/index.vue |   85 ++++++++++++++++++++++--------------------
 1 files changed, 44 insertions(+), 41 deletions(-)

diff --git a/src/views/procurementManagement/procurementLedger/index.vue b/src/views/procurementManagement/procurementLedger/index.vue
index dad6a26..1c02aba 100644
--- a/src/views/procurementManagement/procurementLedger/index.vue
+++ b/src/views/procurementManagement/procurementLedger/index.vue
@@ -19,13 +19,13 @@
                       clearable
                       :prefix-icon="Search" />
           </el-form-item>
-          <el-form-item label="閿�鍞悎鍚屽彿锛�">
-            <el-input v-model="searchForm.salesContractNo"
-                      placeholder="璇疯緭鍏�"
-                      clearable
-                      prefix-icon="Search"
-                      @change="handleQuery" />
-          </el-form-item>
+<!--          <el-form-item label="閿�鍞悎鍚屽彿锛�">-->
+<!--            <el-input v-model="searchForm.salesContractNo"-->
+<!--                      placeholder="璇疯緭鍏�"-->
+<!--                      clearable-->
+<!--                      prefix-icon="Search"-->
+<!--                      @change="handleQuery" />-->
+<!--          </el-form-item>-->
           <el-form-item label="椤圭洰鍚嶇О锛�">
             <el-input v-model="searchForm.projectName"
                       placeholder="璇疯緭鍏�"
@@ -144,17 +144,17 @@
                          prop="purchaseContractNumber"
                          width="160"
                          show-overflow-tooltip />
-        <el-table-column label="閿�鍞悎鍚屽彿"
-                         prop="salesContractNo"
-                         width="160"
-                         show-overflow-tooltip />
+<!--        <el-table-column label="閿�鍞悎鍚屽彿"-->
+<!--                         prop="salesContractNo"-->
+<!--                         width="160"-->
+<!--                         show-overflow-tooltip />-->
         <el-table-column label="渚涘簲鍟嗗悕绉�"
                          prop="supplierName"
                          width="160"
                          show-overflow-tooltip />
         <el-table-column label="椤圭洰鍚嶇О"
                          prop="projectName"
-                         width="320"
+                         width="100"
                          show-overflow-tooltip />
         <el-table-column label="瀹℃壒鐘舵��"
                          prop="approvalStatus"
@@ -247,21 +247,21 @@
                         clearable />
             </el-form-item>
           </el-col>
-          <el-col :span="12">
-            <el-form-item label="閿�鍞悎鍚屽彿锛�"
-                          prop="salesLedgerId">
-              <el-select v-model="form.salesLedgerId"
-                         placeholder="璇烽�夋嫨"
-                         filterable
-                         clearable
-                         @change="salesLedgerChange">
-                <el-option v-for="item in salesContractList"
-                           :key="item.id"
-                           :label="item.salesContractNo"
-                           :value="item.id" />
-              </el-select>
-            </el-form-item>
-          </el-col>
+<!--          <el-col :span="12">-->
+<!--            <el-form-item label="閿�鍞悎鍚屽彿锛�"-->
+<!--                          prop="salesLedgerId">-->
+<!--              <el-select v-model="form.salesLedgerId"-->
+<!--                         placeholder="璇烽�夋嫨"-->
+<!--                         filterable-->
+<!--                         clearable-->
+<!--                         @change="salesLedgerChange">-->
+<!--                <el-option v-for="item in salesContractList"-->
+<!--                           :key="item.id"-->
+<!--                           :label="item.salesContractNo"-->
+<!--                           :value="item.id" />-->
+<!--              </el-select>-->
+<!--            </el-form-item>-->
+<!--          </el-col>-->
         </el-row>
         <el-row :gutter="30">
           <el-col :span="12">
@@ -923,7 +923,7 @@
     },
     rules: {
       purchaseContractNumber: [
-        { required: true, message: "璇疯緭鍏�", trigger: "blur" },
+        { required: false, message: "璇疯緭鍏�", trigger: "blur" },
       ],
       projectName: [
         { required: true, message: "璇疯緭鍏ラ」鐩悕绉�", trigger: "blur" },
@@ -1306,18 +1306,7 @@
 
       form.value.entryDate = getCurrentDate();
 
-      if (type === "add") {
-        // 鏂板鏃剁敓鎴愰噰璐悎鍚屽彿
-        try {
-          const purchaseNoRes = await createPurchaseNo();
-          if (purchaseNoRes?.data) {
-            form.value.purchaseContractNumber = purchaseNoRes.data;
-          }
-        } catch (error) {
-          console.error("鐢熸垚閲囪喘鍚堝悓鍙峰け璐�:", error);
-          proxy.$modal.msgWarning("鐢熸垚閲囪喘鍚堝悓鍙峰け璐�");
-        }
-      } else if (type === "edit" && row?.id) {
+      if (type === "edit" && row?.id) {
         // 缂栬緫鏃跺姞杞芥暟鎹�
         currentId.value = row.id;
         try {
@@ -1398,7 +1387,7 @@
 
   // 鎻愪氦琛ㄥ崟
   const submitForm = () => {
-    proxy.$refs["formRef"].validate(valid => {
+    proxy.$refs["formRef"].validate(async valid => {
       if (valid) {
         if (productData.value.length > 0) {
           // 鏂板鏃讹紝闇�瑕佷粠姣忎釜浜у搧瀵硅薄涓垹闄� id 瀛楁
@@ -1428,6 +1417,20 @@
           delete submitData.id;
         }
 
+        // 濡傛灉閲囪喘鍚堝悓鍙蜂负绌猴紝鍒欐牴鎹綍鍏ユ棩鏈熻嚜鍔ㄧ敓鎴�
+        if (!submitData.purchaseContractNumber) {
+          try {
+            const purchaseNoRes = await createPurchaseNo(submitData.entryDate);
+            if (purchaseNoRes?.data) {
+              submitData.purchaseContractNumber = purchaseNoRes.data;
+            }
+          } catch (error) {
+            console.error("鐢熸垚閲囪喘鍚堝悓鍙峰け璐�:", error);
+            proxy.$modal.msgWarning("鐢熸垚閲囪喘鍚堝悓鍙峰け璐�");
+            return;
+          }
+        }
+
         addOrEditPurchase(submitData).then(res => {
           proxy.$modal.msgSuccess("鎻愪氦鎴愬姛");
           closeDia();

--
Gitblit v1.9.3