package com.fs.erp.dto.sdk.wangdianTwo.api.dto;

import com.google.gson.annotations.SerializedName;

import java.math.BigDecimal;
import java.util.List;

/**
 * 订单查询响应实体类
 */
public class QuerySelfOrderDetailResponse {

    /**
     * 总数（查询条件总单据数）
     */
    @SerializedName("total_count")
    private Integer totalCount;

    /**
     * 单据数据（订单相关数据）
     */
    @SerializedName("order")
    private List<OrderInfo> order;

    // Getters and Setters
    public Integer getTotalCount() {
        return totalCount;
    }

    public void setTotalCount(Integer totalCount) {
        this.totalCount = totalCount;
    }

    public List<OrderInfo> getOrder() {
        return order;
    }

    public void setOrder(List<OrderInfo> order) {
        this.order = order;
    }

    /**
     * 订单主信息实体类
     */
    public static class OrderInfo {

        /**
         * 订单唯一键
         */
        @SerializedName("trade_id")
        private Long tradeId;

        /**
         * 订单编号（旺店通系统订单号）
         */
        @SerializedName("trade_no")
        private String tradeNo;

        /**
         * 平台ID
         */
        @SerializedName("platform_id")
        private Integer platformId;

        /**
         * 仓库类型
         * 1、普通仓库,大于1为委外仓库(如京东仓储,物流宝等)
         */
        @SerializedName("warehouse_type")
        private Integer warehouseType;

        /**
         * 原始单号（平台订单号），如果有多个，以","分隔
         */
        @SerializedName("src_tids")
        private String srcTids;

        /**
         * 平台支付帐号
         */
        @SerializedName("pay_account")
        private String payAccount;

        /**
         * 订单状态
         */
        @SerializedName("trade_status")
        private Integer tradeStatus;

        /**
         * 订单类型
         * 1、网店销售 2、线下订单 3、售后换货 4、批发业务 5、保修换新 6、保修完成 7、现款销售 8、分销订单
         * 101-110、自定义类型一到十
         */
        @SerializedName("trade_type")
        private Integer tradeType;

        /**
         * 发货条件
         * 1、款到发货 2、货到付款(包含部分货到付款) 3、分期付款 4、挂账
         */
        @SerializedName("delivery_term")
        private Integer deliveryTerm;

        /**
         * 京东几环（淘宝模糊化后的买家昵称）
         */
        @SerializedName("receiver_ring")
        private String receiverRing;

        /**
         * 冻结原因
         */
        @SerializedName("freeze_reason")
        private String freezeReason;

        /**
         * 退款状态
         * 0、无退款 1、申请退款 2、部分退款 3、全部退款
         */
        @SerializedName("refund_status")
        private Integer refundStatus;

        /**
         * 分销类别
         * 0、非分销订单 1、代销 2、经销
         */
        @SerializedName("fenxiao_type")
        private Integer fenxiaoType;

        /**
         * 分销商昵称
         */
        @SerializedName("fenxiao_nick")
        private String fenxiaoNick;

        /**
         * 下单时间（毫秒级时间戳，例如：1631861379000）
         */
        @SerializedName("trade_time")
        private String tradeTime;

        /**
         * 付款时间，例如：2020-10-19 00:00:00
         */
        @SerializedName("pay_time")
        private String payTime;

        /**
         * 发货时间（毫秒级时间戳，例如：1631861379000）
         */
        @SerializedName("consign_time")
        private String consignTime;

        /**
         * 客户网名
         */
        @SerializedName("buyer_nick")
        private String buyerNick;

        /**
         * 收货人/收件人
         */
        @SerializedName("receiver_name")
        private String receiverName;

        /**
         * 省份id
         */
        @SerializedName("receiver_province")
        private Integer receiverProvince;

        /**
         * 城市id
         */
        @SerializedName("receiver_city")
        private Integer receiverCity;

        /**
         * 地区id
         */
        @SerializedName("receiver_district")
        private Integer receiverDistrict;

        /**
         * 收件人地址
         */
        @SerializedName("receiver_address")
        private String receiverAddress;

        /**
         * 手机
         */
        @SerializedName("receiver_mobile")
        private String receiverMobile;

        /**
         * 固话
         */
        @SerializedName("receiver_telno")
        private String receiverTelno;

        /**
         * 邮编
         */
        @SerializedName("receiver_zip")
        private String receiverZip;

        /**
         * 地区（省市区空格分隔）
         */
        @SerializedName("receiver_area")
        private String receiverArea;

        /**
         * 大头笔
         */
        @SerializedName("receiver_dtb")
        private String receiverDtb;

        /**
         * 异常订单原因（位运算）
         * 2、修改地址 4、修改发票 8、更换仓库 16、修改备注 32、更换货品 128、拦截赠品 256、拦截换货
         * 512、买家留言变化 1024、拦截平台已发货
         */
        @SerializedName("bad_reason")
        private Integer badReason;

        /**
         * 物流单号
         */
        @SerializedName("logistics_no")
        private String logisticsNo;

        /**
         * 买家留言
         */
        @SerializedName("buyer_message")
        private String buyerMessage;

        /**
         * 客服备注
         */
        @SerializedName("cs_remark")
        private String csRemark;

        /**
         * 标旗（1 红、2 黄、3 绿、4 蓝、5 紫、6 橙、7 浅蓝、8 浅粉、9 深绿、10 桃红）
         */
        @SerializedName("remark_flag")
        private Integer remarkFlag;

        /**
         * 打印备注
         */
        @SerializedName("print_remark")
        private String printRemark;

        /**
         * 货品种类数
         */
        @SerializedName("goods_type_count")
        private BigDecimal goodsTypeCount;

        /**
         * 货品总量
         */
        @SerializedName("goods_count")
        private BigDecimal goodsCount;

        /**
         * 总货款（折前总额）
         */
        @SerializedName("goods_amount")
        private BigDecimal goodsAmount;

        /**
         * 邮费（买家支付邮费）
         */
        @SerializedName("post_amount")
        private BigDecimal postAmount;

        /**
         * 其他费用
         */
        @SerializedName("other_amount")
        private BigDecimal otherAmount;

        /**
         * 优惠
         */
        @SerializedName("discount")
        private BigDecimal discount;

        /**
         * 应收
         */
        @SerializedName("receivable")
        private BigDecimal receivable;

        /**
         * COD金额（货到付款金额）
         */
        @SerializedName("cod_amount")
        private BigDecimal codAmount;

        /**
         * 买家COD费用
         */
        @SerializedName("ext_cod_fee")
        private BigDecimal extCodFee;

        /**
         * 预估货品成本
         */
        @SerializedName("goods_cost")
        private BigDecimal goodsCost;

        /**
         * 预估邮资成本
         */
        @SerializedName("post_cost")
        private BigDecimal postCost;

        /**
         * 预估重量（kg）
         */
        @SerializedName("weight")
        private BigDecimal weight;

        /**
         * 预估毛利
         */
        @SerializedName("profit")
        private BigDecimal profit;

        /**
         * 税额
         */
        @SerializedName("tax")
        private BigDecimal tax;

        /**
         * 税率
         */
        @SerializedName("tax_rate")
        private BigDecimal taxRate;

        /**
         * 佣金
         */
        @SerializedName("commission")
        private BigDecimal commission;

        /**
         * 发票类型
         * 0：不需要 1：普通发票 2：增值税普通发票 3：增值税专用发票
         */
        @SerializedName("invoice_type")
        private Integer invoiceType;

        /**
         * 发票抬头
         */
        @SerializedName("invoice_title")
        private String invoiceTitle;

        /**
         * 发票内容
         */
        @SerializedName("invoice_content")
        private String invoiceContent;

