main
Last change
on this file was 8ca35dc, checked in by Aleksandar Panovski <apano77@…>, 4 months ago |
Done with stupid timeslots
|
-
Property mode
set to
100644
|
File size:
1.3 KB
|
Rev | Line | |
---|
[8ca35dc] | 1 | package com.example.rezevirajmasa.demo.service;
|
---|
| 2 |
|
---|
| 3 | import com.example.rezevirajmasa.demo.model.Reservation;
|
---|
| 4 | import com.example.rezevirajmasa.demo.repository.ReservationRepository;
|
---|
| 5 | import org.springframework.scheduling.annotation.Scheduled;
|
---|
| 6 | import org.springframework.stereotype.Service;
|
---|
| 7 |
|
---|
| 8 | import java.time.LocalDateTime;
|
---|
| 9 | import java.util.List;
|
---|
| 10 |
|
---|
| 11 | @Service
|
---|
| 12 | public class ReservationSchedulerService {
|
---|
| 13 |
|
---|
| 14 | private final ReservationRepository reservationRepository;
|
---|
| 15 | private final ReservationHistoryService reservationHistoryService;
|
---|
| 16 |
|
---|
| 17 | public ReservationSchedulerService(
|
---|
| 18 | ReservationRepository reservationRepository,
|
---|
| 19 | ReservationHistoryService reservationHistoryService) {
|
---|
| 20 | this.reservationRepository = reservationRepository;
|
---|
| 21 | this.reservationHistoryService = reservationHistoryService;
|
---|
| 22 | }
|
---|
| 23 |
|
---|
| 24 | @Scheduled(cron = "0 0 0 * * ?")
|
---|
| 25 | public void archivePastReservations() {
|
---|
| 26 | LocalDateTime now = LocalDateTime.now();
|
---|
| 27 | List<Reservation> pastReservations = reservationRepository.findAllByCheckInTimeBefore(now);
|
---|
| 28 |
|
---|
| 29 | for (Reservation reservation : pastReservations) {
|
---|
| 30 | reservationHistoryService.moveReservationToHistory(reservation, "Past", null);
|
---|
| 31 | reservationRepository.delete(reservation);
|
---|
| 32 | }
|
---|
| 33 | }
|
---|
| 34 | } |
---|
Note:
See
TracBrowser
for help on using the repository browser.