package com.ym.mec.education.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.ym.mec.education.base.BaseResponse;
import com.ym.mec.education.base.PageResponse;
import com.ym.mec.education.entity.CourseSchedule;
import com.ym.mec.education.req.ClassGroupReq;
import com.ym.mec.education.req.CourseScheduleReq;
import com.ym.mec.education.req.StudentReq;

/**
 * <p>
 * 课程计划表 服务类
 * </p>
 *
 * @author lemeng
 * @since 2019-09-25
 */
public interface ICourseScheduleService extends IService<CourseSchedule> {

    /**
     * 根据参数分页查询课程计划列表
     *
     * @param classGroupReq
     * @return
     */
    PageResponse getPage(ClassGroupReq classGroupReq);

    /**
     * 根据课程计划id获取课程计划详情
     *
     * @param courseScheduleReq
     * @return
     */
    BaseResponse getInfo(CourseScheduleReq courseScheduleReq);

    /**
     * 历史考勤统计-头信息
     *
     * @param classGroupReq
     * @return
     */
    BaseResponse getStatisticsInfo(ClassGroupReq classGroupReq);

    /**
     * 根据学生id查询进行中和已完成的课程计划
     *
     * @param studentReq
     * @return
     */
    BaseResponse getCourseScheduleByStudent(StudentReq studentReq);


    /**
     * 根据课程计划id获取课程计划详情
     * @param courseScheduleReq
     * @return
     */
    BaseResponse courseInfo(CourseScheduleReq courseScheduleReq);


}
