From 6e3bb34e45df6a2f19f1592fb1b06c574dd026cd Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期六, 12 七月 2025 16:16:55 +0800
Subject: [PATCH] 1.来票台账附件上传接口中未传文件ID

---
 src/views/inventoryManagement/receiptManagement/index.vue |   66 +++++++++++++++++++++++----------
 1 files changed, 46 insertions(+), 20 deletions(-)

diff --git a/src/views/inventoryManagement/receiptManagement/index.vue b/src/views/inventoryManagement/receiptManagement/index.vue
index 734d9e7..acf0b68 100644
--- a/src/views/inventoryManagement/receiptManagement/index.vue
+++ b/src/views/inventoryManagement/receiptManagement/index.vue
@@ -19,21 +19,21 @@
         :summary-method="summarizeMainTable" height="calc(100vh - 18.5em)">
         <el-table-column align="center" type="selection" width="55" />
         <el-table-column align="center" label="搴忓彿" type="index" width="60" />
-        <el-table-column label="鍏ュ簱鏃堕棿" prop="inboundTime" width="100" show-overflow-tooltip />
-        <el-table-column label="鍏ュ簱鎵规" prop="inboundBatch" width="160" show-overflow-tooltip />
-        <el-table-column label="渚涘簲鍟嗗悕绉�" prop="supplierName" width="160" show-overflow-tooltip />
-        <el-table-column label="浜у搧澶х被" prop="productName" width="100" show-overflow-tooltip />
-        <el-table-column label="瑙勬牸鍨嬪彿" prop="model" width="160" show-overflow-tooltip />
+        <el-table-column label="鍏ュ簱鏃堕棿" prop="createTime" width="100" show-overflow-tooltip />
+        <el-table-column label="鍏ュ簱鎵规" prop="inboundBatches" width="160" show-overflow-tooltip />
+        <el-table-column label="渚涘簲鍟嗗悕绉�" prop="supplierName" width="240" show-overflow-tooltip />
+        <el-table-column label="浜у搧澶х被" prop="productCategory" width="100" show-overflow-tooltip />
+        <el-table-column label="瑙勬牸鍨嬪彿" prop="specificationModel" width="200" show-overflow-tooltip />
         <el-table-column label="鍗曚綅" prop="unit" width="70" show-overflow-tooltip />
-        <el-table-column label="鍏ュ簱鏁伴噺" prop="inboundQuantity" width="90" show-overflow-tooltip />
+        <el-table-column label="鍏ュ簱鏁伴噺" prop="inboundNum" width="90" show-overflow-tooltip />
         <el-table-column label="鍚◣鍗曚环" prop="taxInclusiveUnitPrice" width="100" show-overflow-tooltip />
         <el-table-column label="鍚◣鎬讳环" prop="taxInclusiveTotalPrice" width="100" show-overflow-tooltip />
         <el-table-column label="绋庣巼(%)" prop="taxRate" width="80" show-overflow-tooltip />
         <el-table-column label="涓嶅惈绋庢�讳环" prop="taxExclusiveTotalPrice" width="100" show-overflow-tooltip />
-        <el-table-column label="鍏ュ簱浜�" prop="nickName" width="80" show-overflow-tooltip />
+        <el-table-column label="鍏ュ簱浜�" prop="createBy" width="80" show-overflow-tooltip />
         <el-table-column fixed="right" label="鎿嶄綔" min-width="60" align="center">
           <template #default="scope">
-            <el-button link type="primary" size="small" @click="openForm('edit', scope.row);">缂栬緫</el-button>
+            <el-button link type="primary" size="small" @click="openForm('edit', scope.row);" :disabled="scope.row.createUser !== userStore.id">缂栬緫</el-button>
           </template>
         </el-table-column>
       </el-table>
@@ -80,9 +80,9 @@
           <el-table-column label="渚涘簲鍟�" prop="supplierName" width="100" />
           <el-table-column label="閲囪喘鏁伴噺" prop="quantity" width="100" />
           <el-table-column label="寰呭叆搴撴暟閲�" prop="quantity0" width="100" />
-          <el-table-column label="鏈鍏ュ簱鏁伴噺" prop="quantityStock" width="120">
+          <el-table-column label="鏈鍏ュ簱鏁伴噺" prop="quantityStock" width="150">
             <template #default="scope">
