220 字
1 分钟
用户中心项目笔记(用户管理)
用户中心笔记
查找删除
Controller
@GetMapping("/search")
public List<User> searchUser(String username) {
return userService.searchUser(username);
}
@PostMapping("/delete")
public boolean deleteUser(long id) {
return userService.deleteUser(id);
}Service
private static final String USER_LOGIN_STATE = "userLoginState";
@Override
public boolean deleteUser(long id) {
if(id < 0) {
return false;
}
return this.removeById(id);
//这里的removeById会自动转换为逻辑删除将isDelete设置为1
}
@Override
public List<User> searchUser(String username) {
QueryWrapper<User> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("username", username);
List<User> users = this.list(queryWrapper);
if (users.isEmpty()) {
log.info("查询不到指定用户名");
}
for (User user : users) {
user.setUserPassword(null);
}
return users;
}再增加一个权限字段role判断是否为管理员
@Override
public boolean deleteUser(long id, HttpServletRequest request) {
if(id < 0) {
return false;
}
User user = (User) request.getSession().getAttribute(USER_LOGIN_STATE);
if(user == null || user.getRole() != 1) {
log.info("权限不足用户尝试删除数据");
return false;
}
return this.removeById(id);
}用户注销
service
@Override
public boolean userLogout(HttpServletRequest request) {
if(request == null){
log.info("注销失败");
return false;
}
HttpSession session = request.getSession();
session.removeAttribute(USER_LOGIN_STATE);
return true;
}controller
@PostMapping("/logout")
public boolean logout(HttpServletRequest request) {
if(request == null){
return false;
}
return userService.userLogout(request);
} 用户中心项目笔记(用户管理)
https://thrinisty.github.io/Blog/posts/用户中心项目笔记用户管理/