package org.springblade.imports.entity;

import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.io.Serializable;
import java.util.Date;

import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.format.DateTimeFormat;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * <p>
 * 
 * </p>
 *
 * @author zbc
 * @since 2023-03-13
 */
@Data
@TableName("FCT_STANDING_BOOK_AGAIN")
public class FctStandingBookAgain implements Serializable {

    private static final long serialVersionUID = 1L;
    @TableField("DID")
    private Long dId;

    @TableField(exist = false)
    @ApiModelProperty(value = "上一条数据的DID")
    private Long onDid;

    @ApiModelProperty(value = "结算时间")
    @TableField("THEMONTH")
    private String themonth;

    @ApiModelProperty(value = "产品名称")
    @TableField("SPNAME")
    private String spname;

    @ApiModelProperty(value = "采购金额")
    @TableField("IN_MONEY")
    private BigDecimal inMoney;

    @ApiModelProperty(value = "采购数量")
    @TableField("IN_NUM")
    private Double inNum;

    @ApiModelProperty(value = "采购赠卡数量")
    @TableField("IN_GIFTCARD_NUM")
    private Double inGiftcardNum;

    @ApiModelProperty(value = "采购单价")
    @TableField("IN_PRICE")
    private BigDecimal inPrice;

    @ApiModelProperty(value = "出库单价")
    @TableField("OUT_PRICE")
    private BigDecimal outPrice;

    @ApiModelProperty(value = "出库金额")
    @TableField("OUT_MONEY")
    private BigDecimal outMoney;

    @ApiModelProperty(value = "销售单价")
    @TableField("SALE_PRICE")
    private BigDecimal salePrice;

    @ApiModelProperty(value = "实际结算数量")
    @TableField("ACCOUNT_NUM")
    private Double accountNum;

    @ApiModelProperty(value = "销售赠卡数量")
    @TableField("SALE_GIFTCARD_NUM")
    private Double saleGiftcardNum;

    @ApiModelProperty(value = "实际结算金额")
    @TableField("ACCOUNT_MONEY")
    private BigDecimal accountMoney;

    @ApiModelProperty(value = "系统出库数量")
    @TableField("SYSTEM_NUM")
    private Double systemNum;

    @ApiModelProperty(value = "结余金额")
    @TableField("BALANCE_MONEY")
    private BigDecimal balanceMoney;

    @ApiModelProperty(value = "结余正价卡数量")
    @TableField("BALANCE_NORMAL_CARD")
    private Double balanceNormalCard;

    @ApiModelProperty(value = "结余赠卡数量")
    @TableField("BALANCE_GIFTCARD")
    private Double balanceGiftcard;

    @ApiModelProperty(value = "销售出库渠道")
    @TableField("OUT_CHANNEL")
    private String outChannel;

    @ApiModelProperty(value = "销售出库时间")
    @TableField("COUT_TIME")
    private String coutTime;

    @ApiModelProperty(value = "备注")
    @TableField("MCOMMENT")
    private String mcomment;

    @ApiModelProperty(value = "账号ID")
    @TableField("ACCOUNTID")
    private String accountId;

    @ApiModelProperty(value = "账号名")
    @TableField("ACCOUNTNAME")
    private String accountName;

    @ApiModelProperty(value = "导入时间")
    @TableField("IMPORTTIME")
    private Date importTime;

    /**
     * 产品类型
     */
    @ApiModelProperty(value = "产品类型")
    @TableField("PTYPE")
    private String ptype;

    /**
     * 权益类型
     */
    @ApiModelProperty(value = "权益类型")
    @TableField("RITYPE")
    private String ritype;

    /**
     * 合同ID
     */
    @ApiModelProperty(value = "合同ID")
    @TableField("CONTRACTID")
    private String contractid;

    /**
     * 供货商ID
     */
    @ApiModelProperty(value = "供货商侧ID")
    @TableField("SUPPLIERID")
    private String supplierid;

    /**
     * 供货商
     */
    @ApiModelProperty(value = "供货商")
    @TableField("SUPPLIER")
    private String supplier;


    @ApiModelProperty(value = "采购入库时间")
    @TableField("IN_TIME")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date inTime;


}
