package com.ruoyi.kaohe.domain;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

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;

/**
 * 投票评测对象 kh_vote
 *
 * @author hs
 * @date 2025-06-23
 */
public class KhVote extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键 */
    private Long id;

    /** 所属评测id */
    @Excel(name = "所属评测id")
    private Long pingceId;

    /** 所属评测名称 */
    @Excel(name = "所属评测名称")
    private String pingceName;

    /** 考核项id */
    @Excel(name = "考核项id")
    private Long khitemId;

    /** 考核项名称 */
    @Excel(name = "考核项名称")
    private String khitemName;

    /** 考核类型id */
    @Excel(name = "考核类型id")
    private Long khitemTypeid;

    /** 投票选项 */
    @Excel(name = "投票选项")
    private String voteItems;

    /** 投票主题 */
    @Excel(name = "投票主题")
    private String voteTitle;

    /** 详情描述 */
    @Excel(name = "详情描述")
    private String vDescription;

    /** 开始时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "开始时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date sTime;

    /** 结束时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "结束时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date eTime;

    /** 最大分数 */
    @Excel(name = "最大分数")
    private BigDecimal maxNum;

    /** 评分占比(0-1之间) */
    @Excel(name = "评分占比(0-1之间)")
    private BigDecimal percentage;

    /** 状态(0 未开始 1 进行中 2 完成) */
    @Excel(name = "状态(0 未开始 1 进行中 2 完成)")
    private String state;
    /**
     * 仅用作评分账号查看首页对应评分  的参数
     * @return
     */
    private List<Long> itemIds;


    public List<Long> getItemIds() {
        return itemIds;
    }

    public void setItemIds(List<Long> itemIds) {
        this.itemIds = itemIds;
    }

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

    public Long getId()
    {
        return id;
    }

    public void setPingceId(Long pingceId)
    {
        this.pingceId = pingceId;
    }

    public Long getPingceId()
    {
        return pingceId;
    }

    public void setPingceName(String pingceName)
    {
        this.pingceName = pingceName;
    }

    public String getPingceName()
    {
        return pingceName;
    }

    public void setKhitemId(Long khitemId)
    {
        this.khitemId = khitemId;
    }

    public Long getKhitemId()
    {
        return khitemId;
    }

    public void setKhitemName(String khitemName)
    {
        this.khitemName = khitemName;
    }

    public String getKhitemName()
    {
        return khitemName;
    }

    public void setKhitemTypeid(Long khitemTypeid)
    {
        this.khitemTypeid = khitemTypeid;
    }

    public Long getKhitemTypeid()
    {
        return khitemTypeid;
    }

    public void setVoteItems(String voteItems)
    {
        this.voteItems = voteItems;
    }

    public String getVoteItems()
    {
        return voteItems;
    }

    public void setVoteTitle(String voteTitle)
    {
        this.voteTitle = voteTitle;
    }

    public String getVoteTitle()
    {
        return voteTitle;
    }

    public void setvDescription(String vDescription)
    {
        this.vDescription = vDescription;
    }

    public String getvDescription()
    {
        return vDescription;
    }

    public void setsTime(Date sTime)
    {
        this.sTime = sTime;
    }

    public Date getsTime()
    {
        return sTime;
    }

    public void seteTime(Date eTime)
    {
        this.eTime = eTime;
    }

    public Date geteTime()
    {
        return eTime;
    }

    public BigDecimal getMaxNum() {
        return maxNum;
    }

    public void setMaxNum(BigDecimal maxNum) {
        this.maxNum = maxNum;
    }

    public void setPercentage(BigDecimal percentage)
    {
        this.percentage = percentage;
    }

    public BigDecimal getPercentage()
    {
        return percentage;
    }

    public void setState(String state)
    {
        this.state = state;
    }

    public String getState()
    {
        return state;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
                .append("id", getId())
                .append("pingceId", getPingceId())
                .append("pingceName", getPingceName())
                .append("khitemId", getKhitemId())
                .append("khitemName", getKhitemName())
                .append("khitemTypeid", getKhitemTypeid())
                .append("voteItems", getVoteItems())
                .append("voteTitle", getVoteTitle())
                .append("vDescription", getvDescription())
                .append("sTime", getsTime())
                .append("eTime", geteTime())
                .append("maxNum", getMaxNum())
                .append("percentage", getPercentage())
                .append("state", getState())
                .append("createBy", getCreateBy())
                .append("createTime", getCreateTime())
                .append("updateBy", getUpdateBy())
                .append("updateTime", getUpdateTime())
                .append("remark", getRemark())
                .toString();
    }
}
