export const CHECK_ORDER_REPORT_TITLE = '盘点单报表' const CHECK_EXCE_STATUS_MAP = { 0: { label: '未执行', tagType: 'info' }, 1: { label: '执行中', tagType: 'warning' }, 2: { label: '已完成', tagType: 'success' }, 8: { label: '已取消', tagType: 'danger' } } function normalizeText(value) { return String(value ?? '').trim() } function getExceStatusConfig(status, statusText) { const fallback = CHECK_EXCE_STATUS_MAP[Number(status)] || { label: statusText || '-', tagType: 'info' } return { label: statusText || fallback.label, tagType: fallback.tagType } } export function createCheckOrderSearchState() { return { condition: '', code: '', wkType: '', exceStatus: '', arrTime: '', memo: '' } } export function buildCheckOrderSearchParams(params = {}) { const result = {} ;['condition', 'code', 'wkType', 'memo'].forEach((key) => { const value = normalizeText(params[key]) if (value) { result[key] = value } }) if (params.arrTime) { result.arrTime = params.arrTime } if (params.exceStatus !== '' && params.exceStatus !== undefined && params.exceStatus !== null) { result.exceStatus = Number(params.exceStatus) } return result } export function buildCheckOrderPageQueryParams(params = {}) { return { current: params.current || 1, pageSize: params.pageSize || params.size || 20, ...buildCheckOrderSearchParams(params) } } export function buildCheckOrderDetailQueryParams(params = {}) { return { orderId: params.orderId, current: params.current || 1, pageSize: params.pageSize || params.size || 20 } } export function normalizeCheckOrderRow(record = {}) { const exceStatusConfig = getExceStatusConfig(record.exceStatus, record['exceStatus$']) return { ...record, code: record.code || '-', wkTypeLabel: record['wkType$'] || record.wkType || '-', checkTypeLabel: record.checkType$ || record.checkType || '-', anfme: record.anfme ?? 0, workQty: record.workQty ?? 0, qty: record.qty ?? 0, arrTimeText: record['arrTime$'] || record.arrTime || '-', updateByText: record['updateBy$'] || '-', updateTimeText: record['updateTime$'] || record.updateTime || '-', createByText: record['createBy$'] || '-', createTimeText: record['createTime$'] || record.createTime || '-', memo: record.memo || '-', exceStatusText: exceStatusConfig.label, exceStatusTagType: exceStatusConfig.tagType, canCancel: Number(record.exceStatus) === 0 } } export function normalizeCheckOrderItemRow(record = {}) { return { ...record, orderCode: record.orderCode || '-', platOrderCode: record.platOrderCode || '-', matnrId: record.matnrId ?? '-', matnrCode: record.matnrCode || '-', maktx: record.maktx || '-', stockUnit: record.stockUnit || '-', splrBatch: record.splrBatch || '-', splrCode: record.splrCode || '-', splrName: record.splrName || '-', barcode: record.barcode || record.trackCode || '-', anfme: record.anfme ?? 0, workQty: record.workQty ?? 0, updateByText: record['updateBy$'] || '-', updateTimeText: record['updateTime$'] || record.updateTime || '-' } } export function getCheckOrderActionList(row = {}) { const normalizedRow = normalizeCheckOrderRow(row) return [ { key: 'view', label: '查看详情', icon: 'ri:eye-line' }, { key: 'print', label: '打印', icon: 'ri:printer-line' }, { key: 'cancel', label: '取消单据', icon: 'ri:close-circle-line', color: 'var(--el-color-danger)', disabled: !normalizedRow.canCancel } ] }