package com.yonge.cooleshow.biz.dal.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.yonge.cooleshow.biz.dal.enums.GoodTypeEnum;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;

/**
 * 平台订单表
 */
@TableName("user_order_detail")
@ApiModel(value = "UserOrderDetail对象", description = "平台订单表")
public class UserOrderDetail implements Serializable {
	private static final long serialVersionUID = 1L;
    @TableId(value = "id_", type = IdType.AUTO)
    private Long id;
    @ApiModelProperty("订单号 ")
	@TableField(value = "order_no_")
    private String orderNo;
    @ApiModelProperty("卖家id ")
    @TableField(value = "merch_id_")
    private Long merchId;
    @ApiModelProperty("订单类型:  VIP、开通会员  PRACTICE、陪练课购买  LIVE、直播课购买 VIDEO、视频课购买 MUSIC、单曲点播")
    @TableField(value = "good_type_")
    private GoodTypeEnum goodType;
    @ApiModelProperty("业务id ")
	@TableField(value = "biz_id_")
    private Long bizId;
    @ApiModelProperty("业务内容 ")
	@TableField(value = "biz_content_")
    private String bizContent;
    @ApiModelProperty("商品名称 ")
    @TableField(value = "good_name_")
    private String goodName;
    @ApiModelProperty("商品图片 ")
    @TableField(value = "good_url_")
    private String goodUrl;
    @ApiModelProperty("原价 ")
    @TableField(value = "original_price_")
    private BigDecimal originalPrice;
    @ApiModelProperty("预计价格 ")
    @TableField(value = "expect_price_")
    private BigDecimal expectPrice;
    @ApiModelProperty("实际价格 ")
    @TableField(value = "actual_price_")
    private BigDecimal actualPrice;
    @ApiModelProperty("优惠金额 ")
    @TableField(value = "coupon_amount_")
    private BigDecimal couponAmount;
    @ApiModelProperty("商品数量 ")
    @TableField(value = "good_num_")
    private Integer goodNum;
    @ApiModelProperty("商品单价 ")
    @TableField(value = "good_price_")
    private BigDecimal goodPrice;
    @ApiModelProperty("平台服务费 ")
    @TableField(value = "plantform_fee_")
    private BigDecimal plantformFee;
    @ApiModelProperty("平台服务费比例% ")
    @TableField(value = "plantform_fee_rate_")
    private BigDecimal plantformFeeRate;
    @ApiModelProperty("下单时间 ")
	@TableField(value = "create_time_")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
    private Date createTime;
	@TableField(value = "update_time_")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
    private Date updateTime;

    public Long getId() {
        return id;
    }

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

    public String getOrderNo() {
        return orderNo;
    }

    public void setOrderNo(String orderNo) {
        this.orderNo = orderNo;
    }

    public Long getMerchId() {
        return merchId;
    }

    public void setMerchId(Long merchId) {
        this.merchId = merchId;
    }

    public GoodTypeEnum getGoodType() {
        return goodType;
    }

    public void setGoodType(GoodTypeEnum goodType) {
        this.goodType = goodType;
    }

    public Long getBizId() {
        return bizId;
    }

    public void setBizId(Long bizId) {
        this.bizId = bizId;
    }

    public String getBizContent() {
        return bizContent;
    }

    public void setBizContent(String bizContent) {
        this.bizContent = bizContent;
    }

    public String getGoodName() {
        return goodName;
    }

    public void setGoodName(String goodName) {
        this.goodName = goodName;
    }

    public String getGoodUrl() {
        return goodUrl;
    }

    public void setGoodUrl(String goodUrl) {
        this.goodUrl = goodUrl;
    }

    public BigDecimal getOriginalPrice() {
        return originalPrice;
    }

    public void setOriginalPrice(BigDecimal originalPrice) {
        this.originalPrice = originalPrice;
    }

    public BigDecimal getExpectPrice() {
        return expectPrice;
    }

    public void setExpectPrice(BigDecimal expectPrice) {
        this.expectPrice = expectPrice;
    }

    public Integer getGoodNum() {
        return goodNum;
    }

    public void setGoodNum(Integer goodNum) {
        this.goodNum = goodNum;
    }

    public BigDecimal getGoodPrice() {
        return goodPrice;
    }

    public void setGoodPrice(BigDecimal goodPrice) {
        this.goodPrice = goodPrice;
    }

    public BigDecimal getPlantformFee() {
        return plantformFee;
    }

    public void setPlantformFee(BigDecimal plantformFee) {
        this.plantformFee = plantformFee;
    }

    public BigDecimal getPlantformFeeRate() {
        return plantformFeeRate;
    }

    public void setPlantformFeeRate(BigDecimal plantformFeeRate) {
        this.plantformFeeRate = plantformFeeRate;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public Date getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    public BigDecimal getActualPrice() {
        return actualPrice;
    }

    public void setActualPrice(BigDecimal actualPrice) {
        this.actualPrice = actualPrice;
    }

    public BigDecimal getCouponAmount() {
        return couponAmount;
    }

    public void setCouponAmount(BigDecimal couponAmount) {
        this.couponAmount = couponAmount;
    }
}