package com.ruoyi.tms.domain; import com.fasterxml.jackson.annotation.JsonFormat; import java.math.BigDecimal; import java.util.Date; import com.fasterxml.jackson.annotation.JsonFormat; import com.ruoyi.common.annotation.Excel; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableField; import java.util.Date; import java.util.List; import lombok.Data; /** * 调度单管理对象 tms_dispatch_order * * @author ruoyi * @date 2025-11-10 */ @Data public class TmsDispatchOrder{ /** 主键ID */ @TableId(value="id",type = IdType.AUTO) private Integer id; /** 调度单号 */ @Excel(name = "调度单号") @TableField("dispatch_no") private String dispatchNo; /** 客户ID */ @TableField("customer_id") private Integer customerId; @TableField("customer_code") private String customerCode; /** 客户编码 */ @Excel(name = "客户名称") @TableField("customer_name") private String customerName; /** 关联项目ID */ @TableField("project_id") private Integer projectId; /** 项目名称 */ @Excel(name = "项目名称") @TableField("project_name") private String projectName; /** 关联合同Id */ @TableField("contract_id") private Integer contractId; /** 关联合同名称 */ @Excel(name = "关联合同名称") @TableField("contract_name") private String contractName; /** 运输线路 */ @Excel(name = "运输线路") @TableField("transport_line") private String transportLine; /** 订单类型,关联字典 */ @Excel(name = "订单类型",dictType="order_type") @TableField("order_type") private Integer orderType; /** 签收类型,关联字典 */ @TableField("sign_type") private Integer signType; /** 主驾驶员 */ @TableField("main_driver_id") private Integer mainDriverId; @Excel(name = "主驾驶员") @TableField("main_driver_name") private String mainDriverName; /** 副驾驶员 */ @TableField("assistant_driver_id") private Integer assistantDriverId; @Excel(name = "副驾驶员") @TableField("assistant_driver_name") private String assistantDriverName; /** 车辆服务商ID */ @TableField("vehicle_provider_id") private Integer vehicleProviderId; /** 车辆服务商名称 */ @Excel(name = "车辆服务商名称") @TableField("vehicle_provider_name") private String vehicleProviderName; /** 装货服务商ID */ @TableField("loading_service_provider_id") private Integer loadingServiceProviderId; /** 装货服务商名称 */ @Excel(name = "装货服务商名称") @TableField("loading_service_provider_name") private String loadingServiceProviderName; /** 报关服务商ID */ @TableField("customs_service_provider_id") private Integer customsServiceProviderId; /** 报关服务商名称 */ @Excel(name = "报关服务商名称") @TableField("customs_service_provider_name") private String customsServiceProviderName; /** 是否紧急,0=是,1=否,默认否 */ @Excel(name = "是否紧急", readConverterExp = "0=是,1=否") @TableField("is_urgent") private Integer isUrgent; /** 运输方式(字典)0=汽运,1=海运,2=空运,3=河运,4=铁路,5=联运 */ @TableField("transport_type") private Integer transportType; /** 配载方式(字典)0=整柜,1=整车,2=拼车,3=散柜 */ @TableField("load_method") private Integer loadMethod; /** 要求运输工具类型 */ @Excel(name = "下单车型",dictType = "vehicle_type") @TableField("required_vehicle_types") private String requiredVehicleTypes; /** 集装箱号 */ @TableField("container_no") private String containerNo; @TableField("container_id") private Integer containerId; /** 车辆管理表ID */ @TableField("vehicle_id") private Integer vehicleId; /** 车牌号 */ @Excel(name = "车牌号") @TableField("license_plate") private String licensePlate; /** 要求最早出发时间 */ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @TableField("earliest_departure") private Date earliestDeparture; /** 下单时间 */ @JsonFormat(pattern = "yyyy-MM-dd") @TableField("order_time") private Date orderTime; @TableField(exist = false) private String orderTimeBegin; @TableField(exist = false) private String orderTimeEnd; /** 发货人(关联收发货人信息) */ @TableField("shipper_id") private Integer shipperId; /** 要求最晚出发时间 */ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @TableField("latest_departure") private Date latestDeparture; /** 发货人名称 */ @Excel(name = "发货人名称") @TableField("shipper_name") private String shipperName; /** 发货人手机号 */ @Excel(name = "发货人手机号") @TableField("shipper_mobile") private String shipperMobile; /** 要求最早到达时间 */ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @TableField("earliest_arrival") private Date earliestArrival; /** 发货人地址 */ @Excel(name = "发货人地址") @TableField("shipper_address") private String shipperAddress; /** 要求最晚到达时间 */ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @TableField("latest_arrival") private Date latestArrival; /** 发货行政区域 */ @TableField("shipper_region_code") private String shipperRegionCode; @Excel(name = "发货行政区域") @TableField("shipper_region_label") private String shipperRegionLabel; /** 收货人(关联收发货人信息) */ @TableField("receiver_id") private Integer receiverId; /** 收货人名称 */ @Excel(name = "收货人名称") @TableField("receiver_name") private String receiverName; /** 实际运输工具类型 */ @Excel(name = "派出车型",dictType = "vehicle_type") @TableField("actual_vehicle_type") private String actualVehicleType; /** 收货人手机号 */ @Excel(name = "收货人手机号") @TableField("receiver_mobile") private String receiverMobile; /** 收货人地址 */ @Excel(name = "收货人地址") @TableField("receiver_address") private String receiverAddress; /** 收货行政区域 */ @TableField("receiver_region_code") private String receiverRegionCode; @Excel(name = "收货行政区域") @TableField("receiver_region_label") private String receiverRegionLabel; /** 出发地地址 */ @TableField("departure_address") private String departureAddress; /** 目的地地址 */ @TableField("destination_address") private String destinationAddress; /** 实际出发时间 */ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @TableField("actual_departure") private Date actualDeparture; /** 实际到达时间 */ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @TableField("actual_arrival") private Date actualArrival; /** 实际卸车完成时间 */ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @TableField("actual_unload_end") private Date actualUnloadEnd; /** 实际装车开始时间 */ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @TableField("actual_load_start") private Date actualLoadStart; /** 实发数量 */ @TableField("actual_quantity") private BigDecimal actualQuantity; /** 实发重量(kg) */ @TableField("actual_weight") private BigDecimal actualWeight; /** 实发体积(m³) */ @TableField("actual_volume") private BigDecimal actualVolume; /** 复磅重量(kg) */ @TableField("reweigh_weight") private BigDecimal reweighWeight; /** 电子锁编号 */ @TableField("electronic_lock") private String electronicLock; /** 车板号 */ @TableField("shelf_id") private Integer shelfId; @TableField("shelf_code") private String shelfCode; /** 空载里程(Km) */ @TableField("empty_mileage") private BigDecimal emptyMileage; /** 空载油耗(L) */ @TableField("empty_fuel") private BigDecimal emptyFuel; /** 重载里程(Km) */ @TableField("loaded_mileage") private BigDecimal loadedMileage; /** 重载油耗(L) */ @TableField("loaded_fuel") private BigDecimal loadedFuel; /** 班次号 */ @TableField("shift_no") private String shiftNo; /** 线路号 */ @TableField("line_no") private String lineNo; /** 状态 */ @Excel(name = "状态",dictType = "tms_dispatch_order_status") @TableField("status") private Integer status; @TableField(exist = false) private List inStatusList; /** 创建人 */ @TableField("create_by") private String createBy; /** 创建时间 */ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @TableField("create_time") private Date createTime; @TableField(exist = false) private String createTimeBegin; @TableField(exist = false) private String createTimeEnd; /** 更新人 */ @Excel(name = "更新人") @TableField("update_by") private String updateBy; /** 更新时间 */ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @Excel(name = "更新时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") @TableField("update_time") private Date updateTime; @TableField(exist = false) private String updateTimeBegin; @TableField(exist = false) private String updateTimeEnd; /** 备注 */ @TableField("remark") private String remark; /** 应收费用生成状态,关联字典 0=未生成,1=已生成,2=生成失败 */ @Excel(name = "应收费用生成状态",dictType = "accounts_status") @TableField("accounts_receivable_status") private Integer accountsReceivableStatus; /** 应付费用生成状态,关联字典 0=未生成,1=已生成,2=生成失败 */ @Excel(name = "应付费用生成状态",dictType = "accounts_status") @TableField("accounts_payable_status") private Integer accountsPayableStatus; @TableField("collection_plan_id") private Integer collectionPlanId; @TableField(exist = false) private Integer collectionPlanDetailId; @TableField(exist = false) private BigDecimal collectionPlanAmount; @TableField(exist = false) private String collectionPlanName; @TableField("payment_plan_id") private Integer paymentPlanId; @TableField(exist = false) private String paymentPlanName; @TableField(exist = false) private Integer paymentPlanDetailId; @TableField(exist = false) private BigDecimal paymentPlanAmount; @TableField("is_customs") private Integer isCustoms; @TableField("is_load") private Integer isLoad; @TableField("start_region_code") private String startRegionCode; @TableField("end_region_code") private String endRegionCode; @TableField("quote_detail_id") private Integer quoteDetailId; @TableField("operation_mode") private Integer operationMode; @TableField("quote_plan_id") private Integer quotePlanId; /** * 确认时间 */ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @TableField("confirm_time") private Date confirmTime; @TableField(exist = false) private String confirmTimeBegin; @TableField(exist = false) private String confirmTimeEnd; /** * 完成时间 */ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @TableField("ok_time") private Date okTime; @TableField(exist = false) private String okTimeBegin; @TableField(exist = false) private String okTimeEnd; @TableField("commission_model") private Integer commissionModel; @TableField(exist = false) private List quoteFeeItems; @TableField(exist = false) private List tmsReceivableFeeItems; @TableField(exist = false) private List tmsPayableFeeItems; @TableField("iscc") private Integer iscc; @TableField("close_why") private Integer closeWhy; @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @TableField("close_time") private Date closeTime; @TableField("close_by") private String closeBy; @TableField("close_remark") private String closeRemark; @TableField("isfk") private Integer isfk; /** 是否打印 */ @Excel(name = "是否打印") @TableField("is_print") private Integer isPrint; /** 打印次数 */ @Excel(name = "打印次数") @TableField("print_count") private Integer printCount; /** 打印时间 */ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @Excel(name = "打印时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") @TableField("print_time") private Date printTime; /** 打印人 */ @Excel(name = "打印人") @TableField("print_by") private String printBy; /** 六联单号 */ @Excel(name = "六联单号") @TableField("six_link_no") private String sixLinkNo; /** 行驶口岸 */ @Excel(name = "行驶口岸") @TableField("port_name") private String portName; /** 提单号 / S/O */ @Excel(name = "提单号 / S/O") @TableField("bill_no") private String billNo; /** 码头名 */ @Excel(name = "码头名") @TableField("terminal_name") private String terminalName; /** 货物名 */ @Excel(name = "货物名") @TableField("cargo_name") private String cargoName; /** 件数 */ @Excel(name = "件数") @TableField("piece_count") private Integer pieceCount; /** 重量(kg) */ @Excel(name = "重量", readConverterExp = "k=g") @TableField("weight") private BigDecimal weight; /** 客户联络人 */ @Excel(name = "客户联络人") @TableField("contact_name") private String contactName; /** 联络人手机号 */ @Excel(name = "联络人手机号") @TableField("contact_phone") private String contactPhone; /** 口岸 */ @TableField("port") private String port; /** 无缝号 */ @TableField("seamless_number") private String seamlessNumber; /** 无缝供应商 */ @TableField("seamless_supplier_id") private Integer seamlessSupplierId; /** 无缝供应商名称 */ @TableField("seamless_supplier_name") private String seamlessSupplierName; @TableField("notes") private String notes; public void setCreateTimeBegin(String createTimeBegin) { this.createTimeBegin = createTimeBegin==null? null :createTimeBegin+ " 00:00:00"; } public void setCreateTimeEnd(String createTimeEnd) { this.createTimeEnd = createTimeEnd==null?null:createTimeEnd+ " 23:59:59"; } public void setUpdateTimeBegin(String updateTimeBegin) { this.updateTimeBegin = updateTimeBegin==null? null :updateTimeBegin+ " 00:00:00"; } public void setUpdateTimeEnd(String updateTimeEnd) { this.updateTimeEnd = updateTimeEnd==null?null:updateTimeEnd+ " 23:59:59"; } public void setConfirmTimeBegin(String confirmTimeBegin) { this.confirmTimeBegin = confirmTimeBegin==null? null :confirmTimeBegin+ " 00:00:00"; } public void setConfirmTimeEnd(String confirmTimeEnd) { this.confirmTimeEnd = confirmTimeEnd==null?null:confirmTimeEnd+ " 23:59:59"; } public void setOkTimeBegin(String okTimeBegin) { this.okTimeBegin = okTimeBegin==null? null :okTimeBegin+ " 00:00:00"; } public void setOkTimeEnd(String okTimeEnd) { this.okTimeEnd = okTimeEnd==null?null:okTimeEnd+ " 23:59:59"; } public void setOrderTimeBegin(String orderTimeBegin) { this.orderTimeBegin = orderTimeBegin==null? null :orderTimeBegin+ " 00:00:00"; } public void setOrderTimeEnd(String orderTimeEnd) { this.orderTimeEnd = orderTimeEnd==null?null:orderTimeEnd+ " 23:59:59"; } }