From 214847db4baa5d6612e31f6b30689db84df908a0 Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期一, 12 十月 2026 13:09:04 +0800
Subject: [PATCH] feat(stock): 出库批次下拉增加客户与合同号信息展示
---
src/views/inventoryManagement/stockManagement/OilStockInDialog.vue | 3 -
src/views/inventoryManagement/stockManagement/OilStockOutDialog.vue | 89 +++++++++++++++++++++++++++++++++++++++-----
vite.config.js | 4 +-
3 files changed, 81 insertions(+), 15 deletions(-)
diff --git a/src/views/inventoryManagement/stockManagement/OilStockInDialog.vue b/src/views/inventoryManagement/stockManagement/OilStockInDialog.vue
index 241b416..2cb4ff7 100644
--- a/src/views/inventoryManagement/stockManagement/OilStockInDialog.vue
+++ b/src/views/inventoryManagement/stockManagement/OilStockInDialog.vue
@@ -314,8 +314,7 @@
</el-col>
<el-col :span="12">
<el-form-item label="杞︽寕鐗屽彿"
- prop="trailerPlateNo"
- :rules="[{ required: true, message: '璇疯緭鍏ヨ溅鎸傜墝鍙�', trigger: 'blur' }]">
+ prop="trailerPlateNo">
<el-input v-model="formState.trailerPlateNo"
placeholder="璇疯緭鍏�"
clearable />
diff --git a/src/views/inventoryManagement/stockManagement/OilStockOutDialog.vue b/src/views/inventoryManagement/stockManagement/OilStockOutDialog.vue
index ad3a544..e3b15a1 100644
--- a/src/views/inventoryManagement/stockManagement/OilStockOutDialog.vue
+++ b/src/views/inventoryManagement/stockManagement/OilStockOutDialog.vue
@@ -266,11 +266,23 @@
placeholder="璇烽�夋嫨"
clearable
filterable
+ popper-class="batch-no-select-popper"
style="width: 100%">
+ <!-- 鎵规鍙锋槸閫変腑鍊硷紝瀹㈡埛/鍚堝悓鏄府蹇欒鲸璁ゆ壒娆$殑闄勫姞淇℃伅 -->
<el-option v-for="item in batchNoOptions"
- :key="item"
- :label="item"
- :value="item" />
+ :key="item.batchNo"
+ :label="item.batchNo"
+ :value="item.batchNo">
+ <div class="batch-option">
+ <div class="batch-option-title">{{ item.batchNo }}</div>
+ <div class="batch-option-line">
+ 瀹㈡埛鍚嶇О锛歿{ item.customerName || "--" }}
+ </div>
+ <div class="batch-option-line">
+ 閿�鍞悎鍚屽彿锛歿{ item.salesContractNo || "--" }}
+ </div>
+ </div>
+ </el-option>
</el-select>
</el-form-item>
</el-col>
@@ -482,10 +494,7 @@
</el-col>
<el-col :span="12">
<el-form-item label="杞︽寕鐗屽彿"
- prop="trailerPlateNo"
- :rules="isSalesOut
- ? [{ required: true, message: '璇疯緭鍏ヨ溅鎸傜墝鍙�', trigger: 'blur' }]
- : []">
+ prop="trailerPlateNo">
<el-input v-model="formState.trailerPlateNo"
placeholder="璇疯緭鍏�"
clearable />
@@ -668,7 +677,7 @@
autoOilProduct.value = "";
};
- // 鍑哄簱鎵规鍊欓�夊彇璇ヨ鏍肩殑鍏ュ簱鎵规
+ // 鍑哄簱鎵规鍊欓�夊彇璇ヨ鏍肩殑鍏ュ簱鎵规锛涢櫎鎵规鍙峰杩樺甫鍑烘壒娆$殑瀹㈡埛涓庡悎鍚岋紝渚夸簬杈ㄨ
const batchNoOptions = ref([]);
// 閿�鍞被鍑哄簱鐨勫彲鐢ㄩ噺鎻愮ず锛堜笂娆″墿浣� + 褰撳墠搴撳瓨锛�
const availableQty = ref(null);
@@ -744,9 +753,29 @@
productModelId,
}).then(res => {
const records = res?.data?.records || [];
- batchNoOptions.value = [
- ...new Set(records.map(item => item.batchNo).filter(Boolean)),
- ];
+ // 鍚屼竴鎵规鍙兘鏈夊鏉″簱瀛樿锛屾寜鎵规鍙峰幓閲嶏紝缂哄鎴�/鍚堝悓鐨勭敤鍚屾壒娆″叾瀹冭琛ラ綈
+ const batchMap = new Map();
+ records.forEach(item => {
+ if (!item.batchNo) {
+ return;
+ }
+ const exist = batchMap.get(item.batchNo);
+ if (!exist) {
+ batchMap.set(item.batchNo, {
+ batchNo: item.batchNo,
+ customerName: item.customerName || "",
+ salesContractNo: item.salesContractNo || "",
+ });
+ return;
+ }
+ if (!exist.customerName && item.customerName) {
+ exist.customerName = item.customerName;
+ }
+ if (!exist.salesContractNo && item.salesContractNo) {
+ exist.salesContractNo = item.salesContractNo;
+ }
+ });
+ batchNoOptions.value = [...batchMap.values()];
});
};
@@ -1457,6 +1486,24 @@
}
}
+ // 鍑哄簱鎵规涓嬫媺閫夐」锛氬皬鍗$墖鏍峰紡
+ .batch-option {
+ padding: 8px 10px;
+
+ .batch-option-title {
+ font-size: 14px;
+ font-weight: 600;
+ color: #303133;
+ margin-bottom: 4px;
+ }
+
+ .batch-option-line {
+ font-size: 12px;
+ color: #909399;
+ line-height: 1.8;
+ }
+ }
+
// 閿�鍞彴璐︿笅鎷夐�夐」锛氬皬鍗$墖鏍峰紡
.ledger-option {
padding: 8px 10px;
@@ -1576,4 +1623,24 @@
}
}
}
+
+ // 鍑哄簱鎵规涓嬫媺闈㈡澘锛坆ody 涓嬶紝闇�鍏ㄥ眬鏍峰紡锛�
+ .batch-no-select-popper {
+ .el-select-dropdown__item {
+ height: auto;
+ line-height: normal;
+ padding: 4px 0;
+ }
+
+ .batch-option {
+ border: 1px solid #e4e7ed;
+ border-radius: 6px;
+ background-color: #fafbfc;
+
+ &:hover {
+ border-color: #409eff;
+ background-color: #f0f7ff;
+ }
+ }
+ }
</style>
diff --git a/vite.config.js b/vite.config.js
index fe70c21..a98f3ca 100644
--- a/vite.config.js
+++ b/vite.config.js
@@ -8,11 +8,11 @@
const { VITE_APP_ENV } = env;
const baseUrl =
env.VITE_APP_ENV === "development"
- ? "http://36.213.90.123:9017"
+ ? "http://localhost:7005"
: env.VITE_BASE_API;
const javaUrl =
env.VITE_APP_ENV === "development"
- ? "http://1.15.17.182:9049"
+ ? "http://localhost:7005"
: env.VITE_JAVA_API;
return {
define:{
--
Gitblit v1.9.3