Selaa lähdekoodia

解决寝室排序错乱的问题

dzx 1 vuosi sitten
vanhempi
commit
83a173db3d

+ 12 - 4
src/main/java/com/xjrsoft/module/room/service/impl/RoomServiceImpl.java

@@ -23,6 +23,8 @@ import com.xjrsoft.module.room.vo.RoomPageVo;
 import lombok.AllArgsConstructor;
 import org.springframework.stereotype.Service;
 
+import java.util.ArrayList;
+import java.util.Collections;
 import java.util.Date;
 import java.util.HashMap;
 import java.util.List;
@@ -74,8 +76,14 @@ public class RoomServiceImpl extends MPJBaseServiceImpl<RoomMapper, Room> implem
         Integer maxSortCode = roomMapper.getMaxSortCode();
         Date createDate = new Date();
         long createUserId = StpUtil.getLoginIdAsLong();
-        for (int i = 0; i < dto.getFloorRoomsCount(); i ++){
-            for (String floorNumber : dto.getFloorNumber().split(",")) {
+        String[] split = dto.getFloorNumber().split(",");
+        List<Integer> floorList = new ArrayList<>();
+        for (String floorStr : split) {
+            floorList.add(Integer.parseInt(floorStr));
+        }
+        Collections.sort(floorList);
+        for (Integer floorNumber : floorList) {
+            for (int i = 0; i < dto.getFloorRoomsCount(); i ++){
                 String roomName = "";
                 if(roomRule.getRule().contains("1") && build.getBuildNumber() != null){
                     roomName += build.getBuildNumber();
@@ -89,7 +97,7 @@ public class RoomServiceImpl extends MPJBaseServiceImpl<RoomMapper, Room> implem
 
                 Map<String, Object> param = new HashMap<>();
                 param.put("room_name", roomName);
-                param.put("floor_number", Integer.parseInt(floorNumber));
+                param.put("floor_number", floorNumber);
                 param.put("office_build_id", dto.getOfficeBuildId());
                 List<Room> rooms = roomMapper.selectByMap(param);
                 if(rooms != null && !rooms.isEmpty()){
@@ -99,7 +107,7 @@ public class RoomServiceImpl extends MPJBaseServiceImpl<RoomMapper, Room> implem
                 //先添加寝室
                 Room room = BeanUtil.toBean(dto, Room.class);
                 room.setSortCode(maxSortCode);
-                room.setFloorNumber(Integer.parseInt(floorNumber));
+                room.setFloorNumber(floorNumber);
                 room.setCreateDate(createDate);
                 room.setCreateUserId(createUserId);
                 room.setDeleteMark(0);