import { h } from 'vue' import { ElTag } from 'element-plus' import ArtButtonTable from '@/components/core/forms/art-button-table/index.vue' export function createLocDeadReportTableColumns({ handleView } = {}) { return [ { type: 'selection', width: 48, align: 'center' }, { type: 'globalIndex', label: '序号', width: 72, align: 'center' }, { prop: 'locCode', label: '库位编码', minWidth: 150, showOverflowTooltip: true }, { prop: 'deadTime', label: '停留时间(天)', width: 118, align: 'right', formatter: (row) => row?.deadTime ?? '--' }, { prop: 'locId', label: '库位ID', width: 100, align: 'right' }, { prop: 'typeText', label: '单据类型', minWidth: 120, showOverflowTooltip: true }, { prop: 'wkTypeText', label: '业务类型', minWidth: 120, showOverflowTooltip: true }, { prop: 'matnrCode', label: '物料编码', minWidth: 150, showOverflowTooltip: true }, { prop: 'maktx', label: '物料名称', minWidth: 220, showOverflowTooltip: true }, { prop: 'trackCode', label: '跟踪码', minWidth: 160, showOverflowTooltip: true }, { prop: 'unit', label: '单位', width: 100 }, { prop: 'anfme', label: '数量', width: 100, align: 'right' }, { prop: 'batch', label: '库存批次', minWidth: 150, showOverflowTooltip: true }, { prop: 'splrBatch', label: '供应商批次', minWidth: 150, showOverflowTooltip: true }, { prop: 'spec', label: '规格', minWidth: 140, showOverflowTooltip: true }, { prop: 'model', label: '型号', minWidth: 140, showOverflowTooltip: true }, { prop: 'fieldsIndex', label: '字段索引', minWidth: 140, showOverflowTooltip: true }, { prop: 'status', label: '状态', width: 100, align: 'center', formatter: (row) => h( ElTag, { type: row?.statusType || 'info', effect: 'light' }, () => row?.statusText || '--' ) }, { prop: 'updateTimeText', label: '更新时间', minWidth: 180, showOverflowTooltip: true }, { prop: 'memo', label: '备注', minWidth: 180, showOverflowTooltip: true }, { prop: 'operation', label: '操作', width: 92, align: 'center', fixed: 'right', formatter: (row) => h(ArtButtonTable, { icon: 'ri:eye-line', onClick: () => handleView?.(row) }) } ] } export { ArtButtonTable }