IRoomBedService.java 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116
  1. package com.xjrsoft.module.room.service;
  2. import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
  3. import com.github.yulichang.base.MPJBaseService;
  4. import com.xjrsoft.module.room.dto.AdjustBedPageDto;
  5. import com.xjrsoft.module.room.dto.AdjustClassPageDto;
  6. import com.xjrsoft.module.room.dto.AdjustStudentBedDto;
  7. import com.xjrsoft.module.room.dto.DistributeClassPageDto;
  8. import com.xjrsoft.module.room.dto.DistributeRoomBedDto;
  9. import com.xjrsoft.module.room.dto.DistributeRoomBedPageDto;
  10. import com.xjrsoft.module.room.dto.RoomBedPageDto;
  11. import com.xjrsoft.module.room.entity.RoomBed;
  12. import com.xjrsoft.module.room.vo.AdjustBedClassPageVo;
  13. import com.xjrsoft.module.room.vo.AdjustBedStudentPageVo;
  14. import com.xjrsoft.module.room.vo.DistributeClassPageVo;
  15. import com.xjrsoft.module.room.vo.DistributeResultClassVo;
  16. import com.xjrsoft.module.room.vo.DistributeRoomBedPageVo;
  17. import com.xjrsoft.module.room.vo.NoBedStudentPageVo;
  18. import com.xjrsoft.module.room.vo.RoomBedExcelVo;
  19. import com.xjrsoft.module.room.vo.RoomBedPageVo;
  20. import com.xjrsoft.module.room.vo.TeacherRoomListVo;
  21. import org.apache.ibatis.annotations.Param;
  22. import java.util.List;
  23. /**
  24. * @title: 寝室床位
  25. * @Author dzx
  26. * @Date: 2023-12-27
  27. * @Version 1.0
  28. */
  29. public interface IRoomBedService extends MPJBaseService<RoomBed> {
  30. /**
  31. * 分页查询
  32. * @param page
  33. * @param dto
  34. * @return
  35. */
  36. Page<RoomBedPageVo> getPage(Page<RoomBedPageVo> page, RoomBedPageDto dto);
  37. List<RoomBedExcelVo> getList(RoomBedPageDto dto);
  38. Boolean clearStudentInfo(List<Long> ids);
  39. Boolean clearStudentInfoByRoomId(Long id);
  40. Boolean clearStudentInfoByBedId(Long id);
  41. /**
  42. * 分配床位,第一步查询班级
  43. * @param page
  44. * @param dto
  45. * @return
  46. */
  47. Page<DistributeClassPageVo> getDistributeClassInfo(Page<DistributeClassPageDto> page, DistributeClassPageDto dto);
  48. /**
  49. * 分配床位,第二步查询班级
  50. * @param page
  51. * @param dto
  52. * @return
  53. */
  54. Page<DistributeRoomBedPageVo> getDistributeRoomBedInfo(Page<DistributeRoomBedPageDto> page, DistributeRoomBedPageDto dto);
  55. Boolean distributeRoomBed(DistributeRoomBedDto dto);
  56. /**
  57. * 返回分配的结果
  58. * @param dto
  59. * @return
  60. */
  61. List<DistributeResultClassVo> getDistributeResult(DistributeRoomBedDto dto);
  62. /**
  63. * 调整床位,左边的班级学生信息
  64. * @param dto
  65. * @return
  66. */
  67. List<AdjustBedClassPageVo> getClassStudetBed(AdjustClassPageDto dto);
  68. /**
  69. * 调整床位,右边的床位学生信息
  70. * @param dto
  71. * @return
  72. */
  73. List<AdjustBedStudentPageVo> getBedStudetInfo(AdjustBedPageDto dto);
  74. /**
  75. * 未分配床位的学生信息
  76. * @param page
  77. * @param dto
  78. * @return
  79. */
  80. Page<NoBedStudentPageVo> getNoBedStudent(Page<AdjustBedPageDto> page, AdjustBedPageDto dto);
  81. /**
  82. * 单个学生调整床位
  83. * @param dto
  84. */
  85. Boolean adjustBed(AdjustStudentBedDto dto);
  86. /**
  87. * 批量学生调整床位
  88. * @param dtoList 批量传入学生id和床位id
  89. */
  90. Boolean adjustBedBatch(List<AdjustStudentBedDto> dtoList);
  91. String getRoomNameByStudentUserId(Long id);
  92. List<TeacherRoomListVo> getTeacherRoomList(AdjustBedPageDto dto);
  93. }