package com.ym.mec.biz.dal.entity;

import io.swagger.annotations.ApiModelProperty;

import org.apache.commons.lang3.builder.ToStringBuilder;

import com.ym.mec.biz.dal.enums.ClassGroupTypeEnum;
import com.ym.mec.biz.dal.enums.YesOrNoEnum;

/**
 * 对应数据库表(class_group):
 */
public class ClassGroup {

	/**  */
	@ApiModelProperty(value = "班级编号", required = false)
	private Integer id;

	/**  */
	@ApiModelProperty(value = "乐团编号", required = true)
	private Integer musicGroupId;

	/**  */
	@ApiModelProperty(value = "科目编号(多个,号分割)", required = true)
	private String subjectIdList;

	@ApiModelProperty(value = "学生编号(多个,号分割)", required = true)
	private String userIds;

	@ApiModelProperty(value = "科目名称", required = false, hidden = true)
	private String subjectName;

	/** 班级名称 */
	@ApiModelProperty(value = "班级名称", required = true)
	private String name;

	/** 子班级名称列表 */
	@ApiModelProperty(value = "子班班级名称")
	private String classNames;

	/** 预计招生人数 */
	@ApiModelProperty(value = "预计招生人数",hidden = true)
	private Integer expectStudentNum;

	/** 学生数 */
	@ApiModelProperty(value = "学生数量", required = false)
	private Integer studentNum;

	/**  */
	private java.util.Date createTime;

	/**  */
	private java.util.Date updateTime;

	/** 班级类型(普通班级、合奏班级) */
	@ApiModelProperty(value = "班级类型(普通班级、合奏班级、提高课班级、VIP班级、试听课)", required = true)
	private ClassGroupTypeEnum type;

	/** 班级类型(普通班级、合奏班级) */
	@ApiModelProperty(value = "是否删除，1是 0否", required = false)
	private YesOrNoEnum delFlag;

	@ApiModelProperty(value = "总统课次",required = false)
	private Integer totalClassTimes;

	@ApiModelProperty(value = "当前课次",required = false)
	private Integer currentClassTimes;

	public Integer getCurrentClassTimes() {
		return currentClassTimes;
	}

	public void setCurrentClassTimes(Integer currentClassTimes) {
		this.currentClassTimes = currentClassTimes;
	}

	public Integer getTotalClassTimes() {
		return totalClassTimes;
	}

	public void setTotalClassTimes(Integer totalClassTimes) {
		this.totalClassTimes = totalClassTimes;
	}

	public YesOrNoEnum getDelFlag() {
		return delFlag;
	}

	public void setDelFlag(YesOrNoEnum delFlag) {
		this.delFlag = delFlag;
	}

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

	public Integer getId() {
		return this.id;
	}

	public void setMusicGroupId(Integer musicGroupId) {
		this.musicGroupId = musicGroupId;
	}

	public Integer getMusicGroupId() {
		return this.musicGroupId;
	}

	public String getSubjectIdList() {
		return subjectIdList;
	}

	public void setSubjectIdList(String subjectIdList) {
		this.subjectIdList = subjectIdList;
	}

	public void setName(String name) {
		this.name = name;
	}

	public String getName() {
		return this.name;
	}

	public void setStudentNum(Integer studentNum) {
		this.studentNum = studentNum;
	}

	public Integer getStudentNum() {
		return this.studentNum;
	}

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

	public java.util.Date getCreateTime() {
		return this.createTime;
	}

	public void setUpdateTime(java.util.Date updateTime) {
		this.updateTime = updateTime;
	}

	public java.util.Date getUpdateTime() {
		return this.updateTime;
	}

	public ClassGroupTypeEnum getType() {
		return type;
	}

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

	public String getSubjectName() {
		return subjectName;
	}

	public void setSubjectName(String subjectName) {
		this.subjectName = subjectName;
	}

	public String getUserIds() {
		return userIds;
	}

	public void setUserIds(String userIds) {
		this.userIds = userIds;
	}

	public String getClassNames() {
		return classNames;
	}

	public void setClassNames(String classNames) {
		this.classNames = classNames;
	}

	public Integer getExpectStudentNum() {
		return expectStudentNum;
	}

	public void setExpectStudentNum(Integer expectStudentNum) {
		this.expectStudentNum = expectStudentNum;
	}

	@Override
	public String toString() {
		return ToStringBuilder.reflectionToString(this);
	}

}
