package com.jisco.ymtappoint.medol;


import com.fasterxml.jackson.annotation.JsonFormat;
import com.steerinfo.framework.model.IBasePO;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 * <p>
 * 提货预约
 * </p>
 *
 * @author yejianmin
 * @since 2021-04-15
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@ApiModel(value = "Appoint对象", description = "提货预约")
public  class AppointToJL implements IBasePO<String> {

    private static final long serialVersionUID = 1L;


//    @TableId(value = "guid", type = IdType.UUID)
    @ApiModelProperty(value = "标识ID", position = 1)
    private String guid;


    @ApiModelProperty(value = "预约单号", position = 3)
    private String appointId;

    @ApiModelProperty(value = "预约类型", position = 4)
    private String appointType;


    @ApiModelProperty(value = "提单类型", position = 7)
    private String tmsWaybillType;

    @ApiModelProperty(value = "提单编号", position = 8)
    private String tmsWaybillId;

    @ApiModelProperty(value = "装运类型", position = 9)
    private String loadingType;


    @ApiModelProperty(value = "车牌号", position = 11)
    private String vehicleId;


    @ApiModelProperty(value = "车型", position = 13)
    private String vehicleType;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty(value = "预约提货时间", example = "2020-07-01 00:00:00", position = 14)
    private LocalDateTime appointLoadTime;


    @ApiModelProperty(value = "库房编码", position = 16)
    private String storeroomId;

    @ApiModelProperty(value = "库房名称", position = 17)
    private String storeroomName;


    @ApiModelProperty(value = "收货方", position = 20)
    private String consigneeId;

    @ApiModelProperty(value = "收货方名称", position = 21)
    private String consigneeName;


    @ApiModelProperty(value = "物料编码", position = 27)
    private String materialId;

    @ApiModelProperty(value = "物料名称", position = 28)
    private String materialName;


    @ApiModelProperty(value = "收货库房", position = 34)
    private String receiveStoreroomId;

    @ApiModelProperty(value = "收货库房名称", position = 35)
    private String receiveStoreroomName;

    @ApiModelProperty(value = " 总件数", example = "0", position = 36)
    private Integer groupPackageAmount;

    @ApiModelProperty(value = "总重量", example = "0", position = 37)
    private BigDecimal amount;


    @ApiModelProperty(value = "预约状态", position = 41)
    private String appointState;

    @ApiModelProperty(value = "承运人用户", position = 47)
    private String carrierUserId;

    @ApiModelProperty(value = "承运人", position = 45)
    private String carrier;

    @ApiModelProperty(value = "承运人名称", position = 46)
    private String carrierName;


    @ApiModelProperty(value = "承运人手机", position = 48)
    private String carrierUserTelephone;

    @ApiModelProperty(value = "司机真实姓名", position = 50)
    private String truckDriverRealname;

    @ApiModelProperty(value = "司机手机号", position = 51)
    private String truckDriverTelephone;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty(value = "预约提交时间", example = "2020-07-01 00:00:00", position = 52)
    private LocalDateTime appointSubmitTime;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty(value = "预约入门时间", example = "2020-07-01 00:00:00", position = 60)
    private LocalDateTime indoorTime;


    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty(value = "预约结束时间", example = "2020-07-01 00:00:00", position = 64)
    private LocalDateTime appointOverTime;

    @ApiModelProperty(value = "来源系统", position = 65)
    private String orisysId;


    @ApiModelProperty(value = "删除标记", example = "N", position = 67)
    private String deletedTag;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty(value = "修改日期", example = "2020-07-01 00:00:00", position = 71)
    private LocalDateTime changeDate;


    @Override
    public String getId() {
        return null;
    }

    @Override
    public void setId(String s) {

    }
}
