package com.ssj.dao.sys.homework.dao;

import com.ssj.bean.sys.homework.domain.HomeworkPicture;
import com.ssj.service.ai.model.AiVipIdsModel;
import com.ssj.service.kmt.correctsys.dto.HomeworkPictureDto;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;

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

public interface HomeworkPictureQueryDao {
	
	/**
	 * @param derver
	 * @param today 当天 格式yyyy-mm-dd
	 * @param tomorrow 明天 格式yyyy-mm-dd
	 * @return
	
	 * 方法说明: 查询当天的作业记录，以下午3点为时间维度
	
	 * 创立日期:2018年5月16日 下午3:31:39
	 * 创建人:yangcan
	
	 */
	public  List<Map<String, Object>> queryTodayhomeworkRecord(String  derver,String today,String tomorrow);

	/**
	 * 分页查询作业表，查询有作业的日期
	 * @param vipId 学生id
	 * @param dateTime 最大时间
	 * @param pageable 分页实体
	 * @return
	 */
	Page<Map<String, Object>> findDateByVipId(String vipId, String dateTime, Pageable pageable);
	
	
	/**
	 * 得到vipIds下的所有的作业图片
	 * @return
	 */
	public  List<AiVipIdsModel> findHomeworkPictureByVipIds(String[] vipIds,String date);

	/**
	 * 查询老师某一天的批改学生科目列表
	 * @param teacherId 老师id
	 * @param date 日期 2019-03-02
	 * @return
	 */
	List<Map<String, Object>> findTeacherCorrectList (String teacherId, String date);

	/**
	 * 查询老师未完成的作业
	 * @param teacherId
	 * @param date 日期 2019-03-14
	 * @return
	 */
	List<HomeworkPicture> findTeacherNotFeedbackHomework (String teacherId, String date);

	Page<Map<String, Object>> findHomeworkByPage(Map<String, Object> searchParam, Pageable pageable);
	
	public List<Map<String, Object>> findByTeacherIdGroupBySubjectAndVipId(String teacherId);
	
	public List<Map<String, Object>> findByKnowTeacherIdGroupBySubjectAndVipId(String teacherId);

	/**
	 * @param
	 * @return
	 * 方法说明:学校作业图片数据汇总
	 * 创建时间:2019/7/1 17:25
	 * @author yangcan
	 */
	public List<Map<String, Object>> schoolHomeworkPictureTotal(String schoolName,String startTime,String endTime);
	
	public List<Map<String, Object>> findSubjectCharts(String startTime, String endTime);


	/**
	 * 查询批改老师质检作业图片列表
	 * @param type
	 * @param homeworkId
	 * @return
	 */
	List<HomeworkPictureDto> findCheckPictureByHomeworkId (int type, String homeworkId);

	/**
	 * 查询匹配老师质检作业图片列表
	 * @param homeworkId
	 * @return
	 */
	List<HomeworkPictureDto> findKnowCheckPictureByHomeworkId(String homeworkId);
}
