package com.bailuntec.domain.dto;

import com.alibaba.fastjson.annotation.JSONField;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;

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

@Data
public class PurchaseDetailDTO {

    /**
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dc_base_purchase_details.purchase_id
     *
     * @mbg.generated
     */
    @JSONField(name = "BuyNo")
    private String purchaseId;

    /**
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dc_base_purchase_details.status
     *
     * @mbg.generated
     */
    @JSONField(name = "Status")
    private Integer status;

    /**
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dc_base_purchase_details.purchase_category_name
     *
     * @mbg.generated
     */
    @JSONField(name = "BuyCategoryName")
    private String purchaseCategoryName;

    /**
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dc_base_purchase_details.deliver_id
     *
     * @mbg.generated
     */
    @JSONField(name = "SupplierId")
    private Integer deliverId;

    /**
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dc_base_purchase_details.deliver_name
     *
     * @mbg.generated
     */
    @JSONField(name = "SupplierName")
    private String deliverName;

    @JSONField(name = "SupplierValue")
    private Integer deliverValue;

    /**
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dc_base_purchase_details.buyer_name
     *
     * @mbg.generated
     */
    @JSONField(name = "BuyUserName")
    private String buyerName;

    /**
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dc_base_purchase_details.warehouse_from_code
     *
     * @mbg.generated
     */
    @JSONField(name = "WareHouseFrom")
    private String warehouseFromCode;

    /**
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dc_base_purchase_details.warehouse_from_name
     *
     * @mbg.generated
     */
    @JSONField(name = "WareHouseFromName")
    private String warehouseFromName;

    /**
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dc_base_purchase_details.warehouse_into_code
     *
     * @mbg.generated
     */
    @JSONField(name = "WareHouseTo")
    private String warehouseIntoCode;

    /**
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dc_base_purchase_details.warehouse_into_name
     *
     * @mbg.generated
     */
    @JSONField(name = "WareHouseToName")
    private String warehouseIntoName;

    /**
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dc_base_purchase_details.bailun_sku
     *
     * @mbg.generated
     */
    @JSONField(name = "SkuCode")
    private String bailunSku;

    /**
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dc_base_purchase_details.quantity_purchase
     *
     * @mbg.generated
     */
    @JSONField(name = "BuyCount")
    private Integer quantityPurchase;

    /**
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dc_base_purchase_details.unit_price
     *
     * @mbg.generated
     */
    @JSONField(name = "PayPrice")
    private BigDecimal unitPrice;

    /**
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dc_base_purchase_details.amount_paid
     *
     * @mbg.generated
     */
    @JSONField(name = "PayAmount")
    private BigDecimal amountPaid;

    /**
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dc_base_purchase_details.currency_code
     *
     * @mbg.generated
     */
    @JSONField(name = "MoneyUnitCode")
    private String currencyCode;

    /**
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dc_base_purchase_details.currency_name
     *
     * @mbg.generated
     */
    @JSONField(name = "MoneyUnitName")
    private String currencyName;

    /**
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dc_base_purchase_details.quantity_return
     *
     * @mbg.generated
     */
    @JSONField(name = "ReturnCount")
    private Integer quantityReturn;

    /**
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dc_base_purchase_details.quantity_inbound
     *
     * @mbg.generated
     */
    @JSONField(name = "PutinCount")
    private Integer quantityInbound;

    /**
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dc_base_purchase_details.quantity_deliver
     *
     * @mbg.generated
     */
    @JSONField(name = "DeliverCount")
    private Integer quantityDeliver;

    /**
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dc_base_purchase_details.quantity_not_deliver
     *
     * @mbg.generated
     */
    @JSONField(name = "NotDeliverCount")
    private Integer quantityNotDeliver;

    /**
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dc_base_purchase_details.quantity_arrival
     *
     * @mbg.generated
     */
    @JSONField(name = "ArrivalCount")
    private Integer quantityArrival;

    /**
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dc_base_purchase_details.quantity_not_arrival
     *
     * @mbg.generated
     */
    @JSONField(name = "NotArrivalCount")
    private Integer quantityNotArrival;

    /**
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dc_base_purchase_details.quantity_inspect
     *
     * @mbg.generated
     */
    @JSONField(name = "QcCount")
    private Integer quantityInspect;

    /**
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dc_base_purchase_details.quantity_qualified_inspect
     *
     * @mbg.generated
     */
    @JSONField(name = "QualifiedCount")
    private Integer quantityQualifiedInspect;

    /**
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dc_base_purchase_details.quantity_unqualified_inspect
     *
     * @mbg.generated
     */
    @JSONField(name = "NotQualifiedCount")
    private Integer quantityUnqualifiedInspect;

    /**
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dc_base_purchase_details.quantity_wait_transfer
     *
     * @mbg.generated
     */
    @JSONField(name = "AllotCount")
    private Integer quantityWaitTransfer;

    /**
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dc_base_purchase_details.quantity_exchange
     *
     * @mbg.generated
     */
    @JSONField(name = "ExchangeCount")
    private Integer quantityExchange;

    /**
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dc_base_purchase_details.quantity_lose_inbound
     *
     * @mbg.generated
     */
    @JSONField(name = "PutinLoseCount")
    private Integer quantityLoseInbound;

    /**
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dc_base_purchase_details.create_time
     *
     * @mbg.generated
     */
    @JSONField(name = "CreateTime")
    private String createTimed;

    /**
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dc_base_purchase_details.update_time
     *
     * @mbg.generated
     */
    @JSONField(name = "UpdateTime")
    private String updateTimed;


    /**
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dc_base_purchase_details.alibaba_order_id
     *
     * @mbg.generated
     */
    @JSONField(name = "TaobaoOrderNo")
    private String alibabaOrderId;

    /**
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dc_base_purchase_details.logistics_order_id
     *
     * @mbg.generated
     */
    @JSONField(name = "ExpressNo")
    private String logisticsOrderId;

    /**
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column dc_base_purchase_details.logistics_company_name
     *
     * @mbg.generated
     */
    @JSONField(name = "ExpressCompany")
    private String logisticsCompanyName;

    @JSONField(name = "no")
    private Integer companyId;

    @JSONField(name = "ispush")
    private Integer ispush;

    @JSONField(name = "isallot")
    private Integer isallot;

    @JSONField(name = "isaims")
    private Integer isaims;

    @JSONField(name = "detail_delstatus")
    private Boolean detailDelstatus;

    @JSONField(name = "paytype")
    private Integer payType;

    @JSONField(name = "paystatus")
    private Integer payStatus;

    @JSONField(name = "lastsigntime")
    private Date lastSigntime;

    @JSONField(name = "arrivalstatus")
    private Integer arrivalStatus;

    @JSONField(name = "buyamount")
    private Integer amountBuy;

    @JSONField(name = "buypayamount")
    private Integer amountPayed;

    @JSONField(name = "expressfee")
    private Integer amountExpress;

    @JSONField(name = "createusername")
    private String createusername;

    @JSONField(name = "can_7day_refund")
    @JsonProperty("can_7day_refund")
    private Integer can7dayRefund;

    @JSONField(name = "arrivaldate")
    private Date arrivaldate;

    @JSONField(name = "skudelstatus")
    private Integer hasDelete;

}

