From aba720084c9d0ed8de57560c2d1cc0c53297a958 Mon Sep 17 00:00:00 2001 From: migudel <miguel.moras@estudiantes.uva.es> Date: Sun, 3 Nov 2024 17:32:10 +0100 Subject: [PATCH] =?UTF-8?q?Agregada=20funci=C3=B3n=20de=20eliminaci=C3=B3n?= =?UTF-8?q?=20de=20reservas?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../user-booking-list.component.ts | 1 - .../src/app/shared/booking.service.ts | 4 ++-- .../Controllers/BookingController.java | 24 +++++++------------ .../Repositories/BookingRepository.java | 3 +-- 4 files changed, 11 insertions(+), 21 deletions(-) diff --git a/angular/RestClient/src/app/core/features/user/user-booking-list/user-booking-list.component.ts b/angular/RestClient/src/app/core/features/user/user-booking-list/user-booking-list.component.ts index e71864f..535ff56 100644 --- a/angular/RestClient/src/app/core/features/user/user-booking-list/user-booking-list.component.ts +++ b/angular/RestClient/src/app/core/features/user/user-booking-list/user-booking-list.component.ts @@ -78,7 +78,6 @@ export class UserBookingListComponent { deleteBooking(bookingId: number) { this.bookingClient.deleteBooking(bookingId).subscribe({ next: () => { - console.log('Actualizadas'); this.updateBookings(); }, error: (err) => { diff --git a/angular/RestClient/src/app/shared/booking.service.ts b/angular/RestClient/src/app/shared/booking.service.ts index b00b1c7..0800e99 100644 --- a/angular/RestClient/src/app/shared/booking.service.ts +++ b/angular/RestClient/src/app/shared/booking.service.ts @@ -33,7 +33,7 @@ export class BookingService { } // Método para eliminar una reserva - deleteBooking(id: number): Observable<void> { - return this.http.delete<void>(`${this.apiUrl}/${id}`); + deleteBooking(id: number) { + return this.http.delete(`${this.apiUrl}/${id}`); } } diff --git a/java/roomBooking/src/main/java/com/uva/roomBooking/Controllers/BookingController.java b/java/roomBooking/src/main/java/com/uva/roomBooking/Controllers/BookingController.java index 7e5fe94..c52866c 100644 --- a/java/roomBooking/src/main/java/com/uva/roomBooking/Controllers/BookingController.java +++ b/java/roomBooking/src/main/java/com/uva/roomBooking/Controllers/BookingController.java @@ -11,6 +11,7 @@ import com.uva.roomBooking.Repositories.UserRepository; import jakarta.transaction.Transactional; import org.springframework.http.HttpStatus; +import org.springframework.http.HttpStatusCode; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.*; @@ -63,26 +64,17 @@ public class BookingController { .orElseThrow(() -> new RuntimeException("Booking not found")); } - @DeleteMapping("/{id}") @Transactional - public ResponseEntity<String> deleteBooking(@PathVariable Integer id) { + public ResponseEntity<Void> deleteBooking(@PathVariable Integer id) { try { - if (!bookingRepository.existsById(id)) { - return ResponseEntity.status(HttpStatus.NOT_FOUND) - .body("Booking not found with id: " + id); - } - - bookingRepository.deleteBookingById(id); - - return ResponseEntity.ok("Booking deleted successfully"); + if (!bookingRepository.existsById(id)) + return new ResponseEntity<>(HttpStatus.NOT_FOUND); + + bookingRepository.deleteBookingById(id); + return new ResponseEntity<>(HttpStatus.ACCEPTED); } catch (Exception e) { - return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR) - .body("Error deleting booking: " + e.getMessage()); + return new ResponseEntity<>(HttpStatus.INTERNAL_SERVER_ERROR); } } } - - - - diff --git a/java/roomBooking/src/main/java/com/uva/roomBooking/Repositories/BookingRepository.java b/java/roomBooking/src/main/java/com/uva/roomBooking/Repositories/BookingRepository.java index 54bbc5c..b926175 100644 --- a/java/roomBooking/src/main/java/com/uva/roomBooking/Repositories/BookingRepository.java +++ b/java/roomBooking/src/main/java/com/uva/roomBooking/Repositories/BookingRepository.java @@ -18,8 +18,7 @@ public interface BookingRepository extends JpaRepository<Booking, Integer> { @Param("endDate") LocalDate endDate); @Modifying - @Query("DELETE FROM Booking b WHERE b.id = :id") + @Query("DELETE FROM Booking b WHERE b.id = ?1") void deleteBookingById(@Param("id") Integer id); - } -- GitLab