|
|
|
|
@ -301,6 +301,27 @@ const productCascaderOptions = computed(() => {
|
|
|
|
|
return Array.from(map.values())
|
|
|
|
|
})
|
|
|
|
|
|
|
|
|
|
const loadWarehouseList = async () => {
|
|
|
|
|
const categoryType = activeCategoryType.value
|
|
|
|
|
warehouseList.value = await WarehouseApi.getWarehouseSimpleList(categoryType ? { categoryType } : undefined)
|
|
|
|
|
const firstWarehouse = warehouseList.value[0]
|
|
|
|
|
defaultWarehouse.value = firstWarehouse
|
|
|
|
|
const warehouseIds = new Set((warehouseList.value || []).map((item) => item.id))
|
|
|
|
|
formData.value.forEach((row) => {
|
|
|
|
|
if (row.warehouseId && !warehouseIds.has(row.warehouseId)) {
|
|
|
|
|
row.warehouseId = undefined
|
|
|
|
|
row.areaId = undefined
|
|
|
|
|
row.stockCount = 0
|
|
|
|
|
}
|
|
|
|
|
if (!row.warehouseId && firstWarehouse?.id) {
|
|
|
|
|
row.warehouseId = firstWarehouse.id
|
|
|
|
|
row.areaId = undefined
|
|
|
|
|
row.stockCount = 0
|
|
|
|
|
}
|
|
|
|
|
})
|
|
|
|
|
warehouseAreaMap.value = {}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/** 初始化设置入库项 */
|
|
|
|
|
watch(
|
|
|
|
|
() => props.items,
|
|
|
|
|
@ -317,6 +338,7 @@ watch(
|
|
|
|
|
watch(
|
|
|
|
|
() => props.inType,
|
|
|
|
|
async () => {
|
|
|
|
|
await loadWarehouseList()
|
|
|
|
|
if (isProductMaterialStockIn.value) {
|
|
|
|
|
formData.value.forEach((row) => {
|
|
|
|
|
row.inputCount = row.inputCount ?? row.count ?? 1
|
|
|
|
|
@ -601,8 +623,7 @@ defineExpose({ validate, resetItems })
|
|
|
|
|
/** 初始化 */
|
|
|
|
|
onMounted(async () => {
|
|
|
|
|
productList.value = await ProductApi.getProductSimpleList()
|
|
|
|
|
warehouseList.value = await WarehouseApi.getWarehouseSimpleList()
|
|
|
|
|
defaultWarehouse.value = warehouseList.value.find((item) => item.defaultStatus)
|
|
|
|
|
await loadWarehouseList()
|
|
|
|
|
fillProductNames(formData.value)
|
|
|
|
|
if (isProductMaterialStockIn.value) {
|
|
|
|
|
await loadRowsWarehouseAreas(formData.value)
|
|
|
|
|
|