diff --git a/src/main/java/org/example/projektarendehantering/application/service/PatientService.java b/src/main/java/org/example/projektarendehantering/application/service/PatientService.java index 50190ea..258d362 100644 --- a/src/main/java/org/example/projektarendehantering/application/service/PatientService.java +++ b/src/main/java/org/example/projektarendehantering/application/service/PatientService.java @@ -60,14 +60,6 @@ public PatientDTO updatePatient(Actor actor, UUID id, PatientUpdateDTO dto) { return patientMapper.toDTO(patientRepository.save(entity)); } - @Transactional - public void deletePatient(Actor actor, UUID id) { - requireCanManagePatients(actor); - PatientEntity entity = patientRepository.findById(id) - .orElseThrow(() -> new BadRequestException("PATIENT_NOT_FOUND", "Patient not found")); - patientRepository.delete(entity); - } - @Transactional(readOnly = true) public Optional getPatient(UUID id) { return patientRepository.findById(id).map(patientMapper::toDTO); diff --git a/src/main/java/org/example/projektarendehantering/presentation/rest/PatientController.java b/src/main/java/org/example/projektarendehantering/presentation/rest/PatientController.java index 71abf9e..2201350 100644 --- a/src/main/java/org/example/projektarendehantering/presentation/rest/PatientController.java +++ b/src/main/java/org/example/projektarendehantering/presentation/rest/PatientController.java @@ -37,13 +37,6 @@ public ResponseEntity updatePatient(@PathVariable UUID id, @RequestB return ResponseEntity.ok(patientService.updatePatient(securityActorAdapter.currentUser(), id, patientDTO)); } - @DeleteMapping("/{id}") - @PreAuthorize("hasRole('MANAGER')") - public ResponseEntity deletePatient(@PathVariable UUID id) { - patientService.deletePatient(securityActorAdapter.currentUser(), id); - return ResponseEntity.noContent().build(); - } - @GetMapping("/{id}") public ResponseEntity getPatient(@PathVariable UUID id) { return patientService.getPatient(id) diff --git a/src/main/java/org/example/projektarendehantering/presentation/web/PatientUiController.java b/src/main/java/org/example/projektarendehantering/presentation/web/PatientUiController.java index badf569..aef134e 100644 --- a/src/main/java/org/example/projektarendehantering/presentation/web/PatientUiController.java +++ b/src/main/java/org/example/projektarendehantering/presentation/web/PatientUiController.java @@ -83,10 +83,4 @@ public String updatePatient(@PathVariable UUID id, @Valid @ModelAttribute("patie return "redirect:/ui/patients"; } - @PostMapping("/ui/patients/delete/{id}") - @PreAuthorize("hasRole('MANAGER')") - public String deletePatient(@PathVariable UUID id) { - patientService.deletePatient(securityActorAdapter.currentUser(), id); - return "redirect:/ui/patients"; - } } diff --git a/src/main/resources/templates/patients/list.html b/src/main/resources/templates/patients/list.html index 6f0899e..a137240 100644 --- a/src/main/resources/templates/patients/list.html +++ b/src/main/resources/templates/patients/list.html @@ -29,10 +29,6 @@

Registered Patients

Date Edit -
- -
diff --git a/src/test/java/org/example/projektarendehantering/application/service/PatientServiceTest.java b/src/test/java/org/example/projektarendehantering/application/service/PatientServiceTest.java index 22ae09a..e64429c 100644 --- a/src/test/java/org/example/projektarendehantering/application/service/PatientServiceTest.java +++ b/src/test/java/org/example/projektarendehantering/application/service/PatientServiceTest.java @@ -1,7 +1,6 @@ package org.example.projektarendehantering.application.service; import org.example.projektarendehantering.common.Actor; -import org.example.projektarendehantering.common.BadRequestException; import org.example.projektarendehantering.common.ConflictException; import org.example.projektarendehantering.common.NotAuthorizedException; import org.example.projektarendehantering.common.Role; @@ -110,25 +109,4 @@ void updatePatient_shouldThrowIfForbidden() { .isInstanceOf(NotAuthorizedException.class); } - @Test - void deletePatient_shouldDeleteIfFound() { - UUID id = UUID.randomUUID(); - PatientEntity entity = new PatientEntity(); - - when(patientRepository.findById(id)).thenReturn(Optional.of(entity)); - - patientService.deletePatient(managerActor, id); - - verify(patientRepository).delete(entity); - } - - @Test - void deletePatient_shouldThrowIfNotFound() { - UUID id = UUID.randomUUID(); - - when(patientRepository.findById(id)).thenReturn(Optional.empty()); - - assertThatThrownBy(() -> patientService.deletePatient(managerActor, id)) - .isInstanceOf(BadRequestException.class); - } } diff --git a/src/test/java/org/example/projektarendehantering/presentation/rest/PatientControllerTest.java b/src/test/java/org/example/projektarendehantering/presentation/rest/PatientControllerTest.java index ec2f1cd..8c32c62 100644 --- a/src/test/java/org/example/projektarendehantering/presentation/rest/PatientControllerTest.java +++ b/src/test/java/org/example/projektarendehantering/presentation/rest/PatientControllerTest.java @@ -22,7 +22,6 @@ import static org.mockito.ArgumentMatchers.any; import static org.mockito.ArgumentMatchers.eq; -import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; import static org.springframework.security.test.web.servlet.request.SecurityMockMvcRequestPostProcessors.csrf; import static org.springframework.security.test.web.servlet.setup.SecurityMockMvcConfigurers.springSecurity; @@ -92,15 +91,4 @@ void updatePatient_shouldReturnOk() throws Exception { .andExpect(jsonPath("$.firstName").value("Jane")); } - @Test - @WithMockUser(roles = "MANAGER") - void deletePatient_shouldReturnNoContent() throws Exception { - UUID id = UUID.randomUUID(); - - mockMvc.perform(delete("/api/patients/{id}", id) - .with(csrf())) - .andExpect(status().isNoContent()); - - verify(patientService).deletePatient(managerActor, id); - } } diff --git a/src/test/java/org/example/projektarendehantering/presentation/web/PatientUiControllerTest.java b/src/test/java/org/example/projektarendehantering/presentation/web/PatientUiControllerTest.java index 847e1bf..23e2de2 100644 --- a/src/test/java/org/example/projektarendehantering/presentation/web/PatientUiControllerTest.java +++ b/src/test/java/org/example/projektarendehantering/presentation/web/PatientUiControllerTest.java @@ -15,10 +15,8 @@ import java.util.UUID; import static org.mockito.Mockito.when; -import static org.springframework.security.test.web.servlet.request.SecurityMockMvcRequestPostProcessors.csrf; import static org.springframework.security.test.web.servlet.setup.SecurityMockMvcConfigurers.springSecurity; import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.get; -import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.post; import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.*; import static org.springframework.test.web.servlet.setup.MockMvcBuilders.webAppContextSetup; @@ -63,12 +61,4 @@ void editPatient_shouldReturnView() throws Exception { .andExpect(model().attributeExists("patientUpdateDTO")); } - @Test - @WithMockUser(roles = "MANAGER") - void deletePatient_shouldRedirect() throws Exception { - UUID id = UUID.randomUUID(); - mockMvc.perform(post("/ui/patients/delete/{id}", id).with(csrf())) - .andExpect(status().is3xxRedirection()) - .andExpect(redirectedUrl("/ui/patients")); - } }