package com.xjrsoft.module.room.service; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.github.yulichang.base.MPJBaseService; import com.xjrsoft.module.room.dto.AdjustBedPageDto; import com.xjrsoft.module.room.dto.AdjustClassPageDto; import com.xjrsoft.module.room.dto.AdjustStudentBedDto; import com.xjrsoft.module.room.dto.DistributeClassPageDto; import com.xjrsoft.module.room.dto.DistributeRoomBedDto; import com.xjrsoft.module.room.dto.DistributeRoomBedPageDto; import com.xjrsoft.module.room.dto.RoomBedPageDto; import com.xjrsoft.module.room.entity.RoomBed; import com.xjrsoft.module.room.vo.AdjustBedClassPageVo; import com.xjrsoft.module.room.vo.AdjustBedStudentPageVo; import com.xjrsoft.module.room.vo.DistributeClassPageVo; import com.xjrsoft.module.room.vo.DistributeResultClassVo; import com.xjrsoft.module.room.vo.DistributeRoomBedPageVo; import com.xjrsoft.module.room.vo.NoBedStudentPageVo; import com.xjrsoft.module.room.vo.RoomBedExcelVo; import com.xjrsoft.module.room.vo.RoomBedPageVo; import java.util.List; /** * @title: 寝室床位 * @Author dzx * @Date: 2023-12-27 * @Version 1.0 */ public interface IRoomBedService extends MPJBaseService { /** * 分页查询 * @param page * @param dto * @return */ Page getPage(Page page, RoomBedPageDto dto); List getList(RoomBedPageDto dto); Boolean clearStudentInfo(List ids); Boolean clearStudentInfoByRoomId(Long id); Boolean clearStudentInfoByBedId(Long id); /** * 分配床位,第一步查询班级 * @param page * @param dto * @return */ Page getDistributeClassInfo(Page page, DistributeClassPageDto dto); /** * 分配床位,第二步查询班级 * @param page * @param dto * @return */ Page getDistributeRoomBedInfo(Page page, DistributeRoomBedPageDto dto); Boolean distributeRoomBed(DistributeRoomBedDto dto); /** * 返回分配的结果 * @param dto * @return */ List getDistributeResult(DistributeRoomBedDto dto); /** * 调整床位,左边的班级学生信息 * @param dto * @return */ List getClassStudetBed(AdjustClassPageDto dto); /** * 调整床位,右边的床位学生信息 * @param dto * @return */ List getBedStudetInfo(AdjustBedPageDto dto); /** * 未分配床位的学生信息 * @param page * @param dto * @return */ Page getNoBedStudent(Page page, AdjustBedPageDto dto); /** * 单个学生调整床位 * @param dto */ Boolean adjustBed(AdjustStudentBedDto dto); /** * 批量学生调整床位 * @param dtoList 批量传入学生id和床位id */ Boolean adjustBedBatch(List dtoList); }