From f9a89f158a9624d27fec314315a8b7f7dcb28af1 Mon Sep 17 00:00:00 2001 From: wl <173@qq.com> Date: 星期二, 27 十二月 2022 15:34:30 +0800 Subject: [PATCH] fix: 查询取消脱敏 --- src/main/java/com/example/jz/controller/UserController.java | 155 ++++++++++++++++++++++++++++++++++++++++++--------- 1 files changed, 128 insertions(+), 27 deletions(-) diff --git a/src/main/java/com/example/jz/controller/UserController.java b/src/main/java/com/example/jz/controller/UserController.java index 6b2c106..73e162d 100644 --- a/src/main/java/com/example/jz/controller/UserController.java +++ b/src/main/java/com/example/jz/controller/UserController.java @@ -1,31 +1,50 @@ 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; import com.baomidou.mybatisplus.extension.api.ApiController; -import com.baomidou.mybatisplus.extension.api.R; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import com.example.jz.modle.entity.User; -import com.example.jz.service.UserService; +import com.example.jz.modle.R; +import com.example.jz.modle.dto.ManagerDto; +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; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; -import javax.annotation.Resource; import java.io.Serializable; -import java.util.List; +import java.util.Date; +import java.util.function.Consumer; /** * 鐢ㄦ埛琛�(User)琛ㄦ帶鍒跺眰 * - * @author makejava + * @author 瀹夌懢鐒� * @since 2022-07-11 16:35:57 */ @RestController @RequestMapping("user") +@Api(tags = "鐢ㄦ埛绠$悊") public class UserController extends ApiController { - /** - * 鏈嶅姟瀵硅薄 - */ - @Resource private UserService userService; + + @Autowired + ReportService reportService; + @Autowired + GroupUserService groupUserService; + @Autowired + MessageService messageService; + @Autowired + CauseService causeService; + + @Autowired + public void setUserService(UserService userService) { + this.userService = userService; + } /** * 鍒嗛〉鏌ヨ鎵�鏈夋暟鎹� @@ -35,8 +54,20 @@ * @return 鎵�鏈夋暟鎹� */ @GetMapping + @ApiOperation("鍒嗛〉鏌ヨ鎵�鏈夋暟鎹�") public R selectAll(Page<User> page, User user) { - return success(this.userService.page(page, new QueryWrapper<>(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()) + .or() + .like(StringUtils.isNotBlank(user.getRealName()) && StringUtils.isBlank(user.getNickName()), "real_name", user.getRealName()) + .orderByDesc("ctime"))); } /** @@ -46,19 +77,9 @@ * @return 鍗曟潯鏁版嵁 */ @GetMapping("{id}") + @ApiOperation("閫氳繃涓婚敭鏌ヨ鍗曟潯鏁版嵁") public R selectOne(@PathVariable Serializable id) { - return success(this.userService.getById(id)); - } - - /** - * 鏂板鏁版嵁 - * - * @param user 瀹炰綋瀵硅薄 - * @return 鏂板缁撴灉 - */ - @PostMapping - public R insert(@RequestBody User user) { - return success(this.userService.save(user)); + return R.ok(this.userService.getById(id)); } /** @@ -68,18 +89,98 @@ * @return 淇敼缁撴灉 */ @PutMapping + @ApiOperation("淇敼鐢ㄦ埛鏁版嵁") public R update(@RequestBody User user) { - return success(this.userService.updateById(user)); + return R.ok(userService.updateById(user)); } /** * 鍒犻櫎鏁版嵁 * - * @param idList 涓婚敭缁撳悎 + * @param id 涓婚敭缁撳悎 * @return 鍒犻櫎缁撴灉 */ @DeleteMapping - public R delete(@RequestParam("idList") List<Long> idList) { - return success(this.userService.removeByIds(idList)); + @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)); + } + + + @PostMapping("/manager") + @ApiOperation("娣诲姞绠$悊") + public R addManager(@RequestBody ManagerDto managerDto) { + User user = new User().setRealName(managerDto.getRealName()) + .setLoginUsername(managerDto.getRealName()) + .setUserMobile(managerDto.getPhoneNumber()) + .setLoginPassword(Md5Utils.md5(managerDto.getPassword())) + .setRole(1) + .setCtime(new Date()); + return R.ok(userService.save(user)); + } + + @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>() + .eq("role", 1) + .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()) + .or() + .like(StringUtils.isNotBlank(user.getRealName()) && StringUtils.isBlank(user.getUserMobile()), "real_name", user.getRealName()) + .orderByDesc("ctime"))); + } + + @PutMapping("/manager") + @ApiOperation("淇敼绠$悊鍛樺瘑鐮�") + public R modify(@RequestBody ManagerDto managerDto) { + User user = new User().setLoginPassword(Md5Utils.md5(managerDto.getPassword())); + return R.ok(userService.update(user, new UpdateWrapper<User>().eq("user_mobile", managerDto.getPhoneNumber()).eq("real_name", managerDto.getRealName()))); + } + + @PostMapping("/add") + @ApiOperation("娣诲姞") + public R add(@RequestBody User user) { + user.setCtime(new Date()); + return R.ok(userService.save(user)); + } + + + /** + * 閲嶇疆绠$悊鍛樺瘑鐮� + * + * @param id 鐢ㄦ埛id + * @return + */ + @GetMapping("/resetPassword/{id}") + @ApiOperation("閲嶇疆绠$悊鍛樺瘑鐮�") + public R resetPassword(@PathVariable Serializable id) { + User user = userService.getById(id); + // 閲嶇疆鍒濆瀵嗙爜涓鸿韩浠借瘉鍚庡叚浣� + user.setLoginPassword(Md5Utils.md5(user.getUserIdcard().substring(user.getUserIdcard().length() - 6))); + return R.ok(userService.updateById(user)); } } -- Gitblit v1.8.0