Files
admin-web/src/modules/overseas-warehouse/dispatchVehicleMaintenance.ts
T

24 lines
1.5 KiB
TypeScript

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) })) }
}