diff --git a/web-admin/src/views/quality-inspection/qc-material/index.vue b/web-admin/src/views/quality-inspection/qc-material/index.vue
index 51ec5706..de2723df 100644
--- a/web-admin/src/views/quality-inspection/qc-material/index.vue
+++ b/web-admin/src/views/quality-inspection/qc-material/index.vue
@@ -52,6 +52,26 @@
已选 {{ selectedRows.length }} 项
+
入库
@@ -1267,6 +1287,23 @@
{ name: 'stockCheck', label: '库存盘点' }
] as const
+ const STOCK_STATUS_PILLS = [
+ { value: 'all', label: '全部' },
+ { value: 'available', label: '未用完' },
+ { value: 'exhausted', label: '已用完' }
+ ] as const
+
+ type StockStatusFilter = (typeof STOCK_STATUS_PILLS)[number]['value']
+
+ const stockStatusFilter = ref('available')
+
+ function handleStockStatusChange(value: StockStatusFilter) {
+ if (stockStatusFilter.value === value) return
+ stockStatusFilter.value = value
+ pagination.page = 1
+ loadData()
+ }
+
const activeTab = ref('list')
const usageTabMounted = ref(false)
const stockCheckTabMounted = ref(false)
@@ -1712,7 +1749,8 @@
page,
pageSize,
keyword: searchForm.keyword || undefined,
- status: searchForm.status || undefined
+ status: searchForm.status || undefined,
+ stockStatus: stockStatusFilter.value
})
)
return all.map(mapQcMaterialExportRow)
@@ -1789,7 +1827,8 @@
page: pagination.page,
pageSize: pagination.pageSize,
keyword: searchForm.keyword || undefined,
- status: searchForm.status || undefined
+ status: searchForm.status || undefined,
+ stockStatus: stockStatusFilter.value
})
tableData.value = res.list || []
pagination.total = res.total ?? 0
@@ -1806,6 +1845,7 @@
function handleReset() {
searchForm.keyword = ''
searchForm.status = ''
+ stockStatusFilter.value = 'available'
pagination.page = 1
loadData()
}
@@ -2444,6 +2484,17 @@