        /**
         * 业务员
         */
        @SerializedName("salesman_name")
        private String salesmanName;

        /**
         * 审核人
         */
        @SerializedName("checker_name")
        private String checkerName;

        /**
         * 财审人
         */
        @SerializedName("fchecker_name")
        private String fcheckerName;

        /**
         * 签出人
         */
        @SerializedName("checkouter_name")
        private String checkouterName;

        /**
         * 出库单号（系统产生的出库单号）
         */
        @SerializedName("stockout_no")
        private String stockoutNo;

        /**
         * 标记名称
         */
        @SerializedName("flag_name")
        private String flagName;

        /**
         * 订单来源
         * 1、API抓单 2、手工建单 3、导入 4、复制订单 5、接口推送 6、补发订单 7、PDA选货开单 8、分销补发订单
         */
        @SerializedName("trade_from")
        private Integer tradeFrom;

        /**
         * 货品商家编码,多种货品为空,组合装时为组合装编码
         */
        @SerializedName("single_spec_no")
        private String singleSpecNo;

        /**
         * 原始货品数量
         */
        @SerializedName("raw_goods_count")
        private BigDecimal rawGoodsCount;

        /**
         * 原始货品种类数
         */
        @SerializedName("raw_goods_type_count")
        private Integer rawGoodsTypeCount;

        /**
         * 币种
         */
        @SerializedName("currency")
        private String currency;

        /**
         * 发票ID(自增生成)，0代表没有发票或已取消/已冲红
         */
        @SerializedName("invoice_id")
        private Integer invoiceId;

        /**
         * 版本号
         */
        @SerializedName("version_id")
        private Integer versionId;

        /**
         * 修改时间，例如：2020-10-19 00:00:00
         */
        @SerializedName("modified")
        private String modified;

        /**
         * 递交时间（毫秒级时间戳，例如：1631861379000）
         */
        @SerializedName("created")
        private String created;

        /**
         * 审核时间
         */
        @SerializedName("check_time")
        private String checkTime;

        /**
         * 证件类别
         */
        @SerializedName("id_card_type")
        private Integer idCardType;

        /**
         * 店铺编号
         */
        @SerializedName("shop_no")
        private String shopNo;

        /**
         * 店铺名称
         */
        @SerializedName("shop_name")
        private String shopName;

        /**
         * 店铺备注
         */
        @SerializedName("shop_remark")
        private String shopRemark;

        /**
         * 仓库编号，如订单无仓库的话，则不返回该字段
         */
        @SerializedName("warehouse_no")
        private String warehouseNo;

        /**
         * 客户姓名
         */
        @SerializedName("customer_name")
        private String customerName;

        /**
         * 客户编码
         */
        @SerializedName("customer_no")
        private String customerNo;

        /**
         * 物流公司名称
         */
        @SerializedName("logistics_name")
        private String logisticsName;

        /**
         * 物流公司编号
         */
        @SerializedName("logistics_code")
        private String logisticsCode;

        /**
         * 物流类型名称
         */
        @SerializedName("logistics_type_name")
        private String logisticsTypeName;

        /**
         * 送货时间,例如：2020-10-19 00:00:00
         */
        @SerializedName("to_deliver_time")
        private String toDeliverTime;

        /**
         * 计划发货时间
         */
        @SerializedName("delay_to_time")
        private String delayToTime;

        /**
         * 最晚发货时间
         */
        @SerializedName("estimate_consign_time")
        private String estimateConsignTime;

        /**
         * 店铺id
         */
        @SerializedName("shop_id")
        private Integer shopId;

        /**
         * 仓库id
         */
        @SerializedName("warehouse_id")
        private Integer warehouseId;

        /**
         * 体积
         */
        @SerializedName("volume")
        private BigDecimal volume;

        /**
         * 订单标签
         */
        @SerializedName("trade_label")
        private String tradeLabel;

        /**
         * 订单掩码
         * 1：使用智选物流 2：货品标签 4：预订单自动激活失败 16：订单货品指定批次 32：平台自动流转仓库
         * 64：部分发货 128：全部发货 256：优先占用 512：待分配转审核失败或订单审核失败
         * 1024：催未付款订单短信发送标记 2048：拆分
         * 在判断的时候使用&运算
         */
        @SerializedName("trade_mask")
        private Integer tradeMask;

        /**
         * 店铺平台id
         */
        @SerializedName("shop_platform_id")
        private Integer shopPlatformId;

        /**
         * 子平台id
         */
        @SerializedName("sub_platform_id")
        private Integer subPlatformId;

        /**
         * 包装
         */
        @SerializedName("package_name")
        private String packageName;

        /**
         * 包装id
         */
        @SerializedName("package_id")
        private Integer packageId;

        /**
         * 包装成本（计划成本）
         */
        @SerializedName("package_cost")
        private BigDecimal packageCost;

        /**
         * 已付
         */
        @SerializedName("paid")
        private BigDecimal paid;

        /**
         * 大件类型
         * 1：普通套件 2：独立套件 3：分组单发,未使用 -1：非单发件
         */
        @SerializedName("large_type")
        private Integer largeType;

        /**
         * 赠品标记
         * 1：自动赠送 2：手工赠送 4：回购赠送 8：平台赠送
         * （注意：如果是3，则表示既有自动赠送也有手工赠送"1+2"）
         */
        @SerializedName("gift_mask")
        private Integer giftMask;

        /**
         * 客户id
         */
        @SerializedName("customer_id")
        private Integer customerId;

        /**
         * 其他成本
         */
        @SerializedName("other_cost")
        private BigDecimal otherCost;

        /**
         * 不可合并拆分
         */
        @SerializedName("is_sealed")
        private Boolean isSealed;

        /**
         * 客户类型（0：普通客户；1：分销商；2：线下批发）
         */
        @SerializedName("customer_type")
        private Integer customerType;

        /**
         * 物流公司id
         */
        @SerializedName("logistics_id")
        private Integer logisticsId;

        /**
         * 取消原因
         */
        @SerializedName("cancel_reason")
        private String cancelReason;

        /**
         * 驳回原因
         */
        @SerializedName("revert_reason")
        private String revertReason;

        /**
         * 订单标签掩码
         */
        @SerializedName("new_trade_label")
        private String newTradeLabel;

        /**
         * 分销原始单号（无长度限制）
         */
        @SerializedName("fenxiao_tid")
        private String fenxiaoTid;

        /**
         * 客户唯一编码
         */
        @SerializedName("customer_unique_id")
        private String customerUniqueId;

        /**
         * 平台标签
         */
        @SerializedName("platform_label")
        private String platformLabel;

        /**
         * 分销商编号
         */
        @SerializedName("fenxiao_nick_no")
        private String fenxiaoNickNo;

        /**
         * 预物流同步单号
         */
        @SerializedName("pre_sync_logistics_no")
        private String preSyncLogisticsNo;

        /**
         * 预物流同步时间
         */
        @SerializedName("pre_sync_time")
        private String preSyncTime;

        /**
         * 订单结束时间
         */
        @SerializedName("end_time")
        private String endTime;

        /**
         * 订单结算时间
         */
        @SerializedName("settle_time")
        private String settleTime;

        /**
         * 订单便签
         */
        @SerializedName("tasks")
        private String tasks;

        /**
         * 冻结原因id
         */
        @SerializedName("freeze_reason_id")
        private Integer freezeReasonId;

        /**
         * 标记id
         */
        @SerializedName("flag_id")
        private Integer flagId;

        /**
         * 订单明细
         */
        @SerializedName("detail_list")
        private List<OrderDetail> detailList;

        public Long getTradeId() {
            return tradeId;
        }

        public void setTradeId(Long tradeId) {
            this.tradeId = tradeId;
        }

