From 75d99a1160ca9bc5e13590b769b7b8f793b698ff Mon Sep 17 00:00:00 2001
From: huminmin <mac@MacBook-Pro.local>
Date: 星期一, 26 一月 2026 13:21:12 +0800
Subject: [PATCH] 库存管理和采购管理增加删除

---
 src/views/procureMent/index.vue |   64 ++++++++++++++++++++++++-------
 1 files changed, 49 insertions(+), 15 deletions(-)

diff --git a/src/views/procureMent/index.vue b/src/views/procureMent/index.vue
index 5427783..fa58789 100644
--- a/src/views/procureMent/index.vue
+++ b/src/views/procureMent/index.vue
@@ -76,12 +76,19 @@
   delPR
 } from "@/api/procureMent";
 import { useDelete } from "@/hooks/useDelete";
-
+const userStore = useUserStore();
 import useUserStore from "@/store/modules/user";
+let userList = ref([]);
+userStore.getUserList().then((res) => {
+  userList.value = res;
+});
 // 寮曞叆瀛楀吀鏁版嵁
 const { proxy } = getCurrentInstance();
 const dialogFormVisible = ref(false);
-const form = ref({});
+const form = ref({
+  taxRate: 13,
+  freight: 20,
+});
 const title = ref("");
 // 鐘舵�佸彉閲�
 const loading = ref(false);
@@ -106,10 +113,12 @@
 // 鏂规硶瀹氫箟
 const handleQuery = () => {
   loading.value = true;
+	current.value = 1;
+	pageSize.value = 10;
   // 杩欓噷娣诲姞瀹為檯鐨勬煡璇㈤�昏緫
   getList();
 };
-const userStore = useUserStore();
+
 // 鑾峰彇鐢ㄦ埛淇℃伅
 const userInfo = ref({});
 onMounted(async () => {
@@ -146,9 +155,16 @@
   { prop: "purchaseQuantity", label: "閲囪喘鏁伴噺", minWidth: 100 },
   { prop: "priceIncludingTax", label: "鍗曚环锛堝惈绋庯級", minWidth: 150 },
   { prop: "totalPriceIncludingTax", label: "鎬讳环锛堝惈绋庯級", minWidth: 100 },
+  { prop: "freight", label: "杩愯垂", minWidth: 100 },
   { prop: "taxRate", label: "绋庣巼", minWidth: 100 },
   { prop: "priceExcludingTax", label: "涓嶅惈绋庡崟浠�", minWidth: 100 },
-  { prop: "registrantId", label: "鐧昏浜�", minWidth: 100 },
+  { prop: "registrantId", label: "鐧昏浜�", minWidth: 100,
+    formatter: (row) => {
+      // 鍖归厤鐢ㄦ埛淇℃伅
+      const user = userList.value.find((user) => user.userId === row.registrantId);
+      return user ? user.nickName : "鏈煡鐢ㄦ埛";
+    },
+  },
   { prop: "registrationDate", label: "鐧昏鏃ユ湡", minWidth: 100 },
 ]);
 
@@ -196,6 +212,7 @@
     // 瑙﹀彂ref閲岄潰鐨勬柟娉�
     return;
   }
+  console.log(userInfo.value)
   // 鏂板缓鏃跺垵濮嬪寲琛ㄥ崟
   form.value = {
     supplierName: "",
@@ -206,8 +223,9 @@
     totalPriceExcludingTax: "",
     priceIncludingTax: "",
     totalPriceIncludingTax: "",
-    taxRate: "",
-    registrantId: userInfo.value.userName,
+    taxRate: 13,
+    freight:20,
+    registrantId: userInfo.value.userId,
     registrationDate: new Date().toISOString().split("T")[0],
   };
   // 鏂板缓鏃朵篃闇�瑕佽缃� copyForm 鐢ㄤ簬閲嶇疆鍔熻兘
@@ -240,17 +258,33 @@
   addOrEdit.value = "viewRow";
   handleAddEdit();
 };
-// 浣跨敤鍒犻櫎缁勫悎寮忓嚱鏁� - 绠�鍖栫増鏈�
-const { handleDeleteBatch: handleDelete } = useDelete({
-  deleteApi: delPR,
-  selectedRows,
-  tableData,
-  total,
-  confirmText: "纭畾鍒犻櫎閫変腑鐨勯噰璐褰曞悧锛�",
-  useLocalUpdate: true
-});
+const handleDelete = () => {
+  if (selectedRows.value.length === 0) {
+    proxy.$modal.msgWarning("璇烽�夋嫨瑕佸垹闄ょ殑鏁版嵁");
+    return;
+  }
+  proxy.$modal
+      .confirm("鏄惁瑕佸垹闄�" +`閫変腑鐨�${selectedRows.value.length}鏉℃暟鎹紵`)
+      .then((res) => {
+        if (res) {
+          delPR(selectedRows.value.map((row) => row.id)).then((res) => {
+            if (res.result.code === 200) {
+              proxy.$modal.msgSuccess("鍒犻櫎鎴愬姛");
+              getList();
+            } else {
+              proxy.$modal.msgError("鍒犻櫎澶辫触锛�" + res.result.msg);
+            }
+          }).finally(() => {
+            handleQuery()
+          })
+        }
+      })
+      .catch(() => {})
+}
+
 const handleDeleteSuccess = (row) => {
   ElMessage.success("鍒犻櫎鎴愬姛锛�" + row.supplierName);
+	handleQuery()
 };
 // 鎴愬姛
 const handleSuccess = (val) => {

--
Gitblit v1.9.3