forked from Olympic/NTO-2025-Backend-TeamTask
Commit changes 2
This commit is contained in:
@@ -4,6 +4,7 @@ import com.example.nto.entity.Booking;
|
|||||||
import org.springframework.data.jpa.repository.JpaRepository;
|
import org.springframework.data.jpa.repository.JpaRepository;
|
||||||
|
|
||||||
import java.time.LocalDate;
|
import java.time.LocalDate;
|
||||||
|
import java.util.List;
|
||||||
import java.util.Optional;
|
import java.util.Optional;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -10,4 +10,5 @@ import org.springframework.data.jpa.repository.JpaRepository;
|
|||||||
* НЕЛЬЗЯ: Изменять название класса и пакета
|
* НЕЛЬЗЯ: Изменять название класса и пакета
|
||||||
*/
|
*/
|
||||||
public interface PlaceRepository extends JpaRepository<Place, Long> {
|
public interface PlaceRepository extends JpaRepository<Place, Long> {
|
||||||
|
Place findById(long placeId);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -101,20 +101,16 @@ public class EmployeeServiceImpl implements EmployeeService {
|
|||||||
if (!CheckAuthorization(code))
|
if (!CheckAuthorization(code))
|
||||||
return new ResponseEntity<>("кода не существует", HttpStatus.UNAUTHORIZED);
|
return new ResponseEntity<>("кода не существует", HttpStatus.UNAUTHORIZED);
|
||||||
|
|
||||||
Map<String, List<Place>> freePlacesMap = GetFreeBookings(code);
|
List<Booking> allBookings = bookingRepository.findAll();
|
||||||
if (!freePlacesMap.containsKey(bookingInfo.date.toString()))
|
for (int i = 0; i < allBookings.size(); i++) {
|
||||||
return new ResponseEntity<>("что-то пошло не так", HttpStatus.BAD_REQUEST);
|
if (allBookings.get(i).getDate().toString().equals(bookingInfo.date.toString()) && allBookings.get(i).getPlace().getId() == bookingInfo.placeId)
|
||||||
List<Place> freePlaces = freePlacesMap.get(bookingInfo.date.toString());
|
return new ResponseEntity<>("уже забронировано", HttpStatus.CONFLICT);
|
||||||
for (int i = 0; i < freePlaces.size(); i++) {
|
|
||||||
if (freePlaces.get(i).getId() == bookingInfo.placeId) {
|
|
||||||
bookingRepository.save(Booking.builder()
|
|
||||||
.date(bookingInfo.date)
|
|
||||||
.place(freePlaces.get(i))
|
|
||||||
.employee(employeeRepository.findByCode(code).get())
|
|
||||||
.build());
|
|
||||||
return new ResponseEntity<>("бронирование успешно создано", HttpStatus.CREATED);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
return new ResponseEntity<>("уже забронировано", HttpStatus.CONFLICT);
|
bookingRepository.save(Booking.builder()
|
||||||
|
.date(bookingInfo.date)
|
||||||
|
.place(placeRepository.findById(bookingInfo.placeId))
|
||||||
|
.employee(employeeRepository.findByCode(code).get())
|
||||||
|
.build());
|
||||||
|
return new ResponseEntity<>("бронирование успешно создано", HttpStatus.CREATED);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user