        public String getTradeNo() {
            return tradeNo;
        }

        public void setTradeNo(String tradeNo) {
            this.tradeNo = tradeNo;
        }

        public Integer getPlatformId() {
            return platformId;
        }

        public void setPlatformId(Integer platformId) {
            this.platformId = platformId;
        }

        public Integer getWarehouseType() {
            return warehouseType;
        }

        public void setWarehouseType(Integer warehouseType) {
            this.warehouseType = warehouseType;
        }

        public String getSrcTids() {
            return srcTids;
        }

        public void setSrcTids(String srcTids) {
            this.srcTids = srcTids;
        }

        public String getPayAccount() {
            return payAccount;
        }

        public void setPayAccount(String payAccount) {
            this.payAccount = payAccount;
        }

        public Integer getTradeStatus() {
            return tradeStatus;
        }

        public void setTradeStatus(Integer tradeStatus) {
            this.tradeStatus = tradeStatus;
        }

        public Integer getTradeType() {
            return tradeType;
        }

        public void setTradeType(Integer tradeType) {
            this.tradeType = tradeType;
        }

        public Integer getDeliveryTerm() {
            return deliveryTerm;
        }

        public void setDeliveryTerm(Integer deliveryTerm) {
            this.deliveryTerm = deliveryTerm;
        }

        public String getReceiverRing() {
            return receiverRing;
        }

        public void setReceiverRing(String receiverRing) {
            this.receiverRing = receiverRing;
        }

        public String getFreezeReason() {
            return freezeReason;
        }

        public void setFreezeReason(String freezeReason) {
            this.freezeReason = freezeReason;
        }

        public Integer getRefundStatus() {
            return refundStatus;
        }

        public void setRefundStatus(Integer refundStatus) {
            this.refundStatus = refundStatus;
        }

        public Integer getFenxiaoType() {
            return fenxiaoType;
        }

        public void setFenxiaoType(Integer fenxiaoType) {
            this.fenxiaoType = fenxiaoType;
        }

        public String getFenxiaoNick() {
            return fenxiaoNick;
        }

        public void setFenxiaoNick(String fenxiaoNick) {
            this.fenxiaoNick = fenxiaoNick;
        }

        public String getTradeTime() {
            return tradeTime;
        }

        public void setTradeTime(String tradeTime) {
            this.tradeTime = tradeTime;
        }

        public String getPayTime() {
            return payTime;
        }

        public void setPayTime(String payTime) {
            this.payTime = payTime;
        }

        public String getConsignTime() {
            return consignTime;
        }

        public void setConsignTime(String consignTime) {
            this.consignTime = consignTime;
        }

        public String getBuyerNick() {
            return buyerNick;
        }

        public void setBuyerNick(String buyerNick) {
            this.buyerNick = buyerNick;
        }

        public String getReceiverName() {
            return receiverName;
        }

        public void setReceiverName(String receiverName) {
            this.receiverName = receiverName;
        }

        public Integer getReceiverProvince() {
            return receiverProvince;
        }

        public void setReceiverProvince(Integer receiverProvince) {
            this.receiverProvince = receiverProvince;
        }

        public Integer getReceiverCity() {
            return receiverCity;
        }

        public void setReceiverCity(Integer receiverCity) {
            this.receiverCity = receiverCity;
        }

        public Integer getReceiverDistrict() {
            return receiverDistrict;
        }

        public void setReceiverDistrict(Integer receiverDistrict) {
            this.receiverDistrict = receiverDistrict;
        }

        public String getReceiverAddress() {
            return receiverAddress;
        }

        public void setReceiverAddress(String receiverAddress) {
            this.receiverAddress = receiverAddress;
        }

        public String getReceiverMobile() {
            return receiverMobile;
        }

        public void setReceiverMobile(String receiverMobile) {
            this.receiverMobile = receiverMobile;
        }

        public String getReceiverTelno() {
            return receiverTelno;
        }

        public void setReceiverTelno(String receiverTelno) {
            this.receiverTelno = receiverTelno;
        }

        public String getReceiverZip() {
            return receiverZip;
        }

        public void setReceiverZip(String receiverZip) {
            this.receiverZip = receiverZip;
        }

        public String getReceiverArea() {
            return receiverArea;
        }

        public void setReceiverArea(String receiverArea) {
            this.receiverArea = receiverArea;
        }

        public String getReceiverDtb() {
            return receiverDtb;
        }

        public void setReceiverDtb(String receiverDtb) {
            this.receiverDtb = receiverDtb;
        }

        public Integer getBadReason() {
            return badReason;
        }

        public void setBadReason(Integer badReason) {
            this.badReason = badReason;
        }

        public String getLogisticsNo() {
            return logisticsNo;
        }

        public void setLogisticsNo(String logisticsNo) {
            this.logisticsNo = logisticsNo;
        }

        public String getBuyerMessage() {
            return buyerMessage;
        }

        public void setBuyerMessage(String buyerMessage) {
            this.buyerMessage = buyerMessage;
        }

        public String getCsRemark() {
            return csRemark;
        }

        public void setCsRemark(String csRemark) {
            this.csRemark = csRemark;
        }

        public Integer getRemarkFlag() {
            return remarkFlag;
        }

        public void setRemarkFlag(Integer remarkFlag) {
            this.remarkFlag = remarkFlag;
        }

        public String getPrintRemark() {
            return printRemark;
        }

        public void setPrintRemark(String printRemark) {
            this.printRemark = printRemark;
        }

        public BigDecimal getGoodsTypeCount() {
            return goodsTypeCount;
        }

        public void setGoodsTypeCount(BigDecimal goodsTypeCount) {
            this.goodsTypeCount = goodsTypeCount;
        }

        public BigDecimal getGoodsCount() {
            return goodsCount;
        }

        public void setGoodsCount(BigDecimal goodsCount) {
            this.goodsCount = goodsCount;
        }

        public BigDecimal getGoodsAmount() {
            return goodsAmount;
        }

        public void setGoodsAmount(BigDecimal goodsAmount) {
            this.goodsAmount = goodsAmount;
        }

        public BigDecimal getPostAmount() {
            return postAmount;
        }

        public void setPostAmount(BigDecimal postAmount) {
            this.postAmount = postAmount;
        }

        public BigDecimal getOtherAmount() {
            return otherAmount;
        }

        public void setOtherAmount(BigDecimal otherAmount) {
            this.otherAmount = otherAmount;
        }

        public BigDecimal getDiscount() {
            return discount;
        }

        public void setDiscount(BigDecimal discount) {
            this.discount = discount;
        }

        public BigDecimal getReceivable() {
            return receivable;
        }

        public void setReceivable(BigDecimal receivable) {
            this.receivable = receivable;
        }

        public BigDecimal getCodAmount() {
            return codAmount;
        }

        public void setCodAmount(BigDecimal codAmount) {
            this.codAmount = codAmount;
        }

        public BigDecimal getExtCodFee() {
            return extCodFee;
        }

        public void setExtCodFee(BigDecimal extCodFee) {
            this.extCodFee = extCodFee;
        }

        public BigDecimal getGoodsCost() {
            return goodsCost;
        }

        public void setGoodsCost(BigDecimal goodsCost) {
            this.goodsCost = goodsCost;
        }

        public BigDecimal getPostCost() {
            return postCost;
        }

        public void setPostCost(BigDecimal postCost) {
            this.postCost = postCost;
        }

        public BigDecimal getWeight() {
            return weight;
        }

        public void setWeight(BigDecimal weight) {
            this.weight = weight;
        }

        public BigDecimal getProfit() {
            return profit;
        }

        public void setProfit(BigDecimal profit) {
            this.profit = profit;
        }

