|
@@ -19,10 +19,7 @@ import org.apache.commons.lang3.StringUtils;
|
|
|
import org.jeecg.common.api.vo.Result;
|
|
import org.jeecg.common.api.vo.Result;
|
|
|
import org.jeecg.modules.business.entity.BusHotel;
|
|
import org.jeecg.modules.business.entity.BusHotel;
|
|
|
import org.jeecg.modules.business.service.impl.BusHotelServiceImpl;
|
|
import org.jeecg.modules.business.service.impl.BusHotelServiceImpl;
|
|
|
-import org.jeecg.modules.rooms.DTO.BatchBuildFloorRoomDto;
|
|
|
|
|
-import org.jeecg.modules.rooms.DTO.BatchRoomsDto;
|
|
|
|
|
-import org.jeecg.modules.rooms.DTO.CesRoomSearchDto;
|
|
|
|
|
-import org.jeecg.modules.rooms.DTO.CesRoomsDto;
|
|
|
|
|
|
|
+import org.jeecg.modules.rooms.DTO.*;
|
|
|
import org.jeecg.modules.rooms.Enum.CouponEnums;
|
|
import org.jeecg.modules.rooms.Enum.CouponEnums;
|
|
|
import org.jeecg.modules.rooms.Enum.RoomStatusEnum;
|
|
import org.jeecg.modules.rooms.Enum.RoomStatusEnum;
|
|
|
import org.jeecg.modules.rooms.Vo.CanUseBuildingRoomsVo;
|
|
import org.jeecg.modules.rooms.Vo.CanUseBuildingRoomsVo;
|
|
@@ -248,25 +245,23 @@ public class CesRoomsServiceImpl extends ServiceImpl<CesRoomsMapper, CesRooms> i
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
|
* 获取能使用的房间
|
|
* 获取能使用的房间
|
|
|
- * @param hotelId
|
|
|
|
|
|
|
+ * @param param
|
|
|
* @return
|
|
* @return
|
|
|
*/
|
|
*/
|
|
|
- public List<CanUseResultVo> getCanUseRooms(String hotelId) {
|
|
|
|
|
|
|
+ public List<CanUseResultVo> getCanUseRooms(CanUseRequestParamDto param) {
|
|
|
// 获取房型
|
|
// 获取房型
|
|
|
- List<CesRoomLayout> layouts = layoutService.list(Wrappers.<CesRoomLayout>query().eq("hotel_id",hotelId)
|
|
|
|
|
|
|
+ List<CesRoomLayout> layouts = layoutService.list(Wrappers.<CesRoomLayout>query().eq("hotel_id",param.getHotelId())
|
|
|
.eq("invalid",false)
|
|
.eq("invalid",false)
|
|
|
- .eq("status", RoomStatusEnum.EMPTY_CLEAR)
|
|
|
|
|
);
|
|
);
|
|
|
- List<String> layoutIds = layouts.stream().map(s->s.getId()).collect(Collectors.toList());
|
|
|
|
|
- List<CesRooms> allRooms = list(Wrappers.<CesRooms>query().in("layout_id",layoutIds).eq("invalid",false));
|
|
|
|
|
- List<CesRoomBuildingFloor> allBuildingFloors = buildingFloorService.list(Wrappers.<CesRoomBuildingFloor>query().eq("hotel_id",hotelId).eq("invalid",false));
|
|
|
|
|
|
|
+ List<CesRooms> allRooms = baseMapper.canUseRooms(param.getHotelId(),param.getStartOf(),param.getEndOf());
|
|
|
|
|
+ List<CesRoomBuildingFloor> allBuildingFloors = buildingFloorService.list(Wrappers.<CesRoomBuildingFloor>query().eq("hotelId",param.getHotelId()).eq("invalid",false));
|
|
|
List<CanUseResultVo> results = new ArrayList<>();
|
|
List<CanUseResultVo> results = new ArrayList<>();
|
|
|
List<CesRoomBuildingFloor> floors = allBuildingFloors.stream().filter(s->!s.getParentId().equals("0")).collect(Collectors.toList());
|
|
List<CesRoomBuildingFloor> floors = allBuildingFloors.stream().filter(s->!s.getParentId().equals("0")).collect(Collectors.toList());
|
|
|
|
|
|
|
|
layouts.forEach(s-> {
|
|
layouts.forEach(s-> {
|
|
|
CanUseResultVo item = new CanUseResultVo();
|
|
CanUseResultVo item = new CanUseResultVo();
|
|
|
- item.setLayout(s);
|
|
|
|
|
List<CanUseBuildingRoomsVo> floorVos = new ArrayList<>();
|
|
List<CanUseBuildingRoomsVo> floorVos = new ArrayList<>();
|
|
|
|
|
+ final Integer[] canUseRoomCount = {0};
|
|
|
floors.forEach(c->{
|
|
floors.forEach(c->{
|
|
|
CanUseBuildingRoomsVo floorRoomsVo = new CanUseBuildingRoomsVo();
|
|
CanUseBuildingRoomsVo floorRoomsVo = new CanUseBuildingRoomsVo();
|
|
|
List<CesRooms> floorRooms = allRooms.stream().filter(e->e.getFloorId().equals(c.getId())).collect(Collectors.toList());
|
|
List<CesRooms> floorRooms = allRooms.stream().filter(e->e.getFloorId().equals(c.getId())).collect(Collectors.toList());
|
|
@@ -277,9 +272,12 @@ public class CesRoomsServiceImpl extends ServiceImpl<CesRoomsMapper, CesRooms> i
|
|
|
floorRoomsVo.setFloorId(c.getId());
|
|
floorRoomsVo.setFloorId(c.getId());
|
|
|
floorRoomsVo.setBuildingName(opBuilding.get().getName());
|
|
floorRoomsVo.setBuildingName(opBuilding.get().getName());
|
|
|
floorRoomsVo.setBuildingId(opBuilding.get().getId());
|
|
floorRoomsVo.setBuildingId(opBuilding.get().getId());
|
|
|
|
|
+ canUseRoomCount[0] += floorRooms.size();
|
|
|
floorVos.add(floorRoomsVo);
|
|
floorVos.add(floorRoomsVo);
|
|
|
-
|
|
|
|
|
});
|
|
});
|
|
|
|
|
+ // 可用房间数量,暂时就放在这个tags字段
|
|
|
|
|
+ s.setTags(canUseRoomCount[0].toString());
|
|
|
|
|
+ item.setLayout(s);
|
|
|
item.setBuildingRooms(floorVos);
|
|
item.setBuildingRooms(floorVos);
|
|
|
results.add(item);
|
|
results.add(item);
|
|
|
});
|
|
});
|