diff --git a/src/main/java/com/chinaunicom/mall/ebtp/extend/wps/service/impl/WpsServiceImpl.java b/src/main/java/com/chinaunicom/mall/ebtp/extend/wps/service/impl/WpsServiceImpl.java index 6f0b727..db652ae 100644 --- a/src/main/java/com/chinaunicom/mall/ebtp/extend/wps/service/impl/WpsServiceImpl.java +++ b/src/main/java/com/chinaunicom/mall/ebtp/extend/wps/service/impl/WpsServiceImpl.java @@ -119,7 +119,7 @@ public class WpsServiceImpl implements WpsService { re.setAppToken(tokenValue); re.setUrl(String.valueOf(urlMap.get("url"))); re.setUserId(cacheUserService.getCacheUser().getUserId()); - redisTemplate.opsForValue().set("wpsAppToken:"+in.getFileId(),in.getUserToken(),2, TimeUnit.HOURS); + redisTemplate.opsForValue().set("wpsAppToken:"+in.getFileId()+in.getPermission(),in.getUserToken(),2, TimeUnit.HOURS); return re; } @@ -190,11 +190,17 @@ public class WpsServiceImpl implements WpsService { */ @Override public Object saveWpsFile(String token, String userId, String userName, String fileId, String fileName, File file) { - Optional op=attachmentClient.upload(fileId,file); - Map mess=validateWps(token,fileId,op,"save"); + Map mess=validateWps(token,fileId,null,"write"); if(mess!=null){ return mess; } + Optional op=attachmentClient.upload(fileId,file); + if(!op.isPresent() ){ + mess= new HashMap<>(); + mess.put("result","20501007"); + mess.put("msg","文件上传失败"); + return mess; + } WpsFile wpsFile=new WpsFile(); wpsFile.setId(fileId); wpsFile.setName(fileName); @@ -207,22 +213,18 @@ public class WpsServiceImpl implements WpsService { private Map validateWps(String token,String fileId,Optional op,String permission){ Map mess= new HashMap<>(); mess.put("result","20501007"); - if(redisTemplate.opsForValue().get("wpsAppToken:"+fileId)==null){ + if(redisTemplate.opsForValue().get("wpsAppToken:"+fileId+permission)==null){ mess.put("msg","当前链接已失效"); return mess; } - if(!String.valueOf(redisTemplate.opsForValue().get("wpsAppToken:"+fileId)).equals(token)){ + if(!String.valueOf(redisTemplate.opsForValue().get("wpsAppToken:"+fileId+permission)).equals(token)){ mess.put("msg","您无权限访问"); return mess; } - if(!op.isPresent() && !"read".equals(permission)){ + if(op!=null && !op.isPresent() && !"read".equals(permission)){ mess.put("msg","查看的文件不存在"); return mess; } - if(!op.isPresent() && !"save".equals(permission)){ - mess.put("msg","文件上传失败"); - return mess; - } return null; } /**