package com.xjrsoft.module.outint.service;

import com.github.yulichang.base.MPJBaseService;
import com.xjrsoft.module.outint.entity.StudentOutInRecord;
import com.xjrsoft.module.outint.vo.StudentOutInRecordVo;
import org.apache.ibatis.annotations.Param;

import java.time.LocalDateTime;
import java.util.List;
import java.util.Map;

/**
* @title: 学生出入记录
* @Author dzx
* @Date: 2024-05-14
* @Version 1.0
*/

public interface IStudentOutInRecordService extends MPJBaseService<StudentOutInRecord> {

    Map<Long, Integer> getNotStayClassCount(LocalDateTime startTime, LocalDateTime endTime);

    Map<Long, Integer> getStayClassCount(LocalDateTime startTime, LocalDateTime endTime);

    /**
     * 查询每个班级指定时间段内走读生到校人数
     * @param startTime
     * @param endTime
     * @param classIds
     * @return
     */
    Map<Long, List<StudentOutInRecordVo>> getNotStayList(LocalDateTime startTime, LocalDateTime endTime, List<Long> classIds);

    /**
     * 查询每个班级指定时间段内住校生到校人数
     * @param startTime
     * @param endTime
     * @param classIds
     * @return
     */
    Map<Long, List<StudentOutInRecordVo>> getStayList(LocalDateTime startTime, LocalDateTime endTime, List<Long> classIds);


    Map<Long, List<StudentOutInRecordVo>> getList(LocalDateTime startTime, LocalDateTime endTime, List<Long> classIds);
}