        public BigDecimal getTax() {
            return tax;
        }

        public void setTax(BigDecimal tax) {
            this.tax = tax;
        }

        public BigDecimal getTaxRate() {
            return taxRate;
        }

        public void setTaxRate(BigDecimal taxRate) {
            this.taxRate = taxRate;
        }

        public BigDecimal getCommission() {
            return commission;
        }

        public void setCommission(BigDecimal commission) {
            this.commission = commission;
        }

        public Integer getInvoiceType() {
            return invoiceType;
        }

        public void setInvoiceType(Integer invoiceType) {
            this.invoiceType = invoiceType;
        }

        public String getInvoiceTitle() {
            return invoiceTitle;
        }

        public void setInvoiceTitle(String invoiceTitle) {
            this.invoiceTitle = invoiceTitle;
        }

        public String getInvoiceContent() {
            return invoiceContent;
        }

        public void setInvoiceContent(String invoiceContent) {
            this.invoiceContent = invoiceContent;
        }

        public String getSalesmanName() {
            return salesmanName;
        }

        public void setSalesmanName(String salesmanName) {
            this.salesmanName = salesmanName;
        }

        public String getCheckerName() {
            return checkerName;
        }

        public void setCheckerName(String checkerName) {
            this.checkerName = checkerName;
        }

        public String getFcheckerName() {
            return fcheckerName;
        }

        public void setFcheckerName(String fcheckerName) {
            this.fcheckerName = fcheckerName;
        }

        public String getCheckouterName() {
            return checkouterName;
        }

        public void setCheckouterName(String checkouterName) {
            this.checkouterName = checkouterName;
        }

        public String getStockoutNo() {
            return stockoutNo;
        }

        public void setStockoutNo(String stockoutNo) {
            this.stockoutNo = stockoutNo;
        }

        public String getFlagName() {
            return flagName;
        }

        public void setFlagName(String flagName) {
            this.flagName = flagName;
        }

        public Integer getTradeFrom() {
            return tradeFrom;
        }

        public void setTradeFrom(Integer tradeFrom) {
            this.tradeFrom = tradeFrom;
        }

        public String getSingleSpecNo() {
            return singleSpecNo;
        }

        public void setSingleSpecNo(String singleSpecNo) {
            this.singleSpecNo = singleSpecNo;
        }

        public BigDecimal getRawGoodsCount() {
            return rawGoodsCount;
        }

        public void setRawGoodsCount(BigDecimal rawGoodsCount) {
            this.rawGoodsCount = rawGoodsCount;
        }

        public Integer getRawGoodsTypeCount() {
            return rawGoodsTypeCount;
        }

        public void setRawGoodsTypeCount(Integer rawGoodsTypeCount) {
            this.rawGoodsTypeCount = rawGoodsTypeCount;
        }

        public String getCurrency() {
            return currency;
        }

        public void setCurrency(String currency) {
            this.currency = currency;
        }

        public Integer getInvoiceId() {
            return invoiceId;
        }

        public void setInvoiceId(Integer invoiceId) {
            this.invoiceId = invoiceId;
        }

        public Integer getVersionId() {
            return versionId;
        }

        public void setVersionId(Integer versionId) {
            this.versionId = versionId;
        }

        public String getModified() {
            return modified;
        }

        public void setModified(String modified) {
            this.modified = modified;
        }

        public String getCreated() {
            return created;
        }

        public void setCreated(String created) {
            this.created = created;
        }

        public String getCheckTime() {
            return checkTime;
        }

        public void setCheckTime(String checkTime) {
            this.checkTime = checkTime;
        }

        public Integer getIdCardType() {
            return idCardType;
        }

        public void setIdCardType(Integer idCardType) {
            this.idCardType = idCardType;
        }

        public String getShopNo() {
            return shopNo;
        }

        public void setShopNo(String shopNo) {
            this.shopNo = shopNo;
        }

        public String getShopName() {
            return shopName;
        }

        public void setShopName(String shopName) {
            this.shopName = shopName;
        }

        public String getShopRemark() {
            return shopRemark;
        }

        public void setShopRemark(String shopRemark) {
            this.shopRemark = shopRemark;
        }

        public String getWarehouseNo() {
            return warehouseNo;
        }

        public void setWarehouseNo(String warehouseNo) {
            this.warehouseNo = warehouseNo;
        }

        public String getCustomerName() {
            return customerName;
        }

        public void setCustomerName(String customerName) {
            this.customerName = customerName;
        }

        public String getCustomerNo() {
            return customerNo;
        }

        public void setCustomerNo(String customerNo) {
            this.customerNo = customerNo;
        }

        public String getLogisticsName() {
            return logisticsName;
        }

        public void setLogisticsName(String logisticsName) {
            this.logisticsName = logisticsName;
        }

        public String getLogisticsCode() {
            return logisticsCode;
        }

        public void setLogisticsCode(String logisticsCode) {
            this.logisticsCode = logisticsCode;
        }

        public String getLogisticsTypeName() {
            return logisticsTypeName;
        }

        public void setLogisticsTypeName(String logisticsTypeName) {
            this.logisticsTypeName = logisticsTypeName;
        }

        public String getToDeliverTime() {
            return toDeliverTime;
        }

        public void setToDeliverTime(String toDeliverTime) {
            this.toDeliverTime = toDeliverTime;
        }

        public String getDelayToTime() {
            return delayToTime;
        }

        public void setDelayToTime(String delayToTime) {
            this.delayToTime = delayToTime;
        }

        public String getEstimateConsignTime() {
            return estimateConsignTime;
        }

        public void setEstimateConsignTime(String estimateConsignTime) {
            this.estimateConsignTime = estimateConsignTime;
        }

        public Integer getShopId() {
            return shopId;
        }

        public void setShopId(Integer shopId) {
            this.shopId = shopId;
        }

        public Integer getWarehouseId() {
            return warehouseId;
        }

        public void setWarehouseId(Integer warehouseId) {
            this.warehouseId = warehouseId;
        }

        public BigDecimal getVolume() {
            return volume;
        }

        public void setVolume(BigDecimal volume) {
            this.volume = volume;
        }

        public String getTradeLabel() {
            return tradeLabel;
        }

        public void setTradeLabel(String tradeLabel) {
            this.tradeLabel = tradeLabel;
        }

        public Integer getTradeMask() {
            return tradeMask;
        }

        public void setTradeMask(Integer tradeMask) {
            this.tradeMask = tradeMask;
        }

        public Integer getShopPlatformId() {
            return shopPlatformId;
        }

        public void setShopPlatformId(Integer shopPlatformId) {
            this.shopPlatformId = shopPlatformId;
        }

        public Integer getSubPlatformId() {
            return subPlatformId;
        }

        public void setSubPlatformId(Integer subPlatformId) {
            this.subPlatformId = subPlatformId;
        }

        public String getPackageName() {
            return packageName;
        }

        public void setPackageName(String packageName) {
            this.packageName = packageName;
        }

        public Integer getPackageId() {
            return packageId;
        }

        public void setPackageId(Integer packageId) {
            this.packageId = packageId;
        }

        public BigDecimal getPackageCost() {
            return packageCost;
        }

        public void setPackageCost(BigDecimal packageCost) {
            this.packageCost = packageCost;
        }

        public BigDecimal getPaid() {
            return paid;
        }

        public void setPaid(BigDecimal paid) {
            this.paid = paid;
        }

        public Integer getLargeType() {
            return largeType;
        }

        public void setLargeType(Integer largeType) {
            this.largeType = largeType;
        }

        public Integer getGiftMask() {
            return giftMask;
        }

        public void setGiftMask(Integer giftMask) {
            this.giftMask = giftMask;
        }

