package com.cf.imes.module.system.dal.dataobject.funds.products;

import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.cf.imes.framework.mybatis.core.dataobject.BaseDO;
import lombok.*;

import java.math.BigDecimal;

/**
 * 产品明细表 product_details DO
 *
 * @author 晨丰科技
 */
@TableName("products_details")
@KeySequence("products_details_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库，可不写。
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class ProductsDetailDO extends BaseDO {

    /**
     * 产品明细 ID
     */
    @TableId
    private Long id;

    /**
     * 产品id
     */
    private Long productId;

    /**
     * 产品明细购买方式 0时长 1产量
     */
    private Integer purchaseType;

    /**
     * 正常时间，不加赠送时间
     */
    private String duration;

    /**
     * 产品时长单位
     */
    private Integer durationUnit;

    /**
     * 正常产量，不加赠送产量
     */
    @TableField("`output`")
    private BigDecimal output;

    /**
     * 赠送时间
     */
    private String giftDuration;

    /**
     * 赠送时间单位
     */
    private Integer giftDurationUnit;

    /**
     * 赠送产量
     */
    private BigDecimal giftOutput;

    /**
     * 产品原价
     */
    private BigDecimal originalPrice;

    /**
     * 折扣
     */
    private BigDecimal discount;

    /**
     * 产品现价
     */
    private BigDecimal currentPrice;

    /**
     * 是否特惠: 0否1是
     */
    private Boolean isDiscounted;
}
