// APS 母卷模拟数据 export interface MockCoil { id: number; coilId: string; alloy: string; temper: string; width: number; thickness: number; weight: number; inDate: string; status: number; createTime: string; } // APS 订单模拟数据 export interface MockOrder { id: number; orderId: string; customerName: string; alloy: string; temper: string; thickness: number; width: number; innerDiameter: number; minOuterDiameter: number; maxOuterDiameter: number; demand: number; deliveryDate: string; priority: number; status: number; assigned: number; createTime: string; } // APS 工艺参数模拟数据 export interface MockProcessParam { id: number; paramName: string; paramValue: string; paramUnit: string; description: string; updateTime: string; } // APS 优化任务模拟数据 export interface MockOptimizationTask { taskId: string; taskType: 'SINGLE_COIL' | 'GLOBAL_OPTIMIZATION'; status: 'PENDING' | 'RUNNING' | 'PAUSED' | 'COMPLETED' | 'FAILED' | 'CANCELLED'; progress: number; currentPhase?: 'PRE_PLANNING' | 'COIL_SCREENING' | 'DETAILED_ENUMERATION' | 'GLOBAL_OPTIMIZATION'; progressDesc?: string; inputParams: { coilIds: string[]; orderIds: string[]; strategy?: 'AUTO' | 'LENGTH_FIRST' | 'WIDTH_FIRST'; }; resultRef?: string; errorMessage?: string; createdBy: string; createTime: string; updateTime: string; } // APS 裁剪方案模拟数据 export interface MockCuttingPlan { planId: string; coilId: string; coilAlloy: string; coilTemper: string; coilWidth: number; coilWeight: number; verticalCuts: string; horizontalCuts: string; totalCuts: number; theoreticalUtilization: number; score: number; createTime: string; } // APS 小卷模拟数据 export interface MockSmallCoil { smallCoilId: string; planId: string; width: number; length: number; weight: number; outerDiameter: number; orderId?: string; region: number; } // 母卷数据 (10 个) export const mockCoils: MockCoil[] = [ { id: 1, coilId: 'F01', alloy: '3003', temper: 'H24', width: 1500, thickness: 2.0, weight: 10.0, inDate: '2026-05-28', status: 0, createTime: '2026-05-28 08:00:00' }, { id: 2, coilId: 'F02', alloy: '3003', temper: 'H24', width: 1500, thickness: 2.0, weight: 12.0, inDate: '2026-05-29', status: 0, createTime: '2026-05-29 08:00:00' }, { id: 3, coilId: 'F03', alloy: '3003', temper: 'H24', width: 1300, thickness: 1.5, weight: 8.0, inDate: '2026-05-30', status: 0, createTime: '2026-05-30 08:00:00' }, { id: 4, coilId: 'F04', alloy: '5052', temper: 'H18', width: 1500, thickness: 2.5, weight: 14.0, inDate: '2026-05-28', status: 0, createTime: '2026-05-28 09:00:00' }, { id: 5, coilId: 'F05', alloy: '3003', temper: 'O', width: 1200, thickness: 1.0, weight: 6.0, inDate: '2026-05-31', status: 0, createTime: '2026-05-31 08:00:00' }, { id: 6, coilId: 'F06', alloy: '3003', temper: 'H24', width: 1500, thickness: 2.0, weight: 11.0, inDate: '2026-05-29', status: 1, createTime: '2026-05-29 10:00:00' }, { id: 7, coilId: 'F07', alloy: '5052', temper: 'H18', width: 1400, thickness: 1.5, weight: 9.0, inDate: '2026-05-30', status: 0, createTime: '2026-05-30 09:00:00' }, { id: 8, coilId: 'F08', alloy: '5052', temper: 'H18', width: 1500, thickness: 3.0, weight: 15.0, inDate: '2026-05-28', status: 0, createTime: '2026-05-28 10:00:00' }, { id: 9, coilId: 'F09', alloy: '3003', temper: 'H24', width: 1300, thickness: 2.0, weight: 8.5, inDate: '2026-05-31', status: 2, createTime: '2026-05-31 09:00:00' }, { id: 10, coilId: 'F10', alloy: '3003', temper: 'H24', width: 1500, thickness: 2.0, weight: 10.5, inDate: '2026-05-29', status: 0, createTime: '2026-05-29 11:00:00' }, ]; // 订单数据 (20 个) export const mockOrders: MockOrder[] = [ { id: 1, orderId: 'D01', customerName: '华峰铝业', alloy: '3003', temper: 'H24', thickness: 2.0, width: 300, innerDiameter: 150, minOuterDiameter: 400, maxOuterDiameter: 600, demand: 3.0, deliveryDate: '2026-06-15', priority: 5, status: 0, assigned: 0, createTime: '2026-06-01 08:00:00' }, { id: 2, orderId: 'D02', customerName: '明泰铝业', alloy: '3003', temper: 'H24', thickness: 2.0, width: 250, innerDiameter: 150, minOuterDiameter: 400, maxOuterDiameter: 550, demand: 2.0, deliveryDate: '2026-06-20', priority: 3, status: 0, assigned: 0, createTime: '2026-06-01 09:00:00' }, { id: 3, orderId: 'D03', customerName: '华峰铝业', alloy: '3003', temper: 'H24', thickness: 2.0, width: 400, innerDiameter: 150, minOuterDiameter: 500, maxOuterDiameter: 700, demand: 4.0, deliveryDate: '2026-06-15', priority: 4, status: 0, assigned: 0, createTime: '2026-06-01 10:00:00' }, { id: 4, orderId: 'D04', customerName: '中铝瑞闽', alloy: '3003', temper: 'H24', thickness: 2.0, width: 200, innerDiameter: 150, minOuterDiameter: 350, maxOuterDiameter: 500, demand: 1.5, deliveryDate: '2026-06-25', priority: 2, status: 0, assigned: 0, createTime: '2026-06-01 11:00:00' }, { id: 5, orderId: 'D05', customerName: '南山铝业', alloy: '5052', temper: 'H18', thickness: 2.5, width: 350, innerDiameter: 150, minOuterDiameter: 450, maxOuterDiameter: 650, demand: 3.5, deliveryDate: '2026-06-18', priority: 5, status: 0, assigned: 0, createTime: '2026-06-01 12:00:00' }, { id: 6, orderId: 'D06', customerName: '华峰铝业', alloy: '3003', temper: 'H24', thickness: 2.0, width: 300, innerDiameter: 150, minOuterDiameter: 400, maxOuterDiameter: 600, demand: 2.5, deliveryDate: '2026-06-20', priority: 3, status: 0, assigned: 0, createTime: '2026-06-02 08:00:00' }, { id: 7, orderId: 'D07', customerName: '南山铝业', alloy: '5052', temper: 'H18', thickness: 3.0, width: 500, innerDiameter: 200, minOuterDiameter: 600, maxOuterDiameter: 800, demand: 5.0, deliveryDate: '2026-06-22', priority: 4, status: 0, assigned: 0, createTime: '2026-06-02 09:00:00' }, { id: 8, orderId: 'D08', customerName: '明泰铝业', alloy: '3003', temper: 'H24', thickness: 2.0, width: 250, innerDiameter: 150, minOuterDiameter: 400, maxOuterDiameter: 550, demand: 2.0, deliveryDate: '2026-06-18', priority: 2, status: 0, assigned: 0, createTime: '2026-06-02 10:00:00' }, { id: 9, orderId: 'D09', customerName: '中铝瑞闽', alloy: '3003', temper: 'O', thickness: 1.0, width: 150, innerDiameter: 100, minOuterDiameter: 300, maxOuterDiameter: 450, demand: 1.0, deliveryDate: '2026-06-30', priority: 1, status: 0, assigned: 0, createTime: '2026-06-02 11:00:00' }, { id: 10, orderId: 'D10', customerName: '华峰铝业', alloy: '3003', temper: 'H24', thickness: 2.0, width: 400, innerDiameter: 150, minOuterDiameter: 500, maxOuterDiameter: 700, demand: 3.0, deliveryDate: '2026-06-15', priority: 4, status: 1, assigned: 1.5, createTime: '2026-06-02 12:00:00' }, { id: 11, orderId: 'D11', customerName: '明泰铝业', alloy: '3003', temper: 'H24', thickness: 2.0, width: 300, innerDiameter: 150, minOuterDiameter: 400, maxOuterDiameter: 600, demand: 2.5, deliveryDate: '2026-06-20', priority: 3, status: 0, assigned: 0, createTime: '2026-06-03 08:00:00' }, { id: 12, orderId: 'D12', customerName: '中铝瑞闽', alloy: '3003', temper: 'O', thickness: 1.0, width: 200, innerDiameter: 100, minOuterDiameter: 350, maxOuterDiameter: 500, demand: 1.5, deliveryDate: '2026-06-25', priority: 2, status: 0, assigned: 0, createTime: '2026-06-03 09:00:00' }, { id: 13, orderId: 'D13', customerName: '南山铝业', alloy: '5052', temper: 'H18', thickness: 1.5, width: 350, innerDiameter: 150, minOuterDiameter: 450, maxOuterDiameter: 650, demand: 4.0, deliveryDate: '2026-06-18', priority: 5, status: 0, assigned: 0, createTime: '2026-06-03 10:00:00' }, { id: 14, orderId: 'D14', customerName: '华峰铝业', alloy: '3003', temper: 'H24', thickness: 2.0, width: 250, innerDiameter: 150, minOuterDiameter: 400, maxOuterDiameter: 550, demand: 2.0, deliveryDate: '2026-06-22', priority: 3, status: 0, assigned: 0, createTime: '2026-06-03 11:00:00' }, { id: 15, orderId: 'D15', customerName: '明泰铝业', alloy: '3003', temper: 'H24', thickness: 2.0, width: 300, innerDiameter: 150, minOuterDiameter: 400, maxOuterDiameter: 600, demand: 3.0, deliveryDate: '2026-06-15', priority: 4, status: 0, assigned: 0, createTime: '2026-06-03 12:00:00' }, { id: 16, orderId: 'D16', customerName: '南山铝业', alloy: '5052', temper: 'H18', thickness: 2.5, width: 450, innerDiameter: 200, minOuterDiameter: 550, maxOuterDiameter: 750, demand: 4.5, deliveryDate: '2026-06-18', priority: 5, status: 0, assigned: 0, createTime: '2026-06-04 08:00:00' }, { id: 17, orderId: 'D17', customerName: '中铝瑞闽', alloy: '5052', temper: 'H18', thickness: 1.5, width: 200, innerDiameter: 150, minOuterDiameter: 350, maxOuterDiameter: 500, demand: 1.0, deliveryDate: '2026-06-28', priority: 2, status: 0, assigned: 0, createTime: '2026-06-04 09:00:00' }, { id: 18, orderId: 'D18', customerName: '华峰铝业', alloy: '3003', temper: 'H24', thickness: 2.0, width: 300, innerDiameter: 150, minOuterDiameter: 400, maxOuterDiameter: 600, demand: 2.5, deliveryDate: '2026-06-20', priority: 3, status: 2, assigned: 2.5, createTime: '2026-06-04 10:00:00' }, { id: 19, orderId: 'D19', customerName: '南山铝业', alloy: '5052', temper: 'H18', thickness: 2.5, width: 350, innerDiameter: 150, minOuterDiameter: 450, maxOuterDiameter: 650, demand: 3.5, deliveryDate: '2026-06-22', priority: 4, status: 0, assigned: 0, createTime: '2026-06-04 11:00:00' }, { id: 20, orderId: 'D20', customerName: '明泰铝业', alloy: '3003', temper: 'H24', thickness: 2.0, width: 250, innerDiameter: 150, minOuterDiameter: 400, maxOuterDiameter: 550, demand: 2.0, deliveryDate: '2026-06-25', priority: 3, status: 0, assigned: 0, createTime: '2026-06-04 12:00:00' }, ]; // 工艺参数数据 export const mockProcessParams: MockProcessParam[] = [ { id: 1, paramName: 'edgeWasteWidth', paramValue: '10', paramUnit: 'mm', description: '母卷左右两侧各需裁掉的废边宽度', updateTime: '2026-06-01 08:00:00' }, { id: 2, paramName: 'headTailWaste', paramValue: '1000', paramUnit: 'mm', description: '母卷卷头卷尾各需裁掉的废料长度', updateTime: '2026-06-01 08:00:00' }, { id: 3, paramName: 'cutHeadLength', paramValue: '200', paramUnit: 'mm', description: '每次横切后新区域开端的固定切除长度', updateTime: '2026-06-01 08:00:00' }, { id: 4, paramName: 'maxVerticalCuts', paramValue: '12', paramUnit: '刀', description: '每区域竖切刀数上限', updateTime: '2026-06-01 08:00:00' }, { id: 5, paramName: 'maxHorizontalCuts', paramValue: '5', paramUnit: '刀', description: '横切刀数上限(区域数-1)', updateTime: '2026-06-01 08:00:00' }, { id: 6, paramName: 'minOrderWidth', paramValue: '100', paramUnit: 'mm', description: '最小可交付订单宽度', updateTime: '2026-06-01 08:00:00' }, { id: 7, paramName: 'utilizationWeight', paramValue: '0.5', paramUnit: '', description: '全局优化目标中利用率权重', updateTime: '2026-06-01 08:00:00' }, { id: 8, paramName: 'priorityWeight', paramValue: '0.3', paramUnit: '', description: '全局优化目标中优先级加权满足率权重', updateTime: '2026-06-01 08:00:00' }, { id: 9, paramName: 'cutsWeight', paramValue: '0.2', paramUnit: '', description: '全局优化目标中切割刀数权重', updateTime: '2026-06-01 08:00:00' }, { id: 10, paramName: 'minRegionLength', paramValue: '500', paramUnit: 'mm', description: '长度小于该值的区域不生成', updateTime: '2026-06-01 08:00:00' }, { id: 11, paramName: 'maxOrderSplit', paramValue: '1', paramUnit: '次', description: '每个订单最多允许拆分次数', updateTime: '2026-06-01 08:00:00' }, ]; // 优化任务数据 export const mockOptimizationTasks: MockOptimizationTask[] = [ { taskId: 'task-001', taskType: 'SINGLE_COIL', status: 'COMPLETED', progress: 100, currentPhase: 'GLOBAL_OPTIMIZATION', progressDesc: '已完成', inputParams: { coilIds: ['F01'], orderIds: ['D01', 'D02', 'D03'], strategy: 'AUTO' }, resultRef: 'plan-001', createdBy: 'admin', createTime: '2026-06-03 10:00:00', updateTime: '2026-06-03 10:00:05', }, { taskId: 'task-002', taskType: 'GLOBAL_OPTIMIZATION', status: 'RUNNING', progress: 65, currentPhase: 'DETAILED_ENUMERATION', progressDesc: '详细枚举 5/10 母卷', inputParams: { coilIds: ['F01', 'F02', 'F03', 'F04', 'F05', 'F06', 'F07', 'F08', 'F09', 'F10'], orderIds: ['D01', 'D02', 'D03', 'D04', 'D05'], strategy: 'AUTO' }, createdBy: 'admin', createTime: '2026-06-03 14:00:00', updateTime: '2026-06-03 14:02:30', }, { taskId: 'task-003', taskType: 'GLOBAL_OPTIMIZATION', status: 'COMPLETED', progress: 100, currentPhase: 'GLOBAL_OPTIMIZATION', progressDesc: '已完成', inputParams: { coilIds: ['F01', 'F02'], orderIds: ['D01', 'D02'], strategy: 'AUTO' }, resultRef: 'plan-002', createdBy: 'user', createTime: '2026-06-02 16:00:00', updateTime: '2026-06-02 16:00:08', }, { taskId: 'task-004', taskType: 'SINGLE_COIL', status: 'FAILED', progress: 45, currentPhase: 'DETAILED_ENUMERATION', progressDesc: '枚举失败', inputParams: { coilIds: ['F03'], orderIds: ['D05'], strategy: 'AUTO' }, errorMessage: '无可行方案:订单宽度过大', createdBy: 'admin', createTime: '2026-06-02 11:00:00', updateTime: '2026-06-02 11:00:03', }, { taskId: 'task-005', taskType: 'GLOBAL_OPTIMIZATION', status: 'CANCELLED', progress: 30, currentPhase: 'COIL_SCREENING', progressDesc: '用户取消', inputParams: { coilIds: ['F04', 'F05', 'F06'], orderIds: ['D06', 'D07', 'D08'], strategy: 'LENGTH_FIRST' }, createdBy: 'user', createTime: '2026-06-01 15:00:00', updateTime: '2026-06-01 15:01:00', }, ]; // 裁剪方案数据 export const mockCuttingPlans: MockCuttingPlan[] = [ { planId: 'plan-001', coilId: 'F01', coilAlloy: '3003', coilTemper: 'H24', coilWidth: 1500, coilWeight: 10.0, verticalCuts: '10,310,610,910,1210,1460;10,410,810,1210', horizontalCuts: '101000,333568', totalCuts: 12, theoreticalUtilization: 92.5, score: 0.86, createTime: '2026-06-03 10:00:05', }, { planId: 'plan-002', coilId: 'F02', coilAlloy: '3003', coilTemper: 'H24', coilWidth: 1500, coilWeight: 12.0, verticalCuts: '10,260,510,760,1010,1260,1490', horizontalCuts: '120000', totalCuts: 8, theoreticalUtilization: 88.3, score: 0.79, createTime: '2026-06-02 16:00:08', }, ]; // 小卷数据 export const mockSmallCoils: MockSmallCoil[] = [ { smallCoilId: 'SC001', planId: 'plan-001', width: 300, length: 101000, weight: 0.82, outerDiameter: 450, orderId: 'D01', region: 1 }, { smallCoilId: 'SC002', planId: 'plan-001', width: 300, length: 101000, weight: 0.82, outerDiameter: 450, orderId: 'D01', region: 1 }, { smallCoilId: 'SC003', planId: 'plan-001', width: 300, length: 101000, weight: 0.82, outerDiameter: 450, orderId: 'D01', region: 1 }, { smallCoilId: 'SC004', planId: 'plan-001', width: 300, length: 101000, weight: 0.82, outerDiameter: 450, orderId: 'D01', region: 1 }, { smallCoilId: 'SC005', planId: 'plan-001', width: 250, length: 101000, weight: 0.68, outerDiameter: 420, orderId: 'D02', region: 1 }, { smallCoilId: 'SC006', planId: 'plan-001', width: 400, length: 232568, weight: 1.88, outerDiameter: 580, orderId: 'D03', region: 2 }, { smallCoilId: 'SC007', planId: 'plan-001', width: 400, length: 232568, weight: 1.88, outerDiameter: 580, orderId: 'D03', region: 2 }, { smallCoilId: 'SC008', planId: 'plan-001', width: 400, length: 232568, weight: 1.88, outerDiameter: 580, region: 2 }, ];