/**
 * BladeX Commercial License Agreement
 * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
 */
package org.springblade.transport.pojo.entity;

import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springblade.core.tenant.mp.TenantEntity;

import java.io.Serial;
import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalDateTime;

/**
 * 配载管理实体类
 *
 * @author Chill
 */
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("blade_loading_manage")
@Schema(description = "配载管理")
public class LoadingManage extends TenantEntity {

	@Serial
	private static final long serialVersionUID = 1L;

	@Schema(description = "配载单号")
	private String loadingNo;

	@Schema(description = "配载子单号")
	private String loadingSubNos;

	@Schema(description = "运单ID集合")
	private String waybillIdsJson;

	@Schema(description = "项目ID")
	private Long projectId;

	@Schema(description = "项目名称")
	private String projectName;

	@Schema(description = "客户名称")
	private String customerName;

	@Schema(description = "运输类型")
	private String transportType;

	@Schema(description = "货物类型")
	private String cargoType;

	@Schema(description = "货物名称")
	private String cargoName;

	@Schema(description = "车/船/航班/班列")
	private String vehicleNo;

	@Schema(description = "挂车车牌号")
	private String trailerVehicleNo;

	@Schema(description = "司机")
	private String driverName;

	@Schema(description = "联系电话")
	private String driverPhone;

	@Schema(description = "押运人")
	private String escortName;

	@Schema(description = "押运人手机号")
	private String escortPhone;

	@Schema(description = "承运类型")
	private String carrierType;

	@Schema(description = "承运商")
	private String carrierName;

	@Schema(description = "发货地址")
	private String departureAddress;

	@Schema(description = "途经地")
	private String transitAddress;

	@Schema(description = "到货地")
	private String arrivalAddress;

	@Schema(description = "原始单号")
	private String originalNo;

	@Schema(description = "数据来源")
	private String dataSource;

	@Schema(description = "开始日期")
	private LocalDate startDate;

	@Schema(description = "结束日期")
	private LocalDate endDate;

	@Schema(description = "计划名称")
	private String planName;

	@Schema(description = "运单批次号")
	private String batchNo;

	@Schema(description = "当前过程节点")
	private String currentProcessNode;

	@Schema(description = "里程")
	private BigDecimal mileage;

	@Schema(description = "预计发货日期")
	private LocalDate estimatedStartDate;

	@Schema(description = "预计完成日期")
	private LocalDate estimatedEndDate;

	@Schema(description = "任务备注")
	private String taskRemark;

	@Schema(description = "货物信息")
	private String goodsJson;

	@Schema(description = "路线信息")
	private String routeJson;

	@Schema(description = "任务信息")
	private String taskInfoJson;

	@Schema(description = "所属组织ID")
	private Long deptId;

	@Schema(description = "所属组织")
	private String deptName;

	@Schema(description = "业务状态")
	private String businessStatus;

}
