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.activity.ActivityRankingMethodEnum;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

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

/**
 * 评测活动参与记录表
 */
@TableName("activity_evaluation_record")
@ApiModel(value = "ActivityEvaluationRecord对象", description = "评测活动参与记录表")
public class ActivityEvaluationRecord implements Serializable {
    private static final long serialVersionUID = 1L;
    @ApiModelProperty("主键 ")
    @TableId(value = "id_", type = IdType.AUTO)
    private Long id;
    @ApiModelProperty("活动id ")
    @TableField(value = "activity_id_")
    private Long activityId;
    @ApiModelProperty("用户id ")
    @TableField(value = "user_id_")
    private Long userId;
    @ApiModelProperty("评测活动id ")
    @TableField(value = "evaluation_id_")
    private Long evaluationId;

    @ApiModelProperty("活动内容资源ID ")
    @TableField(value = "resource_id_")
    private Long resourceId;

    @ApiModelProperty("分数 ")
    @TableField(value = "score_")
    private Double score;
    
    @ApiModelProperty("次数")
    @TableField(value = "times_")
    private int times;

    @ApiModelProperty("评份方式")
    @TableField(value = "ranking_method_")
    private ActivityRankingMethodEnum rankingMethod;

    @ApiModelProperty("活动报名时间 ")
    @TableField(value = "registration_time_")
    private Long registrationTime;
    
    @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;

    public Long getResourceId() {
        return resourceId;
    }

    public void setResourceId(Long resourceId) {
        this.resourceId = resourceId;
    }

    public Long getId() {
        return id;
    }

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

    public Long getActivityId() {
        return activityId;
    }

    public void setActivityId(Long activityId) {
        this.activityId = activityId;
    }

    public Long getUserId() {
        return userId;
    }

    public void setUserId(Long userId) {
        this.userId = userId;
    }

    public Long getEvaluationId() {
        return evaluationId;
    }

    public void setEvaluationId(Long evaluationId) {
        this.evaluationId = evaluationId;
    }

    public Double getScore() {
        return score;
    }

    public void setScore(Double score) {
        this.score = score;
    }

    public int getTimes() {
		return times;
	}

	public void setTimes(int times) {
		this.times = times;
	}

	public Date getCreateTime() {
        return createTime;
    }

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

    public ActivityRankingMethodEnum getRankingMethod() {
        return rankingMethod;
    }

    public void setRankingMethod(ActivityRankingMethodEnum rankingMethod) {
        this.rankingMethod = rankingMethod;
    }

    public Long getRegistrationTime() {
        return registrationTime;
    }

    public void setRegistrationTime(Long registrationTime) {
        this.registrationTime = registrationTime;
    }
}