package com.srs.dormitory.mapper;

import com.github.yulichang.base.MPJBaseMapper;
import com.srs.comprehensive.domain.Vo.CphSearch;
import com.srs.dormitory.domain.DmsDormitory;
import com.srs.dormitory.domain.DmsDormitoryClass;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.srs.dormitory.domain.Dto.DmsSearch;
import com.srs.dormitory.domain.Dto.DormitoryModelDto;
import com.srs.dormitory.domain.Dto.SelectBuildingDto;
import com.srs.dormitory.domain.Dto.SelectDormDto;
import com.srs.dormitory.domain.Vo.ClassInfo;
import com.srs.dormitory.domain.Vo.DomInfo;
import com.srs.dormitory.domain.Vo.SelectDormByStuVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

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

/**
 * <p>
 * Mapper 接口
 * </p>
 *
 * @author 猪油骨
 * @since 2023-07-25
 */
@Mapper
public interface DmsDormitoryClassMapper extends MPJBaseMapper<DmsDormitoryClass> {

    public List<DomInfo> listFdyRoom(DmsSearch param);

    public List<DormitoryModelDto> selectFdyModel(DormitoryModelDto param);
    List<ClassInfo> selectXwClass(CphSearch param);
    public List<DomInfo> selectXwDom(SelectDormDto param);
    List<Map<String, Object>> selectClass();

    List<Map<String, Object>> selectMajor(@Param("username") String username);

    List<Map<String, Object>> selectGender();

    List<Map<String, Object>> selectBuilding(SelectBuildingDto dto);

    List<Map<String, Object>> selectDorm(SelectDormDto dto);

    Map<String, Object> selectBJDM(@Param("ksh") String ksh);

    List<Map<String, Object>> selectBeds(@Param("id") Long id);

    List<SelectDormByStuVo> selectDormByIds(@Param("dorms") List<Long> dorms, @Param("xb") Object xb);


    List<Map<String, Object>> selectBJ(@Param("dormId") Object dormId);

    DmsDormitory getcount(@Param("id") Long id);
}
