From 4d3dc99a8ec98e18609f2dca23a6a28fd25069fc Mon Sep 17 00:00:00 2001 From: xiangpei <xiangpei@timesnew.cn> Date: 星期三, 23 十月 2024 16:55:27 +0800 Subject: [PATCH] 用户查询优化 --- src/main/java/com/ycl/jxkg/controller/admin/UserController.java | 46 +++++++++++++++++++++++++++++++++++----------- 1 files changed, 35 insertions(+), 11 deletions(-) diff --git a/src/main/java/com/ycl/jxkg/controller/admin/UserController.java b/src/main/java/com/ycl/jxkg/controller/admin/UserController.java index d9aa558..8e08622 100644 --- a/src/main/java/com/ycl/jxkg/controller/admin/UserController.java +++ b/src/main/java/com/ycl/jxkg/controller/admin/UserController.java @@ -1,30 +1,37 @@ package com.ycl.jxkg.controller.admin; import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper; +import com.baomidou.mybatisplus.extension.conditions.update.LambdaUpdateChainWrapper; +import com.github.pagehelper.PageInfo; import com.ycl.jxkg.base.BaseApiController; import com.ycl.jxkg.base.Result; -import com.ycl.jxkg.domain.enums.RoleEnum; -import com.ycl.jxkg.domain.other.KeyValue; +import com.ycl.jxkg.base.SystemCode; +import com.ycl.jxkg.context.WebContext; import com.ycl.jxkg.domain.entity.User; import com.ycl.jxkg.domain.entity.UserEventLog; -import com.ycl.jxkg.domain.enums.UserStatusEnum; +import com.ycl.jxkg.domain.other.KeyValue; import com.ycl.jxkg.domain.vo.StudentVO; +import com.ycl.jxkg.domain.vo.admin.user.*; +import com.ycl.jxkg.enums.RoleEnum; +import com.ycl.jxkg.enums.UserStatusEnum; import com.ycl.jxkg.service.AuthenticationService; import com.ycl.jxkg.service.UserEventLogService; import com.ycl.jxkg.service.UserService; import com.ycl.jxkg.utils.DateTimeUtil; -import com.ycl.jxkg.domain.vo.admin.user.*; import com.ycl.jxkg.utils.PageInfoHelper; -import com.github.pagehelper.PageInfo; - import lombok.RequiredArgsConstructor; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.BeanUtils; import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; +import javax.servlet.http.HttpServletResponse; import javax.validation.Valid; +import java.text.ParseException; +import java.text.SimpleDateFormat; import java.util.Date; import java.util.List; +import java.util.Objects; import java.util.UUID; import java.util.stream.Collectors; @@ -36,9 +43,17 @@ private final UserService userService; private final UserEventLogService userEventLogService; private final AuthenticationService authenticationService; - + private final WebContext webContext; + private final Integer teacher = 2; + private final Integer student = 1; @RequestMapping(value = "/page/list", method = RequestMethod.POST) public Result<PageInfo<UserResponseVO>> pageList(@RequestBody UserPageRequestVO model) { + if(!student.equals(model.getRole())) { + User currentUser = webContext.getCurrentUser(); + if (teacher.equals(currentUser.getRole())) { + return Result.fail(SystemCode.InnerError.getCode(), "鎮ㄦ病鏈夎闂潈闄�"); + } + } PageInfo<User> pageInfo = userService.userPage(model); PageInfo<UserResponseVO> page = PageInfoHelper.copyMap(pageInfo, d -> UserResponseVO.from(d)); return Result.ok(page); @@ -103,11 +118,9 @@ return new Result<>(3, "瀵嗙爜涓嶈兘涓虹┖"); } } - if (StringUtils.isBlank(model.getBirthDay())) { - model.setBirthDay(null); - } User user = new User(); BeanUtils.copyProperties(model, user); + user.setAge(model.getAge()); if (model.getId() == null) { String encodePwd = authenticationService.pwdEncode(model.getPassword()); @@ -153,7 +166,7 @@ @RequestMapping(value = "/delete/{id}", method = RequestMethod.POST) public Result delete(@PathVariable Integer id) { User user = userService.getUserById(id); - userService.updateById(user); + userService.removeById(user.getId()); return Result.ok(); } @@ -164,4 +177,15 @@ return Result.ok(keyValues); } + @GetMapping("importTemplate") + public void importTemplate(HttpServletResponse response) { + userService.importTemplate(response); + } + + @PostMapping("import") + public Result<String> importExcel(MultipartFile file) { + return Result.ok(userService.importExcel(file)); + } + + } -- Gitblit v1.8.0