        public Integer getCustomerId() {
            return customerId;
        }

        public void setCustomerId(Integer customerId) {
            this.customerId = customerId;
        }

        public BigDecimal getOtherCost() {
            return otherCost;
        }

        public void setOtherCost(BigDecimal otherCost) {
            this.otherCost = otherCost;
        }

        public Boolean getSealed() {
            return isSealed;
        }

        public void setSealed(Boolean sealed) {
            isSealed = sealed;
        }

        public Integer getCustomerType() {
            return customerType;
        }

        public void setCustomerType(Integer customerType) {
            this.customerType = customerType;
        }

        public Integer getLogisticsId() {
            return logisticsId;
        }

        public void setLogisticsId(Integer logisticsId) {
            this.logisticsId = logisticsId;
        }

        public String getCancelReason() {
            return cancelReason;
        }

        public void setCancelReason(String cancelReason) {
            this.cancelReason = cancelReason;
        }

        public String getRevertReason() {
            return revertReason;
        }

        public void setRevertReason(String revertReason) {
            this.revertReason = revertReason;
        }

        public String getNewTradeLabel() {
            return newTradeLabel;
        }

        public void setNewTradeLabel(String newTradeLabel) {
            this.newTradeLabel = newTradeLabel;
        }

        public String getFenxiaoTid() {
            return fenxiaoTid;
        }

        public void setFenxiaoTid(String fenxiaoTid) {
            this.fenxiaoTid = fenxiaoTid;
        }

        public String getCustomerUniqueId() {
            return customerUniqueId;
        }

        public void setCustomerUniqueId(String customerUniqueId) {
            this.customerUniqueId = customerUniqueId;
        }

        public String getPlatformLabel() {
            return platformLabel;
        }

        public void setPlatformLabel(String platformLabel) {
            this.platformLabel = platformLabel;
        }

        public String getFenxiaoNickNo() {
            return fenxiaoNickNo;
        }

        public void setFenxiaoNickNo(String fenxiaoNickNo) {
            this.fenxiaoNickNo = fenxiaoNickNo;
        }

        public String getPreSyncLogisticsNo() {
            return preSyncLogisticsNo;
        }

        public void setPreSyncLogisticsNo(String preSyncLogisticsNo) {
            this.preSyncLogisticsNo = preSyncLogisticsNo;
        }

        public String getPreSyncTime() {
            return preSyncTime;
        }

        public void setPreSyncTime(String preSyncTime) {
            this.preSyncTime = preSyncTime;
        }

        public String getEndTime() {
            return endTime;
        }

        public void setEndTime(String endTime) {
            this.endTime = endTime;
        }

        public String getSettleTime() {
            return settleTime;
        }

        public void setSettleTime(String settleTime) {
            this.settleTime = settleTime;
        }

        public String getTasks() {
            return tasks;
        }

        public void setTasks(String tasks) {
            this.tasks = tasks;
        }

        public Integer getFreezeReasonId() {
            return freezeReasonId;
        }

        public void setFreezeReasonId(Integer freezeReasonId) {
            this.freezeReasonId = freezeReasonId;
        }

        public Integer getFlagId() {
            return flagId;
        }

        public void setFlagId(Integer flagId) {
            this.flagId = flagId;
        }

        public List<OrderDetail> getDetailList() {
            return detailList;
        }

        public void setDetailList(List<OrderDetail> detailList) {
            this.detailList = detailList;
        }
    }

    /**
     * 订单明细实体类
     */
    public static class OrderDetail {

        /**
         * 订单唯一键
         */
        @SerializedName("trade_id")
        private Long tradeId;

        /**
         * 订单明细唯一键
         */
        @SerializedName("rec_id")
        private Long recId;

        /**
         * 平台ID
         */
        @SerializedName("platform_id")
        private Integer platformId;

        /**
         * 原始子单号
         */
        @SerializedName("src_oid")
        private String srcOid;

        /**
         * 原始单号
         */
        @SerializedName("src_tid")
        private String srcTid;

        /**
         * 赠品方式
         * 0非赠品 1自动赠送 2手工赠送 4周期购赠送 8平台赠送 32阶梯满赠 64CRM追加赠送 65 主品
         */
        @SerializedName("gift_type")
        private Integer giftType;

        /**
         * 支付状态（0:未付款 1:部分付款 2:已付款）
         */
        @SerializedName("pay_status")
        private Integer payStatus;

        /**
         * 退款状态
         * 0、无退款 1、取消退款 2、申请退款 3、待退款 4、待还原 5、退款成功 6、已退（未付款关闭）
         */
        @SerializedName("refund_status")
        private Integer refundStatus;

        /**
         * 退款模式（1、担保 2、非担保 3、在线非担保）
         */
        @SerializedName("guarantee_mode")
        private Integer guaranteeMode;

        /**
         * 子单平台状态
         * 10、未确认 20、待尾款 30、待发货 40、部分发货 50、已发货 60、已签收 70、已完成 80、已退款 90、已关闭
         */
        @SerializedName("platform_status")
        private Integer platformStatus;

        /**
         * 发货条件（1、款到发货 2、货到付款(包含部分货到付款) 3、分期付款）
         */
        @SerializedName("delivery_term")
        private Integer deliveryTerm;

        /**
         * 数量
         */
        @SerializedName("num")
        private BigDecimal num;

        /**
         * 标价，手工新建时使用货品属性中的"零售价"
         */
        @SerializedName("price")
        private BigDecimal price;

        /**
         * 售后退款数量
         */
        @SerializedName("refund_num")
        private BigDecimal refundNum;

        /**
         * 成交价,原始单折扣及分摊之后的价格
         */
        @SerializedName("order_price")
        private BigDecimal orderPrice;

        /**
         * 分摊后价格，进入ERP后再次调整的价格，默认值与order_price一致
         */
        @SerializedName("share_price")
        private BigDecimal sharePrice;

        /**
         * 手工调整价,正数为加价,负数为减价,暂未处理
         */
        @SerializedName("adjust")
        private BigDecimal adjust;

        /**
         * 优惠
         */
        @SerializedName("discount")
        private BigDecimal discount;

        /**
         * 分摊后总价
         */
        @SerializedName("share_amount")
        private BigDecimal shareAmount;

        /**
         * 税率
         */
        @SerializedName("tax_rate")
        private BigDecimal taxRate;

        /**
         * 货品名称
         */
        @SerializedName("goods_name")
        private String goodsName;

        /**
         * 货品编号
         */
        @SerializedName("goods_no")
        private String goodsNo;

        /**
         * 规格名称
         */
        @SerializedName("spec_name")
        private String specName;

        /**
         * 商家编码
         */
        @SerializedName("spec_no")
        private String specNo;

        /**
         * 规格码
         */
        @SerializedName("spec_code")
        private String specCode;

        /**
         * 组合装编码
         */
        @SerializedName("suite_no")
        private String suiteNo;

        /**
         * 如果是组合装拆分的，此为组合装名称
         */
        @SerializedName("suite_name")
        private String suiteName;

        /**
         * 组合装数量,不受拆分合并影响
         */
        @SerializedName("suite_num")
        private BigDecimal suiteNum;

        /**
         * 组合装分摊后总价
         */
        @SerializedName("suite_amount")
        private BigDecimal suiteAmount;

        /**
         * 组合装优惠
         */
        @SerializedName("suite_discount")
        private BigDecimal suiteDiscount;

        /**
         * 平台货品名称
         */
        @SerializedName("api_goods_name")
        private String apiGoodsName;

        /**
         * 平台规格名称
         */
        @SerializedName("api_spec_name")
        private String apiSpecName;

        /**
         * 平台货品id
         */
        @SerializedName("api_goods_id")
        private String apiGoodsId;

