From 4ee8bafa6b4742b72628511e0b14fbfeec7737e6 Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期一, 22 六月 2026 17:25:04 +0800
Subject: [PATCH] 新疆马铃薯 1.采购台账和销售台账添加总合同号字段,编辑逻辑修改

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

diff --git a/src/views/procurementManagement/procurementLedger/index.vue b/src/views/procurementManagement/procurementLedger/index.vue
index 15339b5..a65df53 100644
--- a/src/views/procurementManagement/procurementLedger/index.vue
+++ b/src/views/procurementManagement/procurementLedger/index.vue
@@ -4,6 +4,14 @@
       <div>
         <el-form :model="searchForm"
                  :inline="true">
+          <el-form-item label="鎬诲悎鍚屽彿锛�">
+            <el-input v-model="searchForm.masterContractNo"
+                      style="width: 240px"
+                      placeholder="璇疯緭鍏�"
+                      @change="handleQuery"
+                      clearable
+                      :prefix-icon="Search" />
+          </el-form-item>
           <el-form-item label="渚涘簲鍟嗗悕绉帮細">
             <el-input v-model="searchForm.supplierName"
                       placeholder="璇疯緭鍏�"
@@ -77,7 +85,7 @@
         <el-button @click="handleOut">瀵煎嚭</el-button>
         <el-button type="danger"
                    plain
-                   @click="handleDelete">鍒犻櫎
+                   @click="handleDelete" v-hasPermi="['procurementManagement:procurementLedger:remove']">鍒犻櫎
         </el-button>
       </div>
       <el-table :data="tableData"
@@ -201,6 +209,10 @@
                          label="搴忓彿"
                          type="index"
                          width="60" />
+        <el-table-column label="鎬诲悎鍚屽彿"
+                         prop="masterContractNo"
+                         width="150"
+                         show-overflow-tooltip />
         <el-table-column label="閲囪喘鍚堝悓鍙�"
                          prop="purchaseContractNumber"
                          width="160"
@@ -228,17 +240,17 @@
             </el-tag>
           </template>
         </el-table-column>
-        <el-table-column label="鍏ュ簱鐘舵��"
-                         prop="stockInStatus"
-                         width="100"
-                         show-overflow-tooltip>
-          <template #default="scope">
-            <el-tag :type="getStockInStatusType(scope.row.stockInStatus)"
-                    size="small">
-              {{ scope.row.stockInStatus || '--' }}
-            </el-tag>
-          </template>
-        </el-table-column>
+<!--        <el-table-column label="鍏ュ簱鐘舵��"-->
+<!--                         prop="stockInStatus"-->
+<!--                         width="100"-->
+<!--                         show-overflow-tooltip>-->
+<!--          <template #default="scope">-->
+<!--            <el-tag :type="getStockInStatusType(scope.row.stockInStatus)"-->
+<!--                    size="small">-->
+<!--              {{ scope.row.stockInStatus || '&#45;&#45;' }}-->
+<!--            </el-tag>-->
+<!--          </template>-->
+<!--        </el-table-column>-->
         <el-table-column label="绛捐鏃ユ湡"
                          prop="executionDate"
                          width="100"
@@ -300,6 +312,15 @@
                ref="formRef">
         <el-row :gutter="30">
           <el-col :span="12">
+            <el-form-item label="鎬诲悎鍚屽彿锛�">
+              <el-input v-model="form.masterContractNo"
+                        placeholder="璇疯緭鍏�"
+                        clearable />
+            </el-form-item>
+          </el-col>
+        </el-row>
+        <el-row :gutter="30">
+          <el-col :span="12">
             <el-form-item label="閲囪喘鍚堝悓鍙凤細"
                           prop="purchaseContractNumber">
               <el-input v-model="form.purchaseContractNumber"
@@ -351,9 +372,16 @@
         <el-row :gutter="30">
           <el-col :span="12">
             <el-form-item label="浠樻鏂瑰紡">
-              <el-input v-model="form.paymentMethod"
-                        placeholder="璇疯緭鍏�"
-                        clearable />
+              <el-select v-model="form.paymentMethod"
+                         placeholder="璇烽�夋嫨"
+                         clearable
+                         style="width: 100%">
+                <el-option label="鐜伴噾" value="鐜伴噾" />
+                <el-option label="鐢垫眹" value="鐢垫眹" />
+                <el-option label="寰俊" value="寰俊" />
+                <el-option label="鏀粯瀹�" value="鏀粯瀹�" />
+                <el-option label="鏀エ" value="鏀エ" />
+              </el-select>
             </el-form-item>
           </el-col>
           <el-col :span="12">
