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 e71864fc0efbfd12538e080f85b812febc201f60..535ff5647ffc98db1b851a692c34cc80c0c3318d 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 b00b1c793b8de8cf55135d55bb99ca0cfd65652b..0800e99dc68cf58f01b93e5e54aca355cc552db1 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 7e5fe940402ad23ee9faf1d2508d6ea69c029ab8..c52866c2ca28e056ad9551b42e007c0f2f487a80 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 54bbc5c4a24dd8250f426b55a5d9f139a0e24a15..b926175f84ff2d8748e4250e0bd8f574151ab25a 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); - }