        /**
         * 平台规格id
         */
        @SerializedName("api_spec_id")
        private String apiSpecId;

        /**
         * 货品id（系统货品主键）
         */
        @SerializedName("goods_id")
        private Integer goodsId;

        /**
         * 单品id(系统单品主键)
         */
        @SerializedName("spec_id")
        private Integer specId;

        /**
         * 佣金
         */
        @SerializedName("commission")
        private BigDecimal commission;

        /**
         * 货品类型
         * 0：其它 1：销售货品 2：原材料 3：包装物 4：周转材料 5：虚拟商品 6：固定资产 8：分装箱
         */
        @SerializedName("goods_type")
        private Integer goodsType;

        /**
         * 订单内部来源
         * 0：无来源 1：手机 2：聚划算 32：开具电子发票 2048：当日达 4096：次日达 8192：承诺时效
         * 2097152：区域零售 4194304：拼多多厂家代打 8388608：周期购 1048576：预售单
         * 33554432：前N有礼 524288：天猫物流升级 64：按需配送 256：承诺结构化/QIC 16384：商仓鸟配
         */
        @SerializedName("from_mask")
        private Integer fromMask;

        /**
         * 订单内部来源扩展
         * 2：小时达订单 4：自选物流 16：国补订单
         */
        @SerializedName("from_mask_ext")
        private Integer fromMaskExt;

        /**
         * 子单备注
         */
        @SerializedName("remark")
        private String remark;

        /**
         * 修改时间（毫秒级时间戳，例如：1631861379000）
         */
        @SerializedName("modified")
        private String modified;

        /**
         * 创建时间（毫秒级时间戳，例如：1631861379000）
         */
        @SerializedName("created")
        private String created;

        /**
         * 单品自定义属性1
         */
        @SerializedName("prop1")
        private String prop1;

        /**
         * 单品自定义属性2
         */
        @SerializedName("prop2")
        private String prop2;

        /**
         * 单品自定义属性3
         */
        @SerializedName("prop3")
        private String prop3;

        /**
         * 单品自定义属性4
         */
        @SerializedName("prop4")
        private String prop4;

        /**
         * 单品自定义属性5
         */
        @SerializedName("prop5")
        private String prop5;

        /**
         * 单品自定义属性6
         */
        @SerializedName("prop6")
        private String prop6;

        /**
         * 货品重量（子单预估货品总重量）
         */
        @SerializedName("weight")
        private BigDecimal weight;

        /**
         * 图片路径
         */
        @SerializedName("img_url")
        private String imgUrl;

        /**
         * 实发数量（此数量为发货数量,删除操作等于将此值设置为0）
         */
        @SerializedName("actual_num")
        private BigDecimal actualNum;

        /**
         * 条码
         */
        @SerializedName("barcode")
        private String barcode;

        /**
         * 已付
         */
        @SerializedName("paid")
        private BigDecimal paid;

        /**
         * 组合装id
         */
        @SerializedName("suite_id")
        private Integer suiteId;

        /**
         * bind_oid
         */
        @SerializedName("bind_oid")
        private String bindOid;

        /**
         * 打印组合装（0：组合装明细 1：组合装及明细 2：组合装）
         */
        @SerializedName("print_suite_mode")
        private Integer printSuiteMode;

        /**
         * 天猫物流升级信息（mask类型值，在判断的时候使用&运算）
         * 1：天猫物流升级-顺丰配送 2：需要回传 4：天猫物流升级-按需配送 8：天猫物流升级-承诺发货时效
         * 16：天猫物流升级-承诺达时效 32：天猫物流升级-预售下沉 64：天猫物流升级-预计到货时效
         * 128：天猫物流升级-配送线路异常 1024：定金链接 2048：补款链接 4096：确认收货
         */
        @SerializedName("flag")
        private Integer flag;

        /**
         * 库存保留情况
         * 0：未保留（取消的订单或完成） 1：无库存记录 2：未付款 3：已保留待审核 4：待发货 5：预订单库存
         */
        @SerializedName("stock_state")
        private Integer stockState;

        /**
         * 平台已发货
         */
        @SerializedName("is_consigned")
        private Boolean isConsigned;

        /**
         * 是否付款
         */
        @SerializedName("is_received")
        private Integer isReceived;

        /**
         * 平台类目主键
         */
        @SerializedName("cid")
        private Integer cid;

        /**
         * 最后更新时间，DateTime格式
         */
        @SerializedName("modified_date")
        private String modifiedDate;

        /**
         * 创建时间，DateTime格式
         */
        @SerializedName("created_date")
        private String createdDate;

        /**
         * 分摊邮费
         */
        @SerializedName("share_post_price")
        private BigDecimal sharePostPrice;

        /**
         * 发票内容
         */
        @SerializedName("invoice_content")
        private String invoiceContent;

        /**
         * 支付时间，DateTime格式，取自原始订单支付时间
         */
        @SerializedName("pay_time")
        private String payTime;

        /**
         * 货品简称
         */
        @SerializedName("short_name")
        private String shortName;

        /**
         * 赠品关联关系
         */
        @SerializedName("goods_gift_relation")
        private String goodsGiftRelation;

        /**
         * 成本价
         */
        @SerializedName("avg_cost")
        private BigDecimal avgCost;

        /**
         * 分类名称
         */
        @SerializedName("class_name")
        private String className;

        /**
         * 基本单位id
         */
        @SerializedName("base_unit_id")
        private Integer baseUnitId;

        /**
         * 基本单位名称
         */
        @SerializedName("base_unit_name")
        private String baseUnitName;

        /**
         * 分销商id
         */
        @SerializedName("fenxiao_rec_id")
        private Integer fenxiaoRecId;

        public Long getTradeId() {
            return tradeId;
        }

        public void setTradeId(Long tradeId) {
            this.tradeId = tradeId;
        }

        public Long getRecId() {
            return recId;
        }

        public void setRecId(Long recId) {
            this.recId = recId;
        }

        public Integer getPlatformId() {
            return platformId;
        }

        public void setPlatformId(Integer platformId) {
            this.platformId = platformId;
        }

        public String getSrcOid() {
            return srcOid;
        }

        public void setSrcOid(String srcOid) {
            this.srcOid = srcOid;
        }

        public String getSrcTid() {
            return srcTid;
        }

        public void setSrcTid(String srcTid) {
            this.srcTid = srcTid;
        }

        public Integer getGiftType() {
            return giftType;
        }

        public void setGiftType(Integer giftType) {
            this.giftType = giftType;
        }

        public Integer getPayStatus() {
            return payStatus;
        }

        public void setPayStatus(Integer payStatus) {
            this.payStatus = payStatus;
        }

        public Integer getRefundStatus() {
            return refundStatus;
        }

        public void setRefundStatus(Integer refundStatus) {
            this.refundStatus = refundStatus;
        }

        public Integer getGuaranteeMode() {
            return guaranteeMode;
        }

        public void setGuaranteeMode(Integer guaranteeMode) {
            this.guaranteeMode = guaranteeMode;
        }

        public Integer getPlatformStatus() {
            return platformStatus;
        }

        public void setPlatformStatus(Integer platformStatus) {
            this.platformStatus = platformStatus;
        }

        public Integer getDeliveryTerm() {
            return deliveryTerm;
        }

        public void setDeliveryTerm(Integer deliveryTerm) {
            this.deliveryTerm = deliveryTerm;
        }

        public BigDecimal getNum() {
            return num;
        }

        public void setNum(BigDecimal num) {
            this.num = num;
        }

        public BigDecimal getPrice() {
            return price;
        }

        public void setPrice(BigDecimal price) {
            this.price = price;
        }

        public BigDecimal getRefundNum() {
            return refundNum;
        }

