package com.ruoyi.education.domain;

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;

/**
 * 开课节次安排对象 edu_course_schedule
 * 
 * @author ruoyi
 * @date 2024-09-26
 */
public class EduCourseSchedule extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 节次ID */
    private Long scheduleId;

    /** 开课ID */
    @Excel(name = "开课ID")
    private Long classId;

    /** 周几（1-7） */
    @Excel(name = "周几", readConverterExp = "1=周一,2=周二,3=周三,4=周四,5=周五,6=周六,7=周日")
    private Integer weekday;

    /** 开始节次 */
    @Excel(name = "开始节次")
    private Integer periodStart;

    /** 结束节次 */
    @Excel(name = "结束节次")
    private Integer periodEnd;

    /** 上课周次，例如 1-16 */
    @Excel(name = "上课周次")
    private String weeks;

    /** 教室ID */
    @Excel(name = "教室ID")
    private Long classroomId;

    /** 班级编号 - 关联查询字段 */
    @Excel(name = "班级编号")
    private String classCode;

    /** 课程名称 - 关联查询字段 */
    @Excel(name = "课程名称")
    private String courseName;

    /** 课程编码 - 关联查询字段 */
    @Excel(name = "课程编码")
    private String courseCode;

    /** 教师姓名 - 关联查询字段 */
    @Excel(name = "教师姓名")
    private String teacherName;

    /** 学期名称 - 关联查询字段 */
    @Excel(name = "学期名称")
    private String semesterName;

    /** 教室名称 - 关联查询字段 */
    @Excel(name = "教室名称")
    private String classroomName;

    /** 星期描述 - 关联查询字段 */
    @Excel(name = "星期")
    private String weekdayName;

    /** 节次描述 - 关联查询字段 */
    @Excel(name = "节次")
    private String periodName;

    public void setScheduleId(Long scheduleId) 
    {
        this.scheduleId = scheduleId;
    }

    public Long getScheduleId() 
    {
        return scheduleId;
    }
    public void setClassId(Long classId) 
    {
        this.classId = classId;
    }

    public Long getClassId() 
    {
        return classId;
    }
    public void setWeekday(Integer weekday) 
    {
        this.weekday = weekday;
    }

    public Integer getWeekday() 
    {
        return weekday;
    }
    public void setPeriodStart(Integer periodStart) 
    {
        this.periodStart = periodStart;
    }

    public Integer getPeriodStart() 
    {
        return periodStart;
    }
    public void setPeriodEnd(Integer periodEnd) 
    {
        this.periodEnd = periodEnd;
    }

    public Integer getPeriodEnd() 
    {
        return periodEnd;
    }
    public void setWeeks(String weeks) 
    {
        this.weeks = weeks;
    }

    public String getWeeks() 
    {
        return weeks;
    }
    public void setClassroomId(Long classroomId) 
    {
        this.classroomId = classroomId;
    }

    public Long getClassroomId() 
    {
        return classroomId;
    }

    public String getClassCode() 
    {
        return classCode;
    }

    public void setClassCode(String classCode) 
    {
        this.classCode = classCode;
    }

    public String getCourseName() 
    {
        return courseName;
    }

    public void setCourseName(String courseName) 
    {
        this.courseName = courseName;
    }

    public String getCourseCode() 
    {
        return courseCode;
    }

    public void setCourseCode(String courseCode) 
    {
        this.courseCode = courseCode;
    }

    public String getTeacherName() 
    {
        return teacherName;
    }

    public void setTeacherName(String teacherName) 
    {
        this.teacherName = teacherName;
    }

    public String getSemesterName() 
    {
        return semesterName;
    }

    public void setSemesterName(String semesterName) 
    {
        this.semesterName = semesterName;
    }

    public String getClassroomName() 
    {
        return classroomName;
    }

    public void setClassroomName(String classroomName) 
    {
        this.classroomName = classroomName;
    }

    public String getWeekdayName() 
    {
        return weekdayName;
    }

    public void setWeekdayName(String weekdayName) 
    {
        this.weekdayName = weekdayName;
    }

    public String getPeriodName() 
    {
        return periodName;
    }

    public void setPeriodName(String periodName) 
    {
        this.periodName = periodName;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("scheduleId", getScheduleId())
            .append("classId", getClassId())
            .append("weekday", getWeekday())
            .append("periodStart", getPeriodStart())
            .append("periodEnd", getPeriodEnd())
            .append("weeks", getWeeks())
            .append("classroomId", getClassroomId())
            .append("remark", getRemark())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .toString();
    }
}