From d53d9ce404fb0b53c2c6ac0841f121c7bac0eff4 Mon Sep 17 00:00:00 2001
From: spring <2396852758@qq.com>
Date: 星期二, 31 三月 2026 09:16:29 +0800
Subject: [PATCH] fix: 仓储管理添加批号
---
src/views/inventoryManagement/dispatchLog/Record.vue | 34 +++++++-
src/views/inventoryManagement/stockManagement/New.vue | 64 +++++++++++++++
src/views/inventoryManagement/stockManagement/Qualified.vue | 20 +++++
src/views/inventoryManagement/stockManagement/Unqualified.vue | 20 +++++
src/views/inventoryManagement/stockReport/index.vue | 28 +++++-
src/views/inventoryManagement/receiptManagement/Record.vue | 18 ++++
6 files changed, 168 insertions(+), 16 deletions(-)
diff --git a/src/views/inventoryManagement/dispatchLog/Record.vue b/src/views/inventoryManagement/dispatchLog/Record.vue
index 57f1d04..3860bb2 100644
--- a/src/views/inventoryManagement/dispatchLog/Record.vue
+++ b/src/views/inventoryManagement/dispatchLog/Record.vue
@@ -29,7 +29,7 @@
<div>
<el-button @click="handleOut">瀵煎嚭</el-button>
<el-button type="danger" plain @click="handleDelete">鍒犻櫎</el-button>
- <el-button type="primary" plain @click="handlePrint">鎵撳嵃</el-button>
+ <!-- <el-button type="primary" plain @click="handlePrint">鎵撳嵃</el-button> -->
</div>
</div>
<div class="table_list">
@@ -45,12 +45,30 @@
>
<el-table-column align="center" type="selection" width="55" />
<el-table-column align="center" label="搴忓彿" type="index" width="60" />
- <el-table-column
+ <!-- <el-table-column
label="鍑哄簱鎵规"
prop="outboundBatches"
min-width="100"
show-overflow-tooltip
- />
+ /> -->
+ <el-table-column
+ label="鎵瑰彿"
+ min-width="120"
+ show-overflow-tooltip
+ >
+ <template #default="scope">
+ {{ scope.row.batchNo || "" }}
+ </template>
+ </el-table-column>
+ <el-table-column
+ label="渚涘簲鍟�"
+ min-width="160"
+ show-overflow-tooltip
+ >
+ <template #default="scope">
+ {{ scope.row.supplierName || scope.row.customer || "" }}
+ </template>
+ </el-table-column>
<el-table-column
label="鍑哄簱鏃ユ湡"
prop="createTime"
@@ -424,8 +442,14 @@
</div>
</div>
<div class="info-row">
- <span class="label">鍗曞彿锛�</span>
- <span class="value">${item.code || ''}</span>
+ <div>
+ <span class="label">鎵瑰彿锛�</span>
+ <span class="value">${item.batchNo || item.outboundBatches || ''}</span>
+ </div>
+ <div>
+ <span class="label">鍗曞彿锛�</span>
+ <span class="value">${item.code || ''}</span>
+ </div>
</div>
</div>
diff --git a/src/views/inventoryManagement/receiptManagement/Record.vue b/src/views/inventoryManagement/receiptManagement/Record.vue
index 6e904ec..3715fb5 100644
--- a/src/views/inventoryManagement/receiptManagement/Record.vue
+++ b/src/views/inventoryManagement/receiptManagement/Record.vue
@@ -54,10 +54,24 @@
label="搴忓彿"
type="index"
width="60"/>
- <el-table-column label="鍏ュ簱鎵规"
+ <!-- <el-table-column label="鍏ュ簱鎵规"
prop="inboundBatches"
width="280"
- show-overflow-tooltip/>
+ show-overflow-tooltip/> -->
+ <el-table-column label="鎵瑰彿"
+ min-width="160"
+ show-overflow-tooltip>
+ <template #default="scope">
+ {{ scope.row.batchNo || '' }}
+ </template>
+ </el-table-column>
+ <el-table-column label="渚涘簲鍟�"
+ min-width="200"
+ show-overflow-tooltip>
+ <template #default="scope">
+ {{ scope.row.supplierName || scope.row.customer || '' }}
+ </template>
+ </el-table-column>
<el-table-column label="鍏ュ簱鏃堕棿"
prop="createTime"
show-overflow-tooltip/>
diff --git a/src/views/inventoryManagement/stockManagement/New.vue b/src/views/inventoryManagement/stockManagement/New.vue
index 1f86fd6..913c3fd 100644
--- a/src/views/inventoryManagement/stockManagement/New.vue
+++ b/src/views/inventoryManagement/stockManagement/New.vue
@@ -37,6 +37,35 @@
<el-input v-model="formState.unit" disabled />
</el-form-item>
+ <el-form-item label="鎵瑰彿" prop="batchNo" :rules="[{ required: true, message: '璇疯緭鍏ユ壒鍙�', trigger: 'blur' }]">
+ <el-input v-model="formState.batchNo" placeholder="璇疯緭鍏ユ壒鍙�" clearable />
+ </el-form-item>
+
+ <el-form-item
+ label="渚涘簲鍟�"
+ prop="customer"
+ :rules="[{ required: true, message: '璇烽�夋嫨渚涘簲鍟�', trigger: 'change' }]"
+ >
+ <el-select
+ v-model="formState.customer"
+ placeholder="璇烽�夋嫨渚涘簲鍟�"
+ filterable
+ clearable
+ allow-create
+ :reserve-keyword="true"
+ :default-first-option="false"
+ >
+ <el-option
+ v-for="item in supplierList"
+ :key="item.id"
+ :label="item.supplierName"
+ :value="item.supplierName"
+ >
+ {{ item.supplierName}}
+ </el-option>
+ </el-select>
+ </el-form-item>
+
<el-form-item
label="搴撳瓨鏁伴噺"
prop="qualitity"
@@ -74,10 +103,11 @@
</template>
<script setup>
-import {ref, computed, getCurrentInstance} from "vue";
+import {ref, computed, getCurrentInstance, watch} from "vue";
import ProductSelectDialog from "@/views/basicData/product/ProductSelectDialog.vue";
import {createStockInventory} from "@/api/inventoryManagement/stockInventory.js";
import {createStockUnInventory} from "@/api/inventoryManagement/stockUninventory.js";
+import {getOptions as getSupplierOptions} from "@/api/procurementManagement/procurementLedger.js";
const props = defineProps({
visible: {
@@ -101,6 +131,8 @@
productName: "",
productModelName: "",
unit: "",
+ batchNo: "",
+ customer: "",
qualitity: 0,
warnNum: 0,
remark: '',
@@ -126,11 +158,39 @@
productModelId: undefined,
productName: "",
productModelName: "",
- description: '',
+ unit: "",
+ batchNo: "",
+ customer: "",
+ qualitity: 0,
+ warnNum: 0,
+ remark: '',
};
isShow.value = false;
};
+const supplierList = ref([]);
+
+const loadSuppliers = async () => {
+ try {
+ const res = await getSupplierOptions();
+ // 澶嶇敤閲囪喘鍙拌处绛涢�夐�昏緫锛歩sWhite=0 鐨勪緵搴斿晢
+ supplierList.value = (res?.data || []).filter(item => item.isWhite === 0);
+ } catch (e) {
+ console.error("鑾峰彇渚涘簲鍟嗗垪琛ㄥけ璐�:", e);
+ supplierList.value = [];
+ }
+};
+
+watch(
+ () => props.visible,
+ (val) => {
+ if (val) {
+ loadSuppliers();
+ }
+ },
+ { immediate: true }
+);
+
// 浜у搧閫夋嫨澶勭悊
const handleProductSelect = async (products) => {
if (products && products.length > 0) {
diff --git a/src/views/inventoryManagement/stockManagement/Qualified.vue b/src/views/inventoryManagement/stockManagement/Qualified.vue
index e255778..bcdf9bd 100644
--- a/src/views/inventoryManagement/stockManagement/Qualified.vue
+++ b/src/views/inventoryManagement/stockManagement/Qualified.vue
@@ -7,6 +7,21 @@
style="width: 240px"
placeholder="璇疯緭鍏�"
clearable/>
+ <span class="search_title ml10" style="margin-left: 20px">瑙勬牸鍨嬪彿锛�</span>
+ <el-input v-model="searchForm.model"
+ style="width: 240px"
+ placeholder="璇疯緭鍏�"
+ clearable/>
+ <span class="search_title ml10" style="margin-left: 20px">UID鐮侊細</span>
+ <el-input v-model="searchForm.uidNo"
+ style="width: 200px"
+ placeholder="璇疯緭鍏�"
+ clearable/>
+ <span class="search_title ml10" style="margin-left: 20px">鎵规鍙凤細</span>
+ <el-input v-model="searchForm.batchNo"
+ style="width: 200px"
+ placeholder="璇疯緭鍏�"
+ clearable/>
<el-button type="primary" @click="handleQuery" style="margin-left: 10px">鎼滅储</el-button>
</div>
<div>
@@ -26,6 +41,8 @@
<el-table-column label="浜у搧澶х被" prop="productName" show-overflow-tooltip />
<el-table-column label="瑙勬牸鍨嬪彿" prop="model" show-overflow-tooltip />
<el-table-column label="UID鐮�" prop="uidNo" show-overflow-tooltip />
+ <el-table-column label="鎵瑰彿" prop="batchNo" show-overflow-tooltip />
+ <el-table-column label="渚涘簲鍟�" prop="customer" show-overflow-tooltip />
<el-table-column label="鍗曚綅" prop="unit" show-overflow-tooltip />
<el-table-column label="搴撳瓨鏁伴噺" prop="qualitity" show-overflow-tooltip />
<el-table-column label="鍐荤粨鏁伴噺" prop="lockedQuantity" show-overflow-tooltip />
@@ -100,6 +117,9 @@
const data = reactive({
searchForm: {
productName: '',
+ model: '',
+ uidNo: '',
+ batchNo: '',
}
})
const { searchForm } = toRefs(data)
diff --git a/src/views/inventoryManagement/stockManagement/Unqualified.vue b/src/views/inventoryManagement/stockManagement/Unqualified.vue
index 6214f39..a5c22ba 100644
--- a/src/views/inventoryManagement/stockManagement/Unqualified.vue
+++ b/src/views/inventoryManagement/stockManagement/Unqualified.vue
@@ -7,6 +7,21 @@
style="width: 240px"
placeholder="璇疯緭鍏�"
clearable/>
+ <span class="search_title ml10" style="margin-left: 20px">瑙勬牸鍨嬪彿锛�</span>
+ <el-input v-model="searchForm.model"
+ style="width: 240px"
+ placeholder="璇疯緭鍏�"
+ clearable/>
+ <span class="search_title ml10" style="margin-left: 20px">UID鐮侊細</span>
+ <el-input v-model="searchForm.uidNo"
+ style="width: 200px"
+ placeholder="璇疯緭鍏�"
+ clearable/>
+ <span class="search_title ml10" style="margin-left: 20px">鎵规鍙凤細</span>
+ <el-input v-model="searchForm.batchNo"
+ style="width: 200px"
+ placeholder="璇疯緭鍏�"
+ clearable/>
<el-button type="primary" @click="handleQuery" style="margin-left: 10px">鎼滅储</el-button>
</div>
<div>
@@ -23,6 +38,8 @@
<el-table-column label="浜у搧澶х被" prop="productName" show-overflow-tooltip />
<el-table-column label="瑙勬牸鍨嬪彿" prop="model" show-overflow-tooltip />
<el-table-column label="UID鐮�" prop="uidNo" show-overflow-tooltip />
+ <el-table-column label="鎵瑰彿" prop="batchNo" show-overflow-tooltip />
+ <el-table-column label="渚涘簲鍟�" prop="customer" show-overflow-tooltip />
<el-table-column label="鍗曚綅" prop="unit" show-overflow-tooltip />
<el-table-column label="搴撳瓨鏁伴噺" prop="qualitity" show-overflow-tooltip />
<el-table-column label="鍐荤粨鏁伴噺" prop="lockedQuantity" show-overflow-tooltip />
@@ -89,6 +106,9 @@
const data = reactive({
searchForm: {
productName: '',
+ model: '',
+ uidNo: '',
+ batchNo: '',
}
})
const { searchForm } = toRefs(data)
diff --git a/src/views/inventoryManagement/stockReport/index.vue b/src/views/inventoryManagement/stockReport/index.vue
index 90198ef..86252a6 100644
--- a/src/views/inventoryManagement/stockReport/index.vue
+++ b/src/views/inventoryManagement/stockReport/index.vue
@@ -168,13 +168,27 @@
show-overflow-tooltip
v-if="searchForm.reportType !== 'inout'"
/>
- <el-table-column
- label="鍏ュ簱鎵规"
- prop="inboundBatches"
- width="240"
- show-overflow-tooltip
- v-if="searchForm.reportType !== 'inout'"
- />
+ <el-table-column
+ label="鎵瑰彿"
+ width="240"
+ show-overflow-tooltip
+ v-if="searchForm.reportType !== 'inout'"
+ >
+ <template #default="scope">
+ {{ scope.row.batchNo || scope.row.inboundBatches || "" }}
+ </template>
+ </el-table-column>
+ <el-table-column
+ label="渚涘簲鍟�"
+ prop="supplierName"
+ min-width="200"
+ show-overflow-tooltip
+ v-if="searchForm.reportType !== 'inout'"
+ >
+ <template #default="scope">
+ {{ scope.row.supplierName || scope.row.customer || "" }}
+ </template>
+ </el-table-column>
<el-table-column
label="浜у搧澶х被"
prop="productName"
--
Gitblit v1.9.3