Przeglądaj źródła

1、床位学生列表接口增加学生userId
2、增加单个移出学生的接口

dzx 1 rok temu
rodzic
commit
73399e3915

+ 9 - 2
src/main/java/com/xjrsoft/module/room/controller/RoomBedAdjustController.java

@@ -43,7 +43,7 @@ public class RoomBedAdjustController {
     private final IRoomBedService roomBedService;
 
     @GetMapping(value = "/class-student")
-    @ApiOperation(value="需要分配/调整床位的学生(分页)")
+    @ApiOperation(value="需要分配/调整床位的学生")
     @SaCheckPermission("roomBedAdjust:detail")
     public RT<List<AdjustBedClassPageVo>> classStudent(@Valid AdjustClassPageDto dto){
         if(ObjectUtil.isNull(dto.getClassId()) && ObjectUtil.isNull(dto.getGradeId())){
@@ -57,7 +57,7 @@ public class RoomBedAdjustController {
     }
 
     @GetMapping(value = "/bed-student")
-    @ApiOperation(value="床位学生列表(分页)")
+    @ApiOperation(value="床位学生列表")
     @SaCheckPermission("roomBedAdjust:detail")
     public RT<List<AdjustBedStudentPageVo>> distributeClassPage(@Valid AdjustBedPageDto dto){
         List<AdjustBedStudentPageVo> result = roomBedService.getBedStudetInfo(dto);
@@ -84,6 +84,13 @@ public class RoomBedAdjustController {
         return RT.ok(roomBedService.clearStudentInfoByRoomId(id));
     }
 
+    @DeleteMapping(value="/delete-one")
+    @ApiOperation(value = "单个移出学生")
+    @SaCheckPermission("roomBedAdjust:delete")
+    public RT<Boolean> deleteOne(@Valid @RequestBody Long id){
+        return RT.ok(roomBedService.clearStudentInfoByBedId(id));
+    }
+
     @PutMapping
     @ApiOperation(value = "修改学生的寝室床位")
     @SaCheckPermission("roomBedAdjust:edit")

+ 2 - 0
src/main/java/com/xjrsoft/module/room/service/IRoomBedService.java

@@ -42,6 +42,8 @@ public interface IRoomBedService extends MPJBaseService<RoomBed> {
 
     Boolean clearStudentInfoByRoomId(Long id);
 
+    Boolean clearStudentInfoByBedId(Long id);
+
     /**
      * 分配床位,第一步查询班级
      * @param page

+ 17 - 2
src/main/java/com/xjrsoft/module/room/service/impl/RoomBedServiceImpl.java

@@ -96,12 +96,27 @@ public class RoomBedServiceImpl extends MPJBaseServiceImpl<RoomBedMapper, RoomBe
                 MPJWrappers.<RoomBed>lambdaJoin().eq(RoomBed::getRoomId, id)
         );
         for (RoomBed roomBed : bedList) {
-            roomBed.setStudentUserId(null);
-            roomBedMapper.updateById(roomBed);
+            UpdateWrapper<RoomBed> updateWrapper = new UpdateWrapper<>();
+            updateWrapper.eq("id", roomBed.getId());
+            updateWrapper.setSql("student_user_id = null");
+            updateWrapper.setSql("is_check_in = 0");
+            roomBedMapper.update(roomBed, updateWrapper);
         }
         return true;
     }
 
+    @Override
+    public Boolean clearStudentInfoByBedId(Long id) {
+        UpdateWrapper<RoomBed> updateWrapper = new UpdateWrapper<>();
+        updateWrapper.eq("id", id);
+        updateWrapper.setSql("student_user_id = null");
+        updateWrapper.setSql("is_check_in = 0");
+
+        RoomBed roomBed = roomBedMapper.selectById(id);
+        roomBedMapper.update(roomBed, updateWrapper);
+        return true;
+    }
+
     @Override
     public Page<DistributeClassPageVo> getDistributeClassInfo(Page<DistributeClassPageDto> page, DistributeClassPageDto dto) {
         return roomBedMapper.getDistributeClassInfo(page, dto);

+ 5 - 1
src/main/java/com/xjrsoft/module/room/vo/AdjustBedStudentPageVo.java

@@ -39,9 +39,13 @@ public class AdjustBedStudentPageVo {
     private String studentName;
 
     @ContentStyle(dataFormat = 49)
-    @ApiModelProperty("寝室长id(null即为未设置寝室长,非空即为设置了寝室长)")
+    @ApiModelProperty("学生id(null即为未设置寝室长,非空即为设置了寝室长)")
     private String studentUserId;
 
+    @ContentStyle(dataFormat = 49)
+    @ApiModelProperty("寝室长id(null即为未设置寝室长,非空即为设置了寝室长)")
+    private String studentAppointId;
+
     @ContentStyle(dataFormat = 49)
     @ApiModelProperty("是否是混合寝室【一个寝室有多个班级的学生】(1:是 0:否)")
     private Integer isMax;

+ 1 - 1
src/main/resources/mapper/room/RoomBedMapper.xml

@@ -170,7 +170,7 @@
     </select>
 
     <select id="getBedStudentInfo" parameterType="com.xjrsoft.module.room.dto.AdjustBedPageDto" resultType="com.xjrsoft.module.room.vo.AdjustBedStudentPageVo">
-        SELECT t1.id,t3.name AS build_name,t2.room_name,t5.name AS gender_cn,t1.bed_number,t4.name AS student_name,t6.student_user_id,t2.is_max,t2.id as room_id FROM room_bed t1
+        SELECT t1.id,t3.name AS build_name,t2.room_name,t5.name AS gender_cn,t1.bed_number,t4.name AS student_name,t4.id as student_user_id,t6.student_user_id as student_appoint_id,t2.is_max,t2.id as room_id FROM room_bed t1
         LEFT JOIN room t2 ON t1.room_id = t2.id
         LEFT JOIN base_office_build t3 ON t2.office_build_id = t3.id
         LEFT JOIN xjr_user t4 ON t1.student_user_id = t4.id