|
@@ -477,6 +477,9 @@ public class CesRoomsServiceImpl extends ServiceImpl<CesRoomsMapper, CesRooms> i
|
|
|
public Boolean returnReserveRoom() {
|
|
public Boolean returnReserveRoom() {
|
|
|
List<CesRooms> roomList = list(Wrappers.<CesRooms>lambdaQuery().eq(CesRooms::getRoomStatus, RoomStatusEnum.RESERVE.getKey()));
|
|
List<CesRooms> roomList = list(Wrappers.<CesRooms>lambdaQuery().eq(CesRooms::getRoomStatus, RoomStatusEnum.RESERVE.getKey()));
|
|
|
List<String> ids = roomList.stream().map(CesRooms::getId).collect(Collectors.toList());
|
|
List<String> ids = roomList.stream().map(CesRooms::getId).collect(Collectors.toList());
|
|
|
|
|
+ if (ids.isEmpty()){
|
|
|
|
|
+ return true;
|
|
|
|
|
+ }
|
|
|
Calendar calendar = Calendar.getInstance();
|
|
Calendar calendar = Calendar.getInstance();
|
|
|
calendar.add(Calendar.DAY_OF_YEAR, 1);
|
|
calendar.add(Calendar.DAY_OF_YEAR, 1);
|
|
|
calendar.set(Calendar.HOUR_OF_DAY, 0);
|
|
calendar.set(Calendar.HOUR_OF_DAY, 0);
|
|
@@ -484,10 +487,18 @@ public class CesRoomsServiceImpl extends ServiceImpl<CesRoomsMapper, CesRooms> i
|
|
|
calendar.set(Calendar.SECOND, 0);
|
|
calendar.set(Calendar.SECOND, 0);
|
|
|
List<BusRoomBookingOrders> bookingOrderList = roomBookingOrdersMapper.findBookingOrder(ids, new Date(), calendar.getTime());
|
|
List<BusRoomBookingOrders> bookingOrderList = roomBookingOrdersMapper.findBookingOrder(ids, new Date(), calendar.getTime());
|
|
|
List<String> orderIds = bookingOrderList.stream().map(BusRoomBookingOrders::getId).collect(Collectors.toList());
|
|
List<String> orderIds = bookingOrderList.stream().map(BusRoomBookingOrders::getId).collect(Collectors.toList());
|
|
|
- List<BusBookingRooms> bookingRoomsList = bookingRoomsService.list(Wrappers.<BusBookingRooms>lambdaQuery().in(BusBookingRooms::getBookingOrdersId, orderIds));
|
|
|
|
|
- Set<String> bookingRoomIds = bookingRoomsList.stream().map(BusBookingRooms::getRoomId).collect(Collectors.toSet());
|
|
|
|
|
|
|
+ Set<String> bookingRoomIds;
|
|
|
|
|
+ if (!orderIds.isEmpty()){
|
|
|
|
|
+ List<BusBookingRooms> bookingRoomsList = bookingRoomsService.list(Wrappers.<BusBookingRooms>lambdaQuery().in(BusBookingRooms::getBookingOrdersId, orderIds));
|
|
|
|
|
+ bookingRoomIds = bookingRoomsList.stream().map(BusBookingRooms::getRoomId).collect(Collectors.toSet());
|
|
|
|
|
+ } else {
|
|
|
|
|
+ bookingRoomIds = new HashSet<>();
|
|
|
|
|
+ }
|
|
|
List<String> idList = ids.stream().filter(e -> !bookingRoomIds.contains(e)).collect(Collectors.toList());
|
|
List<String> idList = ids.stream().filter(e -> !bookingRoomIds.contains(e)).collect(Collectors.toList());
|
|
|
UpdateWrapper<CesRooms> updateWrapper = new UpdateWrapper<>();
|
|
UpdateWrapper<CesRooms> updateWrapper = new UpdateWrapper<>();
|
|
|
|
|
+ if (idList.isEmpty()){
|
|
|
|
|
+ return true;
|
|
|
|
|
+ }
|
|
|
updateWrapper.setSql("room_status = last_room_status").in("id",idList);
|
|
updateWrapper.setSql("room_status = last_room_status").in("id",idList);
|
|
|
return update(updateWrapper);
|
|
return update(updateWrapper);
|
|
|
}
|
|
}
|