diff --git a/src/main/java/com/iflytop/nuclear/controller/AccountController.java b/src/main/java/com/iflytop/nuclear/controller/AccountController.java index 3e1c940..97fea72 100755 --- a/src/main/java/com/iflytop/nuclear/controller/AccountController.java +++ b/src/main/java/com/iflytop/nuclear/controller/AccountController.java @@ -31,9 +31,9 @@ public class AccountController { @GetMapping("/list") public ResponseData getAccountList() { log.info("-----------------查询账户列表开始-----------------"); + List accounts = accountService.list(); // 筛除password // TODO - List accounts = accountService.list(); log.info("-----------------查询账户列表结束-----------------"); return ResponseData.success(accounts); } @@ -44,15 +44,15 @@ public class AccountController { * @return */ @PostMapping("/register") - // @PreAuthorize("hasRole('ADMIN')") + @PreAuthorize("hasRole('ADMIN')") public ResponseData registerAccount(@RequestBody Map registerUser) { log.info("-----------------注册账户开始-----------------"); - boolean register = accountService.register(registerUser.get("username"), registerUser.get("password")); + boolean register = accountService.register(registerUser.get("username"), registerUser.get("password"), registerUser.get("role")); if (register) { log.info("-----------------注册账户成功-----------------"); return ResponseData.success(); } - return ResponseData.fail("注册失败"); + return ResponseData.fail("注册失败,用户名重复!"); } } diff --git a/src/main/java/com/iflytop/nuclear/service/AccountService.java b/src/main/java/com/iflytop/nuclear/service/AccountService.java index 9acd175..33f6d73 100755 --- a/src/main/java/com/iflytop/nuclear/service/AccountService.java +++ b/src/main/java/com/iflytop/nuclear/service/AccountService.java @@ -10,7 +10,7 @@ import org.springframework.transaction.annotation.Transactional; @Transactional public interface AccountService extends IService { - boolean register(String username, String password); + boolean register(String username, String password, String role); Account findByUsername(String username); } diff --git a/src/main/java/com/iflytop/nuclear/service/impl/AccountServiceImpl.java b/src/main/java/com/iflytop/nuclear/service/impl/AccountServiceImpl.java index 71b800f..261851a 100755 --- a/src/main/java/com/iflytop/nuclear/service/impl/AccountServiceImpl.java +++ b/src/main/java/com/iflytop/nuclear/service/impl/AccountServiceImpl.java @@ -27,11 +27,17 @@ public class AccountServiceImpl extends ServiceImpl impl * @return */ @Override - public boolean register(String username, String password) { + public boolean register(String username, String password, String role) { + // ROLE_ADMIN ROLE_USER + // 查找该用户名是否存在 + Account byUsername = this.findByUsername(username); + if (byUsername != null) { + return false; + } Account account = Account.builder() .username(username) .password(bCryptPasswordEncoder.encode(password)) - .role("ROLE_ADMIN") + .role(role) .build(); return this.save(account); }