Переглянути джерело

Merge remote-tracking branch 'origin/dev' into dev

大数据与最优化研究所 1 рік тому
батько
коміт
afceda1c93

+ 1 - 7
src/main/java/com/xjrsoft/module/room/controller/RoomBedAdjustController.java

@@ -104,14 +104,8 @@ public class RoomBedAdjustController {
     public RT<Integer> getLoginRole(@Valid AdjustBedPageDto dto){
         List<String> roleList = StpUtil.getRoleList();
 
-        long teacherId = StpUtil.getLoginIdAsLong();
-        List<BaseClass> classList = baseClassService.list(
-                new QueryWrapper<BaseClass>().lambda().eq(BaseClass::getTeacherId, teacherId)
-        );
         if(roleList.size() == 2 && roleList.contains("CLASSTE") && roleList.contains("TEACHER")){
-            if(classList != null && !classList.isEmpty()){
-                RT.ok(1);
-            }
+            return RT.ok(1);
         }
         return RT.ok(0);
     }

+ 32 - 12
src/main/java/com/xjrsoft/module/room/service/impl/RoomBedServiceImpl.java

@@ -549,9 +549,9 @@ public class RoomBedServiceImpl extends MPJBaseServiceImpl<RoomBedMapper, RoomBe
     @Override
     public Boolean adjustBedBatch(List<AdjustStudentBedDto> dtoList) {
         //存分配到女生寝室的男生名字
-        List<String> boyStudents = new ArrayList<>();
+        Set<String> boyStudents = new HashSet<>();
         //存分配到男生寝室的女生名字
-        List<String> girlStudents = new ArrayList<>();
+        Set<String> girlStudents = new HashSet<>();
         //需要清空床位的学生
         List<AdjustStudentBedDto> todoStudents = new ArrayList<>();
 
@@ -602,7 +602,6 @@ public class RoomBedServiceImpl extends MPJBaseServiceImpl<RoomBedMapper, RoomBe
                 List<RoomBed> roomBedList = roomBedMapper.selectList(new QueryWrapper<RoomBed>().lambda().eq(RoomBed::getStudentUserId, todoStudent.getStudentUserId()));
                 for (RoomBed roomBed : roomBedList) {
                     roomBedMapper.update(roomBed, updateWrapper);
-                    roomIds.add(roomBed.getRoomId());
                 }
                 //再把学生保存到新的床位
                 roomBedMapper.updateById(new RoomBed(){{
@@ -617,36 +616,57 @@ public class RoomBedServiceImpl extends MPJBaseServiceImpl<RoomBedMapper, RoomBe
                     Room updRoom = roomMapper.selectById(roomClassCountVo.getId());
                     updRoom.setIsMax(1);
                     roomMapper.updateById(updRoom);
+                }else{
+                    Room updRoom = roomMapper.selectById(roomClassCountVo.getId());
+                    if(updRoom != null){
+                        updRoom.setIsMax(0);
+                        roomMapper.updateById(updRoom);
+                    }
+
                 }
             }
         }else{
             String boyMsg = "学生";
-            for (int i = 0; i < boyStudents.size(); i ++){
+            int i = 0;
+            for (String boyStudent : boyStudents) {
                 if(i > 0){
                     boyMsg += "、";
                 }
-                boyMsg += boyStudents.get(i);
+                boyMsg += boyStudent;
+                i ++;
             }
             boyMsg += "被分配到女生寝室";
 
             String girlMsg = "学生";
-            for (int i = 0; i < girlStudents.size(); i ++){
+            i = 0;
+            for (String girlStudent : girlStudents) {
                 if(i > 0){
                     girlMsg += "、";
                 }
-                girlMsg += girlStudents.get(i);
+                girlMsg += girlStudent;
+                i ++;
             }
-            girlMsg += "被分配到生寝室";
+            girlMsg += "被分配到生寝室";
 
             String moreBedMsg = "学生";
-            for (int i = 0; i < moreBedStudents.size(); i ++){
-                if(i > 0){
+            for (int j = 0; j < moreBedStudents.size(); j ++){
+                if(j > 0){
                     moreBedMsg += "、";
                 }
-                moreBedMsg += moreBedStudents.get(i);
+                moreBedMsg += moreBedStudents.get(j);
             }
             moreBedMsg += "被分配多个床位";
-            throw new MyException(boyMsg + ";" + girlMsg + ";" + moreBedMsg);
+            String msg = "";
+            if(!boyStudents.isEmpty()){
+                msg += boyMsg + ";";
+            }
+            if(!girlStudents.isEmpty()){
+                msg += girlMsg + ";";
+            }
+            if(!moreBedStudents.isEmpty()){
+                msg += moreBedMsg + ";";
+            }
+            throw new MyException(msg);
         }
         return true;
     }

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

@@ -68,7 +68,7 @@
         WHERE t3.room_id = room.id GROUP BY t1.id
         ) class_data
         ) AS class_count FROM room
-        where 1 = 1
+        where delete_mark = 0
         <if test="ids != null and ids.size() > 0">
             and id in
             <foreach item="roomId" index="index" collection="ids" open="(" close=")" separator=",">