Browse Source

床位调整,增加验证,并调整逻辑

dzx 1 year ago
parent
commit
c9ad98d710

+ 9 - 4
src/main/java/com/xjrsoft/module/room/service/impl/RoomBedServiceImpl.java

@@ -450,8 +450,14 @@ public class RoomBedServiceImpl extends MPJBaseServiceImpl<RoomBedMapper, RoomBe
         updateWrapper.setSql("student_user_id = null");
         updateWrapper.setSql("is_check_in = 0");
 
-        RoomBed roomBed = roomBedMapper.selectOne(new QueryWrapper<RoomBed>().lambda().eq(RoomBed::getStudentUserId, dto.getStudentUserId()));
-        roomBedMapper.update(roomBed, updateWrapper);
+        List<Long> roomIds = new ArrayList<>();
+
+        List<RoomBed> roomBedList = roomBedMapper.selectList(new QueryWrapper<RoomBed>().lambda().eq(RoomBed::getStudentUserId, dto.getStudentUserId()));
+        for (RoomBed roomBed : roomBedList) {
+            roomBedMapper.update(roomBed, updateWrapper);
+            roomIds.add(roomBed.getRoomId());
+        }
+
         //再把学生保存到新的床位
         roomBedMapper.updateById(new RoomBed(){{
             setId(dto.getBedId());
@@ -459,8 +465,7 @@ public class RoomBedServiceImpl extends MPJBaseServiceImpl<RoomBedMapper, RoomBe
         }});
 
         //如果寝室的人是多个班级,将混合寝室改为是
-        List<Long> roomIds = new ArrayList<>();
-        roomIds.add(roomBed.getRoomId());
+
         List<RoomClassCountVo> classCountVoList = roomMapper.getRoomClassCount(roomIds);
         for (RoomClassCountVo roomClassCountVo : classCountVoList) {
             if(roomClassCountVo.getClassCount() > 1){

+ 3 - 1
src/main/java/com/xjrsoft/module/workflow/service/impl/WorkflowSchemaServiceImpl.java

@@ -126,10 +126,12 @@ public class WorkflowSchemaServiceImpl extends MPJBaseServiceImpl<WorkflowSchema
 
 
         //因为多表关联 会有多个表都使用了id字段,  所以必须专门指定主表的Id
+        List<String> orderList = new ArrayList<>();
+        orderList.add("category");orderList.add("id");
         IPage<WorkflowSchemaPageVo> page = selectJoinListPage(ConventPage.getPage(dto), WorkflowSchemaPageVo.class,
                 MPJWrappers.<WorkflowSchema>lambdaJoin()
                         .disableSubLogicDel()
-                        .orderByDesc(WorkflowSchema::getCategory)
+                        .orderByDescStr(orderList)
                         .eq(ObjectUtil.isNotNull(dto.getEnabledMark()), WorkflowSchema::getEnabledMark, dto.getEnabledMark())
                         .like(StrUtil.isNotBlank(dto.getKeyword()), WorkflowSchema::getName, dto.getKeyword())
                         .like(StrUtil.isNotBlank(dto.getName()), WorkflowSchema::getName, dto.getName())