package com.yh.saas.plugin.yiliangyiyun.entity;


import java.io.Serializable;
import java.util.List;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
import com.yh.saas.common.support.entity.BaseModel;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * <p>
 * 记录运输任务
 * </p>
 *
 * @author Gongdc
 * @since 2021-05-31
 */
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("tran_task_info")
public class TranTaskInfo extends BaseModel<TranTaskInfo> {

    private static final long serialVersionUID = 1L;

    /**
     * 主键
     */
    @TableId(type = IdType.UUID)
    private String id;
    /**
     * 公司id
     */
    private String compId;
    /**
     * 运输任务编号
     */
    private String taskNo;
    /**
     * 合同编号
     */
    private String contractNo;
    /**
     * 任务类型key
     */
    private String taskTypeKey;
    /**
     * 任务类型
     */
    private String taskType;
    /**
     * 货名key
     */
    private String goodsNameKey;
    /**
     * 货名
     */
    private String goodsName;
    /**
     * 重量（吨）
     */
    private Float weight;
    /**
     * 发货库类型(1常用仓库2临时仓库)
     */
    private String warehouseType;
    /**
     * 发货库点
     */
    private String sendWarehouse;
    /**
     * 收货库点
     */
    private String receiveWarehouse;
    /**
     * 始发地省
     */
    private String startPrivate;
    /**
     * 始发地市
     */
    private String startCity;
    /**
     * 始发地区
     */
    private String startArea;
    /**
     * 始发地详细地址
     */
    private String startDetailedAddress;
    /**
     * 终到地省
     */
    private String endPrivate;
    /**
     * 终到地市
     */
    private String endCity;
    /**
     * 终到地区
     */
    private String endArea;
    /**
     * 终到地详细地址
     */
    private String endDetailedAddress;
    /**
     * 当前中转地址
     */
    private String currentTransferAddress;
    /**
     * 运输方式(1汽运2火运3船运)
     */
    private String tranType;
    /**
     * 状态标识
     */
    private String statusFlag;
    /**
     * 状态
     */
    private String status;
    /**
     * 状态英文
     */
    private String statusEn;

    /**
     * 模糊查询
     */
    @TableField(exist = false)
    private String searchKeyWord;

    /**
     *查询类型
     */
    @TableField(exist = false)
    private String searchType;

    /**
     *起点
     */
    @TableField(exist = false)
    private String start;

    /**
     *终点
     */
    @TableField(exist = false)
    private String end;

    /**
     * 调度状态标识
     */
    @TableField(exist = false)
    private String processStatusFlag;
    /**
     * 调度状态
     */
    @TableField(exist = false)
    private String processStatus;

    @TableField(exist = false)
    private List<TranProcessInfo> tranProcessInfoList;

    @TableField(exist = false)
    private List<TranCarInfo> tranCarInfoList;
    @TableField(exist = false)
    private TranProcessInfo tranProcessInfo;
    /**
     *包括已删除的调度
     */
    @TableField(exist = false)
    private Integer count;

    @Override
    protected Serializable pkVal() {
        return this.id;
    }
    public static class QueryFiles {

        public static final String COMP_ID = "comp_id";

        public static final String TASK_NO = "task_no";

        public static final String DELETE_FLAG = "delete_flag";
    }
}
