| | |
| | | import { h } from 'vue' |
| | | import ArtButtonTable from '@/components/core/forms/art-button-table/index.vue' |
| | | import { $t } from '@/locales' |
| | | |
| | | function createTextColumn(prop, label, minWidth, { align, formatter } = {}) { |
| | | return { |
| | |
| | | minWidth, |
| | | align, |
| | | showOverflowTooltip: true, |
| | | formatter: formatter || ((row) => row?.[prop] || '-') |
| | | formatter: formatter || ((row) => row?.[prop] || $t('common.placeholder.empty')) |
| | | } |
| | | } |
| | | |
| | | export function createAsnOrderItemTableColumns({ handleView } = {}) { |
| | | export function createAsnOrderItemTableColumns({ handleView, t = $t } = {}) { |
| | | return [ |
| | | { type: 'globalIndex', label: '序号', width: 72, align: 'center' }, |
| | | createTextColumn('poCode', 'PO单号', 160), |
| | | createTextColumn('wkTypeLabel', '业务类型', 120), |
| | | createTextColumn('typeLabel', '单据类型', 110), |
| | | createTextColumn('purchaseOrgName', '采购组织', 150), |
| | | createTextColumn('purchaseUserName', '采购员', 120), |
| | | createTextColumn('supplierName', '供应商', 160), |
| | | createTextColumn('platWorkCode', '计划跟踪号', 150), |
| | | createTextColumn('platItemId', '行号', 110), |
| | | createTextColumn('matnrCode', '物料编码', 160), |
| | | createTextColumn('maktx', '物料名称', 220), |
| | | createTextColumn('batch', '供应商批次', 140), |
| | | createTextColumn('stockUnit', '库存单位', 110), |
| | | { type: 'globalIndex', label: t('table.index'), width: 72, align: 'center' }, |
| | | createTextColumn('poCode', t('pages.orders.asnOrderItem.table.poCode'), 160), |
| | | createTextColumn('wkTypeLabel', t('pages.orders.asnOrderItem.table.wkType'), 120), |
| | | createTextColumn('typeLabel', t('pages.orders.asnOrderItem.table.type'), 110), |
| | | createTextColumn('purchaseOrgName', t('pages.orders.asnOrderItem.table.purchaseOrg'), 150), |
| | | createTextColumn('purchaseUserName', t('pages.orders.asnOrderItem.table.purchaseUser'), 120), |
| | | createTextColumn('supplierName', t('table.supplier'), 160), |
| | | createTextColumn('platWorkCode', t('pages.orders.asnOrderItem.table.platWorkCode'), 150), |
| | | createTextColumn('platItemId', t('pages.orders.asnOrderItem.table.platItemId'), 110), |
| | | createTextColumn('matnrCode', t('table.materialCode'), 160), |
| | | createTextColumn('maktx', t('table.materialName'), 220), |
| | | createTextColumn('batch', t('table.supplierBatch'), 140), |
| | | createTextColumn('stockUnit', t('pages.orders.asnOrderItem.table.stockUnit'), 110), |
| | | { |
| | | prop: 'anfme', |
| | | label: '送货数量', |
| | | label: t('pages.orders.asnOrderItem.table.anfme'), |
| | | width: 110, |
| | | align: 'right', |
| | | formatter: (row) => row.anfme ?? 0 |
| | | }, |
| | | { |
| | | prop: 'qty', |
| | | label: '已收数量', |
| | | label: t('pages.orders.asnOrderItem.table.qty'), |
| | | width: 110, |
| | | align: 'right', |
| | | formatter: (row) => row.qty ?? 0 |
| | | }, |
| | | createTextColumn('targetWarehouseId', '建议目标仓', 140), |
| | | createTextColumn('businessTimeText', '业务时间', 180), |
| | | createTextColumn('updateTimeText', '更新时间', 180), |
| | | createTextColumn('targetWarehouseId', t('pages.orders.asnOrderItem.table.targetWarehouseId'), 140), |
| | | createTextColumn('businessTimeText', t('pages.orders.asnOrderItem.table.businessTime'), 180), |
| | | createTextColumn('updateTimeText', t('table.updateTime'), 180), |
| | | { |
| | | prop: 'operation', |
| | | label: '操作', |
| | | label: t('table.operation'), |
| | | width: 110, |
| | | fixed: 'right', |
| | | align: 'right', |
| | | align: 'center', |
| | | formatter: (row) => |
| | | h( |
| | | 'div', |
| | | { class: 'flex justify-end' }, |
| | | { class: 'flex justify-center' }, |
| | | [ |
| | | h(ArtButtonTable, { |
| | | type: 'view', |