From 604d00f67ddcf25a9d079ceddd1c668b2a4e5288 Mon Sep 17 00:00:00 2001 From: mitao <2763622819@qq.com> Date: 星期五, 19 四月 2024 15:08:22 +0800 Subject: [PATCH] bug修复 --- ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TbDeptController.java | 62 ++++++++++++++++++++++--------- 1 files changed, 44 insertions(+), 18 deletions(-) diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TbDeptController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TbDeptController.java index 4454b26..6910a20 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TbDeptController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TbDeptController.java @@ -8,9 +8,12 @@ import com.ruoyi.common.exception.ServiceException; import com.ruoyi.common.utils.BeanUtils; import com.ruoyi.common.utils.CollUtils; +import com.ruoyi.common.utils.EasyExcelUtil; import com.ruoyi.common.utils.SecurityUtils; import com.ruoyi.system.dto.update.DeptFocusDTO; import com.ruoyi.system.dto.update.DeptUpdateDTO; +import com.ruoyi.system.handler.CustomCellWriteHandler; +import com.ruoyi.system.handler.TitleHandler; import com.ruoyi.system.query.DeptQuery; import com.ruoyi.system.service.ISysUserService; import com.ruoyi.system.service.TbDeptService; @@ -19,17 +22,24 @@ import com.ruoyi.web.controller.lisenter.DeptImportListener; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; +import java.io.InputStream; +import java.net.URLEncoder; +import java.util.HashMap; +import java.util.Map; +import java.util.Optional; +import javax.servlet.http.HttpServletResponse; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.transaction.annotation.Transactional; import org.springframework.validation.annotation.Validated; -import org.springframework.web.bind.annotation.*; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.RequestPart; +import org.springframework.web.bind.annotation.RestController; import org.springframework.web.multipart.MultipartFile; - -import javax.servlet.http.HttpServletResponse; -import java.io.InputStream; -import java.net.URLEncoder; -import java.util.Optional; /** * <p> @@ -49,6 +59,7 @@ private final HttpServletResponse response; private final TbDeptService tbDeptService; private final ISysUserService sysUserService; + /** * 导入模板下载 */ @@ -64,26 +75,35 @@ // 这里URLEncoder.encode可以防止中文乱码 当然和easyexcel没有关系 String fileName = URLEncoder.encode("部门导入模板", "UTF-8"); response.setHeader("Content-disposition", "attachment;filename=" + fileName + ".xlsx"); - EasyExcel.write(response.getOutputStream(), DeptExcel.class).sheet("模板").doWrite(CollUtils.emptyList()); + Map<Integer, String[]> selectedMap = new HashMap<>(); + selectedMap.put(3, new String[]{"省本级", "市", "开发区", "县"}); + selectedMap.put(4, new String[]{"是", "否"}); + EasyExcel.write(response.getOutputStream(), DeptExcel.class).sheet("模板") + .registerWriteHandler(EasyExcelUtil.getStyleStrategy()) + .registerWriteHandler(new CustomCellWriteHandler()) + .registerWriteHandler(new TitleHandler(selectedMap)) + .doWrite(CollUtils.emptyList()); } catch (Exception e) { - log.error("模板下载异常",e); + log.error("模板下载异常", e); throw new ServiceException("模板下载失败,请联系管理员!"); } } /** * 导入 + * * @param file 文件 * @return R */ @PostMapping("/import") @ApiOperation("导入") @Transactional(rollbackFor = Exception.class) - public R<Void> importExcel(@RequestPart("file")MultipartFile file) { + public R<Void> importExcel(@RequestPart("file") MultipartFile file) { try { //tbDeptService.importExcel(file); InputStream inputStream = file.getInputStream(); - EasyExcel.read(inputStream, DeptExcel.class, new DeptImportListener(sysUserService)).sheet().doRead(); + EasyExcel.read(inputStream, DeptExcel.class, new DeptImportListener(sysUserService)) + .sheet().doRead(); inputStream.close(); } catch (Exception e) { if (e instanceof ServiceException) { @@ -97,8 +117,9 @@ /** * 分页条件查询 + * * @param query 查询条件 - * @return R<PageVO<DeptVO>> + * @return R<PageVO < DeptVO>> */ @PostMapping("/page") @ApiOperation("分页条件查询") @@ -116,6 +137,7 @@ /** * 根据id查询部门详情 + * * @param userId 部门id * @return DeptVO */ @@ -123,9 +145,10 @@ @ApiOperation("根据id查询部门详情") public R<DeptVO> getDetails(@RequestParam Long userId) { try { - Optional<SysUser> sysUser = sysUserService.lambdaQuery().eq(SysUser::getUserId, userId).oneOpt(); + Optional<SysUser> sysUser = sysUserService.lambdaQuery().eq(SysUser::getUserId, userId) + .oneOpt(); if (sysUser.isPresent()) { - return R.ok(BeanUtils.copyBean(sysUser.get(),DeptVO.class)); + return R.ok(BeanUtils.copyBean(sysUser.get(), DeptVO.class)); } } catch (Exception e) { if (e instanceof ServiceException) { @@ -139,12 +162,13 @@ /** * 编辑 + * * @param dto 部门更新实体 * @return 响应成功 */ @PostMapping("/edit") @ApiOperation("编辑") - public R<Void> edit(@RequestBody DeptUpdateDTO dto){ + public R<Void> edit(@RequestBody DeptUpdateDTO dto) { try { dto.setPassword(SecurityUtils.encryptPassword(dto.getPassword())); sysUserService.lambdaUpdate().set(SysUser::getAreaAlias, dto.getAreaAlias()) @@ -166,23 +190,25 @@ /** * 重点关注 + * * @param dto 部门更新实体 * @return 响应成功 */ @PostMapping("/focus") @ApiOperation("重点关注") - public R<Object> focus(@RequestBody DeptFocusDTO dto){ - tbDeptService.focus(dto); + public R<Object> focus(@RequestBody DeptFocusDTO dto) { + tbDeptService.focus(dto); return R.ok(); } /** * 部门未上传季度数据提示 + * * @return Void */ @PostMapping("/reporting-message") - @ApiOperation(value = "部门未上传季度数据提示",notes = "code=200不展示,code=500 展示返回的msg") - public R<Void> reportingMessage(){ + @ApiOperation(value = "部门未上传季度数据提示", notes = "code=200不展示,code=500 展示返回的msg") + public R<Void> reportingMessage() { return tbDeptService.reportingMessage(); } } -- Gitblit v1.7.1