package com.pj.tb_orders;

import java.io.Serializable;
import java.util.Date;

import com.baomidou.mybatisplus.annotation.*;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import lombok.EqualsAndHashCode;

import lombok.Data;
import lombok.experimental.Accessors;

/**
 * Model: tb_orders -- 订单表
 * @author qzy
 */
@Data
@Accessors(chain = true)
@TableName(TbOrders.TABLE_NAME)
@EqualsAndHashCode(callSuper = false)
public class TbOrders extends Model<TbOrders> implements Serializable {

	// ---------- 模块常量 ----------
	/**
	 * 序列化版本id
	 */
	private static final long serialVersionUID = 1L;
	/**
	 * 此模块对应的表名
	 */
	public static final String TABLE_NAME = "tb_orders";
	/**
	 * 此模块对应的权限码
	 */
	public static final String PERMISSION_CODE = "tb-orders";
	public static final String PERMISSION_CODE_ADD = "tb-orders-add";
	public static final String PERMISSION_CODE_EDIT = "tb-orders-edit";
	public static final String PERMISSION_CODE_DEL = "tb-orders-del";
	public static final String PERMISSION_CODE_EDIT_PRICE = "tb-order-edit-price";
	public static final String PERMISSION_CODE_DEDUCTION = "tb-orders-deduction";




	// ---------- 表中字段 ----------
	/**
	 * 货运订单管理表主键
	 */
	@TableId(type = IdType.AUTO)
	private Long id;

	/**
	 * 一级市场订单ID
	 */
	private Long levelOneOrderId;

	/**
	 * 订单编号
	 */
	private String orderNo;

	/**
	 * 商品id
	 */
	private Long goodsId;

	/**
	 * 商品名称
	 */
	private String goodsName;

	/**
	 * 商品来源(国家)
	 */
	private String goodsFrom;

	/**
	 * 发货商电话
	 */
	private String shipperPhone;

	/**
	 * 发货商名称
	 */
	private String shipperName;

	/**
	 * 司机ID
	 */
	private Long driverId;

	/**
	 * 司机名称
	 */
	private String driverName;

	/**
	 * 司机电话
	 */
	private String driverPhone;

	/**
	 * 车型ID
	 */
	private Long carId;

	/**
	 * 车牌号
	 */
	private String veNo;

	/**
	 * 收货人名称
	 */
	private String consigneeName;

	/**
	 * 收货人电话号码
	 */
	private String consigneePhone;

	/**
	 * (预留字段) 申报订单号
	 */
	private String declarationNumber;

	/**
	 * 订单完成状态 (0=未完成,1=已完成)
	 */
	private Integer orderFinish;

	/**
	 * 装货地址
	 */
	private String loadingAddress;

	/**
	 * 卸货地址
	 */
	private String unloadingAddress;

	/**
	 * 备注
	 */
	private String comment;

	/**
	 * 更新时间
	 */
	private Date updateTime;


	/**
	 * 更新人编号
	 */
	private Long updateBy;
	/**
	 * 更新人名称
	 */
	private String updateName;

	/**
	 * 删除状态(0=禁用,1=启用)
	 */
	private Integer deleteStatus;

	/**
	 * 创建时间
	 */
	private Date createTime;

	/**
	 * 创建人编号
	 */
	private Long createBy;

	/**
	 * 创建人名称
	 */
	private String createName;

	/**
	 * 贸易区域id
	 */
	private Long tradeAreaId;

	/**
	 * 贸易区域名称
	 */
	private String tradeAreaName;

	/**
	 * 买家ID
	 */
	private Long purchaserId;

	/**
	 * 买家名称
	 */
	private String purchaserName;

	/**
	 * 边民Id
	 */
	private Long leaderId;
	/**
	 * 边民姓名
	 */
	private String leaderName;
	/**
	 * 边民手机号
	 */
	private String leaderPhone;

	/**
	 * 二级收购商需求发布表的主键id
	 */
	private Long fkGoodsDemandId;

	/**
	 * 是否收货[0=未收货,1=已收货]
	 */
	private Integer isDelivery;

	/**
	 * 转售金额
	 */
	private Double resalePrice;

	/**
	 * 是否支付(0=未支付,1=支付成功,2=支付失败,3=支付中)
	 */
	private Integer isPay;

	/**
	 * 支付/回执时间
	 */
	private Date payTime;

	/**
	 * 是否缴税缴费(0=未缴费,1=缴费成功,2=缴费失败,3=缴费中)
	 */
	private Integer payTax;

	/**
	 * 缴税缴费/回执时间
	 */
	private Date payTaxTime;

	private String bankName;
	private String bankAccount;
	private String goodsUnit;
	private String netWet;
	private String totalWeight;
	private String singlePrice;

	/**
	 * (二级市场)采购商补扣款次数
	 */
	private Integer deductionCount;
	/**
	 * (二级市场)采购商最近一次补扣款时间
	 */
	private Date deductionTime;

	/**
	 * 申报数量
	 */
	private Double buyQty;

	/**
	 * 第一数量
	 */
	private Double buyQty1;

	/**
	 * 第二数量
	 */
	private Double buyQty2;
	/**
	 * 下单时间
	 */
	private Date orderTime;
}
