package com.zfire.mall.manager.bean.pick;

import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.zfire.mall.manager.annotation.ZfireField;
import com.zfire.mall.manager.enums.*;
import com.zfire.mall.manager.plus.entity.PickManager;
import com.zfire.mall.manager.plus.entity.PickManagerShip;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;

/**
 * @author change
 */
@ApiModel
@Data
public class PickManagerBeanVO  {

    @ZfireField(tbName = "pm",hide = true)
    @ApiModelProperty(value = "提货订单")
    private String id;
    @ZfireField(tbName = "pm")
    @ApiModelProperty(value = "预约日期")
    private Date pickTime;
    @ZfireField(tbName = "pm",type="select")
    @ApiModelProperty(value = "预约")
    private PickTypeStatusEnum pickStatus;
    @ZfireField(tbName = "pm",type="select")
    @ApiModelProperty(value = "提货方式")
    private PickTypeEnum pickType;
    @ZfireField(tbName = "pm")
    @ApiModelProperty(value = "物流公司")
    private String pickLogistics;
    @ZfireField(tbName = "pm",hide = true)
    @ApiModelProperty(value = "物流配置ID")
    private String logisticsId;
    @ZfireField(tbName = "pm")
    @ApiModelProperty(value = "备注内容")
    private String remark;
    @ZfireField(tbName = "pm")
    @ApiModelProperty(value = "创建时间")
    private Date createTime;
    @ZfireField(tbName = "pm")
    @ApiModelProperty(value = "修改时间")
    private Date updateTime;
    @ZfireField(tbName = "pm")
    @ApiModelProperty(value = "创建人")
    private String createBy;
    @ZfireField(tbName = "pm")
    @ApiModelProperty(value = "更新人")
    private String updateBy;
/*    @ZfireField(tbName = "pm")
    @ApiModelProperty(value = "提货车辆")
    private String pickCar;*/
    @ZfireField(tbName = "pm")
    @ApiModelProperty(value = "提货人姓名")
    private String takerName;
    @ZfireField(tbName = "pm",hide = true)
    @ApiModelProperty(value = "提货人ID")
    private String takerId;
    @ZfireField(tbName = "pm")
    @ApiModelProperty(value = "车牌")
    private String carBrand;
    @ZfireField(tbName = "pm",hide = true)
    @ApiModelProperty(value = "提货车辆ID")
    private String takerCarId;
    @ZfireField(tbName = "pm")
    @ApiModelProperty(value = "信息密钥")
    private String informationKey;
    @ZfireField(tbName = "pm",hide = true)
    @ApiModelProperty(value = "仓库ID")
    private String correspondId;
    @ZfireField(tbName = "pm")
    @ApiModelProperty(value = "仓库名称")
    private String correspondName;
    @ZfireField(tbName = "pm")
    @ApiModelProperty(value = "经销商编号")
    private String customerNumber;
    @ZfireField(tbName = "pm",hide = true)
    @ApiModelProperty(value = "经销商id")
    private String customerId;
    @ZfireField(tbName = "pm")
    @ApiModelProperty(value = "经销商名称")
    private String customerName;
    @ZfireField(tbName = "pm")
    @ApiModelProperty(value = "出库单据号")
    private String pickOrderWater;
    @ZfireField(tbName = "pm")
    @ApiModelProperty(value = "提货人电话")
    private String takerPhone;
    @ZfireField(tbName = "pms",colName = "receiving_name")
    @ApiModelProperty(value = "收货客户")
    private String pmReceivingName;
    @ZfireField(tbName = "pms",colName = "phone")
    @ApiModelProperty(value = "电话")
    private String pmPhone;
    @ZfireField(tbName = "pms",colName = "address")
    @ApiModelProperty(value = "收货地址")
    private String pmAddress;
    @ZfireField(tbName = "pm",type = "select")
    @ApiModelProperty(value = "是否上楼")
    private PickIsEnum isUp;
    @ZfireField(tbName = "pm",type = "select")
    @ApiModelProperty(value = "是否卸货")
    private PickIsEnum isDischarge;


    @ZfireField(tbName = "pms")
    @ApiModelProperty(value = "经销商销售订单号")
    private String customerOrderId;


    @ZfireField(tbName = "pms")
    @ApiModelProperty(value = "销售订单号")
    private String goodsOrderId;



