package com.fs.oms.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fs.common.annotation.Excel;
import com.fs.common.core.domain.BaseEntity;


/**
 * oms销售订单对象 oms_order
 *
 * @author fs
 * @date 2023-06-26
 */
public class OmsOrder extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** $column.columnComment */
    private Long id;

    /** 网店id */
    @Excel(name = "网店id")
    private Long storeId;

    /** 三方订单号 */
    @Excel(name = "三方订单号")
    private String outerOrderNo;

    /** 内部订单号 */
    @Excel(name = "内部订单号")
    private String innerOrderNo;

    /** 预占编码 */
    @Excel(name = "预占编码")
    private String preemptCode;

    /** 流转状态 0 异常 1正常 2待处理 */
    @Excel(name = "流转状态 0 异常 1正常 2待处理")
    private Integer circulationStatus;

    /** 流转异常原因 */
    @Excel(name = "流转异常原因")
    private String failureReason;

    /** 订单类型  0普通订单 1其他订单 */
    @Excel(name = "订单类型  0普通订单 1其他订单")
    private Integer orderType;

    /** 三方销售单来源  0接口抓取 1手工建单 */
    @Excel(name = "三方销售单来源  0接口抓取 1手工建单")
    private Integer orderSource;

    /** 内部销售单来源  0普通转单 1手工单  2复制单 */
    @Excel(name = "内部销售单来源  0普通转单 1手工单  2复制单")
    private Integer innerOrderSource;

    /** 平台订单状态 0未成交  1已成交 */
    @Excel(name = "平台订单状态 0未成交  1已成交")
    private Integer orderStatus;

    /** 内部订单状态 */
    @Excel(name = "内部订单状态")
    private Integer innerOrderStatus;


    /** 回写状态 0未回写 1回写成功  2回写失败 */
    @Excel(name = "回写状态 0未回写 1回写成功  2回写失败")
    private Integer syncStatus;

    /** 售后状态  0无售后 1售后处理中 2退款中 3退款成功 */
    @Excel(name = "售后状态  0无售后 1售后处理中 2退款中 3退款成功")
    private Integer refundStatus;

    /** 支付方式  0微信支付 1支付宝支付  3财付通  4连连支付  5网银在线  6货到付款 7银行汇款 8 其它 */
    @Excel(name = "支付方式  0微信支付 1支付宝支付  3财付通  4连连支付  5网银在线  6货到付款 7银行汇款 8 其它")
    private Integer payType;

    /** 支付状态  0无售后 1售后处理中 2退款中 3退款成功 */
    @Excel(name = "支付状态  0无售后 1售后处理中 2退款中 3退款成功")
    private Integer payStatus;

    /** 审核类型  0寻源前待审核   1发货前待审核 */
    @Excel(name = "审核类型  0寻源前待审核   1发货前待审核")
    private Integer auditType;

    /** 审核状态 1待一审  2一审不通过  3待二审  4二审不通过 5审核通过   */
    @Excel(name = "审核状态 1待一审  2一审不通过  3待二审  4二审不通过 5审核通过  ")
    private Integer auditStatus;

    /** 订单阶段 0三方销售单  1内部销售单 */
    @Excel(name = "订单阶段 0三方销售单  1内部销售单")
    private Integer orderStage;

    /** 有无赠品  0无  1有 */
    @Excel(name = "有无赠品  0无  1有")
    private Integer isGift;

    @Excel(name = "三方平台优惠  0无  1有")
    private Integer isThirdDiscount;

    /** 商品数量 */
    @Excel(name = "商品数量")
    private Long goodsNum;

    /** 商品行数量 */
    @Excel(name = "商品行数量")
    private Long skuNum;

    /** 三方平台优惠金额 */
    @Excel(name = "三方平台优惠金额")
    private Long thirdDiscount;

    /** 三方承担优惠金额 */
    @Excel(name = "三方承担优惠金额")
    private Long thirdDiscountAmount;

    /** 商家承担优惠金额 */
    @Excel(name = "商家承担优惠金额")
    private Long businessDiscountAmount;

    /** 优惠合计 */
    @Excel(name = "优惠合计")
    private Long totalDiscount;

    /** 商品总金额 */
    @Excel(name = "商品总金额")
    private Long totalAmount;

    /** 应收总金额 */
    @Excel(name = "应收总金额")
    private Long amountReceivable;

    /** 买家实付 */
    @Excel(name = "买家实付")
    private Long buyerPayAmount;

    /** $column.columnComment */
    @Excel(name = "买家实付")
    private Long buyerRealPrice;

    /** 物流方式  0不包邮  1卖家包邮 */
    @Excel(name = "物流方式  0不包邮  1卖家包邮")
    private Integer shippingType;

    /** 商品总成本 */
    @Excel(name = "商品总成本")
    private Long costAmount;

    /** 运费 */
    @Excel(name = "运费")
    private Long postage;

    /** 物流ids */
    @Excel(name = "物流id")
    private String logisticsId;

    /** 标签 */
    @Excel(name = "标签")
    private String tags;

    /** 标签 */
    @Excel(name = "skuCodes")
    private String skuCodes;

    /** 标签 */
    @Excel(name = "商品barCodes")
    private String barCodes;

    /** 买家昵称 */
    @Excel(name = "买家昵称")
    private String buyerNick;

    /** 买家备注 */
    @Excel(name = "买家备注")
    private String buyerRemark;

    /** 商家备注 */
    @Excel(name = "商家备注")
    private String orderRemark;

    /** 客服备注 */
    @Excel(name = "客服备注")
    private String serviceRemark;

    /** 支付单号 */
    @Excel(name = "支付单号")
    private String payNo;

    /** 发票类别 0无需开票 1电子发票 2增值税普通发票 3增值税专用发票 */
    @Excel(name = "发票类别 0无需开票 1电子发票 2增值税普通发票 3增值税专用发票")
    private Long invoiceStatus;

    /** 发票抬头 */
    @Excel(name = "发票抬头")
    private String invoiceTopic;

    /** 发票内容 */
    @Excel(name = "发票内容")
    private String invoiceContent;

    /** 发货状态  0初始 1全部待发货 2部分发货 3全部发货成功  4全部发货失败  */
    @Excel(name = "发货状态  0初始 1全部待发货 2部分发货 3全部发货成功  4全部发货失败 ")
    private Long deliveryStatus;

    /** 收货状态  0初始 1待收货  2部分收货  3全部已收货  */
    @Excel(name = "收货状态  0初始 1待收货  2部分收货  3全部已收货 ")
    private Long receivingStatus;

    /** 预占状态  0全部待预占 1部分预占  2全部预占成功  3全部预占失败  4取消预占   */
    @Excel(name = "预占状态  0全部待预占 1部分预占  2全部预占成功  3全部预占失败  4取消预占  ")
    private Long preemptionStatus;

    /** 寻源状态  0全部待寻源 1部分寻源 2全部寻源成功 3全部寻源失败  4取消寻源 */
    @Excel(name = "寻源状态  0全部待寻源 1部分寻源 2全部寻源成功 3全部寻源失败  4取消寻源")
    private Long sourceStatus;

    /** 挂起状态  0未挂起  1部分挂起  2全部挂起成功  4全部挂起失败 */
    @Excel(name = "挂起状态  0未挂起  1部分挂起  2全部挂起成功  4全部挂起失败")
    private Long suspendStatus;

    /** 预占回写状态 0全部待回写 1部分回写 2全部回写成功 3全部会写失败 */
    @Excel(name = "预占回写状态 0全部待回写 1部分回写 2全部回写成功 3全部会写失败")
    private Long syncPreempStatus;

    /** 发货回写状态  0全部待回写  1部分回写  2全部回写成功 3全部回写失败 */
    @Excel(name = "发货回写状态  0全部待回写  1部分回写  2全部回写成功 3全部回写失败")
    private Long syncDeliveryStatus;

    /** 三方平台下单时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "三方平台下单时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date orderTime;

    /** 支付时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "支付时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date payTime;

    /** 拉单时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "拉单时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date pullTime;

    /** 物流打包时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "物流打包时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date lastShipTime;

    /** 预计发货时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "预计发货时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date predictDeliveryTime;

    /** 确认收货时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "确认收货时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date receiveTime;

    /** 创建人ID */
    @Excel(name = "创建人ID")
    private Long createUserId;

    /** 修改人ID */
    @Excel(name = "修改人ID")
    private Long updateUserId;

    public void setId(Long id)
    {
        this.id = id;
    }

    public Long getId()
    {
        return id;
    }
    public void setStoreId(Long storeId)
    {
        this.storeId = storeId;
    }

    public Long getStoreId()
    {
        return storeId;
    }
    public void setOuterOrderNo(String outerOrderNo)
    {
        this.outerOrderNo = outerOrderNo;
    }

    public String getOuterOrderNo()
    {
        return outerOrderNo;
    }
    public void setInnerOrderNo(String innerOrderNo)
    {
        this.innerOrderNo = innerOrderNo;
    }

    public String getInnerOrderNo()
    {
        return innerOrderNo;
    }
    public void setPreemptCode(String preemptCode)
    {
        this.preemptCode = preemptCode;
    }

    public String getPreemptCode()
    {
        return preemptCode;
    }
    public void setCirculationStatus(Integer circulationStatus)
    {
        this.circulationStatus = circulationStatus;
    }

    public Integer getCirculationStatus()
    {
        return circulationStatus;
    }
    public void setFailureReason(String failureReason)
    {
        this.failureReason = failureReason;
    }

    public String getFailureReason()
    {
        return failureReason;
    }
    public void setOrderType(Integer orderType)
    {
        this.orderType = orderType;
    }

    public Integer getOrderType()
    {
        return orderType;
    }
    public void setOrderSource(Integer orderSource)
    {
        this.orderSource = orderSource;
    }

    public Integer getOrderSource()
    {
        return orderSource;
    }
    public void setInnerOrderSource(Integer innerOrderSource)
    {
        this.innerOrderSource = innerOrderSource;
    }

    public Integer getInnerOrderSource()
    {
        return innerOrderSource;
    }
    public void setOrderStatus(Integer orderStatus)
    {
        this.orderStatus = orderStatus;
    }

    public Integer getOrderStatus()
    {
        return orderStatus;
    }
    public void setSyncStatus(Integer syncStatus)
    {
        this.syncStatus = syncStatus;
    }

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

    public Integer getRefundStatus()
    {
        return refundStatus;
    }
    public void setPayType(Integer payType)
    {
        this.payType = payType;
    }

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

    public Integer getPayStatus()
    {
        return payStatus;
    }
    public void setAuditType(Integer auditType)
    {
        this.auditType = auditType;
    }

    public Integer getAuditType()
    {
        return auditType;
    }
    public void setAuditStatus(Integer auditStatus)
    {
        this.auditStatus = auditStatus;
    }

    public Integer getAuditStatus()
    {
        return auditStatus;
    }
    public void setOrderStage(Integer orderStage)
    {
        this.orderStage = orderStage;
    }

    public Integer getOrderStage()
    {
        return orderStage;
    }
    public void setIsGift(Integer isGift)
    {
        this.isGift = isGift;
    }

    public Integer getIsGift()
    {
        return isGift;
    }
    public void setGoodsNum(Long goodsNum)
    {
        this.goodsNum = goodsNum;
    }

    public Long getGoodsNum()
    {
        return goodsNum;
    }
    public void setSkuNum(Long skuNum)
    {
        this.skuNum = skuNum;
    }

    public Long getSkuNum()
    {
        return skuNum;
    }
    public void setThirdDiscountAmount(Long thirdDiscountAmount)
    {
        this.thirdDiscountAmount = thirdDiscountAmount;
    }

    public Long getThirdDiscountAmount()
    {
        return thirdDiscountAmount;
    }
    public void setBusinessDiscountAmount(Long businessDiscountAmount)
    {
        this.businessDiscountAmount = businessDiscountAmount;
    }

    public Long getBusinessDiscountAmount()
    {
        return businessDiscountAmount;
    }
    public void setTotalDiscount(Long totalDiscount)
    {
        this.totalDiscount = totalDiscount;
    }

    public Long getTotalDiscount()
    {
        return totalDiscount;
    }
    public void setTotalAmount(Long totalAmount)
    {
        this.totalAmount = totalAmount;
    }

    public Long getTotalAmount()
    {
        return totalAmount;
    }
    public void setAmountReceivable(Long amountReceivable)
    {
        this.amountReceivable = amountReceivable;
    }

    public Long getAmountReceivable()
    {
        return amountReceivable;
    }
    public void setBuyerPayAmount(Long buyerPayAmount)
    {
        this.buyerPayAmount = buyerPayAmount;
    }

    public Long getBuyerPayAmount()
    {
        return buyerPayAmount;
    }
    public void setBuyerRealPrice(Long buyerRealPrice)
    {
        this.buyerRealPrice = buyerRealPrice;
    }

    public Long getBuyerRealPrice()
    {
        return buyerRealPrice;
    }
    public void setShippingType(Integer shippingType)
    {
        this.shippingType = shippingType;
    }

    public Integer getShippingType()
    {
        return shippingType;
    }
    public void setCostAmount(Long costAmount)
    {
        this.costAmount = costAmount;
    }

    public Long getCostAmount()
    {
        return costAmount;
    }
    public void setPostage(Long postage)
    {
        this.postage = postage;
    }

    public Long getPostage()
    {
        return postage;
    }

    public void setTags(String tags)
    {
        this.tags = tags;
    }

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

    public String getBuyerNick()
    {
        return buyerNick;
    }
    public void setBuyerRemark(String buyerRemark)
    {
        this.buyerRemark = buyerRemark;
    }

    public String getBuyerRemark()
    {
        return buyerRemark;
    }
    public void setOrderRemark(String orderRemark)
    {
        this.orderRemark = orderRemark;
    }

    public String getOrderRemark()
    {
        return orderRemark;
    }
    public void setServiceRemark(String serviceRemark)
    {
        this.serviceRemark = serviceRemark;
    }

    public String getServiceRemark()
    {
        return serviceRemark;
    }
    public void setPayNo(String payNo)
    {
        this.payNo = payNo;
    }

    public String getPayNo()
    {
        return payNo;
    }
    public void setInvoiceStatus(Long invoiceStatus)
    {
        this.invoiceStatus = invoiceStatus;
    }

    public Long getInvoiceStatus()
    {
        return invoiceStatus;
    }
    public void setInvoiceTopic(String invoiceTopic)
    {
        this.invoiceTopic = invoiceTopic;
    }

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

    public String getInvoiceContent()
    {
        return invoiceContent;
    }
    public void setDeliveryStatus(Long deliveryStatus)
    {
        this.deliveryStatus = deliveryStatus;
    }

    public Long getDeliveryStatus()
    {
        return deliveryStatus;
    }
    public void setReceivingStatus(Long receivingStatus)
    {
        this.receivingStatus = receivingStatus;
    }

    public Long getReceivingStatus()
    {
        return receivingStatus;
    }
    public void setPreemptionStatus(Long preemptionStatus)
    {
        this.preemptionStatus = preemptionStatus;
    }

    public Long getPreemptionStatus()
    {
        return preemptionStatus;
    }
    public void setSourceStatus(Long sourceStatus)
    {
        this.sourceStatus = sourceStatus;
    }

    public Long getSourceStatus()
    {
        return sourceStatus;
    }
    public void setSuspendStatus(Long suspendStatus)
    {
        this.suspendStatus = suspendStatus;
    }

    public Long getSuspendStatus()
    {
        return suspendStatus;
    }
    public void setSyncPreempStatus(Long syncPreempStatus)
    {
        this.syncPreempStatus = syncPreempStatus;
    }

    public Long getSyncPreempStatus()
    {
        return syncPreempStatus;
    }
    public void setSyncDeliveryStatus(Long syncDeliveryStatus)
    {
        this.syncDeliveryStatus = syncDeliveryStatus;
    }

    public Long getSyncDeliveryStatus()
    {
        return syncDeliveryStatus;
    }
    public void setOrderTime(Date orderTime)
    {
        this.orderTime = orderTime;
    }

    public Date getOrderTime()
    {
        return orderTime;
    }
    public void setPayTime(Date payTime)
    {
        this.payTime = payTime;
    }

    public Date getPayTime()
    {
        return payTime;
    }
    public void setPullTime(Date pullTime)
    {
        this.pullTime = pullTime;
    }

    public Date getPullTime()
    {
        return pullTime;
    }
    public void setLastShipTime(Date lastShipTime)
    {
        this.lastShipTime = lastShipTime;
    }

    public Date getLastShipTime()
    {
        return lastShipTime;
    }
    public void setPredictDeliveryTime(Date predictDeliveryTime)
    {
        this.predictDeliveryTime = predictDeliveryTime;
    }

    public Date getPredictDeliveryTime()
    {
        return predictDeliveryTime;
    }
    public void setReceiveTime(Date receiveTime)
    {
        this.receiveTime = receiveTime;
    }

    public Date getReceiveTime()
    {
        return receiveTime;
    }
    public void setCreateUserId(Long createUserId)
    {
        this.createUserId = createUserId;
    }

    public Long getCreateUserId()
    {
        return createUserId;
    }
    public void setUpdateUserId(Long updateUserId)
    {
        this.updateUserId = updateUserId;
    }

    public Long getUpdateUserId()
    {
        return updateUserId;
    }

    public Integer getInnerOrderStatus() {
        return innerOrderStatus;
    }

    public void setInnerOrderStatus(Integer innerOrderStatus) {
        this.innerOrderStatus = innerOrderStatus;
    }

    public String getLogisticsId() {
        return logisticsId;
    }

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

    public String getSkuCodes() {
        return skuCodes;
    }

    public void setSkuCodes(String skuCodes) {
        this.skuCodes = skuCodes;
    }

    public String getBarCodes() {
        return barCodes;
    }

    public void setBarCodes(String barCodes) {
        this.barCodes = barCodes;
    }

    public Integer getIsThirdDiscount() {
        return isThirdDiscount;
    }

    public void setIsThirdDiscount(Integer isThirdDiscount) {
        this.isThirdDiscount = isThirdDiscount;
    }

    public Long getThirdDiscount() {
        return thirdDiscount;
    }

    public void setThirdDiscount(Long thirdDiscount) {
        this.thirdDiscount = thirdDiscount;
    }

}
