From 9279a9aa47b462510408a0648a6ccb8b79ec5cb6 Mon Sep 17 00:00:00 2001
From: spring <2396852758@qq.com>
Date: 星期二, 17 三月 2026 15:18:52 +0800
Subject: [PATCH] fix: 仓储物流展示除耗材外的数据,耗材物料展示耗材的数据。两边菜单数据需要区分开来。
---
src/pages/consumablesLogistics/stockManagement/add.vue | 4 ++--
src/pages/inventoryManagement/stockManagement/add.vue | 12 +++++++++++-
src/pages/consumablesLogistics/stockManagement/subtract.vue | 12 ++++++++++++
src/pages/inventoryManagement/stockManagement/subtract.vue | 13 ++++++++++++-
4 files changed, 37 insertions(+), 4 deletions(-)
diff --git a/src/pages/consumablesLogistics/stockManagement/add.vue b/src/pages/consumablesLogistics/stockManagement/add.vue
index fb36b60..ed14b7d 100644
--- a/src/pages/consumablesLogistics/stockManagement/add.vue
+++ b/src/pages/consumablesLogistics/stockManagement/add.vue
@@ -74,7 +74,7 @@
<text class="popup-title">閫夋嫨浜у搧</text>
</view>
<view class="popup-search">
- <up-input v-model="productQuery.productName" placeholder="浜у搧澶х被" clearable />
+ <up-input v-model="productQuery.productName" placeholder="浜у搧澶х被" disabled />
<up-input v-model="productQuery.model" placeholder="鍨嬪彿鍚嶇О" clearable />
<view class="popup-search-btn" @click="loadProductList">鎼滅储</view>
</view>
@@ -138,7 +138,7 @@
const showProductPopup = ref(false);
const productQuery = reactive({
- productName: "",
+ productName: "鑰楁潗",
model: "",
});
const productList = ref([]);
diff --git a/src/pages/consumablesLogistics/stockManagement/subtract.vue b/src/pages/consumablesLogistics/stockManagement/subtract.vue
index 5e688bf..81fea14 100644
--- a/src/pages/consumablesLogistics/stockManagement/subtract.vue
+++ b/src/pages/consumablesLogistics/stockManagement/subtract.vue
@@ -164,6 +164,18 @@
uni.showToast({ title: `璇疯緭鍏� 1~${stockRecord.unLockedQuantity} 涔嬮棿鐨勬暟閲廯, icon: "none" });
return;
}
+ const net = Number(form.netWeight);
+ if (!isNaN(net) && net > 0) {
+ const max = Number(stockRecord.unLockedQuantity) || 0;
+ if (max > 0 && net > max) {
+ uni.showToast({ title: `鍑�閲嶄笉鑳藉ぇ浜庡彲鐢ㄥ簱瀛� ${max}`, icon: "none" });
+ return;
+ }
+ if (net > outNum) {
+ uni.showToast({ title: `鍑�閲嶄笉鑳藉ぇ浜庡嚭搴撴暟閲� ${outNum}`, icon: "none" });
+ return;
+ }
+ }
const api = isQualified.value ? subtractConsumablesIn : subtractConsumablesUnInventory;
api({
id: stockRecord.id,
diff --git a/src/pages/inventoryManagement/stockManagement/add.vue b/src/pages/inventoryManagement/stockManagement/add.vue
index 6c69d85..f8c698f 100644
--- a/src/pages/inventoryManagement/stockManagement/add.vue
+++ b/src/pages/inventoryManagement/stockManagement/add.vue
@@ -202,7 +202,12 @@
})
.then(res => {
const data = res?.records || res?.data?.records || []
- productList.value = Array.isArray(data) ? data : []
+ const list = Array.isArray(data) ? data : []
+ // 杩囨护鑰楁潗锛氳�楁潗涓嶅厑璁稿湪鈥滀骇鍝佸簱瀛樷�濆叆搴�
+ productList.value = list.filter(item => {
+ const parentName = item?.parentName || item?.parent?.name || ''
+ return parentName !== '鑰楁潗'
+ })
})
.finally(() => {
productLoading.value = false
@@ -210,6 +215,11 @@
}
const selectProduct = (item) => {
+ const parentName = item?.parentName || item?.parent?.name || ''
+ if (parentName === '鑰楁潗') {
+ uni.showToast({ title: '鑰楁潗璇峰埌鑰楁潗搴撳瓨鍏ュ簱', icon: 'none' })
+ return
+ }
form.productId = item.productId || item.id
form.productModelId = item.id
form.productName = item.productName
diff --git a/src/pages/inventoryManagement/stockManagement/subtract.vue b/src/pages/inventoryManagement/stockManagement/subtract.vue
index 4970275..1a7ebf7 100644
--- a/src/pages/inventoryManagement/stockManagement/subtract.vue
+++ b/src/pages/inventoryManagement/stockManagement/subtract.vue
@@ -87,7 +87,7 @@
</template>
<script setup>
-import { ref, reactive, watch } from 'vue'
+import { ref, reactive, watch, computed } from 'vue'
import { onLoad } from '@dcloudio/uni-app'
import dayjs from 'dayjs'
import PageHeader from '@/components/PageHeader.vue'
@@ -127,6 +127,12 @@
const type = ref('0') // 0 鍚堟牸搴撳瓨锛�1 涓嶅悎鏍煎簱瀛�
const showWeighingDatePicker = ref(false)
const weighingDateValue = ref(Date.now())
+
+const maxAllowedNetWeight = computed(() => {
+ const v = form.unLockedQuantity ?? form.qualitity
+ const n = Number(v)
+ return !isNaN(n) ? n : 0
+})
onLoad((options) => {
if (options && options.type != null) {
@@ -183,6 +189,11 @@
uni.showToast({ title: '璁板綍淇℃伅缂哄け锛屾棤娉曞嚭搴�', icon: 'none' })
return
}
+ const net = Number(form.netWeight)
+ if (!isNaN(net) && net > 0 && maxAllowedNetWeight.value > 0 && net > maxAllowedNetWeight.value) {
+ uni.showToast({ title: `鍑�閲嶄笉鑳藉ぇ浜庡彲鐢ㄥ簱瀛� ${maxAllowedNetWeight.value}`, icon: 'none' })
+ return
+ }
const payload = { ...form }
const api = type.value === '0' ? subtractStockInventory : subtractStockUnInventory
api(payload)
--
Gitblit v1.9.3