From 342439b018786854ec0b49a2cf26fe422ca9121d Mon Sep 17 00:00:00 2001
From: ZN <zhang_12370@163.com>
Date: 星期一, 23 三月 2026 09:43:21 +0800
Subject: [PATCH] feat(采购退货): 增加删除采购退货单功能并优化相关操作

---
 src/views/procurementManagement/purchaseReturnOrder/index.vue |   48 +++++++++++++++++++++++++++++++++++++++---------
 1 files changed, 39 insertions(+), 9 deletions(-)

diff --git a/src/views/procurementManagement/purchaseReturnOrder/index.vue b/src/views/procurementManagement/purchaseReturnOrder/index.vue
index 1ac769e..8de2877 100644
--- a/src/views/procurementManagement/purchaseReturnOrder/index.vue
+++ b/src/views/procurementManagement/purchaseReturnOrder/index.vue
@@ -36,6 +36,7 @@
       >
         <template #operation="{ row }">
           <el-button link type="primary" size="small" style="color: #67C23A" @click="handleDetail(row)">璇︽儏</el-button>
+          <el-button link size="small" @click="handleDelete(row)">鍒犻櫎</el-button>
         </template>
       </PIMTable>
     </div>
@@ -113,7 +114,7 @@
 import PIMTable from '@/components/PIMTable/PIMTable.vue'
 import { ref, reactive, toRefs, onMounted, defineAsyncComponent, getCurrentInstance } from 'vue'
 const { proxy } = getCurrentInstance()
-import {findPurchaseReturnOrderListPage, getPurchaseReturnOrderDetail} from "@/api/procurementManagement/purchase_return_order.js";
+import {findPurchaseReturnOrderListPage, getPurchaseReturnOrderDetail, deletePurchaseReturnOrder} from "@/api/procurementManagement/purchase_return_order.js";
 const New = defineAsyncComponent(() => import("@/views/procurementManagement/purchaseReturnOrder/New.vue"));
 const tableData = ref([])
 const selectedRows = ref([])
@@ -218,13 +219,24 @@
     width: 180,
   },
   {
-    fixed: 'right',
-    label: '鎿嶄綔',
-    dataType: 'slot',
-    slot: 'operation',
-    width: 100,
-    align: 'center',
+    dataType: "action",
+    width: 120,
+      label: "鎿嶄綔",
+      align: "center",
+      fixed: "right",
+    operation: [
+      {
+				name: "璇︽儏",
+				type: "text",
+				clickFun: row => {handleDetail(row);},
+			},
+      {
+        name: "鍒犻櫎",
+        clickFun: row => {handleDelete(row)},
+      },
+  ],
   },
+  
 ])
 const data = reactive({
   searchForm: {
@@ -240,9 +252,27 @@
   getList()
 }
 
+// 鍒犻櫎鎿嶄綔
+const handleDelete = (row) => {
+  console.log('鍒犻櫎琛屾暟鎹細', row)
+  proxy?.$modal?.confirm('纭畾瑕佸垹闄ゅ悧锛熷垹闄ゅ皢鏃犳硶鎭㈠').then(() => {
+    // 杩欓噷璋冪敤鍒犻櫎鎺ュ彛锛屼紶鍏� row.id
+    deletePurchaseReturnOrder(row.id).then(() => {
+      proxy?.$modal?.msgSuccess?.("鍒犻櫎鎴愬姛");
+      getList()
+    }).catch(() => {
+      proxy?.$modal?.msgError?.('鍒犻櫎澶辫触')
+    })
+  }).catch(() => {
+    // 鍙栨秷鍒犻櫎
+    proxy?.$modal?.msgInfo?.('宸插彇娑堝垹闄�')
+
+  })
+}
+// 鏌ョ湅璇︽儏
 const handleDetail = (row) => {
   if (!row?.id) {
-    proxy?.$modal?.msgWarning('鏈幏鍙栧埌鍗曟嵁ID')
+    proxy?.$modal?.msgWarning?.('鏈幏鍙栧埌鍗曟嵁ID')
     return
   }
   detailVisible.value = true
@@ -257,7 +287,7 @@
       payload.purchaseReturnOrderProductsDetailVoList.map(item => ({ ...item, ...item.salesLedgerProduct })) ||
       []
   }).catch(() => {
-    proxy?.$modal?.msgError('鑾峰彇璇︽儏澶辫触')
+    proxy?.$modal?.msgError?.('鑾峰彇璇︽儏澶辫触')
   }).finally(() => {
     detailLoading.value = false
   })

--
Gitblit v1.9.3