        public void setRefundNum(BigDecimal refundNum) {
            this.refundNum = refundNum;
        }

        public BigDecimal getOrderPrice() {
            return orderPrice;
        }

        public void setOrderPrice(BigDecimal orderPrice) {
            this.orderPrice = orderPrice;
        }

        public BigDecimal getSharePrice() {
            return sharePrice;
        }

        public void setSharePrice(BigDecimal sharePrice) {
            this.sharePrice = sharePrice;
        }

        public BigDecimal getAdjust() {
            return adjust;
        }

        public void setAdjust(BigDecimal adjust) {
            this.adjust = adjust;
        }

        public BigDecimal getDiscount() {
            return discount;
        }

        public void setDiscount(BigDecimal discount) {
            this.discount = discount;
        }

        public BigDecimal getShareAmount() {
            return shareAmount;
        }

        public void setShareAmount(BigDecimal shareAmount) {
            this.shareAmount = shareAmount;
        }

        public BigDecimal getTaxRate() {
            return taxRate;
        }

        public void setTaxRate(BigDecimal taxRate) {
            this.taxRate = taxRate;
        }

        public String getGoodsName() {
            return goodsName;
        }

        public void setGoodsName(String goodsName) {
            this.goodsName = goodsName;
        }

        public String getGoodsNo() {
            return goodsNo;
        }

        public void setGoodsNo(String goodsNo) {
            this.goodsNo = goodsNo;
        }

        public String getSpecName() {
            return specName;
        }

        public void setSpecName(String specName) {
            this.specName = specName;
        }

        public String getSpecNo() {
            return specNo;
        }

        public void setSpecNo(String specNo) {
            this.specNo = specNo;
        }

        public String getSpecCode() {
            return specCode;
        }

        public void setSpecCode(String specCode) {
            this.specCode = specCode;
        }

        public String getSuiteNo() {
            return suiteNo;
        }

        public void setSuiteNo(String suiteNo) {
            this.suiteNo = suiteNo;
        }

        public String getSuiteName() {
            return suiteName;
        }

        public void setSuiteName(String suiteName) {
            this.suiteName = suiteName;
        }

        public BigDecimal getSuiteNum() {
            return suiteNum;
        }

        public void setSuiteNum(BigDecimal suiteNum) {
            this.suiteNum = suiteNum;
        }

        public BigDecimal getSuiteAmount() {
            return suiteAmount;
        }

        public void setSuiteAmount(BigDecimal suiteAmount) {
            this.suiteAmount = suiteAmount;
        }

        public BigDecimal getSuiteDiscount() {
            return suiteDiscount;
        }

        public void setSuiteDiscount(BigDecimal suiteDiscount) {
            this.suiteDiscount = suiteDiscount;
        }

        public String getApiGoodsName() {
            return apiGoodsName;
        }

        public void setApiGoodsName(String apiGoodsName) {
            this.apiGoodsName = apiGoodsName;
        }

        public String getApiSpecName() {
            return apiSpecName;
        }

        public void setApiSpecName(String apiSpecName) {
            this.apiSpecName = apiSpecName;
        }

        public String getApiGoodsId() {
            return apiGoodsId;
        }

        public void setApiGoodsId(String apiGoodsId) {
            this.apiGoodsId = apiGoodsId;
        }

        public String getApiSpecId() {
            return apiSpecId;
        }

        public void setApiSpecId(String apiSpecId) {
            this.apiSpecId = apiSpecId;
        }

        public Integer getGoodsId() {
            return goodsId;
        }

        public void setGoodsId(Integer goodsId) {
            this.goodsId = goodsId;
        }

        public Integer getSpecId() {
            return specId;
        }

        public void setSpecId(Integer specId) {
            this.specId = specId;
        }

        public BigDecimal getCommission() {
            return commission;
        }

        public void setCommission(BigDecimal commission) {
            this.commission = commission;
        }

        public Integer getGoodsType() {
            return goodsType;
        }

        public void setGoodsType(Integer goodsType) {
            this.goodsType = goodsType;
        }

        public Integer getFromMask() {
            return fromMask;
        }

        public void setFromMask(Integer fromMask) {
            this.fromMask = fromMask;
        }

        public Integer getFromMaskExt() {
            return fromMaskExt;
        }

        public void setFromMaskExt(Integer fromMaskExt) {
            this.fromMaskExt = fromMaskExt;
        }

        public String getRemark() {
            return remark;
        }

        public void setRemark(String remark) {
            this.remark = remark;
        }

        public String getModified() {
            return modified;
        }

        public void setModified(String modified) {
            this.modified = modified;
        }

        public String getCreated() {
            return created;
        }

        public void setCreated(String created) {
            this.created = created;
        }

        public String getProp1() {
            return prop1;
        }

        public void setProp1(String prop1) {
            this.prop1 = prop1;
        }

        public String getProp2() {
            return prop2;
        }

        public void setProp2(String prop2) {
            this.prop2 = prop2;
        }

        public String getProp3() {
            return prop3;
        }

        public void setProp3(String prop3) {
            this.prop3 = prop3;
        }

        public String getProp4() {
            return prop4;
        }

        public void setProp4(String prop4) {
            this.prop4 = prop4;
        }

        public String getProp5() {
            return prop5;
        }

        public void setProp5(String prop5) {
            this.prop5 = prop5;
        }

        public String getProp6() {
            return prop6;
        }

        public void setProp6(String prop6) {
            this.prop6 = prop6;
        }

        public BigDecimal getWeight() {
            return weight;
        }

        public void setWeight(BigDecimal weight) {
            this.weight = weight;
        }

        public String getImgUrl() {
            return imgUrl;
        }

        public void setImgUrl(String imgUrl) {
            this.imgUrl = imgUrl;
        }

        public BigDecimal getActualNum() {
            return actualNum;
        }

        public void setActualNum(BigDecimal actualNum) {
            this.actualNum = actualNum;
        }

        public String getBarcode() {
            return barcode;
        }

        public void setBarcode(String barcode) {
            this.barcode = barcode;
        }

        public BigDecimal getPaid() {
            return paid;
        }

        public void setPaid(BigDecimal paid) {
            this.paid = paid;
        }

        public Integer getSuiteId() {
            return suiteId;
        }

        public void setSuiteId(Integer suiteId) {
            this.suiteId = suiteId;
        }

        public String getBindOid() {
            return bindOid;
        }

        public void setBindOid(String bindOid) {
            this.bindOid = bindOid;
        }

        public Integer getPrintSuiteMode() {
            return printSuiteMode;
        }

        public void setPrintSuiteMode(Integer printSuiteMode) {
            this.printSuiteMode = printSuiteMode;
        }

        public Integer getFlag() {
            return flag;
        }

        public void setFlag(Integer flag) {
            this.flag = flag;
        }

        public Integer getStockState() {
            return stockState;
        }

        public void setStockState(Integer stockState) {
            this.stockState = stockState;
        }

        public Boolean getConsigned() {
            return isConsigned;
        }

        public void setConsigned(Boolean consigned) {
            isConsigned = consigned;
        }

        public Integer getIsReceived() {
            return isReceived;
        }

        public void setIsReceived(Integer isReceived) {
            this.isReceived = isReceived;
        }

        public Integer getCid() {
            return cid;
        }

        public void setCid(Integer cid) {
            this.cid = cid;
        }

        public String getModifiedDate() {
            return modifiedDate;
        }

        public void setModifiedDate(String modifiedDate) {
            this.modifiedDate = modifiedDate;
        }

        public String getCreatedDate() {
            return createdDate;
        }

        public void setCreatedDate(String createdDate) {
            this.createdDate = createdDate;
        }

