mirror of
https://github.com/PlayEdu/PlayEdu
synced 2025-06-24 05:02:43 +08:00
代码优化
This commit is contained in:
parent
b77d9ae53e
commit
d05e2eecd1
@ -12,6 +12,7 @@ import xyz.playedu.api.constant.SystemConstant;
|
|||||||
import xyz.playedu.api.domain.User;
|
import xyz.playedu.api.domain.User;
|
||||||
import xyz.playedu.api.domain.UserDepartment;
|
import xyz.playedu.api.domain.UserDepartment;
|
||||||
import xyz.playedu.api.event.UserDestroyEvent;
|
import xyz.playedu.api.event.UserDestroyEvent;
|
||||||
|
import xyz.playedu.api.exception.NotFoundException;
|
||||||
import xyz.playedu.api.middleware.BackendPermissionMiddleware;
|
import xyz.playedu.api.middleware.BackendPermissionMiddleware;
|
||||||
import xyz.playedu.api.request.backend.UserImportRequest;
|
import xyz.playedu.api.request.backend.UserImportRequest;
|
||||||
import xyz.playedu.api.request.backend.UserRequest;
|
import xyz.playedu.api.request.backend.UserRequest;
|
||||||
@ -162,11 +163,8 @@ public class UserController {
|
|||||||
|
|
||||||
@BackendPermissionMiddleware(slug = BPermissionConstant.USER_UPDATE)
|
@BackendPermissionMiddleware(slug = BPermissionConstant.USER_UPDATE)
|
||||||
@GetMapping("/{id}")
|
@GetMapping("/{id}")
|
||||||
public JsonResponse edit(@PathVariable(name = "id") Integer id) {
|
public JsonResponse edit(@PathVariable(name = "id") Integer id) throws NotFoundException {
|
||||||
User user = userService.getById(id);
|
User user = userService.findOrFail(id);
|
||||||
if (user == null) {
|
|
||||||
return JsonResponse.error("学员不存在");
|
|
||||||
}
|
|
||||||
|
|
||||||
HashMap<String, Object> data = new HashMap<>();
|
HashMap<String, Object> data = new HashMap<>();
|
||||||
data.put("user", user);
|
data.put("user", user);
|
||||||
@ -177,11 +175,8 @@ public class UserController {
|
|||||||
@BackendPermissionMiddleware(slug = BPermissionConstant.USER_UPDATE)
|
@BackendPermissionMiddleware(slug = BPermissionConstant.USER_UPDATE)
|
||||||
@PutMapping("/{id}")
|
@PutMapping("/{id}")
|
||||||
@Transactional
|
@Transactional
|
||||||
public JsonResponse update(@PathVariable(name = "id") Integer id, @RequestBody @Validated UserRequest request) {
|
public JsonResponse update(@PathVariable(name = "id") Integer id, @RequestBody @Validated UserRequest request) throws NotFoundException {
|
||||||
User user = userService.getById(id);
|
User user = userService.findOrFail(id);
|
||||||
if (user == null) {
|
|
||||||
return JsonResponse.error("学员不存在");
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!request.getEmail().equals(user.getEmail()) && userService.emailIsExists(request.getEmail())) {
|
if (!request.getEmail().equals(user.getEmail()) && userService.emailIsExists(request.getEmail())) {
|
||||||
return JsonResponse.error("邮箱已存在");
|
return JsonResponse.error("邮箱已存在");
|
||||||
@ -230,15 +225,10 @@ public class UserController {
|
|||||||
|
|
||||||
@BackendPermissionMiddleware(slug = BPermissionConstant.USER_DESTROY)
|
@BackendPermissionMiddleware(slug = BPermissionConstant.USER_DESTROY)
|
||||||
@DeleteMapping("/{id}")
|
@DeleteMapping("/{id}")
|
||||||
public JsonResponse destroy(@PathVariable(name = "id") Integer id) {
|
public JsonResponse destroy(@PathVariable(name = "id") Integer id) throws NotFoundException {
|
||||||
User user = userService.getById(id);
|
User user = userService.findOrFail(id);
|
||||||
if (user == null) {
|
|
||||||
return JsonResponse.error("学员不存在");
|
|
||||||
}
|
|
||||||
userService.removeById(user.getId());
|
userService.removeById(user.getId());
|
||||||
|
|
||||||
context.publishEvent(new UserDestroyEvent(this, user.getId(), new Date()));
|
context.publishEvent(new UserDestroyEvent(this, user.getId(), new Date()));
|
||||||
|
|
||||||
return JsonResponse.success();
|
return JsonResponse.success();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2,6 +2,7 @@ package xyz.playedu.api.service;
|
|||||||
|
|
||||||
import xyz.playedu.api.domain.User;
|
import xyz.playedu.api.domain.User;
|
||||||
import com.baomidou.mybatisplus.extension.service.IService;
|
import com.baomidou.mybatisplus.extension.service.IService;
|
||||||
|
import xyz.playedu.api.exception.NotFoundException;
|
||||||
import xyz.playedu.api.types.paginate.PaginationResult;
|
import xyz.playedu.api.types.paginate.PaginationResult;
|
||||||
import xyz.playedu.api.types.paginate.UserPaginateFilter;
|
import xyz.playedu.api.types.paginate.UserPaginateFilter;
|
||||||
|
|
||||||
@ -20,4 +21,6 @@ public interface UserService extends IService<User> {
|
|||||||
List<String> existsEmailsByEmails(List<String> emails);
|
List<String> existsEmailsByEmails(List<String> emails);
|
||||||
|
|
||||||
void removeRelateDepartmentsByUserId(Integer userId);
|
void removeRelateDepartmentsByUserId(Integer userId);
|
||||||
|
|
||||||
|
User findOrFail(Integer id) throws NotFoundException;
|
||||||
}
|
}
|
||||||
|
@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import xyz.playedu.api.domain.User;
|
import xyz.playedu.api.domain.User;
|
||||||
import xyz.playedu.api.domain.UserDepartment;
|
import xyz.playedu.api.domain.UserDepartment;
|
||||||
|
import xyz.playedu.api.exception.NotFoundException;
|
||||||
import xyz.playedu.api.service.internal.UserDepartmentService;
|
import xyz.playedu.api.service.internal.UserDepartmentService;
|
||||||
import xyz.playedu.api.service.UserService;
|
import xyz.playedu.api.service.UserService;
|
||||||
import xyz.playedu.api.mapper.UserMapper;
|
import xyz.playedu.api.mapper.UserMapper;
|
||||||
@ -105,6 +106,15 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements Us
|
|||||||
QueryWrapper<UserDepartment> wrapper = userDepartmentService.query().getWrapper().eq("user_id", userId);
|
QueryWrapper<UserDepartment> wrapper = userDepartmentService.query().getWrapper().eq("user_id", userId);
|
||||||
userDepartmentService.remove(wrapper);
|
userDepartmentService.remove(wrapper);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public User findOrFail(Integer id) throws NotFoundException {
|
||||||
|
User user = getOne(query().getWrapper().eq("id", id));
|
||||||
|
if (user == null) {
|
||||||
|
throw new NotFoundException("学员不存在");
|
||||||
|
}
|
||||||
|
return user;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user