91.2. Refactored delete method to use userId instead of id (#10)

This commit is contained in:
Art
2021-09-11 10:36:41 +03:00
parent 26c287fd29
commit 6995c763cb
5 changed files with 18 additions and 13 deletions

View File

@ -96,10 +96,10 @@ public class UserResource {
.build(); .build();
} }
@DeleteMapping("{id}") @DeleteMapping("{userId}")
@PreAuthorize("hasAuthority('user:delete')") @PreAuthorize("hasAuthority('user:delete')")
public HttpResponse deleteUser(@PathVariable long id) { public HttpResponse deleteUser(@PathVariable String userId) {
userService.deleteUser(id); userService.deleteUser(userId);
return HttpResponse.builder() return HttpResponse.builder()
.httpStatusCode(OK.value()) .httpStatusCode(OK.value())
.httpStatus(OK) .httpStatus(OK)

View File

@ -15,4 +15,6 @@ public interface UserRepository extends JpaRepository<User, Long> {
Boolean existsByEmail(String email); Boolean existsByEmail(String email);
Optional<User> findByUserId(String userId);
} }

View File

@ -23,7 +23,7 @@ public interface UserService extends UserDetailsService {
User updateUser(String username, UserDto userDto); User updateUser(String username, UserDto userDto);
void deleteUser(long id); void deleteUser(String userId);
void resetPassword(String email); void resetPassword(String email);

View File

@ -218,8 +218,11 @@ public class UserServiceImpl implements UserService {
} }
@Override @Override
public void deleteUser(long id) { public void deleteUser(String userId) {
userRepository.deleteById(id); User userToBeDeleted = userRepository
.findByUserId(userId)
.orElseThrow(() -> new UserNotFoundException("User was not found"));
userRepository.delete(userToBeDeleted);
} }
@Override @Override

View File

@ -651,10 +651,10 @@ class UserResourceTest extends BaseUserTest {
superAdmin.setAuthorities(Role.ROLE_SUPER_ADMIN.getAuthorities()); superAdmin.setAuthorities(Role.ROLE_SUPER_ADMIN.getAuthorities());
String token = jwtTokenProvider.generateJwtToken(new UserPrincipal(superAdmin)); String token = jwtTokenProvider.generateJwtToken(new UserPrincipal(superAdmin));
long id = user.getId(); String userId = user.getUserId();
//when //when
var requestEntity = RequestEntity.delete("/user/{id}", id) var requestEntity = RequestEntity.delete("/user/{userId}", userId)
.headers(headers -> headers.setBearerAuth(token)) .headers(headers -> headers.setBearerAuth(token))
.build(); .build();
var responseEntity = restTemplate.exchange(requestEntity, HttpResponse.class); var responseEntity = restTemplate.exchange(requestEntity, HttpResponse.class);
@ -676,10 +676,10 @@ class UserResourceTest extends BaseUserTest {
User roleUser = createRandomUser(); User roleUser = createRandomUser();
String token = jwtTokenProvider.generateJwtToken(new UserPrincipal(roleUser)); String token = jwtTokenProvider.generateJwtToken(new UserPrincipal(roleUser));
long id = user.getId(); String userId = user.getUserId();
//when //when
var requestEntity = RequestEntity.delete("/user/{id}", id) var requestEntity = RequestEntity.delete("/user/{userId}", userId)
.headers(headers -> headers.setBearerAuth(token)) .headers(headers -> headers.setBearerAuth(token))
.build(); .build();
var responseEntity = restTemplate.exchange(requestEntity, HttpResponse.class); var responseEntity = restTemplate.exchange(requestEntity, HttpResponse.class);
@ -703,10 +703,10 @@ class UserResourceTest extends BaseUserTest {
superAdmin.setAuthorities(Role.ROLE_SUPER_ADMIN.getAuthorities()); superAdmin.setAuthorities(Role.ROLE_SUPER_ADMIN.getAuthorities());
String token = jwtTokenProvider.generateJwtToken(new UserPrincipal(superAdmin)); String token = jwtTokenProvider.generateJwtToken(new UserPrincipal(superAdmin));
long id = Integer.MAX_VALUE; String userId = UUID.randomUUID().toString();
//when //when
var requestEntity = RequestEntity.delete("/user/{id}", id) var requestEntity = RequestEntity.delete("/user/{userId}", userId)
.headers(headers -> headers.setBearerAuth(token)) .headers(headers -> headers.setBearerAuth(token))
.build(); .build();
var responseEntity = restTemplate.exchange(requestEntity, HttpResponse.class); var responseEntity = restTemplate.exchange(requestEntity, HttpResponse.class);
@ -718,7 +718,7 @@ class UserResourceTest extends BaseUserTest {
.isNotNull() .isNotNull()
.hasNoNullFieldsOrProperties() .hasNoNullFieldsOrProperties()
.hasFieldOrPropertyWithValue("httpStatus", BAD_REQUEST) .hasFieldOrPropertyWithValue("httpStatus", BAD_REQUEST)
.hasFieldOrPropertyWithValue("message", "NO CLASS NET.SHYSHKIN.STUDY.FULLSTACK.SUPPORTPORTAL.BACKEND.DOMAIN.USER ENTITY WITH ID 2147483647 EXISTS!"); .hasFieldOrPropertyWithValue("message", "USER WAS NOT FOUND");
} }
} }
} }