package com.yonge.cooleshow.biz.dal.dto.search;

import com.yonge.cooleshow.biz.dal.enums.ClientEnum;
import com.yonge.cooleshow.common.enums.YesOrNoEnum;
import com.yonge.toolset.base.page.QueryInfo;
import com.yonge.toolset.base.util.StringUtil;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import org.apache.commons.lang3.StringUtils;

import java.util.List;

/**
 * @Author: liweifan
 * @Data: 2022-11-02 10:17:44
 */
@ApiModel(value = "CourseCoursewareSearch对象", description = "课件表查询对象")
public class CourseCoursewareSearch extends QueryInfo{
	private static final long serialVersionUID = 1L;

	@ApiModelProperty("老师id")
	private Long userId;


	@ApiModelProperty("曲目编号/名称")
	private String idAndName;

	@ApiModelProperty("标签id（多个逗号隔开）")
	private String musicTagIds;

	@ApiModelProperty(hidden = true)
	private List<Long> musicTagIdList;

	@ApiModelProperty("声部id（多个逗号隔开）")
	private String subjectIds;

	@ApiModelProperty(hidden = true)
	private List<Long> subjectIdList;

	@ApiModelProperty("是否有效， 0:失效 1:有效")
	private YesOrNoEnum status;

	@ApiModelProperty(value = "用户类型 STUDENT,TEACHER ",hidden = true)
	private ClientEnum clientType;

	public String getIdAndName() {
		return idAndName;
	}

	public void setIdAndName(String idAndName) {
		this.idAndName = idAndName;
	}

	public String getMusicTagIds() {
		return musicTagIds;
	}

	public void setMusicTagIds(String musicTagIds) {
		this.musicTagIds = musicTagIds;
	}

	public List<Long> getMusicTagIdList() {
		return musicTagIdList;
	}

	public void setMusicTagIdList(List<Long> musicTagIdList) {
		this.musicTagIdList = musicTagIdList;
		if (StringUtils.isNotBlank(musicTagIds)) {
			this.musicTagIdList = StringUtil.toLongList(musicTagIds);
		}
	}

	public String getSubjectIds() {
		return subjectIds;
	}

	public void setSubjectIds(String subjectIds) {
		this.subjectIds = subjectIds;
		if (StringUtils.isNotBlank(subjectIds)) {
			this.subjectIdList = StringUtil.toLongList(subjectIds);
		}
	}

	public List<Long> getSubjectIdList() {
		return subjectIdList;
	}

	public void setSubjectIdList(List<Long> subjectIdList) {
		this.subjectIdList = subjectIdList;
	}

	public YesOrNoEnum getStatus() {
		return status;
	}

	public void setStatus(YesOrNoEnum status) {
		this.status = status;
	}

	public ClientEnum getClientType() {
		return clientType;
	}

	public void setClientType(ClientEnum clientType) {
		this.clientType = clientType;
	}

	public Long getUserId() {
		return userId;
	}

	public void setUserId(Long userId) {
		this.userId = userId;
	}

}