package org.xyzh.common.dto.study;

import org.xyzh.common.dto.BaseDTO;
import java.util.Date;

/**
 * @description 学习统计明细表
 * @filename TbLearningStatisticsDetail.java
 * @author yslg
 * @copyright xyzh
 * @since 2025-10-27
 */
public class TbLearningStatisticsDetail extends BaseDTO {
    
    private static final long serialVersionUID = 1L;
    
    /**
     * @description 用户ID
     */
    private String userID;

    /**
     * @description 统计日期
     */
    private Date statDate;
    
    /**
     * @description 资源类型（1资源/新闻 2课程 3章节）
     */
    private Integer resourceType;
    
    /**
     * @description 资源ID
     */
    private String resourceID;

    /**
     * @description 课程ID
     */
    private String courseID;

    /**
     * @description 章节ID
     */
    private String chapterID;
    
    /**
     * @description 学习时长（秒）
     */
    private Integer totalDuration;
    
    /**
     * @description 学习次数
     */
    private Integer learnCount;
    
    /**
     * @description 是否完成
     */
    private Boolean isComplete;
    
    /**
     * @description 完成时间
     */
    private Date completeTime;
    
    /**
     * @description 创建者
     */
    private String creator;
    
    /**
     * @description 更新者
     */
    private String updater;

    public String getUserID() {
        return userID;
    }

    public void setUserID(String userID) {
        this.userID = userID;
    }

    public Date getStatDate() {
        return statDate;
    }

    public void setStatDate(Date statDate) {
        this.statDate = statDate;
    }

    public Integer getResourceType() {
        return resourceType;
    }

    public void setResourceType(Integer resourceType) {
        this.resourceType = resourceType;
    }

    public String getResourceID() {
        return resourceID;
    }

    public void setResourceID(String resourceID) {
        this.resourceID = resourceID;
    }

    public String getCourseID() {
        return courseID;
    }

    public void setCourseID(String courseID) {
        this.courseID = courseID;
    }

    public String getChapterID() {
        return chapterID;
    }

    public void setChapterID(String chapterID) {
        this.chapterID = chapterID;
    }

    public Integer getTotalDuration() {
        return totalDuration;
    }

    public void setTotalDuration(Integer totalDuration) {
        this.totalDuration = totalDuration;
    }

    public Integer getLearnCount() {
        return learnCount;
    }

    public void setLearnCount(Integer learnCount) {
        this.learnCount = learnCount;
    }

    public Boolean getIsComplete() {
        return isComplete;
    }

    public void setIsComplete(Boolean isComplete) {
        this.isComplete = isComplete;
    }

    public Date getCompleteTime() {
        return completeTime;
    }

    public void setCompleteTime(Date completeTime) {
        this.completeTime = completeTime;
    }

    public String getCreator() {
        return creator;
    }

    public void setCreator(String creator) {
        this.creator = creator;
    }

    public String getUpdater() {
        return updater;
    }

    public void setUpdater(String updater) {
        this.updater = updater;
    }

    @Override
    public String toString() {
        return "TbLearningStatisticsDetail{" +
                "id=" + getID() +
                ", userID='" + userID + '\'' +
                ", statDate=" + statDate +
                ", resourceType=" + resourceType +
                ", resourceID='" + resourceID + '\'' +
                ", courseID='" + courseID + '\'' +
                ", chapterID='" + chapterID + '\'' +
                ", totalDuration=" + totalDuration +
                ", learnCount=" + learnCount +
                ", isComplete=" + isComplete +
                ", completeTime=" + completeTime +
                ", creator='" + creator + '\'' +
                ", updater='" + updater + '\'' +
                ", createTime=" + getCreateTime() +
                ", updateTime=" + getUpdateTime() +
                '}';
    }
}