@@ -401,10 +429,12 @@
           <el-form-item label="浜у搧淇℃伅锛�"
                         prop="entryDate">
             <el-button type="primary"
+                       v-if="form.approvalStatus !== 3"
                        @click="openProductForm('add')">娣诲姞
             </el-button>
             <el-button plain
                        type="danger"
+                       v-if="form.approvalStatus !== 3"
                        @click="deleteProduct">鍒犻櫎
             </el-button>
           </el-form-item>
@@ -562,7 +592,7 @@
               <el-button link
                          type="primary"
                          @click="openProductForm('edit', scope.row, scope.$index)"
-                         :disabled="scope.row.stockInApprovalStatus === '瀹屽叏鍏ュ簱'">缂栬緫
+                         :disabled="form.approvalStatus === 3">缂栬緫
               </el-button>
             </template>
           </el-table-column>
@@ -1050,6 +1080,7 @@
       supplierName: "", // 渚涘簲鍟嗗悕绉�
       purchaseContractNumber: "", // 閲囪喘鍚堝悓缂栧彿
       salesContractNo: "", // 閿�鍞悎鍚岀紪鍙�
+      masterContractNo: "", // 鎬诲悎鍚屽彿
       projectName: "", // 椤圭洰鍚嶇О
       entryDate: null, // 褰曞叆鏃ユ湡
       entryDateStart: undefined,
@@ -1059,6 +1090,7 @@
       purchaseContractNumber: "",
       salesLedgerId: "",
       projectName: "",
+      masterContractNo: "",
       recorderId: "",
       entryDate: "",
       productData: [],
@@ -1437,13 +1469,6 @@
   };
   // 鎵撳紑寮规
   const openForm = async (type, row) => {
-    // 缂栬緫鏃舵鏌ュ叆搴撶姸鎬侊紝瀹屽叏鍏ュ簱鏃朵笉鑳界紪杈�
-    if (type === "edit" && row) {
-      if (row.stockInStatus === "瀹屽叏鍏ュ簱") {
-        proxy.$modal.msgWarning("瀹屽叏鍏ュ簱鐘舵�佺殑璁板綍涓嶈兘缂栬緫");
-        return;
-      }
-    }
 
     await getTemplateList();
     await userListNoPage().then(res => {
@@ -1614,9 +1639,9 @@
   };
   // 鎵撳紑浜у搧寮规
   const openProductForm = async (type, row, index) => {
-    // 缂栬緫鏃舵鏌ヤ骇鍝佸叆搴撳鏍哥姸鎬侊紝瀹屽叏鍏ュ簱鏃朵笉鑳界紪杈�
-    if (type === "edit" && row && row.stockInApprovalStatus === "瀹屽叏鍏ュ簱") {
-      proxy.$modal.msgWarning("瀹屽叏鍏ュ簱鐘舵�佺殑浜у搧涓嶈兘缂栬緫");
+    // 瀹℃壒閫氳繃鏃朵笉鑳界紪杈戜骇鍝佷俊鎭�
+    if (type === "edit" && form.value.approvalStatus === 3) {
+      proxy.$modal.msgWarning("瀹℃壒閫氳繃鐨勮褰曚笉鑳界紪杈戜骇鍝佷俊鎭�");
       return;
     }
 
@@ -1863,14 +1888,6 @@
   const deleteProduct = () => {
     if (productSelectedRows.value.length === 0) {
       proxy.$modal.msgWarning("璇烽�夋嫨鏁版嵁");
-      return;
-    }
-    // 妫�鏌ラ�変腑鐨勪骇鍝佷腑鏄惁鏈夊畬鍏ㄥ叆搴撶殑
-    const hasFullyStocked = productSelectedRows.value.some(
-      row => row.stockInApprovalStatus === "瀹屽叏鍏ュ簱"
-    );
-    if (hasFullyStocked) {
-      proxy.$modal.msgWarning("閫変腑鐨勪骇鍝佷腑鍖呭惈瀹屽叏鍏ュ簱鐨勪骇鍝侊紝鏃犳硶鍒犻櫎");
       return;
     }
     if (operationType.value === "add") {

--
Gitblit v1.9.3