package com.ssj.dao.course.dao;

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

import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;

import com.ssj.bean.course.domain.CourseSeries;


/** 
 * @author  ZhangCaibao 
 * @version 2018年10月16日 下午5:42:45 
 * 类说明 
 */
public interface CourseQueryDao {
	
	/**
	 * 查询校长所在的馆
	* @param userId
	* @return
	 */
	public List<Map<String,Object>> getManageJoin(String userId);
	public List<Map<String, Object>> getCourseAll(int courseTypeLabel ,int offset);
	
	//查询当前家长的所有课程日期
	public List<Map<String,Object>> findCourseSeriesJoinByUserId(String userId,String vipId,String id,String libId);
	
	//查询当前家长的所有课程数据
	public List<Map<String,Object>> findCourseSeriesByUserId(String userId,String vipId);
	
	//查询当前家长的反馈日历数据
	public List<Map<String,Object>> findCourseSeriesFeedbackByUserId(String userId,String vipId);
	
	//查询当前家长的反馈列表，分页
	public Page<Map<String, Object>> findFeedbackPageByUserId(Map<String, Object> searchParams, Pageable pageable);
	
	
	public List<Map<String,Object>>  getCourseFeedback(String courseSeriesId);
	public List<Map<String,Object>>  getCourseFeedback(String courseSeriesId,String libId);
	//
	public List<Map<String, Object>> getTeacherCourseInfo(String libId, String userId,int type);
	
	//根据查询条件查询课程内容
	public Map<String, Object> getThisCourseInfo(Map<String, Object> search);
	//查询课程下面的学生列表
	public List<Map<String, Object>> getCourseStudentList(Map<String, Object> search);
	//查找学生反馈内容
	public Map<String, Object> getFeedBackInfo(String courseDetailId, String vipId,String libId);
	 //查询已购买有效的课程
	public List<CourseSeries> findByBuy(String libId);
	public List<Map<String, Object>> findVipIsBuy(String userId,String courseDetailsId,String libId);
	
	public Map<String, Object> getFeedBackInfoById(String id);
	
	public List<String> getCourseSeriesByColor();
	
	public List<Map<String, Object>> findSeriesDetailsByUserId(String seriesId,String userId,String vipId,String libId);
	
	public List<Map<String, Object>> findCourseRecordList(String userId,String vipId);
	
	public List<Map<String, Object>> getCourseStudentListV2(Map<String, Object> search);
	
	List<Map<String, Object>> getNextFile(String courseSeriesId,int start,int end,String fileType);
	
	public List<Map<String, Object>> findOrderCourseList(String libId, String userId);
	
	public List<Map<String, Object>> studentManagerList(String libId, String courseSeriesId);
	
	public List<Map<String, Object>> findDetailBySeriesId(String libId, String courseSeriesId, String vipId);
	
	public List<Map<String, Object>> getDateDetailList(String libId, String courseSeriesId, String vipId);
	
}
