Browse Source

用户管理接口

main
maochaoying 2 years ago
parent
commit
940bfc0881
  1. 21
      src/main/java/com/iflytop/nuclear/controller/AccountController.java
  2. 2
      src/main/java/com/iflytop/nuclear/controller/NuclearCoreController.java
  3. 2
      src/main/java/com/iflytop/nuclear/controller/UploadController.java
  4. 9
      src/main/java/com/iflytop/nuclear/model/Account.java
  5. 6
      src/main/java/com/iflytop/nuclear/service/AccountService.java
  6. 18
      src/main/java/com/iflytop/nuclear/service/impl/AccountServiceImpl.java

21
src/main/java/com/iflytop/nuclear/controller/AccountController.java

@ -1,5 +1,6 @@
package com.iflytop.nuclear.controller;
import com.alibaba.fastjson2.JSONObject;
import com.iflytop.nuclear.model.Account;
import com.iflytop.nuclear.service.AccountService;
import com.iflytop.nuclear.utils.ResponseData;
@ -19,6 +20,7 @@ import java.util.Map;
@RestController
@CrossOrigin
@RequestMapping("/account")
@PreAuthorize("hasRole('ADMIN')")
public class AccountController {
@Autowired
@ -44,10 +46,9 @@ public class AccountController {
* @return
*/
@PostMapping("/register")
@PreAuthorize("hasRole('ADMIN')")
public ResponseData registerAccount(@RequestBody Map<String,String> registerUser) {
log.info("-----------------注册账户开始-----------------");
boolean register = accountService.register(registerUser.get("username"), registerUser.get("password"), registerUser.get("role"));
boolean register = accountService.register(registerUser.get("username"), registerUser.get("password"), registerUser.get("role"), registerUser.get("nickname"));
if (register) {
log.info("-----------------注册账户成功-----------------");
return ResponseData.success();
@ -55,4 +56,20 @@ public class AccountController {
return ResponseData.fail("注册失败,用户名重复!");
}
@PostMapping("/update")
public ResponseData update(@RequestBody Map<String,String> userInfo) {
boolean b = accountService.updateUserInfo(userInfo);
JSONObject res = new JSONObject();
res.put("result", b);
return ResponseData.success(res);
}
@PostMapping("/delete/{id}")
public ResponseData delete(@PathVariable(name = "id") Long userId){
boolean b = accountService.removeById(userId);
JSONObject res = new JSONObject();
res.put("result", b);
return ResponseData.success(res);
}
}

2
src/main/java/com/iflytop/nuclear/controller/NuclearCoreController.java

@ -7,6 +7,7 @@ import com.iflytop.nuclear.service.NuclearCoreService;
import com.iflytop.nuclear.utils.ResponseData;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*;
import java.util.List;
@ -20,6 +21,7 @@ import java.util.Map;
@RestController
@CrossOrigin
@RequestMapping("/core")
@PreAuthorize("hasRole('ADMIN')")
public class NuclearCoreController {
@Autowired

2
src/main/java/com/iflytop/nuclear/controller/UploadController.java

@ -5,6 +5,7 @@ import com.iflytop.nuclear.service.UploadService;
import com.iflytop.nuclear.utils.ResponseData;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.CrossOrigin;
import org.springframework.web.bind.annotation.PostMapping;
@ -27,6 +28,7 @@ import java.util.Set;
@Slf4j
@RestController
@CrossOrigin
@PreAuthorize("hasRole('ADMIN')")
public class UploadController {
@Autowired

9
src/main/java/com/iflytop/nuclear/model/Account.java

@ -1,5 +1,6 @@
package com.iflytop.nuclear.model;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.AllArgsConstructor;
@ -7,6 +8,8 @@ import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.Date;
/**
* @author cool
* @desc 账户model
@ -23,4 +26,10 @@ public class Account {
private String password;
private String role;
private String nickname;
@TableField("create_time")
private Date createTime;
@TableField("create_id")
private Long createId;
}

6
src/main/java/com/iflytop/nuclear/service/AccountService.java

@ -4,13 +4,17 @@ import com.baomidou.mybatisplus.extension.service.IService;
import com.iflytop.nuclear.model.Account;
import org.springframework.transaction.annotation.Transactional;
import java.util.Map;
/**
* @author cool
*/
@Transactional
public interface AccountService extends IService<Account> {
boolean register(String username, String password, String role);
boolean register(String username, String password, String role, String nickname);
Account findByUsername(String username);
boolean updateUserInfo(Map<String, String> userInfo);
}

18
src/main/java/com/iflytop/nuclear/service/impl/AccountServiceImpl.java

@ -10,6 +10,8 @@ import org.springframework.context.annotation.Lazy;
import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
import org.springframework.stereotype.Service;
import java.util.Map;
/**
* @author cool
*/
@ -27,7 +29,7 @@ public class AccountServiceImpl extends ServiceImpl<AccountMapper, Account> impl
* @return
*/
@Override
public boolean register(String username, String password, String role) {
public boolean register(String username, String password, String role, String nickname) {
// ROLE_ADMIN ROLE_USER
// 查找该用户名是否存在
Account byUsername = this.findByUsername(username);
@ -38,6 +40,7 @@ public class AccountServiceImpl extends ServiceImpl<AccountMapper, Account> impl
.username(username)
.password(bCryptPasswordEncoder.encode(password))
.role(role)
.nickname(nickname)
.build();
return this.save(account);
}
@ -54,4 +57,17 @@ public class AccountServiceImpl extends ServiceImpl<AccountMapper, Account> impl
Account account = this.getOne(accountQueryWrapper);
return account;
}
@Override
public boolean updateUserInfo(Map<String, String> userInfo) {
Account account = Account.builder()
.id(Long.valueOf(userInfo.get("id")))
.username(userInfo.get("username"))
.password(bCryptPasswordEncoder.encode(userInfo.get("password")))
.role(userInfo.get("role"))
.nickname(userInfo.get("nickname"))
.build();
boolean b = this.updateById(account);
return b;
}
}
Loading…
Cancel
Save