        public BigDecimal getSharePostPrice() {
            return sharePostPrice;
        }

        public void setSharePostPrice(BigDecimal sharePostPrice) {
            this.sharePostPrice = sharePostPrice;
        }

        public String getInvoiceContent() {
            return invoiceContent;
        }

        public void setInvoiceContent(String invoiceContent) {
            this.invoiceContent = invoiceContent;
        }

        public String getPayTime() {
            return payTime;
        }

        public void setPayTime(String payTime) {
            this.payTime = payTime;
        }

        public String getShortName() {
            return shortName;
        }

        public void setShortName(String shortName) {
            this.shortName = shortName;
        }

        public String getGoodsGiftRelation() {
            return goodsGiftRelation;
        }

        public void setGoodsGiftRelation(String goodsGiftRelation) {
            this.goodsGiftRelation = goodsGiftRelation;
        }

        public BigDecimal getAvgCost() {
            return avgCost;
        }

        public void setAvgCost(BigDecimal avgCost) {
            this.avgCost = avgCost;
        }

        public String getClassName() {
            return className;
        }

        public void setClassName(String className) {
            this.className = className;
        }

        public Integer getBaseUnitId() {
            return baseUnitId;
        }

        public void setBaseUnitId(Integer baseUnitId) {
            this.baseUnitId = baseUnitId;
        }

        public String getBaseUnitName() {
            return baseUnitName;
        }

        public void setBaseUnitName(String baseUnitName) {
            this.baseUnitName = baseUnitName;
        }

        public Integer getFenxiaoRecId() {
            return fenxiaoRecId;
        }

        public void setFenxiaoRecId(Integer fenxiaoRecId) {
            this.fenxiaoRecId = fenxiaoRecId;
        }
    }

    /**
     * 订单状态枚举
     */
    public enum OrderStatus {
        OFFLINE_REFUND(4, "线下退款"),
        CANCELED(5, "已取消"),
        WAIT_PREORDER(6, "待转预订单(待审核)"),
        WAIT_COMPLETE(7, "待转已完成"),
        UNPAID(10, "未付款"),
        WAIT_FINAL_PAYMENT(12, "待尾款"),
        WAIT_UNPAID(15, "等未付"),
        DELAY_REVIEW(16, "延时审核"),
        PRE_ORDER_PREPROCESS(19, "预订单前处理"),
        BEFORE_REVIEW_PREPROCESS(20, "审核前处理"),
        AUTO_FLOW_WAIT_SHIP(21, "自流转待发货"),
        ABNORMAL_ORDER(23, "异常订单"),
        EXCHANGE_PREORDER(24, "换货预订单"),
        PENDING_PREORDER(25, "待处理预订单"),
        WAIT_ASSIGN_PREORDER(27, "待分配预订单"),
        WAIT_CUSTOMER_REVIEW(30, "待客审"),
        WAIT_FINANCE_REVIEW(35, "待财审"),
        UNDER_REVIEW(40, "审核中"),
        REVIEWED(55, "已审核"),
        SHIPPED(95, "已发货"),
        COST_CONFIRMATION(96, "成本确认"),
        POSTED(101, "已过账"),
        COMPLETED(110, "已完成");

        private final Integer code;
        private final String desc;

        OrderStatus(Integer code, String desc) {
            this.code = code;
            this.desc = desc;
        }

        public Integer getCode() {
            return code;
        }

        public String getDesc() {
            return desc;
        }
    }

    /**
     * 订单类型枚举
     */
    public enum TradeType {
        ONLINE_SALES(1, "网店销售"),
        OFFLINE_ORDER(2, "线下订单"),
        AFTER_SALES_EXCHANGE(3, "售后换货"),
        WHOLESALE_BUSINESS(4, "批发业务"),
        WARRANTY_RENEWAL(5, "保修换新"),
        WARRANTY_COMPLETED(6, "保修完成"),
        CASH_SALES(7, "现款销售"),
        DISTRIBUTION_ORDER(8, "分销订单"),
        CUSTOM_TYPE_1(101, "自定义类型一"),
        CUSTOM_TYPE_2(102, "自定义类型二"),
        CUSTOM_TYPE_3(103, "自定义类型三"),
        CUSTOM_TYPE_4(104, "自定义类型四"),
        CUSTOM_TYPE_5(105, "自定义类型五"),
        CUSTOM_TYPE_6(106, "自定义类型六"),
        CUSTOM_TYPE_7(107, "自定义类型七"),
        CUSTOM_TYPE_8(108, "自定义类型八"),
        CUSTOM_TYPE_9(109, "自定义类型九"),
        CUSTOM_TYPE_10(110, "自定义类型十");

        private final Integer code;
        private final String desc;

        TradeType(Integer code, String desc) {
            this.code = code;
            this.desc = desc;
        }

        public Integer getCode() {
            return code;
        }

        public String getDesc() {
            return desc;
        }
    }

    /**
     * 发货条件枚举
     */
    public enum DeliveryTerm {
        PAY_BEFORE_DELIVERY(1, "款到发货"),
        CASH_ON_DELIVERY(2, "货到付款"),
        INSTALLMENT(3, "分期付款"),
        CREDIT_SALES(4, "挂账");

        private final Integer code;
        private final String desc;

        DeliveryTerm(Integer code, String desc) {
            this.code = code;
            this.desc = desc;
        }

        public Integer getCode() {
            return code;
        }

        public String getDesc() {
            return desc;
        }
    }

    /**
     * 退款状态枚举
     */
    public enum RefundStatus {
        NO_REFUND(0, "无退款"),
        APPLY_REFUND(1, "申请退款"),
        PARTIAL_REFUND(2, "部分退款"),
        FULL_REFUND(3, "全部退款");

        private final Integer code;
        private final String desc;

        RefundStatus(Integer code, String desc) {
            this.code = code;
            this.desc = desc;
        }

        public Integer getCode() {
            return code;
        }

        public String getDesc() {
            return desc;
        }
    }

    /**
     * 分销类别枚举
     */
    public enum FenxiaoType {
        NOT_FENXIAO(0, "非分销订单"),
        CONSIGNMENT(1, "代销"),
        DISTRIBUTION(2, "经销");

        private final Integer code;
        private final String desc;

        FenxiaoType(Integer code, String desc) {
            this.code = code;
            this.desc = desc;
        }

        public Integer getCode() {
            return code;
        }

        public String getDesc() {
            return desc;
        }
    }

    /**
     * 发票类型枚举
     */
    public enum InvoiceType {
        NO_INVOICE(0, "不需要"),
        GENERAL_INVOICE(1, "普通发票"),
        VAT_GENERAL_INVOICE(2, "增值税普通发票"),
        VAT_SPECIAL_INVOICE(3, "增值税专用发票");

        private final Integer code;
        private final String desc;

        InvoiceType(Integer code, String desc) {
            this.code = code;
            this.desc = desc;
        }

        public Integer getCode() {
            return code;
        }

        public String getDesc() {
            return desc;
        }
    }

    /**
     * 订单来源枚举
     */
    public enum TradeFrom {
        API_CRAWL(1, "API抓单"),
        MANUAL_CREATE(2, "手工建单"),
        IMPORT(3, "导入"),
        COPY_ORDER(4, "复制订单"),
        INTERFACE_PUSH(5, "接口推送"),
        RESEND_ORDER(6, "补发订单"),
        PDA_CREATE(7, "PDA选货开单"),
        DISTRIBUTION_RESEND(8, "分销补发订单");

        private final Integer code;
        private final String desc;

        TradeFrom(Integer code, String desc) {
            this.code = code;
            this.desc = desc;
        }

        public Integer getCode() {
            return code;
        }

        public String getDesc() {
            return desc;
        }
    }

}
