From d90576a14722936d2bbac4595f561512a480c36a Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期五, 11 七月 2025 15:22:00 +0800
Subject: [PATCH] 1.来票登记-新增登记计算报错,关闭弹框后没有刷新列表问题

---
 src/views/procurementManagement/invoiceEntry/index.vue            |   10 ++++++++--
 src/views/procurementManagement/invoiceEntry/components/Modal.vue |   13 +++++++++++--
 src/api/qualityManagement/qualityInspectFile.js                   |    4 ++--
 3 files changed, 21 insertions(+), 6 deletions(-)

diff --git a/src/api/qualityManagement/qualityInspectFile.js b/src/api/qualityManagement/qualityInspectFile.js
index 1039755..36b72cb 100644
--- a/src/api/qualityManagement/qualityInspectFile.js
+++ b/src/api/qualityManagement/qualityInspectFile.js
@@ -8,7 +8,7 @@
         params: query,
     })
 }
-// 鏌ヨ闄勪欢鍒楄〃
+// 淇濆瓨闄勪欢鍒楄〃
 export function qualityInspectFileAdd(query) {
     return request({
         url: '/quality/qualityInspectFile/add',
@@ -16,7 +16,7 @@
         data: query,
     })
 }
-// 鏌ヨ闄勪欢鍒楄〃
+// 鍒犻櫎闄勪欢鍒楄〃
 export function qualityInspectFileDel(query) {
     return request({
         url: '/quality/qualityInspectFile/del',
diff --git a/src/views/procurementManagement/invoiceEntry/components/Modal.vue b/src/views/procurementManagement/invoiceEntry/components/Modal.vue
index ecd2b06..ae6a79f 100644
--- a/src/views/procurementManagement/invoiceEntry/components/Modal.vue
+++ b/src/views/procurementManagement/invoiceEntry/components/Modal.vue
@@ -152,6 +152,7 @@
 
 <script setup>
 import { ref, getCurrentInstance } from "vue";
+import { defineEmits } from 'vue';
 import { useModal } from "@/hooks/useModal";
 import useFormData from "@/hooks/useFormData";
 import FileUpload from "@/components/Upload/FileUpload.vue";
@@ -212,6 +213,8 @@
 } = useModal({
   title: "鏉ョエ鐧昏",
 });
+
+const emit = defineEmits(['refreshList']);
 
 const columns = [
   {
@@ -377,7 +380,7 @@
   let invoiceAmountTotal = 0;
   form.productData.forEach((item) => {
     if (item.ticketsAmount) {
-      invoiceAmountTotal += item.ticketsAmount;
+      invoiceAmountTotal += Number(item.ticketsAmount);
     }
   });
   form.invoiceAmount = invoiceAmountTotal.toFixed(2);
@@ -397,6 +400,11 @@
 const removeFile = (file) => {
   const { tempId } = file.response.data;
   form.tempFileIds = form.tempFileIds.filter((item) => item !== tempId);
+};
+
+const closeAndRefresh = () => {
+  closeModal();
+  emit('refreshList');
 };
 
 const submitForm = () => {
@@ -422,7 +430,7 @@
       });
       modalLoading.value = false;
       if (code == 200) {
-        closeModal();
+        closeAndRefresh();
       }
     } else {
       modalLoading.value = false;
@@ -432,6 +440,7 @@
 
 defineExpose({
   open,
+  closeAndRefresh,
 });
 </script>
 
diff --git a/src/views/procurementManagement/invoiceEntry/index.vue b/src/views/procurementManagement/invoiceEntry/index.vue
index 6df5636..a43e598 100644
--- a/src/views/procurementManagement/invoiceEntry/index.vue
+++ b/src/views/procurementManagement/invoiceEntry/index.vue
@@ -61,7 +61,7 @@
         </template>
       </PIMTable>
     </div>
-    <Modal ref="modalRef"></Modal>
+    <Modal ref="modalRef" @refreshList="getTableData"></Modal>
   </div>
 </template>
 
@@ -203,7 +203,13 @@
 const handleDelete = () => {
 	let ids = [];
 	if (selectedRows.value.length > 0) {
-		ids = selectedRows.value.map((item) => item.id);
+    // 鏂板鍒ゆ柇锛氬鏋滄湁閫変腑鐨勬暟鎹病鏈塼icketRegistrationId锛屾彁绀哄苟缁堟
+    const noTicket = selectedRows.value.some(item => !item.ticketRegistrationId);
+    if (noTicket) {
+      proxy.$modal.msgWarning("閲囪喘鍙拌处杩樻湭杩涜鏉ョエ鐧昏,鏃犳硶杩涜鍒犻櫎鎿嶄綔");
+      return;
+    }
+		ids = selectedRows.value.map((item) => item.ticketRegistrationId);
 	} else {
 		proxy.$modal.msgWarning("璇烽�夋嫨鏁版嵁");
 		return;

--
Gitblit v1.9.3