package com.miaxis.tt.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.miaxis.common.annotation.Excel;
import com.miaxis.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.miaxis.common.core.domain.BaseBusinessEntity;
import lombok.Data;
/**
 * 头条订单对象 tt_order
 *
 * @author miaxis
 * @date 2022-05-19
 */
@Data
@TableName("tt_order")
@ApiModel(value = "TtOrder", description = "头条订单对象 tt_order")
public class TtOrder extends BaseBusinessEntity{
    private static final long serialVersionUID = 1L;

    /** id */
    @TableId(value = "id")
    @ApiModelProperty(value = "id")
    private Long id;

    /** 商户订单号 */
    @Excel(name = "商户订单号")
    @TableField("cp_orderno")
    @ApiModelProperty(value = "商户订单号")
    private String cpOrderno;

    /** 退款单号 */
    @Excel(name = "退款单号")
    @TableField("out_refund_no")
    @ApiModelProperty(value = "退款单号")
    private String outRefundNo;

    /** way 字段中标识了支付渠道：
1-微信支付，2-支付宝支付，10-抖音支付 */
    @Excel(name = "way 字段中标识了支付渠道： 1-微信支付，2-支付宝支付，10-抖音支付")
    @TableField("way")
    @ApiModelProperty(value = "way 字段中标识了支付渠道： 1-微信支付，2-支付宝支付，10-抖音支付")
    private String way;

    /** 退款原因 */
    @Excel(name = "退款原因")
    @TableField("refund_reason")
    @ApiModelProperty(value = "退款原因")
    private String refundReason;

    /** 支付渠道侧单号 */
    @Excel(name = "支付渠道侧单号")
    @TableField("channel_no")
    @ApiModelProperty(value = "支付渠道侧单号")
    private String channelNo;

    /** 支付渠道侧商家订单号 */
    @Excel(name = "支付渠道侧商家订单号")
    @TableField("payment_order_no")
    @ApiModelProperty(value = "支付渠道侧商家订单号")
    private String paymentOrderNo;


    /** 固定SUCCESS */
    @Excel(name = "固定SUCCESS")
    @TableField("status")
    @ApiModelProperty(value = "固定SUCCESS")
    private String status;


    /** 附加数据 */
    @Excel(name = "附加数据")
    @TableField("cp_extra")
    @ApiModelProperty(value = "附加数据")
    private String cpExtra;

    /** 支付完成时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "支付完成时间", width = 30, dateFormat = "yyyy-MM-dd")
    @TableField("paid_at")
    @ApiModelProperty(value = "支付完成时间")
    private Date paidAt;

    /** 订单来源视频对应视频 id */
    @Excel(name = "订单来源视频对应视频 id")
    @TableField("item_id")
    @ApiModelProperty(value = "订单来源视频对应视频 id")
    private String itemId;

    /** 该笔交易卖家商户号 */
    @Excel(name = "该笔交易卖家商户号")
    @TableField("seller_uid")
    @ApiModelProperty(value = "该笔交易卖家商户号")
    private String sellerUid;

    /** unionid */
    @Excel(name = "unionid")
    @TableField("union_id")
    @ApiModelProperty(value = "unionid")
    private String unionId;

    /** 小程序端openid */
    @Excel(name = "小程序端openid")
    @TableField("xcx_openid")
    @ApiModelProperty(value = "小程序端openid")
    private String xcxOpenid;

    /** 用户在直连商户appid下的唯一标识 */
    @Excel(name = "用户在直连商户appid下的唯一标识")
    @TableField("app_openid")
    @ApiModelProperty(value = "用户在直连商户appid下的唯一标识")
    private String appOpenid;

    /** 总金额 */
    @Excel(name = "总金额")
    @TableField("total_amount")
    @ApiModelProperty(value = "总金额")
    private Integer totalAmount;

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

    public Long getId(){
        return id;
    }
    public void setCpOrderno(String cpOrderno){
        this.cpOrderno = cpOrderno;
    }

    public String getCpOrderno(){
        return cpOrderno;
    }
    public void setOutRefundNo(String outRefundNo){
        this.outRefundNo = outRefundNo;
    }

    public String getOutRefundNo(){
        return outRefundNo;
    }
    public void setWay(String way){
        this.way = way;
    }

    public String getWay(){
        return way;
    }
    public void setRefundReason(String refundReason){
        this.refundReason = refundReason;
    }

    public String getRefundReason(){
        return refundReason;
    }
    public void setChannelNo(String channelNo){
        this.channelNo = channelNo;
    }

    public String getChannelNo(){
        return channelNo;
    }
    public void setPaymentOrderNo(String paymentOrderNo){
        this.paymentOrderNo = paymentOrderNo;
    }


    public String getCpExtra(){
        return cpExtra;
    }
    public void setPaidAt(Date paidAt){
        this.paidAt = paidAt;
    }

    public Date getPaidAt(){
        return paidAt;
    }
    public void setItemId(String itemId){
        this.itemId = itemId;
    }

    public String getItemId(){
        return itemId;
    }
    public void setSellerUid(String sellerUid){
        this.sellerUid = sellerUid;
    }

    public String getSellerUid(){
        return sellerUid;
    }
    public void setUnionId(String unionId){
        this.unionId = unionId;
    }

    public String getUnionId(){
        return unionId;
    }
    public void setXcxOpenid(String xcxOpenid){
        this.xcxOpenid = xcxOpenid;
    }

    public String getXcxOpenid(){
        return xcxOpenid;
    }
    public void setAppOpenid(String appOpenid){
        this.appOpenid = appOpenid;
    }

    public String getAppOpenid(){
        return appOpenid;
    }


}
