package com.ssj.service.sys.imlibuser.service;

import java.util.List;
import java.util.Map;

import com.ssj.bean.sys.imlibuser.TbClassStudent;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;

import com.ssj.bean.sys.imlibuser.TbClassTeacher;
import com.ssj.framework.core.common.service.BaseService;

public interface TbClassTeacherService extends BaseService<TbClassTeacher, String> {
	
	/**
	  * 查询老师的分页
	  * @param searchParam
	  * @param pageable
	  * @return
	  */
	 Page<Map<String, Object>> findTeacherByPage(Map<String, Object> searchParam, Pageable pageable);
	 

	 /**
	  * 查询班级下的老师
	  * @param libId
	  * @param teacherId
	  * @return
	  */
	 TbClassTeacher getTbLibImTeacherByClassId(String classId,String teacherId);

	/**
	 * 查询老师记录，没有的话新增
	 * @param classId
	 * @param libId
	 * @param teacherId
	 * @return
	 *//*
	 TbClassTeacher getTbClassTeacherByClassIdAndSubject(String classId, String subject);
*/
	/**
	 * 查询班级名下多少个老师
	 * @param classId
	 * @return
	 */
	int getTbClassTeacherByClassId(String classId,String libId);

	 TbClassTeacher getDefaultTbLibImTeacherByClassId (String classId, String libId, String teacherId);

	/**
	 * 查询老师在馆里的所有记录
	 * @param libId
	 * @param teacherId
	 * @return
	 */
	 List<TbClassTeacher> getTbLibImTeacherBylibId (String libId, String teacherId);

	/**
	 * 设置老师在馆里的关联关系状态
	 * @param libId
	 * @param teacherId
	 * @param status
	 */
	 void saveTbClassTeacherStatusByLibId (String libId, String teacherId, int status);


	/**
	 * 删除老师
	 */
	void deleteClassTeacherByClassIdAndLibId(String libId,String classId);
}
