import type { SmartLoadingPlan } from './types' export interface SmartLoadingPlanCoLoadGroup { groupId: string groupNo: string lockedPlanId: string memberOrderCount: number inboundFragmentCount: number fullPackageCount: number } export function loadSmartLoadingPlanCoLoadGroups(plan: SmartLoadingPlan) { const groupsByInboundId = new Map() for (const source of plan.coLoadGroups || []) { const group = { groupId: source.groupId, groupNo: source.groupNo || '同柜不可拆组', lockedPlanId: source.lockedPlanId || plan.id, memberOrderCount: source.memberOrderCount, inboundFragmentCount: source.inboundFragmentCount, fullPackageCount: source.fullPackageCount, } satisfies SmartLoadingPlanCoLoadGroup for (const inboundId of source.memberInboundIds) groupsByInboundId.set(inboundId, group) } return groupsByInboundId }