From c7aebff7f6184b2d8da2669d2db5656e2bc09ec4 Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期二, 21 四月 2026 15:49:45 +0800
Subject: [PATCH] 湟水峡 1.反馈登记删减字段 2.售后服务字段匹配错误问题

---
 src/views/inventoryManagement/receiptManagement/Record.vue |   45 ++++++++++++++++++++++++++++-----------------
 1 files changed, 28 insertions(+), 17 deletions(-)

diff --git a/src/views/inventoryManagement/receiptManagement/Record.vue b/src/views/inventoryManagement/receiptManagement/Record.vue
index 3000a8e..56d4981 100644
--- a/src/views/inventoryManagement/receiptManagement/Record.vue
+++ b/src/views/inventoryManagement/receiptManagement/Record.vue
@@ -22,8 +22,8 @@
                   clearable>
           <el-option v-for="item in stockRecordTypeOptions"
                      :key="item.value"
-                     :label="item.value"
-                     :value="item.key"/>
+                     :label="item.label"
+                     :value="item.value"/>
         </el-select>
         <el-button type="primary"
                    @click="handleQuery"
@@ -108,15 +108,16 @@
   getStockInRecordListPage,
   batchDeleteStockInRecords,
 } from "@/api/inventoryManagement/stockInRecord.js";
-import {findAllStockRecordTypeOptions} from "@/api/basicData/enum.js";
+import {
+  findAllQualifiedStockInRecordTypeOptions, findAllUnQualifiedStockInRecordTypeOptions,
+} from "@/api/basicData/enum.js";
 
 const {proxy} = getCurrentInstance();
 
 const props = defineProps({
-  type: {
-    type: String,
-    required: true,
-    default: '0'
+  productId: {
+    type: [String, Number],
+    default: ''
   }
 })
 
@@ -127,7 +128,7 @@
 const stockRecordTypeOptions = ref([]);
 const page = reactive({
   current: 1,
-  size: 100,
+  size: 10,
 });
 const total = ref(0);
 
@@ -147,7 +148,7 @@
 };
 
 const getRecordType = (recordType) => {
-  return stockRecordTypeOptions.value.find(item => item.key === recordType)?.value || ''
+  return stockRecordTypeOptions.value.find(item => item.value === recordType)?.label || ''
 }
 
 const pageProductChange = obj => {
@@ -158,12 +159,14 @@
 
 const getList = () => {
   tableLoading.value = true;
-  const params = {...page, type: props.type};
+  const params = {...page, topParentProductId: props.productId};
   params.timeStr = searchForm.value.timeStr;
   params.productName = searchForm.value.productName;
+  params.recordType = searchForm.value.recordType;
   getStockInRecordListPage(params)
       .then(res => {
         tableData.value = res.data.records;
+        total.value = res.data.total || 0;
       }).finally(() => {
     tableLoading.value = false;
   })
@@ -171,10 +174,20 @@
 
 // 鑾峰彇鏉ユ簮绫诲瀷閫夐」
 const fetchStockRecordTypeOptions = () => {
-  findAllStockRecordTypeOptions()
-      .then(res => {
-        stockRecordTypeOptions.value = res.data;
-      })
+  // 鍚屾椂鑾峰彇鍚堟牸鍜屼笉鍚堟牸鐨勬潵婧愮被鍨嬮�夐」
+  Promise.all([
+    findAllQualifiedStockInRecordTypeOptions(),
+    findAllUnQualifiedStockInRecordTypeOptions()
+  ]).then(([qualifiedRes, unQualifiedRes]) => {
+    const qualified = qualifiedRes.data || [];
+    const unQualified = unQualifiedRes.data || [];
+    // 鍚堝苟骞跺幓閲�
+    const allOptions = [...qualified, ...unQualified];
+    const uniqueOptions = allOptions.filter((item, index, self) =>
+      index === self.findIndex((t) => t.value === item.value)
+    );
+    stockRecordTypeOptions.value = uniqueOptions;
+  });
 }
 
 // 琛ㄦ牸閫夋嫨鏁版嵁
@@ -192,9 +205,7 @@
     type: "warning",
   })
       .then(() => {
-        // 鏍规嵁涓嶅悓鐨� tab 绫诲瀷璋冪敤涓嶅悓鐨勫鍑烘帴鍙�
-        let exportUrl = "/stockin/export";
-        proxy.download(exportUrl, {}, "鍏ュ簱鍙拌处.xlsx");
+        proxy.download("/stockInRecord/exportStockInRecord", { topParentProductId: props.productId }, "鍏ュ簱鍙拌处.xlsx");
       })
       .catch(() => {
         proxy.$modal.msg("宸插彇娑�");

--
Gitblit v1.9.3