From a3057955f855b8a266c017df00645845e7471410 Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期五, 07 八月 2026 18:01:59 +0800
Subject: [PATCH] 银川 1.不合格品处理页面开发联调 2.招投标管理 - 可配置版前端联调方案
---
src/views/wls/stocktaking/plan/components/condition-value-input.vue | 30 +++++++++++++++++++++---------
1 files changed, 21 insertions(+), 9 deletions(-)
diff --git a/src/views/wls/stocktaking/plan/components/condition-value-input.vue b/src/views/wls/stocktaking/plan/components/condition-value-input.vue
index d38c9de..1ad1dfc 100644
--- a/src/views/wls/stocktaking/plan/components/condition-value-input.vue
+++ b/src/views/wls/stocktaking/plan/components/condition-value-input.vue
@@ -1,7 +1,7 @@
<script lang="ts" setup>
import type { NumberDictDataType } from '@vben/hooks';
-import { ref, watch } from 'vue';
+import { computed, ref, watch } from 'vue';
import { DICT_TYPE, WlsStockTakingParamTypeEnum } from '@vben/constants';
import { getDictOptions } from '@vben/hooks';
@@ -24,16 +24,19 @@
defineProps<{
modelValue?: number;
type?: number;
+ value?: number;
valueCode?: string;
}>(),
{
modelValue: undefined,
type: undefined,
+ value: undefined,
valueCode: undefined,
},
);
const emit = defineEmits<{
'update:modelValue': [value?: number];
+ 'update:value': [value?: number];
valueChange: [
payload: { valueCode?: string; valueId?: number; valueName?: string },
];
@@ -44,6 +47,9 @@
'number',
) as NumberDictDataType[];
+/** 鍏煎 VbenForm 榛樿 v-model prop ('value') 鍜� Vue 3 鏍囧噯 ('modelValue') */
+const effectiveValue = computed(() => props.value ?? props.modelValue);
+
const locationWarehouseId = ref<number>(); // 搴撳尯閫夋嫨鍣ㄤ复鏃舵暟鎹細閫変粨搴撳悗浼犵粰搴撳尯閫夋嫨鍣�
const areaWarehouseId = ref<number>(); // 搴撲綅閫夋嫨鍣ㄤ复鏃舵暟鎹細閫変粨搴撳悗浼犵粰搴撳尯閫夋嫨鍣�
const areaLocationId = ref<number>(); // 搴撲綅閫夋嫨鍣ㄤ复鏃舵暟鎹細閫夊簱鍖哄悗浼犵粰搴撲綅閫夋嫨鍣�
@@ -53,6 +59,7 @@
/** 閫氱敤閫夋嫨鍣ㄥ彉鍖栵細鍥炲~鏉′欢鍊肩紪鐮併�佸悕绉� */
function handleSelectorChange(item?: any) {
emit('update:modelValue', item?.id);
+ emit('update:value', item?.id);
emit('valueChange', {
valueId: item?.id,
valueCode: item?.code || '',
@@ -63,6 +70,7 @@
/** 鎵规閫夋嫨鍣ㄥ彉鍖� */
function handleBatchChange(batch?: any) {
emit('update:modelValue', batch?.id);
+ emit('update:value', batch?.id);
emit('valueChange', {
valueId: batch?.id,
valueCode: batch?.code || '',
@@ -75,6 +83,7 @@
qualityStatusValue.value = value;
const selected = qualityStatusOptions.find((item) => item.value === value);
emit('update:modelValue', undefined);
+ emit('update:value', undefined);
emit('valueChange', {
valueId: undefined,
valueCode: value === null ? '' : String(value),
@@ -85,6 +94,7 @@
/** 搴撳尯浠撳簱閫夋嫨鍥炶皟锛氭竻绌哄簱鍖� */
function handleLocationWarehouseChange() {
emit('update:modelValue', undefined);
+ emit('update:value', undefined);
emit('valueChange', { valueId: undefined, valueCode: '', valueName: '' });
}
@@ -92,12 +102,14 @@
function handleAreaWarehouseChange() {
areaLocationId.value = undefined;
emit('update:modelValue', undefined);
+ emit('update:value', undefined);
emit('valueChange', { valueId: undefined, valueCode: '', valueName: '' });
}
/** 搴撲綅搴撳尯閫夋嫨鍥炶皟锛氭竻绌哄簱浣� */
function handleAreaLocationChange() {
emit('update:modelValue', undefined);
+ emit('update:value', undefined);
emit('valueChange', { valueId: undefined, valueCode: '', valueName: '' });
}
@@ -109,14 +121,14 @@
: undefined;
return;
}
- if (!props.modelValue) {
+ if (!effectiveValue.value) {
return;
}
if (props.type === WlsStockTakingParamTypeEnum.LOCATION) {
- const location = await getWarehouseLocation(props.modelValue);
+ const location = await getWarehouseLocation(effectiveValue.value);
locationWarehouseId.value = location?.warehouseId;
} else if (props.type === WlsStockTakingParamTypeEnum.AREA) {
- const area = await getWarehouseArea(props.modelValue);
+ const area = await getWarehouseArea(effectiveValue.value);
areaWarehouseId.value = area?.warehouseId;
areaLocationId.value = area?.locationId;
}
@@ -139,7 +151,7 @@
<template>
<WmWarehouseSelect
v-if="type === WlsStockTakingParamTypeEnum.WAREHOUSE"
- :model-value="modelValue"
+ :model-value="effectiveValue"
@change="handleSelectorChange"
/>
<div
@@ -153,7 +165,7 @@
/>
<WmWarehouseLocationSelect
v-if="locationWarehouseId"
- :model-value="modelValue"
+ :model-value="effectiveValue"
:warehouse-id="locationWarehouseId"
placeholder="璇烽�夋嫨搴撳尯"
@change="handleSelectorChange"
@@ -177,7 +189,7 @@
/>
<WmWarehouseAreaSelect
v-if="areaLocationId"
- :model-value="modelValue"
+ :model-value="effectiveValue"
:location-id="areaLocationId"
placeholder="璇烽�夋嫨搴撲綅"
@change="handleSelectorChange"
@@ -185,12 +197,12 @@
</div>
<MdItemSelect
v-else-if="type === WlsStockTakingParamTypeEnum.ITEM"
- :model-value="modelValue"
+ :model-value="effectiveValue"
@change="handleSelectorChange"
/>
<WmBatchSelect
v-else-if="type === WlsStockTakingParamTypeEnum.BATCH"
- :model-value="modelValue"
+ :model-value="effectiveValue"
@change="handleBatchChange"
/>
<Select
--
Gitblit v1.9.3