|
|
@@ -266,7 +266,7 @@ public class CesRoomsServiceImpl extends ServiceImpl<CesRoomsMapper, CesRooms> i
|
|
|
// 获取房型
|
|
|
QueryWrapper<CesRoomLayout> wrappers = Wrappers.<CesRoomLayout>query().eq("hotel_id",param.getHotelId())
|
|
|
.eq("invalid",false);
|
|
|
- if(param.getLayoutId() != null && !param.getLayoutId().isEmpty()) {
|
|
|
+ if((param.getCancelLayout() == null || !param.getCancelLayout()) && param.getLayoutId() != null && !param.getLayoutId().isEmpty()) {
|
|
|
wrappers.eq("id",param.getLayoutId());
|
|
|
}
|
|
|
List<CesRoomLayout> layouts = layoutService.list(wrappers);
|
|
|
@@ -297,6 +297,33 @@ public class CesRoomsServiceImpl extends ServiceImpl<CesRoomsMapper, CesRooms> i
|
|
|
choiceRooms = list(Wrappers.<CesRooms>query().in("id",choiceRoomIds));
|
|
|
}
|
|
|
List<CesRooms> finalChoiceRooms = choiceRooms;
|
|
|
+ if(param.getCancelLayout() != null && param.getCancelLayout()) {
|
|
|
+ CanUseResultVo item = new CanUseResultVo();
|
|
|
+ final Integer[] canUseRoomCount = {0};
|
|
|
+ List<CanUseBuildingRoomsVo> floorVos = new ArrayList<>();
|
|
|
+ floors.forEach(c->{
|
|
|
+ CanUseBuildingRoomsVo floorRoomsVo = new CanUseBuildingRoomsVo();
|
|
|
+ List<CesRooms> floorRooms = allRooms.stream().filter(e->e.getFloorId().equals(c.getId())).collect(Collectors.toList());
|
|
|
+ Optional<CesRoomBuildingFloor> opBuilding = allBuildingFloors.stream().filter(q->q.getId().equals(c.getParentId())).findFirst();
|
|
|
+ if(!opBuilding.isPresent()) return;
|
|
|
+
|
|
|
+ floorRoomsVo.setFloorName(c.getName());
|
|
|
+ floorRoomsVo.setFloorId(c.getId());
|
|
|
+ floorRoomsVo.setBuildingName(opBuilding.get().getName());
|
|
|
+ floorRoomsVo.setBuildingId(opBuilding.get().getId());
|
|
|
+ canUseRoomCount[0] += floorRooms.size();
|
|
|
+ // 设置完size之后添加已用房间 不影响数量
|
|
|
+ List<String> currentFloorRoomIds = floorRooms.stream().map(r->r.getId()).collect(Collectors.toList());
|
|
|
+ List<CesRooms> orderRooms = finalChoiceRooms.stream().filter(y->y.getFloorId().equals(c.getId()) && !currentFloorRoomIds.contains(y.getId())).collect(Collectors.toList());
|
|
|
+ floorRooms.addAll(orderRooms);
|
|
|
+ floorRoomsVo.setFloorRooms(floorRooms);
|
|
|
+ floorVos.add(floorRoomsVo);
|
|
|
+ });
|
|
|
+ item.setLayout(null);
|
|
|
+ item.setBuildingRooms(floorVos);
|
|
|
+ results.add(item);
|
|
|
+ return results;
|
|
|
+ }
|
|
|
layouts.forEach(s-> {
|
|
|
CanUseResultVo item = new CanUseResultVo();
|
|
|
List<CanUseBuildingRoomsVo> floorVos = new ArrayList<>();
|