package com.ssj.bean.sys.homework.domain;

import com.ssj.bean.common.framework.core.domain.PersistentEntity;
import com.ssj.framework.idworker.IdWorker;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;
import java.util.Date;

/**
 * 作业批改记录
 *
 * @author Mount Liu
 * @date 2019/7/22
 */
@Entity
@Table(name = "scon_homework_picture_correct")
public class HomeworkPictureCorrect extends PersistentEntity {
    public HomeworkPictureCorrect(){
        this.id =  IdWorker.generateId();
    }

    private String id;

    @Id
    @Column(length = 32, nullable = false)
    public String getId() {
        return id;
    }

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

    private static final long serialVersionUID = 1L;
    /**
     * 创建时间
     */
    private Date createTime;
    /**
     * scon_homework_picture.id
     */
    private String homeworkPictureId;
    /**
     * scon_homework.id
     */
    private String homeworkId;
    /**
     * 开始批改时间
     */
    private Date startTime;
    /**
     * 结束批改时间
     */
    private Date endTime;
    /**
     * 类型（8:作业批改，13：知识点匹配）
     */
    private int type;
    /**
     * 批改时间
     */
    private int correctionTime;
    /**
     * 是否质检批改错误（0：否，1：是）
     */
    private int isCheckError;
    /**
     * 质检时间
     */
    private Date checkDate;
    /**
     * 质检错误原因
     */
    private String errorReason;
    /**
     * 质检人
     */
    private String checker;
    /**
     * 分配时间
     */
    private Date allotTime;
    /**
     * 质检错误是否已读
     */
    private int isErrorRead;
    /**
     * 纠正次数
     */
    private int correctNums = 0;

    /**
     * 二次批改状态，0首次批改，1二次批改
     */
    private int secondCorrectType;
    /**
     * 累计批改次数
     */
    private int operateNums = 0;
    /**
     * 质检员userId
     */
    private String checkerId;
    /**
     * 开始质检时间
     */
    private Date checkStartTime;
    /**
     * 结束质检时间
     */
    private Date checkEndTime;

    public Date getCheckStartTime() {
        return checkStartTime;
    }

    public void setCheckStartTime(Date checkStartTime) {
        this.checkStartTime = checkStartTime;
    }

    public Date getCheckEndTime() {
        return checkEndTime;
    }

    public void setCheckEndTime(Date checkEndTime) {
        this.checkEndTime = checkEndTime;
    }

    public String getCheckerId() {
        return checkerId;
    }

    public void setCheckerId(String checkerId) {
        this.checkerId = checkerId;
    }

    public int getOperateNums() {
        return operateNums;
    }

    public void setOperateNums(int operateNums) {
        this.operateNums = operateNums;
    }

    public Date getCreateTime() {
        return createTime;
    }

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

    @Column(updatable =false)
    public String getHomeworkPictureId() {
        return homeworkPictureId;
    }

    public void setHomeworkPictureId(String homeworkPictureId) {
        this.homeworkPictureId = homeworkPictureId;
    }

    @Column(updatable =false)
    public String getHomeworkId() {
        return homeworkId;
    }

    public void setHomeworkId(String homeworkId) {
        this.homeworkId = homeworkId;
    }

    public Date getStartTime() {
        return startTime;
    }

    public void setStartTime(Date startTime) {
        this.startTime = startTime;
    }

    public Date getEndTime() {
        return endTime;
    }

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

    public int getType() {
        return type;
    }

    public void setType(int type) {
        this.type = type;
    }

    public int getCorrectionTime() {
        return correctionTime;
    }

    public void setCorrectionTime(int correctionTime) {
        this.correctionTime = correctionTime;
    }

    public int getIsCheckError() {
        return isCheckError;
    }

    public void setIsCheckError(int isCheckError) {
        this.isCheckError = isCheckError;
    }

    public Date getCheckDate() {
        return checkDate;
    }

    public void setCheckDate(Date checkDate) {
        this.checkDate = checkDate;
    }

    public String getErrorReason() {
        return errorReason;
    }

    public void setErrorReason(String errorReason) {
        this.errorReason = errorReason;
    }

    public String getChecker() {
        return checker;
    }

    public void setChecker(String checker) {
        this.checker = checker;
    }

    public Date getAllotTime() {
        return allotTime;
    }

    public void setAllotTime(Date allotTime) {
        this.allotTime = allotTime;
    }

    public int getIsErrorRead() {
        return isErrorRead;
    }

    public void setIsErrorRead(int isErrorRead) {
        this.isErrorRead = isErrorRead;
    }

    public int getCorrectNums() {
        return correctNums;
    }

    public void setCorrectNums(int correctNums) {
        this.correctNums = correctNums;
    }

    public int getSecondCorrectType() {
        return secondCorrectType;
    }

    public void setSecondCorrectType(int secondCorrectType) {
        this.secondCorrectType = secondCorrectType;
    }


}
