From 1fad0578c97abbb7fc30f59eb1de0f23f08ddde1 Mon Sep 17 00:00:00 2001 From: zhangmei <645025773@qq.com> Date: 星期四, 27 三月 2025 15:21:15 +0800 Subject: [PATCH] 流水、开票营业部权限 --- ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/COSController.java | 39 +++++++++++++++++++++++++++++++++------ 1 files changed, 33 insertions(+), 6 deletions(-) diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/COSController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/COSController.java index dad3be4..6aa9856 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/COSController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/COSController.java @@ -2,7 +2,9 @@ import com.alibaba.fastjson2.JSON; import com.ruoyi.common.config.FileUploadConfig; +import com.ruoyi.common.constant.CacheConstants; import com.ruoyi.common.core.domain.R; +import com.ruoyi.common.core.redis.RedisCache; import com.ruoyi.common.utils.StringUtils; import com.ruoyi.framework.web.service.TokenService; import com.ruoyi.system.model.TFile; @@ -68,7 +70,7 @@ String token = tokenService.getLoginUser().getToken(); StringBuffer url = new StringBuffer(); url.append(getLocalUrlPrefix()) - .append("/cos/get/").append(fileId).append("&s=").append(URLEncoder.encode(token)) + .append("/cos/get/").append(fileId).append("?s=").append(URLEncoder.encode(token)) ; return url.toString(); } @@ -99,7 +101,8 @@ } } - + @Autowired + private RedisCache redisCache; @GetMapping("get/{fileId}") public void get(@PathVariable("fileId") String fileid,@RequestParam("s") String s){ @@ -111,6 +114,11 @@ failResponse("token不能为空"); return; } + Object object = redisCache.getCacheObject(CacheConstants.LOGIN_TOKEN_KEY + s); + if (object==null){ + failResponse("用户登录已失效"); + return; + } TFile file = sysFileService.getById(fileid); if (file==null){ failResponse("图片不存在"); @@ -119,8 +127,27 @@ tencentCosUtil.download(file); } + + @GetMapping("get/file") + public void getFile(@RequestParam("fileUrl") String fileUrl,@RequestParam("s") String s){ + if (StringUtils.isEmpty(fileUrl)){ + failResponse("文件路径不能为空"); + return; + } + if (StringUtils.isEmpty(s)){ + failResponse("token不能为空"); + return; + } + Object object = redisCache.getCacheObject(CacheConstants.LOGIN_TOKEN_KEY + s); + if (object==null){ + failResponse("用户登录已失效"); + return; + } + tencentCosUtil.download(fileUrl); + } + /** - * + * 新上传接口,下一版更新 * @param file * @param folder 上传到cos的文件目录:如/contract/ * @return @@ -130,7 +157,7 @@ @ApiImplicitParams({ @ApiImplicitParam(value = "文件", name = "file", dataType = "MultipartFile", required = true) }) - public R<TFile> upload(@RequestParam("file") MultipartFile file, @RequestParam("folder") String folder) { + public R<TFile> uploadnew(@RequestParam("file") MultipartFile file, @RequestParam("folder") String folder) { TFile tFile = tencentCosUtil.upload(file,folder); tFile.setFileUrl(getLocalFileUrlPrefix(tFile.getId())); return R.ok(tFile); @@ -147,8 +174,8 @@ @ApiImplicitParams({ @ApiImplicitParam(value = "文件", name = "file", dataType = "MultipartFile", required = true) }) - public R<String> upload(@RequestParam("file") MultipartFile file) { - String url = tencentCosUtil.upLoadFile(file); + public R<String> upload(@RequestParam("file") MultipartFile file,@RequestParam("folder") String folder) { + String url = tencentCosUtil.upLoadFile(file,folder); return R.ok(url, url); } @PostMapping("/downloadImg") -- Gitblit v1.7.1