From aee0974918a17788fe053eb358c2fcc65c1da29c Mon Sep 17 00:00:00 2001 From: lynxwq2 Date: Thu, 4 Dec 2025 18:20:13 +0300 Subject: [PATCH] =?UTF-8?q?+=D1=83=D1=81=D0=BB=D0=BE=D0=B2=D0=B8=D0=B5=20?= =?UTF-8?q?=D0=B4=D0=BB=D1=8F=20=D0=B1=D1=83=D0=BA=D0=B8=D0=BD=D0=B3=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../example/nto/controller/BookingController.java | 15 +++++++++++++-- .../com/example/nto/service/BookingService.java | 2 ++ .../nto/service/impl/BookingServiceImpl.java | 3 +++ 3 files changed, 18 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/example/nto/controller/BookingController.java b/src/main/java/com/example/nto/controller/BookingController.java index 6c90218..e0b2af4 100644 --- a/src/main/java/com/example/nto/controller/BookingController.java +++ b/src/main/java/com/example/nto/controller/BookingController.java @@ -3,6 +3,7 @@ package com.example.nto.controller; import com.example.nto.entity.Booking; import com.example.nto.service.BookingService; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.*; @@ -31,7 +32,17 @@ public class BookingController { public ResponseEntity>> getAvailablePlaces( @PathVariable String code ) { - Map> response = bookingService.getAvailablePlaces(code); - return ResponseEntity.ok(response); + try { + if (!bookingService.isEmployeeExists(code)) { + return ResponseEntity + .status(401).build(); + } + Map> response = bookingService.getAvailablePlaces(code); + + return ResponseEntity.ok(response); + } catch (Exception e) { + return ResponseEntity.status(HttpStatus.BAD_REQUEST).build(); + + } } } diff --git a/src/main/java/com/example/nto/service/BookingService.java b/src/main/java/com/example/nto/service/BookingService.java index 3488d55..0fc3edc 100644 --- a/src/main/java/com/example/nto/service/BookingService.java +++ b/src/main/java/com/example/nto/service/BookingService.java @@ -18,4 +18,6 @@ public interface BookingService { Optional getBookingById(Long id); Map> getAvailablePlaces(String code); + + boolean isEmployeeExists(String code); } diff --git a/src/main/java/com/example/nto/service/impl/BookingServiceImpl.java b/src/main/java/com/example/nto/service/impl/BookingServiceImpl.java index 450a603..09dbf12 100644 --- a/src/main/java/com/example/nto/service/impl/BookingServiceImpl.java +++ b/src/main/java/com/example/nto/service/impl/BookingServiceImpl.java @@ -46,6 +46,9 @@ public class BookingServiceImpl implements BookingService { this.placeRepository = placeRepository; this.employeeRepository = employeeRepository; } + public boolean isEmployeeExists(String code) { + return employeeRepository.findByCode(code).isPresent(); + } public Map> getAvailablePlaces(String employeeCode) { // 1. Получаем сотрудника (для контекста) Employee employee = employeeRepository.findByCode(employeeCode)