AmazonOrderItem.java 7.0 KB
package com.aukey.example.entity.fbaStock;

import com.alibaba.fastjson.annotation.JSONField;
import lombok.Data;
import org.apache.commons.lang3.StringUtils;

import javax.persistence.Column;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.Transient;
import java.io.UnsupportedEncodingException;
import java.util.Date;

@Data
@Table(name = "amazon_order_item")
public class AmazonOrderItem {
    /**
     * 自增主键
     */
    @Id
    private Integer aid;

    /**
     * 亚马逊订单ID
     */
    @Column(name = "amazon_order_id")
    private String amazonOrderId;

    /**
     * 亚马逊SKU
     */
    private String asin;

    /**
     * 卖家SKU
     */
    @Column(name = "seller_sku")
    private String sellerSku;

    /**
     * 订单项ID
     */
    @Column(name = "order_item_id")
    private String orderItemId;

    /**
     * 订购数量
     */
    @Column(name = "quantity_ordered")
    private Integer quantityOrdered;

    /**
     * 发货数量
     */
    @Column(name = "quantity_shipped")
    private Integer quantityShipped;

    @Column(name = "points_number")
    private Integer pointsNumber;

    @Column(name = "points_currency_code")
    private String pointsCurrencyCode;

    @Column(name = "points_amount")
    private Double pointsAmount;

    /**
     * sku币种
     */
    @Column(name = "item_price_currency_code")
    private String itemPriceCurrencyCode;

    /**
     * sku价格
     */
    @Column(name = "item_price_amount")
    private Double itemPriceAmount;

    /**
     * 邮费币种
     */
    @Column(name = "shipping_price_currency_code")
    private String shippingPriceCurrencyCode;

    /**
     * 邮费
     */
    @Column(name = "shipping_price_amount")
    private Double shippingPriceAmount;

    /**
     * 礼品包装币种
     */
    @Column(name = "gift_wrap_price_currency_code")
    private String giftWrapPriceCurrencyCode;

    /**
     * 礼品包装价格
     */
    @Column(name = "gift_wrap_price_amount")
    private Double giftWrapPriceAmount;

    /**
     * 价格税币种
     */
    @Column(name = "item_tax_currency_code")
    private String itemTaxCurrencyCode;

    /**
     * 价格税
     */
    @Column(name = "item_tax_amount")
    private Double itemTaxAmount;

    /**
     * 邮费税币种
     */
    @Column(name = "shipping_tax_currency_code")
    private String shippingTaxCurrencyCode;

    /**
     * 邮费税
     */
    @Column(name = "shipping_tax_amount")
    private Double shippingTaxAmount;

    /**
     * 礼品包装税币种
     */
    @Column(name = "gift_wrap_tax_currency_code")
    private String giftWrapTaxCurrencyCode;

    /**
     * 礼品包装价格税
     */
    @Column(name = "gift_wrap_tax_amount")
    private Double giftWrapTaxAmount;

    /**
     * 邮费折扣币种
     */
    @Column(name = "shipping_discount_currency_code")
    private String shippingDiscountCurrencyCode;

    /**
     * 邮费折扣
     */
    @Column(name = "shipping_discount_amount")
    private Double shippingDiscountAmount;

    /**
     * 促销折扣币种
     */
    @Column(name = "promotion_discount_currency_code")
    private String promotionDiscountCurrencyCode;

    /**
     * 促销折扣
     */
    @Column(name = "promotion_discount_amount")
    private Double promotionDiscountAmount;

    /**
     * 促销IDS
     */
    @Column(name = "promotion_ids")
    private String promotionIds;

    /**
     * COD费币种
     */
    @Column(name = "cod_fee_currency_code")
    private String codFeeCurrencyCode;

    /**
     * COD费
     */
    @Column(name = "cod_fee_amount")
    private Double codFeeAmount;

    /**
     * COD折扣币种
     */
    @Column(name = "cod_fee_discount_currency_code")
    private String codFeeDiscountCurrencyCode;

    /**
     * COD折扣
     */
    @Column(name = "cod_fee_discount_amount")
    private Double codFeeDiscountAmount;

    /**
     * 礼品包装级别
     */
    @Column(name = "gift_wrap_level")
    private String giftWrapLevel;

    /**
     * 发票要求
     */
    @Column(name = "invoice_requirement")
    private String invoiceRequirement;

    /**
     * 买家选择发票类别
     */
    @Column(name = "buyer_selected_invoice_category")
    private String buyerSelectedInvoiceCategory;

    /**
     * 发票抬头
     */
    @Column(name = "invoice_title")
    private String invoiceTitle;

    /**
     * 发票信息
     */
    @Column(name = "invoice_information")
    private String invoiceInformation;

    /**
     * 条件备注
     */
    @Column(name = "condition_note")
    private String conditionNote;

    /**
     * 条件Id
     */
    @Column(name = "condition_id")
    private String conditionId;

    /**
     * 子条件Id
     */
    @Column(name = "condition_subtype_id")
    private String conditionSubtypeId;

    /**
     * 预定交货开始日期
     */
    @Column(name = "scheduled_delivery_start_date")
    private Date scheduledDeliveryStartDate;

    /**
     * 预定交货结束日期
     */
    @Column(name = "scheduled_delivery_end_date")
    private Date scheduledDeliveryEndDate;

    /**
     * 价格标示
     */
    @Column(name = "price_designation")
    private String priceDesignation;

    /**
     * 定制URL
     */
    @Column(name = "customized_url")
    private String customizedUrl;

    /**
     * 发货渠道(AFN、MFN)
     */
    @Column(name = "fulfillment_channel")
    private String fulfillmentChannel;

    /**
     * 店铺ID
     */
    @Column(name = "account_id")
    private Integer accountId;

    /**
     * 店铺简码
     */
    @Column(name = "account_code")
    private String accountCode;

    /**
     * 区域ID
     */
    @Column(name = "area_id")
    private Integer areaId;

    /**
     * 区域
     */
    private String area;

    /**
     * 记录创建时间
     */
    @Column(name = "create_date")
    private Date createDate;

    /**
     * 记录更新时间
     */
    @Column(name = "update_date")
    private Date updateDate;

    @Column(name = "order_header_id")
    private Integer orderHeaderId;

    /**
     * 产品标题
     */
    @Column(name = "title")
    private byte[] titleAlias;

    /**
     * 礼品消息文本
     */
    @Column(name = "gift_message_text")
    private byte[] giftMessageText;

    @Transient
    @JSONField(name = "title")
    private String titleStr;

    @Transient
    @JSONField(name = "gift_message_text")
    private String giftMessageTextStr;

    public byte[] getTitleAlias() {
        if (StringUtils.isNotBlank(titleStr)) {
            try {
                return titleStr.getBytes("UTF-8");
            } catch (UnsupportedEncodingException e) {
                e.printStackTrace();
            }
        }
        return null;
    }

    public byte[] getGiftMessageText() {
        if (StringUtils.isNotBlank(giftMessageTextStr)) {
            try {
                return giftMessageTextStr.getBytes("UTF-8");
            } catch (UnsupportedEncodingException e) {
                e.printStackTrace();
            }
        }
        return null;
    }
}