package com.xjrsoft.module.student.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.github.yulichang.base.MPJBaseService;
import com.xjrsoft.module.banding.vo.IdManyCountVo;
import com.xjrsoft.module.outint.vo.IdCountVo;
import com.xjrsoft.module.student.dto.BaseNewStudentPageDto;
import com.xjrsoft.module.student.entity.BaseNewStudent;
import com.xjrsoft.module.student.vo.BaseNewStudentPageVo;
import com.xjrsoft.module.student.vo.BaseNewStudentScoreExcelVo;
import com.xjrsoft.module.student.vo.EnrollmentPlanGradeVo;
import com.xjrsoft.module.student.vo.EnrollmentPlanTreeVo;
import org.springframework.web.multipart.MultipartFile;

import java.io.IOException;
import java.util.List;
import java.util.Map;

/**
* @title: 新生维护信息
* @Author dzx
* @Date: 2024-06-27
* @Version 1.0
*/

public interface IBaseNewStudentService extends MPJBaseService<BaseNewStudent> {

    Page<BaseNewStudentPageVo> getPage(Page<BaseNewStudentPageVo> page, BaseNewStudentPageDto dto);


    List<EnrollmentPlanTreeVo> getEnrollmentPlanList();

    List<EnrollmentPlanGradeVo> getGradeList();

    List<Map<Integer, Object>> importData(Long treeId, MultipartFile file) throws IOException;

    List<BaseNewStudentScoreExcelVo> scoreImport(MultipartFile file) throws IOException;

    List<IdCountVo> getMajorStudent(Long gradeId, String enrollType, Integer index);

    List<IdManyCountVo> getMajorStudentCount(Long bandingTaskId);
}
