From 45f315747763737751f9c8c698a73e16845e2600 Mon Sep 17 00:00:00 2001 From: zhouwentao <1577701412@qq.com> Date: Mon, 24 Jun 2024 19:21:27 +0800 Subject: [PATCH] =?UTF-8?q?updates=20=E5=AF=BC=E5=87=BA=E5=BF=97=E6=84=BF?= =?UTF-8?q?=E5=8D=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mini/controller/MiniUserController.java | 22 +++++++++++-------- .../controller/ArtVolunteerController.java | 11 ++++++++-- .../org/jeecg/modules/yx/util/PdfUtil.java | 9 +------- 3 files changed, 23 insertions(+), 19 deletions(-) diff --git a/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/mini/controller/MiniUserController.java b/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/mini/controller/MiniUserController.java index 3fe5550..b118e6b 100644 --- a/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/mini/controller/MiniUserController.java +++ b/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/mini/controller/MiniUserController.java @@ -398,17 +398,21 @@ public class MiniUserController { Collection keys = redisTemplate.keys(CommonConstant.PREFIX_USER_TOKEN + "*"); for (String key : keys) { String token = (String)redisUtil.get(key); - SysUser sysUser = sysUserService.getUserByName(JwtUtil.getUsername(token)); - if (sysUser!=null) { - if(sysUser.getId().equals(user.getId())){ - //清空用户登录Token缓存 - redisUtil.del(CommonConstant.PREFIX_USER_TOKEN + token); - //清空用户登录Shiro权限缓存 - redisUtil.del(CommonConstant.PREFIX_USER_SHIRO_CACHE + sysUser.getId()); - //清空用户的缓存信息(包括部门信息),例如sys:cache:user:: - redisUtil.del(String.format("%s::%s", CacheConstant.SYS_USERS_CACHE, sysUser.getUsername())); + String username = JwtUtil.getUsername(token); + if (username.equals(user.getUsername())) { + SysUser sysUser = sysUserService.getUserByName(username); + if (sysUser!=null) { + if(sysUser.getId().equals(user.getId())){ + //清空用户登录Token缓存 + redisUtil.del(CommonConstant.PREFIX_USER_TOKEN + token); + //清空用户登录Shiro权限缓存 + redisUtil.del(CommonConstant.PREFIX_USER_SHIRO_CACHE + sysUser.getId()); + //清空用户的缓存信息(包括部门信息),例如sys:cache:user:: + redisUtil.del(String.format("%s::%s", CacheConstant.SYS_USERS_CACHE, sysUser.getUsername())); + } } } + } } diff --git a/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/web/controller/ArtVolunteerController.java b/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/web/controller/ArtVolunteerController.java index c60db77..1215b98 100644 --- a/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/web/controller/ArtVolunteerController.java +++ b/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/web/controller/ArtVolunteerController.java @@ -314,7 +314,7 @@ public class ArtVolunteerController { } @GetMapping(value = "/preview") - public void preview(@RequestParam(value = "id") String id, HttpServletResponse response) throws IOException { + public void preview(@RequestParam(value = "id") String id,@RequestParam(value = "type",defaultValue = "1") String type, HttpServletResponse response) throws IOException { // VolunteerDTO volunteerDTO = yxVolunteerService.findById(id); YxVolunteer yxVolunteer = yxVolunteerService.getById(id); AssertUtils.notNull(yxVolunteer,"请求参数有误"); @@ -358,7 +358,14 @@ public class ArtVolunteerController { variables.put("professionalCategory",professionalCategory); variables.put("batchList",batchList); listVars.add(variables); - PdfUtil.preview(templateEngine,"志愿单导出.pdf", "preview.html", listVars, response); + if (StringUtils.isNotBlank(type) && "1".equals(type)) { + // 下载 + PdfUtil.download(templateEngine, "preview.html", listVars, response,"志愿单导出.pdf"); + }else{ + // 预览 + PdfUtil.preview(templateEngine, "preview.html", listVars, response); + } + } } } diff --git a/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/yx/util/PdfUtil.java b/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/yx/util/PdfUtil.java index d74e2c3..99f9595 100644 --- a/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/yx/util/PdfUtil.java +++ b/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/yx/util/PdfUtil.java @@ -138,15 +138,8 @@ public class PdfUtil { * @param response HttpServletResponse * */ - public static void preview(TemplateEngine templateEngine,String pdfFileName, String templateName, List> listVars, HttpServletResponse response) { + public static void preview(TemplateEngine templateEngine,String templateName, List> listVars, HttpServletResponse response) { response.setContentType("application/pdf"); - String encodedFileName = null; - try { - encodedFileName = URLEncoder.encode(pdfFileName, "UTF-8"); - response.setHeader("Content-Disposition", "attachment;filename*=UTF-8''" + encodedFileName); - } catch (UnsupportedEncodingException e) { - throw new RuntimeException(e); - } try (ServletOutputStream out = response.getOutputStream()) { generateAll(templateEngine, templateName, out, listVars); out.flush();