From 8b26fa15912e355e57990946ac52f699130788c2 Mon Sep 17 00:00:00 2001
From: wl <173@qq.com>
Date: 星期二, 27 十二月 2022 11:15:21 +0800
Subject: [PATCH] fix: 删除管理删除用户删除案件

---
 src/main/java/com/example/jz/controller/UserController.java |   50 ++++++++++++++++++++++++++++++++++++--------------
 1 files changed, 36 insertions(+), 14 deletions(-)

diff --git a/src/main/java/com/example/jz/controller/UserController.java b/src/main/java/com/example/jz/controller/UserController.java
index d5a65b6..73e162d 100644
--- a/src/main/java/com/example/jz/controller/UserController.java
+++ b/src/main/java/com/example/jz/controller/UserController.java
@@ -1,5 +1,6 @@
 package com.example.jz.controller;
 
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
 import com.baomidou.mybatisplus.core.toolkit.StringUtils;
@@ -7,8 +8,8 @@
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.example.jz.modle.R;
 import com.example.jz.modle.dto.ManagerDto;
-import com.example.jz.modle.entity.User;
-import com.example.jz.service.UserService;
+import com.example.jz.modle.entity.*;
+import com.example.jz.service.*;
 import com.example.jz.utils.Md5Utils;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
@@ -32,6 +33,15 @@
     private UserService userService;
 
     @Autowired
+    ReportService reportService;
+    @Autowired
+    GroupUserService groupUserService;
+    @Autowired
+    MessageService messageService;
+    @Autowired
+    CauseService causeService;
+
+    @Autowired
     public void setUserService(UserService userService) {
         this.userService = userService;
     }
@@ -48,15 +58,15 @@
     public R selectAll(Page<User> page, User user) {
         return R.ok(this.userService.page(page, new QueryWrapper<User>()
                 .eq("role", 0)
-                        .and(StringUtils.isNotBlank(user.getNickName()) && StringUtils.isNotBlank(user.getRealName()), new Consumer<QueryWrapper<User>>() {
-                            @Override
-                            public void accept(QueryWrapper<User> userQueryWrapper) {
-                                userQueryWrapper.like("real_name", user.getRealName()).or().like("nick_name", user.getNickName());
-                            }
-                        })
-                .like(StringUtils.isNotBlank(user.getNickName())&&StringUtils.isBlank(user.getRealName()), "nick_name", user.getNickName())
+                .and(StringUtils.isNotBlank(user.getNickName()) && StringUtils.isNotBlank(user.getRealName()), new Consumer<QueryWrapper<User>>() {
+                    @Override
+                    public void accept(QueryWrapper<User> userQueryWrapper) {
+                        userQueryWrapper.like("real_name", user.getRealName()).or().like("nick_name", user.getNickName());
+                    }
+                })
+                .like(StringUtils.isNotBlank(user.getNickName()) && StringUtils.isBlank(user.getRealName()), "nick_name", user.getNickName())
                 .or()
-                .like(StringUtils.isNotBlank(user.getRealName())&&StringUtils.isBlank(user.getNickName()), "real_name", user.getRealName())
+                .like(StringUtils.isNotBlank(user.getRealName()) && StringUtils.isBlank(user.getNickName()), "real_name", user.getRealName())
                 .orderByDesc("ctime")));
     }
 
@@ -93,6 +103,14 @@
     @DeleteMapping
     @ApiOperation("鍒犻櫎鐢ㄦ埛鏁版嵁")
     public R delete(@RequestParam("id") Integer id) {
+        reportService
+                .list(new LambdaQueryWrapper<Report>().eq(Report::getUserId, id))
+                .stream()
+                .forEach(item -> {
+                    groupUserService.remove(new LambdaQueryWrapper<GroupUser>().eq(GroupUser::getUserId, item.getId()));
+                    messageService.remove(new LambdaQueryWrapper<Message>().eq(Message::getUserId, item.getId()));
+                });
+        reportService.remove(new LambdaQueryWrapper<Report>().eq(Report::getUserId, id));
         return R.ok(this.userService.removeById(id));
     }
 
@@ -112,23 +130,27 @@
     @DeleteMapping("/manager")
     @ApiOperation("鍒犻櫎绠$悊")
     public R removeManager(@RequestParam Integer id) {
+        causeService.list(new LambdaQueryWrapper<Cause>().eq(Cause::getUserId, id)).forEach(item -> {
+            causeService.deleteCause(item.getId());
+        });
+        messageService.remove(new LambdaQueryWrapper<Message>().eq(Message::getCopId, id));
         return R.ok(userService.removeById(id));
     }
 
     @GetMapping("/manager")
     @ApiOperation("鍒嗛〉鏌ヨ鎵�鏈夋暟鎹�")
     public R selectManager(Page<User> page, User user) {
-        return R.ok( userService.page(page, new QueryWrapper<User>()
+        return R.ok(userService.page(page, new QueryWrapper<User>()
                 .eq("role", 1)
-                .and( StringUtils.isNotBlank(user.getUserMobile()) && StringUtils.isNotBlank(user.getRealName()) ,new Consumer<QueryWrapper<User>>() {
+                .and(StringUtils.isNotBlank(user.getUserMobile()) && StringUtils.isNotBlank(user.getRealName()), new Consumer<QueryWrapper<User>>() {
                     @Override
                     public void accept(QueryWrapper<User> userQueryWrapper) {
                         userQueryWrapper.like("real_name", user.getRealName()).or().like("user_mobile", user.getUserMobile());
                     }
                 })
-                .like(StringUtils.isNotBlank(user.getUserMobile())&&StringUtils.isBlank(user.getRealName()), "user_mobile", user.getUserMobile())
+                .like(StringUtils.isNotBlank(user.getUserMobile()) && StringUtils.isBlank(user.getRealName()), "user_mobile", user.getUserMobile())
                 .or()
-                .like(StringUtils.isNotBlank(user.getRealName())&&StringUtils.isBlank(user.getUserMobile()), "real_name", user.getRealName())
+                .like(StringUtils.isNotBlank(user.getRealName()) && StringUtils.isBlank(user.getUserMobile()), "real_name", user.getRealName())
                 .orderByDesc("ctime")));
     }
 

--
Gitblit v1.8.0