From 6f0ffcf4a6e75ac3a76c6cfd75e02de3a17d46e3 Mon Sep 17 00:00:00 2001
From: 647556386 <647556386@qq.com>
Date: 星期二, 31 三月 2026 10:05:32 +0800
Subject: [PATCH] 同库区移库
---
项目代码/WIDESEA_WMSClient/src/extension/outbound/extend/NoStockOut.vue | 42 ++++++++++++++++++++++++++++++++++--------
1 files changed, 34 insertions(+), 8 deletions(-)
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WIDESEA_WMSClient/src/extension/outbound/extend/NoStockOut.vue" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WIDESEA_WMSClient/src/extension/outbound/extend/NoStockOut.vue"
index bb63598..9d2333c 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WIDESEA_WMSClient/src/extension/outbound/extend/NoStockOut.vue"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WIDESEA_WMSClient/src/extension/outbound/extend/NoStockOut.vue"
@@ -208,6 +208,21 @@
const outboundInputRef = ref(null);
const purchaseInputRef = ref(null);
+const successAudioSrc = require('@/assets/audio/success.mp3');
+const errorAudioSrc = require('@/assets/audio/error.mp3');
+
+// ========== 浠呮柊澧烇細闊抽鎾斁鍑芥暟锛堟棤鍏朵粬浠g爜鏀瑰姩锛� ==========
+const playAudio = (audioSrc, volume = 0.8) => {
+ try {
+ const audio = new Audio(audioSrc);
+ audio.volume = volume;
+ audio.play().catch(() => {});
+ } catch (e) {}
+};
+const playSuccess = () => playAudio(successAudioSrc);
+const playError = () => playAudio(errorAudioSrc);
+// ========== 闊抽鍑芥暟缁撴潫 ==========
+
// 缁勪欢鎸傝浇鏃惰仛鐒﹀埌鍑哄簱鍗曡緭鍏ユ
onMounted(() => {
nextTick(() => {
@@ -340,6 +355,7 @@
// 鏍稿績鏂板锛氬墠缃牎楠岋紝纭繚鍑哄簱鍗曞凡楠岃瘉
if (!isOutboundVerified.value) {
ElMessage.warning("璇峰厛楠岃瘉鏈夋晥鐨勫嚭搴撳崟鎹彿鍚庡啀鎵弿鏉$爜");
+ playError(); // ========== 浠呮柊澧炶繖涓�琛� ==========
nextTick(() => {
outboundInputRef.value?.focus();
});
@@ -356,6 +372,7 @@
const isDuplicate = scannedBarcodes.value.some(item => item.barcode === barcode);
if (isDuplicate) {
ElMessage.warning(`鏉$爜銆�${barcode}銆戝凡瀛樺湪锛屾棤闇�閲嶅鎵弿`);
+ playError(); // ========== 浠呮柊澧炶繖涓�琛� ==========
formData.barcode = "";
nextTick(() => barcodeInputRef.value?.focus()); // 鍘婚噸鍚庝粛鑱氱劍鏉$爜妗�
return;
@@ -365,13 +382,18 @@
loading.value = true;
// 姝ラ1锛氭煡璇㈤噰璐崟鍙�
- const purchaseOrderNo = await getPurchaseOrderByBarcode(barcode);
- if (purchaseOrderNo) {
- orderForm.purchaseOrderNo = purchaseOrderNo;
- } else {
- ElMessage.info("鏈煡璇㈠埌璇ユ潯鐮佸搴旂殑閲囪喘鍗曞彿锛岀户缁獙璇佹潯鐮佹湁鏁堟��");
- formData.barcode = "";
- nextTick(() => barcodeInputRef.value?.focus());
+ let purchaseOrderNo = '';
+ try {
+ purchaseOrderNo = await getPurchaseOrderByBarcode(barcode);
+ if (purchaseOrderNo) {
+ orderForm.purchaseOrderNo = purchaseOrderNo;
+ } else {
+ ElMessage.info("鏈煡璇㈠埌璇ユ潯鐮佸搴旂殑閲囪喘鍗曞彿锛岀户缁獙璇佹潯鐮佹湁鏁堟��");
+ playError(); // ========== 浠呮柊澧炶繖涓�琛� ==========
+ }
+ } catch (error) {
+ ElMessage.info("鏈煡璇㈠埌璇ユ潯鐮佸搴旂殑閲囪喘鍗曞彿锛岀户缁獙璇佹潯鐮佹湁鏁堟�э細" + error.message);
+ playError(); // ========== 浠呮柊澧炶繖涓�琛� ==========
}
// 姝ラ2锛氶獙璇佹潯鐮佸苟鑾峰彇鐗╂枡淇℃伅
@@ -384,6 +406,7 @@
if (validateRes.status === true) {
if (!Array.isArray(validateRes.data) || validateRes.data.length === 0) {
ElMessage.warning("璇ユ潯鐮侀獙璇佹垚鍔燂紝浣嗘湭杩斿洖鐗╂枡淇℃伅");
+ playError(); // ========== 浠呮柊澧炶繖涓�琛� ==========
formData.barcode = "";
nextTick(() => barcodeInputRef.value?.focus());
} else {
@@ -398,15 +421,18 @@
}));
scannedBarcodes.value.push(...newItems);
ElMessage.success(`鎵弿鎴愬姛锛屾柊澧� ${newItems.length} 鏉$墿鏂欎俊鎭紝绱 ${scannedBarcodes.value.length} 鏉);
+ playSuccess(); // ========== 浠呮柊澧炶繖涓�琛� ==========
formData.barcode = "";
}
} else {
- ElMessage.error("鎵弿澶辫触锛�" + (validateRes.message || '鏉$爜楠岃瘉澶辫触'));
+
+ playError(); // ========== 浠呮柊澧炶繖涓�琛� ==========
formData.barcode = "";
nextTick(() => barcodeInputRef.value?.focus());
}
} catch (error) {
ElMessage.error(error.message);
+ playError(); // ========== 浠呮柊澧炶繖涓�琛� ==========
formData.barcode = "";
nextTick(() => barcodeInputRef.value?.focus());
} finally {
--
Gitblit v1.9.3