style:入库单据/出库单据-新增/编辑/详情-添加默认供应商展示

main
黄伟杰 1 week ago
parent 470fa694ad
commit 9b6536405d

@ -487,6 +487,7 @@ export default {
inventoryUnit: 'Inventory Unit',
purchaseUnit: 'Purchase Unit',
purchaseUnitConvertQuantity: 'Purchase Convert Qty',
defaultSupplier: 'Supplier (Default)',
inputUnitType: 'Unit Input Type',
inputCount: 'Input Count',
count: 'Quantity',
@ -549,10 +550,19 @@ export default {
}
},
Record: {
id: 'ID',
product: 'Product',
warehouse: 'Warehouse',
bizType: 'Type',
bizNo: 'Business No',
bizDirection: 'Direction',
categoryType: 'Business Type',
productId: 'Product ID',
warehouseId: 'Warehouse ID',
areaId: 'Area ID',
bizId: 'Business ID',
bizItemId: 'Business Item ID',
creator: 'Creator',
categoryProduct: 'Product',
categoryMaterial: 'Material',
categorySpare: 'Spare Part',
@ -562,10 +572,11 @@ export default {
productName: 'Product Name',
categoryName: 'Product Category',
unitName: 'Unit',
warehouseName: 'Warehouse Code',
warehouseName: 'Warehouse Name',
areaName: 'Area Name',
count: 'In/Out Quantity',
totalCount: 'Stock Quantity',
recordTime: 'In/Out Date',
recordTime: 'Operation Time',
createTime: 'Create Date',
creatorName: 'Operator',
placeholderProduct: 'Please select product',

@ -487,6 +487,7 @@ export default {
inventoryUnit: '库存单位',
purchaseUnit: '采购单位',
purchaseUnitConvertQuantity: '采购换算数量',
defaultSupplier: '供应商(默认)',
inputUnitType: '单位输入方式',
inputCount: '录入数量',
count: '数量',
@ -549,10 +550,19 @@ export default {
}
},
Record: {
id: '编号',
product: '产品',
warehouse: '仓库',
bizType: '类型',
bizNo: '业务单号',
bizDirection: '方向',
categoryType: '业务类型',
productId: '产品编号',
warehouseId: '仓库编号',
areaId: '库区编号',
bizId: '业务编号',
bizItemId: '业务项编号',
creator: '创建人',
categoryProduct: '产品',
categoryMaterial: '原料',
categorySpare: '备件',
@ -562,10 +572,11 @@ export default {
productName: '产品名称',
categoryName: '产品分类',
unitName: '产品单位',
warehouseName: '仓库编号',
warehouseName: '仓库名称',
areaName: '库区名称',
count: '出入库数量',
totalCount: '库存量',
recordTime: '出入库日期',
recordTime: '操作时间',
createTime: '创建日期',
creatorName: '操作人',
placeholderProduct: '请选择产品',

@ -73,6 +73,18 @@
/>
</el-select>
</el-form-item>
</el-col>
<el-col v-if="formData.categoryType === 2 || formData.categoryType === 3" :span="12">
<el-form-item :label="t('FactoryModeling.ProductInformation.dialogPurchaseUnitLabel')" prop="purchaseUnitId">
<el-select v-model="formData.purchaseUnitId" clearable :placeholder="t('FactoryModeling.ProductInformation.dialogUnitPlaceholder')" class="w-1/1" @change="handlePurchaseUnitChange">
<el-option
v-for="unit in purchaseUnitOptions"
:key="unit.id"
:label="unit.name"
:value="unit.id"
/>
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item :label="t('FactoryModeling.ProductInformation.dialogStandardLabel')" prop="standard">
@ -165,18 +177,6 @@
<el-input v-model="formData.brand" :placeholder="t('FactoryModeling.ProductInformation.dialogBrandPlaceholder')" />
</el-form-item>
</el-col>
<el-col v-if="formData.categoryType === 2 || formData.categoryType === 3" :span="12">
<el-form-item :label="t('FactoryModeling.ProductInformation.dialogPurchaseUnitLabel')" prop="purchaseUnitId">
<el-select v-model="formData.purchaseUnitId" clearable :placeholder="t('FactoryModeling.ProductInformation.dialogUnitPlaceholder')" class="w-1/1" @change="handlePurchaseUnitChange">
<el-option
v-for="unit in purchaseUnitOptions"
:key="unit.id"
:label="unit.name"
:value="unit.id"
/>
</el-select>
</el-form-item>
</el-col>
<el-col v-if="formData.categoryType === 2 || formData.categoryType === 3" :span="12">
<el-form-item :label="t('FactoryModeling.ProductInformation.dialogPurchaseUnitConvertLabel')" prop="purchaseUnitConvertQuantity">
<el-input-number v-model="formData.purchaseUnitConvertQuantity" :min="1" :precision="0" class="!w-1/1" />

@ -74,6 +74,13 @@
</el-form-item>
</template>
</el-table-column>
<el-table-column v-if="isPurchaseUnitStockIn" :label="t('ErpStock.Item.defaultSupplier')" min-width="130">
<template #default="{ row }">
<el-form-item class="mb-0px!">
<el-input disabled v-model="row.supplierName" />
</el-form-item>
</template>
</el-table-column>
<el-table-column v-if="isPurchaseUnitStockIn" min-width="120">
<template #header>
{{ t('ErpStock.Item.purchaseUnitConvertQuantity') }}
@ -183,6 +190,11 @@
<el-table-column :label="t('ErpStock.Item.category')" prop="subCategoryName" min-width="120" />
<el-table-column :label="t('ErpStock.Item.unit')" prop="unitName" min-width="80" />
<el-table-column v-if="isPurchaseUnitStockIn" :label="t('ErpStock.Item.purchaseUnit')" prop="purchaseUnitName" min-width="100" />
<el-table-column v-if="isPurchaseUnitStockIn" :label="t('ErpStock.Item.defaultSupplier')" min-width="130">
<template #default="{ row }">
{{ getDefaultSupplierName(row) || '-' }}
</template>
</el-table-column>
<el-table-column v-if="isPurchaseUnitStockIn" :label="t('ErpStock.Item.purchaseUnitConvertQuantity')" prop="purchaseUnitConvertQuantity" min-width="120" />
</el-table>
<div class="product-dialog-pagination">
@ -360,6 +372,7 @@ const handleAdd = () => {
productPrice: undefined,
purchaseUnitId: undefined,
purchaseUnitName: undefined,
supplierName: undefined,
purchaseUnitConvertQuantity: undefined,
inputUnitType: isProductStockIn.value ? '个' : undefined,
inputCount: isProductMaterialStockIn.value ? 1 : undefined,
@ -414,10 +427,18 @@ const fillRowByProduct = (row: any, product: any) => {
row.productName = product.name
row.purchaseUnitId = product.purchaseUnitId
row.purchaseUnitName = product.purchaseUnitName
row.supplierName = getDefaultSupplierName(product)
row.purchaseUnitConvertQuantity = product.purchaseUnitConvertQuantity
syncCountByInputCount(row)
}
const getDefaultSupplierName = (product: any) => {
if (!product) return undefined
if (product.supplierName) return product.supplierName
const suppliers = Array.isArray(product.suppliers) ? product.suppliers : []
return suppliers.find((item) => Number(item?.defaultStatus) === 1)?.supplierName
}
const clearProduct = (row: any) => {
row.productUnitName = undefined
row.productBarCode = undefined
@ -426,6 +447,7 @@ const clearProduct = (row: any) => {
row.productName = undefined
row.purchaseUnitId = undefined
row.purchaseUnitName = undefined
row.supplierName = undefined
row.purchaseUnitConvertQuantity = undefined
row.inputCount = isProductMaterialStockIn.value ? undefined : row.inputCount
row.count = isProductMaterialStockIn.value ? undefined : row.count
@ -539,6 +561,7 @@ const fillProductNames = (rows: any[]) => {
row.productPrice = row.productPrice ?? product.minPrice
row.purchaseUnitId = row.purchaseUnitId ?? (product as any).purchaseUnitId
row.purchaseUnitName = row.purchaseUnitName ?? (product as any).purchaseUnitName
row.supplierName = row.supplierName ?? getDefaultSupplierName(product)
row.purchaseUnitConvertQuantity = row.purchaseUnitConvertQuantity ?? (product as any).purchaseUnitConvertQuantity
syncCountByInputCount(row)
})

@ -80,6 +80,13 @@ v-model="row.productId" :options="productCascaderOptions" :props="productCascade
</el-form-item>
</template>
</el-table-column>
<el-table-column v-if="isPurchaseUnitStockOut" :label="t('ErpStock.Item.defaultSupplier')" min-width="130">
<template #default="{ row }">
<el-form-item class="mb-0px!">
<el-input disabled v-model="row.supplierName" />
</el-form-item>
</template>
</el-table-column>
<el-table-column v-if="isPurchaseUnitStockOut" min-width="120">
<template #header>
{{ t('ErpStock.Item.purchaseUnitConvertQuantity') }}
@ -193,6 +200,11 @@ v-loading="productDialogLoading" :data="productDialogList" row-key="id" :stripe=
<el-table-column :label="t('ErpStock.Item.category')" prop="subCategoryName" min-width="120" />
<el-table-column :label="t('ErpStock.Item.unit')" prop="unitName" min-width="80" />
<el-table-column v-if="isPurchaseUnitStockOut" :label="t('ErpStock.Item.purchaseUnit')" prop="purchaseUnitName" min-width="100" />
<el-table-column v-if="isPurchaseUnitStockOut" :label="t('ErpStock.Item.defaultSupplier')" min-width="130">
<template #default="{ row }">
{{ getDefaultSupplierName(row) || '-' }}
</template>
</el-table-column>
<el-table-column v-if="isPurchaseUnitStockOut" :label="t('ErpStock.Item.purchaseUnitConvertQuantity')" prop="purchaseUnitConvertQuantity" min-width="120" />
</el-table>
<div class="product-dialog-pagination">
@ -373,6 +385,7 @@ const handleAdd = () => {
productPrice: undefined,
purchaseUnitId: undefined,
purchaseUnitName: undefined,
supplierName: undefined,
purchaseUnitConvertQuantity: undefined,
inputUnitType: isProductStockOut.value ? '个' : undefined,
inputCount: isProductMaterialStockOut.value ? 1 : undefined,
@ -427,10 +440,18 @@ const fillRowByProduct = (row: any, product: any) => {
row.productName = product.name
row.purchaseUnitId = product.purchaseUnitId
row.purchaseUnitName = product.purchaseUnitName
row.supplierName = getDefaultSupplierName(product)
row.purchaseUnitConvertQuantity = product.purchaseUnitConvertQuantity
syncCountByInputCount(row)
}
const getDefaultSupplierName = (product: any) => {
if (!product) return undefined
if (product.supplierName) return product.supplierName
const suppliers = Array.isArray(product.suppliers) ? product.suppliers : []
return suppliers.find((item) => Number(item?.defaultStatus) === 1)?.supplierName
}
const clearProduct = (row: any) => {
row.productUnitName = undefined
row.productBarCode = undefined
@ -439,6 +460,7 @@ const clearProduct = (row: any) => {
row.productName = undefined
row.purchaseUnitId = undefined
row.purchaseUnitName = undefined
row.supplierName = undefined
row.purchaseUnitConvertQuantity = undefined
row.inputCount = isProductMaterialStockOut.value ? undefined : row.inputCount
row.count = isProductMaterialStockOut.value ? undefined : row.count
@ -552,6 +574,7 @@ const fillProductNames = (rows: any[]) => {
row.productPrice = row.productPrice ?? product.minPrice
row.purchaseUnitId = row.purchaseUnitId ?? (product as any).purchaseUnitId
row.purchaseUnitName = row.purchaseUnitName ?? (product as any).purchaseUnitName
row.supplierName = row.supplierName ?? getDefaultSupplierName(product)
row.purchaseUnitConvertQuantity = row.purchaseUnitConvertQuantity ?? (product as any).purchaseUnitConvertQuantity
syncCountByInputCount(row)
})

Loading…
Cancel
Save