7-31 删除角色或岗位或角色时,同时删除对应关联表,优化后续查询效率及外键不存在问题

This commit is contained in:
郝彬 2025-07-31 10:41:01 +08:00
parent 35fdcf14f6
commit 9723dc0390
3 changed files with 18 additions and 0 deletions

View File

@ -1,10 +1,13 @@
package com.dite.znpt.web.controller; package com.dite.znpt.web.controller;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.dite.znpt.domain.PageResult; import com.dite.znpt.domain.PageResult;
import com.dite.znpt.domain.Result; import com.dite.znpt.domain.Result;
import com.dite.znpt.domain.entity.UserPostEntity;
import com.dite.znpt.domain.vo.PostReq; import com.dite.znpt.domain.vo.PostReq;
import com.dite.znpt.domain.vo.PostResp; import com.dite.znpt.domain.vo.PostResp;
import com.dite.znpt.service.PostService; import com.dite.znpt.service.PostService;
import com.dite.znpt.service.UserPostService;
import com.dite.znpt.util.ValidationGroup; import com.dite.znpt.util.ValidationGroup;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
@ -26,6 +29,9 @@ public class PostController {
@Resource @Resource
private PostService postService; private PostService postService;
@Resource
private UserPostService userPostService;
@ApiOperation(value = "分页查询岗位信息列表", httpMethod = "GET") @ApiOperation(value = "分页查询岗位信息列表", httpMethod = "GET")
@GetMapping("/page") @GetMapping("/page")
public PageResult<PostResp> page(@RequestParam(value = "postName", required = false) String postName){ public PageResult<PostResp> page(@RequestParam(value = "postName", required = false) String postName){
@ -61,6 +67,7 @@ public class PostController {
@ApiOperation(value = "删除岗位信息", httpMethod = "DELETE") @ApiOperation(value = "删除岗位信息", httpMethod = "DELETE")
@DeleteMapping("/{postId}") @DeleteMapping("/{postId}")
public Result<?> remove(@PathVariable String postId){ public Result<?> remove(@PathVariable String postId){
userPostService.remove(new QueryWrapper<UserPostEntity>().eq("post_id", postId));
postService.deleteById(postId); postService.deleteById(postId);
return Result.ok(); return Result.ok();
} }

View File

@ -1,7 +1,9 @@
package com.dite.znpt.web.controller; package com.dite.znpt.web.controller;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.dite.znpt.domain.PageResult; import com.dite.znpt.domain.PageResult;
import com.dite.znpt.domain.Result; import com.dite.znpt.domain.Result;
import com.dite.znpt.domain.entity.UserRoleEntity;
import com.dite.znpt.domain.vo.RoleMenuReq; import com.dite.znpt.domain.vo.RoleMenuReq;
import com.dite.znpt.domain.vo.RoleReq; import com.dite.znpt.domain.vo.RoleReq;
import com.dite.znpt.domain.vo.RoleResp; import com.dite.znpt.domain.vo.RoleResp;
@ -73,6 +75,7 @@ public class RoleController {
@ApiOperation(value = "删除角色信息", httpMethod = "DELETE") @ApiOperation(value = "删除角色信息", httpMethod = "DELETE")
@DeleteMapping("/{roleId}") @DeleteMapping("/{roleId}")
public Result<?> delete(@PathVariable String roleId){ public Result<?> delete(@PathVariable String roleId){
userRoleService.remove(new QueryWrapper<UserRoleEntity>().eq("role_id", roleId));
roleService.deleteById(roleId); roleService.deleteById(roleId);
return Result.ok(); return Result.ok();
} }

View File

@ -1,9 +1,13 @@
package com.dite.znpt.web.controller; package com.dite.znpt.web.controller;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.dite.znpt.domain.PageResult; import com.dite.znpt.domain.PageResult;
import com.dite.znpt.domain.Result; import com.dite.znpt.domain.Result;
import com.dite.znpt.domain.entity.UserPostEntity;
import com.dite.znpt.domain.entity.UserRoleEntity;
import com.dite.znpt.domain.vo.*; import com.dite.znpt.domain.vo.*;
import com.dite.znpt.service.UserPostService;
import com.dite.znpt.service.UserRoleService; import com.dite.znpt.service.UserRoleService;
import com.dite.znpt.service.UserService; import com.dite.znpt.service.UserService;
import com.dite.znpt.util.ValidationGroup; import com.dite.znpt.util.ValidationGroup;
@ -26,6 +30,8 @@ public class UserController {
private UserService userService; private UserService userService;
@Resource @Resource
private UserRoleService userRoleService; private UserRoleService userRoleService;
@Resource
private UserPostService userPostService;
@ApiOperation(value = "分页查询用户信息列表", httpMethod = "GET") @ApiOperation(value = "分页查询用户信息列表", httpMethod = "GET")
@GetMapping("/page") @GetMapping("/page")
@ -68,6 +74,8 @@ public class UserController {
@ApiOperation(value = "删除用户信息", httpMethod = "DELETE") @ApiOperation(value = "删除用户信息", httpMethod = "DELETE")
@DeleteMapping("/{userId}") @DeleteMapping("/{userId}")
public Result<?> remove(@PathVariable String userId) { public Result<?> remove(@PathVariable String userId) {
userRoleService.remove(new QueryWrapper<UserRoleEntity>().eq("user_id", userId));
userPostService.remove(new QueryWrapper<UserPostEntity>().eq("user_id", userId));
userService.deleteById(userId); userService.deleteById(userId);
return Result.ok(); return Result.ok();
} }