style:产品物料-选择供应商/包装方案-是否默认逻辑优化

main
黄伟杰 10 hours ago
parent 8772c1303f
commit d623f79b6a

@ -289,7 +289,13 @@
<el-table-column :label="t('ErpStock.PackagingScheme.palletTotalQuantity')" prop="palletTotalQuantity" minWidth="120" />
<el-table-column :label="t('FactoryModeling.ProductInformation.dialogDefaultStatusLabel')" width="130" align="center">
<template #default="{ row }">
<el-radio v-model="packagingSchemeDefaultId" :label="row.id">&nbsp;</el-radio>
<el-radio
v-model="packagingSchemeDefaultId"
:label="row.id"
:disabled="!packagingSchemeSelectedRows.some((item) => item.id === row.id)"
>
&nbsp;
</el-radio>
</template>
</el-table-column>
</el-table>
@ -333,9 +339,15 @@
<el-table-column :label="t('ErpPurchase.Supplier.contact')" prop="contact" minWidth="100" />
<el-table-column :label="t('ErpPurchase.Supplier.mobile')" prop="mobile" minWidth="120" />
<el-table-column :label="t('ErpPurchase.Supplier.telephone')" prop="telephone" minWidth="120" />
<el-table-column :label="t('FactoryModeling.ProductInformation.dialogDefaultStatusLabel')" width="130" align="center">
<el-table-column label="是否默认供应商" width="130" align="center">
<template #default="{ row }">
<el-radio v-model="supplierDefaultId" :label="row.id">&nbsp;</el-radio>
<el-radio
v-model="supplierDefaultId"
:label="row.id"
:disabled="!supplierSelectedRows.some((item) => item.id === row.id)"
>
&nbsp;
</el-radio>
</template>
</el-table-column>
</el-table>
@ -662,6 +674,14 @@ const getPackagingSchemeDialogList = async () => {
const handlePackagingSchemeSelectionChange = (selection: any[]) => {
packagingSchemeSelectedRows.value = selection
if (!selection.length) {
packagingSchemeDefaultId.value = undefined
return
}
const selectedIds = selection.map((item) => item.id)
if (selection.length === 1 || !selectedIds.includes(packagingSchemeDefaultId.value)) {
packagingSchemeDefaultId.value = selection[0].id
}
}
const displayPackagingSchemeText = computed(() => {
@ -703,6 +723,9 @@ const confirmPackagingSchemeSelect = () => {
message.warning(t('FactoryModeling.ProductInformation.validatorPackagingSchemeRequired'))
return
}
if (!packagingSchemeDefaultId.value) {
packagingSchemeDefaultId.value = packagingSchemeSelectedRows.value[0].id
}
formData.value.packagingSchemes = packagingSchemeSelectedRows.value.map((row) => ({
packagingSchemeId: row.id,
defaultStatus: row.id === packagingSchemeDefaultId.value ? 1 : 0
@ -764,6 +787,14 @@ const getSupplierDialogList = async () => {
const handleSupplierSelectionChange = (selection: any[]) => {
supplierSelectedRows.value = selection
if (!selection.length) {
supplierDefaultId.value = undefined
return
}
const selectedIds = selection.map((item) => item.id)
if (selection.length === 1 || !selectedIds.includes(supplierDefaultId.value)) {
supplierDefaultId.value = selection[0].id
}
}
const displaySupplierText = computed(() => {
@ -804,6 +835,9 @@ const confirmSupplierSelect = () => {
message.warning(t('FactoryModeling.ProductInformation.validatorSupplierRequired'))
return
}
if (!supplierDefaultId.value) {
supplierDefaultId.value = supplierSelectedRows.value[0].id
}
formData.value.suppliers = supplierSelectedRows.value.map((row) => ({
supplierId: row.id,
defaultStatus: row.id === supplierDefaultId.value ? 1 : 0

Loading…
Cancel
Save