package com.sqx.modules.orders.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.sqx.modules.course.entity.Course;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;

/**
 * @author fang
 * @description orders
 * @date 2021-03-27
 */
@Data
@TableName("orders")
public class Orders implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 订单id
     */
    @TableId(type = IdType.AUTO)
    private Long ordersId;

    /**
     * 订单编号
     */
    private String ordersNo;

    /**
     * 支付宝支付单号
     */
    private String tradeNo;

    /**
     * 用户id
     */
    private Long userId;

    /**
     * 短剧id
     */
    private Long courseId;

    private Long courseDetailsId;

    private String courseDetailsIds;

    @TableField(exist = false)
    /**
     * 短剧对象
     */
    private Course course;
    /**
     * 支付金币
     */
    private BigDecimal payMoney;

    /**
     * 支付钻石
     */
    private BigDecimal payDiamond;

    /**
     * 是否是钻石订单  1是
     */
    private Integer diamond;

    /**
     * 支付方式 1微信app 2微信公众号 3微信小程序 4支付宝  5会员免费 6金币 7抖音 8快手 9无忧付（支付宝）
     */
    private Integer payWay;

    private String payTime;


    /**
     * 状态 0待支付 1已支付 2已退款
     */
    private Integer status;

    /**
     * 创建时间
     */
    private String createTime;
    /**
     * 退款原因
     */
    private String refundContent;

    /**
     * 订单种类 1短剧 2会员 3充值
     */
    private Integer ordersType;

    /**
     * 0会月/1季度/2年
     */
    private Integer vipNameType;

    /**
     * 渠道佣金
     */
    private BigDecimal qdMoney;

    /**
     * 渠道用户
     */
    private Long sysUserId;

    /**
     * 一级佣金
     */
    private BigDecimal oneMoney;

    /**
     * 一级用户
     */
    private Long oneUserId;

    /**
     * 二级佣金
     */
    private BigDecimal twoMoney;

    /**
     * 二级用户
     */
    private Long twoUserId;

    @TableField(exist = false)
    private String title;

    @TableField(exist = false)
    private String userName;

    @TableField(exist = false)
    private String qdCode;

    @TableField(exist = false)
    private String sysUserName;

    /**
     * 会员对象
     */
    public Orders() {
    }
}
