Ver código fonte

寝室生成规则模块,列表增加绑定楼栋ids,解决修改报错的问题

dzx 1 ano atrás
pai
commit
4c106d8da8

+ 0 - 1
src/main/java/com/xjrsoft/module/room/controller/RoomRuleController.java

@@ -81,7 +81,6 @@ public class RoomRuleController {
 
         RoomRule roomRule = BeanUtil.toBean(dto, RoomRule.class);
         return RT.ok(roomRuleService.update(roomRule));
-
     }
 
     @DeleteMapping

+ 12 - 31
src/main/java/com/xjrsoft/module/room/service/impl/RoomRuleServiceImpl.java

@@ -18,8 +18,6 @@ import org.springframework.transaction.annotation.Transactional;
 
 import java.util.Arrays;
 import java.util.List;
-import java.util.Objects;
-import java.util.stream.Collectors;
 
 /**
 * @title: 寝室生成规则
@@ -52,35 +50,6 @@ public class RoomRuleServiceImpl extends MPJBaseServiceImpl<RoomRuleMapper, Room
     @Transactional(rollbackFor = Exception.class)
     public Boolean update(RoomRule roomRule) {
         roomRuleRoomRuleMapper.updateById(roomRule);
-        //********************************* RoomRuleItem  增删改  开始 *******************************************/
-        {
-            // 查出所有子级的id
-            List<RoomRuleItem> roomRuleItemList = roomRuleRoomRuleItemMapper.selectList(Wrappers.lambdaQuery(RoomRuleItem.class).eq(RoomRuleItem::getRoomRuleId, roomRule.getId()).select(RoomRuleItem::getId));
-            List<Long> roomRuleItemIds = roomRuleItemList.stream().map(RoomRuleItem::getId).collect(Collectors.toList());
-            //原有子表单 没有被删除的主键
-            List<Long> roomRuleItemOldIds = roomRule.getRoomRuleItemList().stream().map(RoomRuleItem::getId).filter(Objects::nonNull).collect(Collectors.toList());
-            //找到需要删除的id
-            List<Long> roomRuleItemRemoveIds = roomRuleItemIds.stream().filter(item -> !roomRuleItemOldIds.contains(item)).collect(Collectors.toList());
-
-            for (RoomRuleItem roomRuleItem : roomRule.getRoomRuleItemList()) {
-                //如果不等于空则修改
-                if (roomRuleItem.getId() != null) {
-                    roomRuleRoomRuleItemMapper.updateById(roomRuleItem);
-                }
-                //如果等于空 则新增
-                else {
-                    //已经不存在的id 删除
-                    roomRuleItem.setRoomRuleId(roomRule.getId());
-                    roomRuleRoomRuleItemMapper.insert(roomRuleItem);
-                }
-            }
-            //已经不存在的id 删除
-            if(roomRuleItemRemoveIds.size() > 0){
-                roomRuleRoomRuleItemMapper.deleteBatchIds(roomRuleItemRemoveIds);
-            }
-        }
-        //********************************* RoomRuleItem  增删改  结束 *******************************************/
-
         return true;
     }
 
@@ -112,6 +81,18 @@ public class RoomRuleServiceImpl extends MPJBaseServiceImpl<RoomRuleMapper, Room
                 houseNumber  = houseNumber + 2;
             }
             record.setHouseNumber(houseNumber + "位");
+
+            List<RoomRuleItem> roomRuleItems = roomRuleRoomRuleItemMapper.selectList(
+                    new QueryWrapper<RoomRuleItem>().lambda().eq(RoomRuleItem::getRoomRuleId, record.getId())
+            );
+            String buildIds = "";
+            for (int i = 0; i < roomRuleItems.size(); i ++){
+                if(i > 0){
+                    buildIds += ",";
+                }
+                buildIds = buildIds + roomRuleItems.get(i).getOfficeBuildId();
+            }
+            record.setBuildIds(buildIds);
         }
         return result;
     }

+ 6 - 0
src/main/java/com/xjrsoft/module/room/vo/RoomRulePageVo.java

@@ -43,4 +43,10 @@ public class RoomRulePageVo {
      */
     @ApiModelProperty("门牌号")
     private String houseNumber;
+
+    /**
+     * 绑定楼栋
+     */
+    @ApiModelProperty("绑定楼栋id")
+    private String buildIds;
 }