package com.ruoyi.post.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.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 邮贝藏品信息;
 * 
 * @author Huianan
 * @date 2023-02-11
 */
public class PostCollection extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 藏品ID */
    private Long collectionId;

    /** 藏品名称 */
    @Excel(name = "藏品名称")
    private String collectionName;

    /** 藏品价格 */
    @Excel(name = "藏品价格")
    private Long collectionPrice;

    /** 藏品数量 */
    @Excel(name = "藏品数量")
    private Long collectionCounts;

    /** 藏品状态（0在售 1售完） */
    @Excel(name = "藏品状态", readConverterExp = "0=在售,1=售完")
    private String collectionStatus;

    /** 藏品兑换状态（0可兑换 1不可兑换） */
    @Excel(name = "藏品兑换状态", readConverterExp = "0=可兑换,1=不可兑换")
    private String exchangeStatus;

    /** 售卖时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "售卖时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date startTime;

    /** 下架时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "下架时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date endTime;

    /** 套系名称 */
    @Excel(name = "套系名称")
    private String seriesName;

    /** 删除标志（0代表存在 2代表删除） */
    private String delFlag;

    public void setCollectionId(Long collectionId) 
    {
        this.collectionId = collectionId;
    }

    public Long getCollectionId() 
    {
        return collectionId;
    }
    public void setCollectionName(String collectionName) 
    {
        this.collectionName = collectionName;
    }

    public String getCollectionName() 
    {
        return collectionName;
    }
    public void setCollectionPrice(Long collectionPrice) 
    {
        this.collectionPrice = collectionPrice;
    }

    public Long getCollectionPrice() 
    {
        return collectionPrice;
    }
    public void setCollectionCounts(Long collectionCounts) 
    {
        this.collectionCounts = collectionCounts;
    }

    public Long getCollectionCounts() 
    {
        return collectionCounts;
    }
    public void setCollectionStatus(String collectionStatus) 
    {
        this.collectionStatus = collectionStatus;
    }

    public String getCollectionStatus() 
    {
        return collectionStatus;
    }
    public void setExchangeStatus(String exchangeStatus) 
    {
        this.exchangeStatus = exchangeStatus;
    }

    public String getExchangeStatus() 
    {
        return exchangeStatus;
    }
    public void setStartTime(Date startTime) 
    {
        this.startTime = startTime;
    }

    public Date getStartTime() 
    {
        return startTime;
    }
    public void setEndTime(Date endTime) 
    {
        this.endTime = endTime;
    }

    public Date getEndTime() 
    {
        return endTime;
    }
    public void setSeriesName(String seriesName) 
    {
        this.seriesName = seriesName;
    }

    public String getSeriesName() 
    {
        return seriesName;
    }
    public void setDelFlag(String delFlag) 
    {
        this.delFlag = delFlag;
    }

    public String getDelFlag() 
    {
        return delFlag;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("collectionId", getCollectionId())
            .append("collectionName", getCollectionName())
            .append("collectionPrice", getCollectionPrice())
            .append("collectionCounts", getCollectionCounts())
            .append("collectionStatus", getCollectionStatus())
            .append("exchangeStatus", getExchangeStatus())
            .append("startTime", getStartTime())
            .append("endTime", getEndTime())
            .append("seriesName", getSeriesName())
            .append("delFlag", getDelFlag())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("remark", getRemark())
            .toString();
    }
}
