From aa8836a65e97e297340fff3a42615f0a36f314e7 Mon Sep 17 00:00:00 2001
From: baizonghao <1719256278@qq.com>
Date: 星期一, 22 五月 2023 16:10:10 +0800
Subject: [PATCH] 后台管理端删除聊天记录,新增新增头像,用户管理删选条件等

---
 src/main/java/com/example/jz/controller/UserController.java |   56 ++++++++++++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 48 insertions(+), 8 deletions(-)

diff --git a/src/main/java/com/example/jz/controller/UserController.java b/src/main/java/com/example/jz/controller/UserController.java
index e88dbff..0e4a015 100644
--- a/src/main/java/com/example/jz/controller/UserController.java
+++ b/src/main/java/com/example/jz/controller/UserController.java
@@ -4,21 +4,28 @@
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
 import com.baomidou.mybatisplus.core.toolkit.StringUtils;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.api.ApiController;
 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.dto.UserExpDto;
 import com.example.jz.modle.entity.*;
 import com.example.jz.service.*;
+import com.example.jz.utils.EasyExcelUtils;
 import com.example.jz.utils.Md5Utils;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
+import javax.servlet.http.HttpServletResponse;
 import java.io.Serializable;
 import java.util.*;
 import java.util.function.Consumer;
+import java.util.function.Function;
+import java.util.stream.Collectors;
 
 /**
  * 鐢ㄦ埛琛�(User)琛ㄦ帶鍒跺眰
@@ -56,18 +63,24 @@
     @GetMapping
     @ApiOperation("鍒嗛〉鏌ヨ鎵�鏈夋暟鎹�")
     public R selectAll(Page<User> page, User user) {
-        return R.ok(this.userService.page(page, new QueryWrapper<User>()
+        R<Page<User>> res = 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>>() {
+                .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("nick_name", user.getNickName());
+                        userQueryWrapper.like("real_name", user.getRealName()).or().like("user_mobile", user.getUserMobile());
                     }
                 })
-                .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.getUserMobile()) && StringUtils.isBlank(user.getRealName()), "user_mobile", user.getUserMobile())
+                .and(StringUtils.isNotBlank(user.getRealName()) && StringUtils.isBlank(user.getNickName()), new Consumer<QueryWrapper<User>>() {
+                            @Override
+                            public void accept(QueryWrapper<User> userQueryWrapper) {
+                                userQueryWrapper.like("real_name", user.getRealName());
+                            }
+                        })
+//                .like(StringUtils.isNotBlank(user.getRealName()) && StringUtils.isBlank(user.getNickName()), "real_name", user.getRealName())
                 .orderByDesc("ctime")));
+        return res;
     }
 
     /**
@@ -143,7 +156,7 @@
     }
 
     @DeleteMapping("/manager")
-    @ApiOperation("鍒犻櫎绠$悊")
+    @ApiOperation("鍒犻櫎绠$悊浜哄憳")
     public R removeManager(@RequestParam Integer id) {
         List<Cause> list = causeService.list(new LambdaQueryWrapper<Cause>().eq(Cause::getUserId, id));
         if (!Objects.isNull(list) && list.size() != 0){
@@ -164,11 +177,24 @@
         return R.ok(userService.removeById(id));
     }
 
+    @DeleteMapping("/crowd")
+    @ApiOperation("鍒犻櫎鏅�氱敤鎴�")
+    public R removeCrowd(@RequestParam Integer id){
+        List<Report> list = reportService.list(Wrappers.<Report>lambdaQuery().eq(Report::getUserId, id));
+        for (Report report : list) {
+            groupUserService.remove(new LambdaQueryWrapper<GroupUser>().eq(GroupUser::getUserId, report.getId()));
+            messageService.remove(new LambdaQueryWrapper<Message>().eq(Message::getUserId, report.getId()));
+            reportService.removeById(report.getId());
+        }
+        userService.remove(Wrappers.<User>lambdaQuery().eq(User::getId, id));
+        return R.ok();
+    }
+
     @GetMapping("/manager")
     @ApiOperation("鍒嗛〉鏌ヨ鎵�鏈夋暟鎹�")
     public R selectManager(Page<User> page, User user) {
         return R.ok(userService.page(page, new QueryWrapper<User>()
-                .eq("role", 1)
+                .eq("role", 1).ne("id", 1)
                 .and(StringUtils.isNotBlank(user.getUserMobile()) && StringUtils.isNotBlank(user.getRealName()), new Consumer<QueryWrapper<User>>() {
                     @Override
                     public void accept(QueryWrapper<User> userQueryWrapper) {
@@ -224,4 +250,18 @@
         user.setRole(1);
         return R.ok(userService.updateById(user));
     }
+
+
+    @ApiOperation("鐢ㄦ埛淇℃伅瀵煎嚭")
+    @PostMapping("/exp")
+    public void UserExp(HttpServletResponse response){
+        List<User> list = userService.list(Wrappers.<User>lambdaQuery().eq(User::getRole, 0).eq(User::getStatus, 1));
+        List<UserExpDto> userExpDtos = list.stream().map(user -> {
+            UserExpDto userExpDto = new UserExpDto();
+            BeanUtils.copyProperties(user, userExpDto);
+            return userExpDto;
+        }).collect(Collectors.toList());
+        String sheetName = "鐢ㄦ埛瀵煎嚭";
+        EasyExcelUtils.export1(response, sheetName, UserExpDto.class, userExpDtos, "鐢ㄦ埛瀵煎嚭");
+    }
 }

--
Gitblit v1.8.0