/***********************************************************
 * @Description : 考试题目表
 * @author      : 梁山广(Laing Shan Guang)
 * @date        : 2019/5/14 07:46
 * @email       : liangshanguang2@gmail.com
 ***********************************************************/
package lsgwr.exam.entity;


import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.hibernate.annotations.DynamicUpdate;

import javax.persistence.Entity;
import javax.persistence.Id;
import java.util.Date;
/**
 * 题目实体类，用于存储题目信息
 * 利用注解生成getter/setter方法
 */
@Data
@Entity
@DynamicUpdate
public class Question {
    /**
     * 题目id
     */
    @Id
    private String questionId;
    /**
     * 题目名称
     */
    private String questionName;
    /**
     * 题目分数
     */
    private Integer questionScore;
    /**
     * 题目创建人id
     */
    private String questionCreatorId;
    /**
     * 题目难度id
     */
    private Integer questionLevelId;
    /**
     * 题目类型id
     */
    private Integer questionTypeId;
    /**
     * 题目分类id
     */
    private Integer questionCategoryId;
    /**
     * 题目描述
     */
    private String questionDescription;
    /**
     * 题目选项id，用逗号隔开，例如：A,B,C,D
     */
    private String questionOptionIds;
    /**
     * 题目正确答案选项id，用逗号隔开，例如：A
     */
    private String questionAnswerOptionIds;
    /**
     * 创建时间, 设计表时设置了自动插入当前时间，无需在Java代码中设置了
     */

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date createTime;

    /**
     * 更新时间，设计表时设置了自动插入当前时间，无需在Java代码中设置了。
     * 同时@DynamicUpdate注解可以时间当数据库数据变化时自动更新，无需人工维护
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date updateTime;
}
