/** 对账明细 */ export interface IReconciliationItem { id?: number; recon_id?: number; store_id?: number; purchase_item_id?: number; order_item_id?: number; product_id?: number; product_name?: string; quantity?: string; weight?: string; /** 公布金额(订货金额) */ publish_amount?: string; /** 实际金额(分摊金额) */ actual_amount?: string; /** 差额 = publish − actual */ diff_amount?: string; is_reconciled?: number; store_remark?: string; sort?: number; store?: { id: number; name: string }; } /** 对账单 */ export default interface IReconciliation { id?: number; recon_no?: string; title?: string; period_start?: string; period_end?: string; category_id?: number; supplier_id?: number; publish_amount?: string; actual_amount?: string; diff_amount?: string; /** 0草稿 1对账中 2已结算 */ status?: number; operator_id?: number; operator?: { id: number; nickname: string }; remark?: string; items?: IReconciliationItem[]; created_at?: string; } export const RECON_STATUS_MAP: Record = { 0: { text: '草稿', color: 'default' }, 1: { text: '对账中', color: 'processing' }, 2: { text: '已结算', color: 'success' }, }; export const RECONCILED_MAP: Record = { 0: { text: '未对账', color: 'warning' }, 1: { text: '已对账', color: 'success' }, }; /** D5 差额对比视图 */ export interface IReconDiffRow { store_id?: number; store_name?: string; product_id?: number; product_name?: string; publish: number; actual: number; diff: number; } export interface IReconDiff { by_store: IReconDiffRow[]; by_product: IReconDiffRow[]; total: { publish: number; actual: number; diff: number }; }