diff --git a/src/main/java/com/indexzero/finals/controller/EmployeeController.java b/src/main/java/com/indexzero/finals/controller/EmployeeController.java index e9bbd3e..2ae3837 100644 --- a/src/main/java/com/indexzero/finals/controller/EmployeeController.java +++ b/src/main/java/com/indexzero/finals/controller/EmployeeController.java @@ -68,8 +68,8 @@ public class EmployeeController { return employeeService.deleteEmployee(login); } - @PatchMapping("/{login}/{state}") - @Operation(description = "Enable/Disable user's ability to use QR code entrance. (ADMIN only) States: active / blocked", summary = "Enable/Disable QR") + @PatchMapping("/{login}/change_state") + @Operation(description = "Enable/Disable user's ability to use QR code entrance. (ADMIN only)", summary = "Enable/Disable QR") @ApiResponses(value = { @ApiResponse(responseCode = "200", description = "Modification Successful"), @ApiResponse(responseCode = "401", description = "Unauthorized"), @@ -77,8 +77,8 @@ public class EmployeeController { @ApiResponse(responseCode = "404", description = "User not found"), @ApiResponse(responseCode = "400", description = "State doesn't exist"), }) - public ResponseEntity changeState(@PathVariable String login, @PathVariable String state) { - return employeeService.changeState(login, state); + public ResponseEntity changeState(@PathVariable String login) { + return employeeService.changeState(login); } @GetMapping("/all") diff --git a/src/main/java/com/indexzero/finals/service/EmployeeService.java b/src/main/java/com/indexzero/finals/service/EmployeeService.java index 91605e0..9f259e3 100644 --- a/src/main/java/com/indexzero/finals/service/EmployeeService.java +++ b/src/main/java/com/indexzero/finals/service/EmployeeService.java @@ -13,7 +13,7 @@ public interface EmployeeService { ResponseEntity getUserInfo(Authentication auth); ResponseEntity openTheDoor(Long code, Authentication auth); ResponseEntity deleteEmployee(String login); - ResponseEntity changeState(String login, String state); + ResponseEntity changeState(String login); ResponseEntity> getAllEmployees(Pageable pageable); ResponseEntity getEmployeeByLogin(String login); ResponseEntity updateEmployee(EmployeeDTO updateDTO, String login); diff --git a/src/main/java/com/indexzero/finals/service/impl/EmployeeServiceImpl.java b/src/main/java/com/indexzero/finals/service/impl/EmployeeServiceImpl.java index 33f6e30..d993d65 100644 --- a/src/main/java/com/indexzero/finals/service/impl/EmployeeServiceImpl.java +++ b/src/main/java/com/indexzero/finals/service/impl/EmployeeServiceImpl.java @@ -86,26 +86,16 @@ public class EmployeeServiceImpl implements EmployeeService { } @Override - public ResponseEntity changeState(String login, String state) { + public ResponseEntity changeState(String login) { Employee e = employeeRepository.findByLogin(login); if(e != null) { if (Objects.equals(e.getAuthorities().iterator().next().getAuthority(), "ADMIN")) { return new ResponseEntity<>(HttpStatus.UNAUTHORIZED); } else { - if(state.equals("active")) { - e.setIsQREnabled(true); - employeeRepository.save(e); - return new ResponseEntity<>(HttpStatus.OK); - } - else if(state.equals("blocked")) { - e.setIsQREnabled(false); - employeeRepository.save(e); - return new ResponseEntity<>(HttpStatus.OK); - } - else { - return new ResponseEntity<>(HttpStatus.BAD_REQUEST); - } + e.setIsQREnabled(!e.getIsQREnabled()); + employeeRepository.save(e); + return new ResponseEntity<>(HttpStatus.OK); } } else {