package com.bohuikeji.delivery.backstage.entity;

import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.TableField;
import com.bohuikeji.frame.module.admin.annotation.TableNewField;
import com.bohuikeji.frame.module.admin.annotation.TableShowField;
import com.bohuikeji.frame.module.admin.base.EntityBase;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * <p>
 * 京东订单信息表
 * </p>
 *
 * @author 10552
 * @since 2022-01-13
 */
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@ApiModel(value="TOrderJd对象", description="京东订单信息表")
public class TOrderJd extends EntityBase<TOrderJd> {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(hidden = true)
    @TableId(value = "id", type = IdType.AUTO)
    @TableShowField(value = "ID",id = true)
    @TableNewField(show = false)
    private Integer id;

    @ApiModelProperty(value = "创建时间")
    @TableField("gmt_create")
    @TableShowField("创建时间")
    @TableNewField
    private LocalDateTime gmtCreate;

    @ApiModelProperty(value = "更新时间")
    @TableField("gmt_modified")
    @TableShowField("更新时间")
    @TableNewField
    private LocalDateTime gmtModified;

    @ApiModelProperty(value = "订单号")
    @TableField("order_num")
    @TableShowField("订单号")
    @TableNewField
    private String orderNum;

    @ApiModelProperty(value = "寄件人姓名",required = true)
    @TableField("sender_name")
    @TableShowField("寄件人姓名")
    @TableNewField
    private String senderName;

    @ApiModelProperty(value = "寄件地址",required = true)
    @TableField("sender_address")
    @TableShowField("寄件地址")
    @TableNewField
    private String senderAddress;

    @ApiModelProperty(value = "寄件人固话")
    @TableField("sender_tel")
    @TableShowField("寄件人固话")
    @TableNewField
    private String senderTel;

    @ApiModelProperty(value = "寄件人手机",required = true)
    @TableField("sender_mobile")
    @TableShowField("寄件人手机")
    @TableNewField
    private String senderMobile;

    @ApiModelProperty(value = "揽收方式，填写中文：上门收货，或，自送；可不填写，如果产品类型是函速达，则必须填写：上门收货")
    @TableField("pick_method")
    @TableShowField("揽收方式，填写中文：上门收货，或，自送；可不填写，如果产品类型是函速达，则必须填写：上门收货")
    @TableNewField
    private String pickMethod;

    @ApiModelProperty(value = "收件人姓名",required = true)
    @TableField("receive_name")
    @TableShowField("收件人姓名")
    @TableNewField
    private String receiveName;

    @ApiModelProperty(value = "收件地址",required = true)
    @TableField("receive_address")
    @TableShowField("收件地址")
    @TableNewField
    private String receiveAddress;

    @ApiModelProperty(value = "手机人座机")
    @TableField("receive_tel")
    @TableShowField("手机人座机")
    @TableNewField
    private String receiveTel;

    @ApiModelProperty(value = "收件人手机",required = true)
    @TableField("receive_mobile")
    @TableShowField("收件人手机")
    @TableNewField
    private String receiveMobile;

    @ApiModelProperty(value = "包裹数量")
    @TableField("package_count")
    @TableShowField("包裹数量")
    @TableNewField
    private Integer packageCount;

    @ApiModelProperty(value = "重量",required = true)
    @TableField("weight")
    @TableShowField("重量")
    @TableNewField
    private Double weight;

    @ApiModelProperty(value = "长")
    @TableField("vloum_long")
    @TableShowField("长")
    @TableNewField
    private Double vloumLong;

    @ApiModelProperty(value = "宽")
    @TableField("vloum_width")
    @TableShowField("宽")
    @TableNewField
    private Double vloumWidth;

    @ApiModelProperty(value = "高")
    @TableField("vloum_height")
    @TableShowField("高")
    @TableNewField
    private Double vloumHeight;

    @ApiModelProperty(value = "体积")
    @TableField("vloumn")
    @TableShowField("体积")
    @TableNewField
    private Double vloumn;

    @ApiModelProperty(value = "寄托物内容，字段长度：1-200，超过200个字符时截取前200个字符")
    @TableField("description")
    @TableShowField("寄托物内容，字段长度：1-200，超过200个字符时截取前200个字符")
    @TableNewField
    private String description;

    @ApiModelProperty(value = "商家声明的寄托物的价格，",required = true)
    @TableField("goods_money")
    @TableShowField("商家声明的寄托物的价格，")
    @TableNewField
    private BigDecimal goodsMoney;

    @ApiModelProperty(value = "预约配送时间")
    @TableField("order_send_time")
    @TableShowField("预约配送时间")
    @TableNewField
    private LocalDateTime orderSendTime;

    @ApiModelProperty(value = "配送业务类型（ 1:普通，2:生鲜常温，5:鲜活，6:控温，7:冷藏，8:冷冻，9:深冷）默认是1；若是生鲜相关产品，则填写枚举2、5、6、7、8、9，否则不填或填1")
    @TableField("goods_type")
    @TableShowField("配送业务类型（ 1:普通，2:生鲜常温，5:鲜活，6:控温，7:冷藏，8:冷冻，9:深冷）默认是1；若是生鲜相关产品，则填写枚举2、5、6、7、8、9，否则不填或填1")
    @TableNewField
    private Integer goodsType;

    @ApiModelProperty(value = "运单备注（不超过20个字）,打印面单时备注内容也会显示在快递面单上")
    @TableField("remark")
    @TableShowField("运单备注（不超过20个字）,打印面单时备注内容也会显示在快递面单上")
    @TableNewField
    private String remark;

    @ApiModelProperty(value = "订单状态")
    @TableField("order_status")
    @TableShowField("订单状态")
    @TableNewField
    private String orderStatus;


}
