export interface DispatchDestinationAppointment { destinationKey: string; appointmentNo: string | null } export interface DispatchVehicleMaintenance { plannedDeliveryDate: string | null deliveryMethod: string | null pickupMethod: string | null loadType: string | null fleetEmail: string | null vehicleType: string | null appointmentAccount: string | null destinationAppointments: DispatchDestinationAppointment[] } /** 本车补充资料保持未填为空,不从原型示例或实际发车时间推定。 */ export function blankVehicleMaintenance(): DispatchVehicleMaintenance { return { plannedDeliveryDate: null, deliveryMethod: null, pickupMethod: null, loadType: null, fleetEmail: null, vehicleType: null, appointmentAccount: null, destinationAppointments: [] } } /** 保存前只整理已填写资料,不据补充资料触发派送、预约或费用。 */ export function vehicleMaintenancePayload(value: DispatchVehicleMaintenance): DispatchVehicleMaintenance { const text = (item: string | null) => item?.trim() || null return { plannedDeliveryDate: text(value.plannedDeliveryDate), deliveryMethod: text(value.deliveryMethod), pickupMethod: text(value.pickupMethod), loadType: text(value.loadType), fleetEmail: text(value.fleetEmail), vehicleType: text(value.vehicleType), appointmentAccount: text(value.appointmentAccount), destinationAppointments: value.destinationAppointments.map(row => ({ destinationKey: row.destinationKey, appointmentNo: text(row.appointmentNo) })) } }