style:出库单据-托盘码逻辑优化

main
黄伟杰 2 weeks ago
parent aa0eca7ede
commit b5a5f6e4c3

@ -128,7 +128,8 @@
<template #default="{ row, $index }"> <template #default="{ row, $index }">
<el-form-item :prop="`${$index}.pallets`" :rules="formRules.pallets" class="mb-0px!"> <el-form-item :prop="`${$index}.pallets`" :rules="formRules.pallets" class="mb-0px!">
<el-input v-model="row.palletCode" readonly :clearable="!disabled" <el-input v-model="row.palletCode" readonly :clearable="!disabled"
:placeholder="t('ErpStock.Item.placeholderPalletCode')" @click="openPalletSelectDialog(row)" :disabled="isPalletCodeInputDisabled(row)"
:placeholder="getPalletCodePlaceholder(row)" @click="openPalletSelectDialog(row)"
@clear="clearPallet(row)" /> @clear="clearPallet(row)" />
</el-form-item> </el-form-item>
</template> </template>
@ -1026,7 +1027,21 @@ const handleOutModeChange = (row: any) => {
clearPallet(row) clearPallet(row)
} }
const isPalletCodeInputDisabled = (row: any) => {
return !props.disabled && !row?.productId
}
const getPalletCodePlaceholder = (row: any) => {
return isPalletCodeInputDisabled(row)
? t('ErpStock.Item.placeholderProduct')
: t('ErpStock.Item.placeholderPalletCode')
}
const openPalletSelectDialog = async (row: any) => { const openPalletSelectDialog = async (row: any) => {
if (isPalletCodeInputDisabled(row)) {
message.warning(t('ErpStock.Item.placeholderProduct'))
return
}
currentSelectRow.value = row currentSelectRow.value = row
selectedPalletRows.value = getInitialSelectedPalletRows(row) selectedPalletRows.value = getInitialSelectedPalletRows(row)
await loadRowsWarehouseAreas(selectedPalletRows.value) await loadRowsWarehouseAreas(selectedPalletRows.value)
@ -1160,7 +1175,12 @@ const handlePalletPackageCountChange = (value: number | undefined, pallet: any)
const packageCount = Number(value) const packageCount = Number(value)
if (!Number.isFinite(packageCount) || packageCount <= availablePackageCount) return if (!Number.isFinite(packageCount) || packageCount <= availablePackageCount) return
pallet.packageCount = availablePackageCount pallet.packageCount = availablePackageCount
message.alertWarning(t('ErpStock.Item.outPackageCountExceededWarning', { count: availablePackageCount })) message.alertWarning(
t('ErpStock.Item.outPackageCountExceededWarning', {
code: pallet?.code || '-',
count: availablePackageCount
})
)
} }
const getPalletOutCount = (pallet: any) => { const getPalletOutCount = (pallet: any) => {

Loading…
Cancel
Save