From 8c189b243bfbbacb2ab1ce79f4e1ff22708f125a Mon Sep 17 00:00:00 2001 From: whycxzp <perryhsu@163.com> Date: 星期一, 26 七月 2021 16:45:09 +0800 Subject: [PATCH] 修复接口 --- src/main/java/com/whyc/controller/UserController.java | 197 ++++++++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 185 insertions(+), 12 deletions(-) diff --git a/src/main/java/com/whyc/controller/UserController.java b/src/main/java/com/whyc/controller/UserController.java index 1632b0a..774c958 100644 --- a/src/main/java/com/whyc/controller/UserController.java +++ b/src/main/java/com/whyc/controller/UserController.java @@ -1,18 +1,33 @@ package com.whyc.controller; +import cn.afterturn.easypoi.excel.ExcelImportUtil; +import cn.afterturn.easypoi.excel.entity.ImportParams; +import cn.afterturn.easypoi.excel.entity.result.ExcelImportResult; import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.api.R; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.whyc.dto.Response; +import com.whyc.pojo.Dept; +import com.whyc.pojo.Job; import com.whyc.pojo.User; +import com.whyc.service.DeptService; +import com.whyc.service.JobService; import com.whyc.service.LoginService; import com.whyc.service.UserService; +import com.whyc.util.DigestsUtil; +import com.whyc.util.UserExcelVerify; import io.swagger.annotations.*; import lombok.extern.slf4j.Slf4j; +import org.apache.shiro.authz.annotation.Logical; +import org.apache.shiro.authz.annotation.RequiresPermissions; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; +import java.io.IOException; +import java.util.ArrayList; import java.util.Date; import java.util.List; @@ -25,40 +40,95 @@ @Resource private UserService userService; + @Resource + private DeptService deptService; + + @Resource + private JobService jobService; + + @Resource + private UserExcelVerify userExcelVerify; + @PostMapping - @ApiOperation(value = "娣诲姞") + @ApiOperation(value = "娣诲姞鐢ㄦ埛") + //@RequiresPermissions(value = {"user:add","user:update"},logical = Logical.OR) public Response add(@RequestBody User user){ return userService.add(user); } @GetMapping - @ApiOperation(value = "鏌ヨbyId") - public User getById(@RequestParam int id){ - return userService.getById(id); + @ApiOperation(value = "鏌ヨ鐢ㄦ埛byId") + //@RequiresPermissions(value = {"user:get"}) + public Response getById(@RequestParam int id){ + User user = userService.getById(id); + if (user==null){ + return new Response().set(0,null,"姝ょ敤鎴蜂笉瀛樺湪"); + } + return new Response().set(1,user); } @GetMapping("/all") - @ApiOperation(value = "鏌ヨ鎵�鏈�") + @ApiOperation(value = "鏌ヨ鎵�鏈夌敤鎴�") + //@RequiresPermissions(value = {"user:get"}) public List<User> getAll(){ return userService.getAll(); } @GetMapping("/page") - @ApiOperation(value = "鏌ヨ鍒嗛〉") - public IPage<User> getPage(@RequestParam int pageNum,int pageSize){ + @ApiOperation(value = "鏌ヨ鐢ㄦ埛鍒嗛〉") + //@RequiresPermissions(value = {"user:get"}) + public IPage<User> getPage(@RequestParam int pageNum,@RequestParam int pageSize){ Page<Object> page = new Page<>(pageNum, pageSize); return userService.getAllWithPage(page); } + @PostMapping("/search") + @ApiOperation(value = "鏌ヨ鐢ㄦ埛鍒嗛〉-鏍规嵁绛涢�夋潯浠�") + //@RequiresPermissions(value = {"user:get"}) + public Response<IPage<User>> getPageByCondition(@RequestParam int pageNum,@RequestParam int pageSize,@RequestBody User user){ + return userService.getPageByCondition(pageNum,pageSize,user); + } + + @GetMapping("validatePassword") + @ApiOperation(value = "楠岃瘉瀵嗙爜") + public boolean validatePassword(@RequestParam int id, @RequestParam String password){ + return userService.validatePassword(id,password); + } + @GetMapping("getSaltPassword") + @ApiOperation(value = "鑾峰彇鍔犲瘑瀵嗙爜") + public String getSaltPassword(@RequestParam String password,@RequestParam String salt){ + return DigestsUtil.sha1(password,salt); + } + @PutMapping("updatePassword") + @ApiOperation(value = "淇敼瀵嗙爜") + public Response updatePassword(@RequestParam int id,@RequestParam String password){ + return userService.updatePassword(id,password); + } + + @PutMapping("resetPassword") + @ApiOperation(value = "閲嶇疆瀵嗙爜") + public Response resetPassword(@RequestParam int id){ + return userService.resetPassword(id); + } + @PutMapping - @ApiOperation(value = "缂栬緫") - public boolean update(@RequestBody User user){ + @ApiOperation(value = "缂栬緫鐢ㄦ埛") + //@RequiresPermissions(value = {"user:update"}) + public Response update(@RequestBody User user){ return userService.update(user); } - @DeleteMapping - @ApiOperation(value = "鍒犻櫎") - public boolean delete(@RequestParam int id){ + @PutMapping("freezeUser") + @ApiOperation(value = "鍚姩/鍐荤粨鐢ㄦ埛") + //@RequiresPermissions(value = {"user:update"}) + public Response updateUserFreeze(@RequestParam int id,@RequestParam int state){ + return userService.updateUserFreeze(id,state); + } + + @PutMapping("deleteUser") + @ApiOperation(value = "鍒犻櫎鐢ㄦ埛") + //@RequiresPermissions(value = {"user:delete"}) + public Response delete(@RequestParam int id){ return userService.delete(id); } @@ -71,4 +141,107 @@ return userService.loginCheck(request); } + + + @GetMapping("/getDepts") + @ApiOperation(value = "鑾峰彇閮ㄩ棬") + public List<Dept> getDepts(){ + return deptService.getAll(); + } + @PostMapping("addDept") + @ApiOperation(value = "娣诲姞閮ㄩ棬") + public Response addDept(@RequestBody Dept dept){ + return deptService.add(dept); + } + + @PutMapping("updateDept") + @ApiOperation(value = "缂栬緫閮ㄩ棬") + public Response update(@RequestBody Dept dept){ + return deptService.update(dept); + } + + @DeleteMapping("deleteDept") + @ApiOperation(value = "鍒犻櫎閮ㄩ棬") + public Response deleteDept(@RequestParam int id){ + return deptService.delete(id); + } + + + @GetMapping("/getJobs") + @ApiOperation(value = "鑾峰彇鑱屽姟") + public List<Job> getJobs(){ + return jobService.getAll(); + } + + @PostMapping("addJob") + @ApiOperation(value = "娣诲姞鑱屽姟") + public Response addJob(@RequestBody Job job){ + return jobService.add(job); + } + @PutMapping("updateJob") + @ApiOperation(value = "缂栬緫鑱屽姟") + public Response update(@RequestBody Job job){ + return jobService.update(job); + } + + @DeleteMapping("deleteJob") + @ApiOperation(value = "鍒犻櫎鑱屽姟") + public Response deleteJob(@RequestParam int id){ + return jobService.delete(id); + } + + + @SuppressWarnings("AlibabaRemoveCommentedCode") + @PostMapping("/importUserExcel") + @ApiOperation(value = "瀵煎叆鐢ㄦ埛鏁版嵁") + public Response importExcel2(@RequestParam("file") MultipartFile file) { + Response response = new Response(); + ImportParams importParams = new ImportParams(); + // 鏁版嵁澶勭悊 + //璁剧疆鏍囬绗�1琛屽紑濮� + importParams.setTitleRows(0); + //璁剧疆寮�濮嬭浠庣2琛屽紑濮� + importParams.setHeadRows(1); + // 闇�瑕侀獙璇� + importParams.setNeedVerify(true); + //璁惧強涓�涓嚜瀹氫箟鏍¢獙 锛堣嚜瀹氫箟鏍¢獙鍚嶅瓧涓嶅彲閲嶅锛� 浣跨敤娉ㄨВ娉ㄥ叆 + //UserExcelVerify userExcelVerify = new UserExcelVerify(); + importParams.setVerifyHandler(userExcelVerify); + try { + ExcelImportResult<User> result = ExcelImportUtil.importExcelMore(file.getInputStream(), User.class, + importParams); + List<User> successList = result.getList(); + //澶辫触缁撴灉闆� + List<User> failList = result.getFailList(); + /*failList.forEach(user -> { + System.out.println("楠岃瘉澶辫触鐨勪俊鎭細"+user+userExcelVerify.verifyHandler(user).getMsg()); + }); + successList.forEach(x->{ + System.out.println("閫氳繃楠岃瘉鐨勬暟鎹細"+x.toString()); + });*/ + String msg = ""; + for (User entity : result.getFailList()) { + msg += "绗�" + entity.getRowNum() + "琛岀殑閿欒鏄細" + entity.getErrorMsg()+";\n"; + //System.out.println(msg); + } + if (!successList.isEmpty()){ + boolean success = userService.addBatch(successList); + if (success && failList.isEmpty()){ + response.set(1,"鎴愬姛瀵煎叆"+successList.size()+"鏉℃暟鎹�;"); + } + }else{ + response.set(1,failList,"鎴愬姛瀵煎叆"+successList.size()+"鏉℃暟鎹�"+";瀵煎叆澶辫触"+failList.size()+"鏉℃暟鎹�;\n"+msg); + } + + + } catch (IOException e) { + e.printStackTrace(); + response.setMsg(0,"瀵煎叆澶辫触"); + } catch (Exception e) { + e.printStackTrace(); + response.setMsg(0,"瀵煎叆澶辫触"); + } + return response; + } + } -- Gitblit v1.9.1