    @ZfireField(tbName = "pms",hide = true)
    @ApiModelProperty(value = "发货单产品ID")
    private String invoiceOrderId;
    @ZfireField(tbName = "pms")
    @ApiModelProperty(value = "打印次数")
    private Integer printNum;
    @ZfireField(tbName = "pms",type = "select")
    @ApiModelProperty(value = "提货状态")
    private PickOrderEnum status;
    @ZfireField(tbName = "pms")
    @ApiModelProperty(value = "打单日期")
    private Date printTime;
    @ZfireField(tbName = "pms",hide = true)
    @ApiModelProperty(value = "实际提货时间")
    private Date pickActualTime;
    @ZfireField(tbName = "pms",hide = true)
    @ApiModelProperty(value = "主订单id")
    private String mainOrderId;
    @ZfireField(tbName = "pms",hide = true)
    @ApiModelProperty(value = "订单商品id")
    private String orderId;
    @ZfireField(tbName = "pms")
    @ApiModelProperty(value = "发货单号")
    private String invoiceId;
    @ZfireField(tbName = "pms",hide = true)
    @ApiModelProperty(value = "申请数量")
    private Integer invoiceNum;
    @ZfireField(tbName = "pms",hide = true)
    @ApiModelProperty(value = "审批数量")
    private Integer approvalNumber;
    @ZfireField(tbName = "pms")
    @ApiModelProperty(value = "数量")
    private Integer refundableQty;
    @ZfireField(tbName = "pms",hide = true)
    @ApiModelProperty(value = "已退数量")
    private Integer retiredQty;
    @ZfireField(tbName = "pms",hide = true)
    @ApiModelProperty(value = "金蝶物料id")
    private String materialId;

    @ZfireField(tbName = "pms",type = "select")
    @ApiModelProperty(value = "订单类型")
    private OrderTypeEnum orderType;

    @ZfireField(tbName = "pms",hide = true)
    @ApiModelProperty(value = "销售类型id")
    private String saleTypeId;
    @ZfireField(tbName = "pms")
    @ApiModelProperty(value = "销售类型编号")
    private String saleTypeCode;
    @ZfireField(tbName = "pms")
    @ApiModelProperty(value = "销售类型名称")
    private String saleTypeName;
    @ZfireField(tbName = "pms")
    @ApiModelProperty(value = "单据日期")
    private Date theTime;
    @ZfireField(tbName = "pms")
    @ApiModelProperty(value = "厂产品代码")
    private String materialOldNumber;
    @ZfireField(tbName = "pms")
    @ApiModelProperty(value = "物料编号")
    private String materialCode;
    @ZfireField(tbName = "pms")
    @ApiModelProperty(value = "产品名称")
    private String materialName;
    @ZfireField(tbName = "pms")
    @ApiModelProperty(value = "规格型号")
    private String specification;
    @ZfireField(tbName = "pms")
    @ApiModelProperty(value = "单位")
    private String unit;
    @ZfireField(tbName = "pms",hide = true)
    @ApiModelProperty(value = "单价")
    private BigDecimal price;
    @ZfireField(tbName = "pms",hide = true)
    @ApiModelProperty(value = "实付金额")
    private BigDecimal payAmount;
    @ZfireField(tbName = "pms",hide = true)
    @ApiModelProperty(value = "税率")
    private BigDecimal tax;
    @ZfireField(tbName = "pms",hide = true)
    @ApiModelProperty(value = "数量")
    private Integer qty;
    @ZfireField(tbName = "pms",hide = true)
    @ApiModelProperty(value = "税后单价")
    private BigDecimal afterTaxPrice;
    @ZfireField(tbName = "pms",hide = true)
    @ApiModelProperty(value = "无税金额")
    private BigDecimal noTotalAmount;
    @ZfireField(tbName = "pms",hide = true)
    @ApiModelProperty(value = "实际扣除的返利金额")
    private BigDecimal payRebateAmount;
    @ZfireField(tbName = "pms",hide = true)
    @ApiModelProperty(value = "总的格力折扣金额")
    private BigDecimal totalDiscAmount;
    @ZfireField(tbName = "pms")
    @ApiModelProperty(value = "工程订单编号")
    private String enginOrderNo;
    @ZfireField(tbName = "pms",hide = true)
    @ApiModelProperty(value = "存货类别")
    private String categoryId;
    @ZfireField(tbName = "pms",colName = "k3_category_name")
    @ApiModelProperty(value = "存货类别名称")
    private String categoryName;
    @ZfireField(tbName = "pms")
    @ApiModelProperty(value = "销售出库单号")
    private String salesOrderId;
    @ZfireField(tbName = "pms")
    @ApiModelProperty(value = "工程登录编号")
    private String refEnginRecordNo;





}