-              <el-input v-model="scope.row.quantityStock" type="number" :min="0" :max="scope.row.quantity0" />
+              <el-input-number :step="0.01" :min="0" style="width: 100%" v-model="scope.row.quantityStock" :max="scope.row.quantity0" />
             </template>
           </el-table-column>
           <el-table-column label="绋庣巼(%)" prop="taxRate" width="120" />
@@ -240,6 +240,7 @@
   const openForm = async (type, row) => {
     operationType.value = type
     dialogFormVisible.value = true
+    selectedRows.value = []
 
     if (type === 'add') {
       // 鏂板鏃跺垵濮嬪寲琛ㄥ崟
@@ -261,12 +262,17 @@
       try {
         loadingProducts.value = true
         // 鏍规嵁鍚堝悓鍙峰姞杞藉搴旂殑浜у搧鍒楄〃锛堝亣璁� getProductByContract 鏄彲鐢ㄦ帴鍙o級
-        const res = await getProductRecordByhetong(form.value.purchaseContractNumber)
+        const res = await selectProductRecordListByPuechaserId({
+          purchaseContractNumber: form.value.purchaseContractNumber,
+          id: row.id
+        });
         productList.value = res.data.map(item => ({
           ...item,
-          quantityStock: item.quantityStock || 0 // 濡傛灉宸叉湁鍏ュ簱鏁伴噺鍒欎繚鐣�
+          quantityStock: row.inboundNum // 濡傛灉宸叉湁鍏ュ簱鏁伴噺鍒欎繚鐣�
         }))
+        selectedRows.value = productList.value
       } catch (error) {
+        console.error('鍔犺浇浜у搧澶辫触:', error)
         proxy.$modal.msgError('鍔犺浇浜у搧澶辫触')
         productList.value = []
       } finally {
@@ -275,18 +281,32 @@
     }
   }
 
+  const updatePro = async () => {
+    // 鍑嗗鎻愪氦鏁版嵁
+    // 鍑嗗鎻愪氦鏁版嵁 - 淇敼涓哄悗绔渶瑕佺殑鏍煎紡
+    const stockInData = {
+      id: selectedRows.value[0].recordId,
+      quantityStock: Number(selectedRows.value[0].quantityStock),// 浣跨敤鏂版牸寮忓寲鍑芥暟
+    };
+    await updateStockIn(stockInData)
+    proxy.$modal.msgSuccess('淇敼鍏ュ簱鎴愬姛')
+    closeDia()
+    getList() // 鍒锋柊鍒楄〃
+  }
 
 // 鎻愪氦琛ㄥ崟
   const submitForm = async () => {
+    // 楠岃瘉鑷冲皯閫夋嫨浜嗕竴涓骇鍝�
+    if (selectedRows.value.length === 0) {
+      proxy.$modal.msgError('璇峰厛鏌ヨ骞堕�夋嫨浜у搧')
+      return
+    }
+    if(operationType.value !== 'add'){
+      await updatePro()
+      return
+    }
     try {
       await proxy.$refs.formRef.validate()
-
-      // 楠岃瘉鑷冲皯閫夋嫨浜嗕竴涓骇鍝�
-      if (selectedRows.value.length === 0) {
-        proxy.$modal.msgError('璇峰厛鏌ヨ骞堕�夋嫨浜у搧')
-        return
-      }
-
       // 楠岃瘉鍏ュ簱鏁伴噺
       const invalidProducts = selectedRows.value.filter(
           product => product.quantityStock <= 0 || product.quantityStock > product.quantity0
@@ -367,6 +387,12 @@
   const handleDelete = () => {
     let ids = []
     if (selectedRows.value.length > 0) {
+			// 妫�鏌ユ槸鍚︽湁浠栦汉缁存姢鐨勬暟鎹�
+			const unauthorizedData = selectedRows.value.filter(item => item.createUser !== userStore.id);
+			if (unauthorizedData.length > 0) {
+				proxy.$modal.msgWarning("涓嶅彲鍒犻櫎浠栦汉缁存姢鐨勬暟鎹�");
+				return;
+			}
       ids = selectedRows.value.map(item => item.id);
     } else {
       proxy.$modal.msgWarning('璇烽�夋嫨鏁版嵁')
@@ -380,7 +406,7 @@
           type: 'warning',
         }
     ).then(() => {
-      delStockIn(ids).then(res => {
+      delStockIn({ids:ids}).then(res => {
         proxy.$modal.msgSuccess("鍒犻櫎鎴愬姛")
         getList()
       })

--
Gitblit v1.9.3