package com.ruoyi.syzy.mapper;

import com.ruoyi.syzy.domain.BBusiWishUniversitySubmitRecruitPlan;
import org.apache.ibatis.annotations.Param;

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

/**
 * 院校招生计划Mapper接口
 *
 * @author mingxue
 * @date 2022-06-29
 */
public interface BBusiWishUniversitySubmitRecruitPlanMapper
{
    public List<BBusiWishUniversitySubmitRecruitPlan> selectWishUniversitySubmitPlanForMatch(Map cond);

    public List<BBusiWishUniversitySubmitRecruitPlan> selectWishUniversitySubmitRecruitGroups(Map cond);
    public List<BBusiWishUniversitySubmitRecruitPlan> selectWishUniversitySubmitPlanGroups(Map cond);
    // public List<BBusiWishUniversitySubmitRecruitPlan> selectWishUniversityPlanSubmitPlanGroups(Map cond);
    public List<BBusiWishUniversitySubmitRecruitPlan> selectWishUniversitySubmitPlanGroupDetails(Map cond);
    /**
     * 查询院校招生计划
     *
     * @param id 院校招生计划ID
     * @return 院校招生计划
     */
    public BBusiWishUniversitySubmitRecruitPlan selectBBusiWishUniversitySubmitRecruitPlanById(Long id);

    /**
     * 查询院校招生计划列表
     *
     * @param bBusiWishUniversitySubmitRecruitPlan 院校招生计划
     * @return 院校招生计划集合
     */
    public List<BBusiWishUniversitySubmitRecruitPlan> selectBBusiWishUniversitySubmitRecruitPlanList(BBusiWishUniversitySubmitRecruitPlan bBusiWishUniversitySubmitRecruitPlan);

    /**
     * 层次
     *
     * @param location
     * @return
     */
    public List<String> levels(@Param("location") String location, @Param("year") Integer year);
    public List<String> selectSubmitRecruitsData(@Param("location") String location, @Param("year") Integer year);
    public Integer selectSubmitRecruitsMaxYearByLocation(@Param("location") String location);
    public List<BBusiWishUniversitySubmitRecruitPlan> specialProjects(@Param("location") String location, @Param("year") Integer year);
    /**
     * 科类
     *
     * @param location
     * @return
     */
    public List<String> types(@Param("location") String location,@Param("year") Integer year);

    /**
     * 录取年份
     *
     * @param location
     * @param type
     * @param level
     * @return
     */
    public List<String> years(@Param("location") String location, @Param("type") String type, @Param("level") String level);
    public List<String> getUniversityNameText(@Param("universityCode") String universityCode,@Param("location") String location,@Param("year") Integer year, @Param("type") String type, @Param("level") String level);


    /**
     * 新增院校招生计划
     *
     * @param bBusiWishUniversitySubmitRecruitPlan 院校招生计划
     * @return 结果
     */
    public int insertBBusiWishUniversitySubmitRecruitPlan(BBusiWishUniversitySubmitRecruitPlan bBusiWishUniversitySubmitRecruitPlan);

    /**
     * 修改院校招生计划
     *
     * @param bBusiWishUniversitySubmitRecruitPlan 院校招生计划
     * @return 结果
     */
    public int updateBBusiWishUniversitySubmitRecruitPlan(BBusiWishUniversitySubmitRecruitPlan bBusiWishUniversitySubmitRecruitPlan);

    /**
     * 删除院校招生计划
     *
     * @param id 院校招生计划ID
     * @return 结果
     */
    public int deleteBBusiWishUniversitySubmitRecruitPlanById(Long id);

    /**
     * 批量删除院校招生计划
     *
     * @param ids 需要删除的数据ID
     * @return 结果
     */
    public int deleteBBusiWishUniversitySubmitRecruitPlanByIds(Long[] ids);
}
