package com.ssj.mapper.load.data;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ssj.bean.sys.homework.domain.HomeworkCount;
import com.ssj.bean.sys.homework.domain.StudentWeeklyReport;
import com.ssj.service.conch.parents.v2.dto.MonthlyReportDTO;
import com.ssj.service.conch.parents.v2.dto.StudentWeeklyReportDTO;
import com.ssj.service.conch.parents.v2.dto.SubjectKnowledgeInfoDTO;
import com.ssj.service.conch.teacher.library.dto.FeedbackDTO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

@Mapper
public interface LoadDataMapper {
    /**
     * 由于mycat 默认返回500条，
     * @param beginDate
     * @param endDate
     * @param count
     * @return
     */
    List<FeedbackDTO> findFeedbackHistory( Page<Object> page,@Param("beginDate")String beginDate, @Param("endDate")String endDate );

    List<StudentWeeklyReport> findWeeklyReportBeginDateAndEndDate(Page<Object> page,@Param("beginDate")String beginDate,@Param("endDate")String endDate);


    /**由于mycat 默认返回500条，
     * 查询月作业统计数据
     * @param beginDate  包含开始时间
     * @param endDate   不包含结束时间
     * @return
     */
    List<HomeworkCount> findMonthHomeworkCount(Page<Object> page,@Param("beginDate")String beginDate,@Param("endDate")String endDate);



    /**由于mycat 默认返回500条，
     * 获取学科知识点学习情况
     * @param beginDate  包含开始时间
     * @param endDate   不包含结束时间
     * @return
     */
    List<SubjectKnowledgeInfoDTO> getSubjectKnowledgeInfoDTO(@Param("beginDate")String beginDate,@Param("endDate")String endDate,IPage<Object> page);


    List<StudentWeeklyReportDTO> findWeeklyReportHistory(Page page,@Param("beginDate")String beginDate, @Param("endDate")String endDate);

    List<MonthlyReportDTO> findMonthlyReportHistory(Page page,@Param("beginDate")String beginDate,@Param("endDate")String endDate);
}
