| | |
| | | import java.io.OutputStream; |
| | | import java.net.HttpURLConnection; |
| | | import java.net.URL; |
| | | import java.util.Arrays; |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * 对象存储端点 |
| | |
| | | } |
| | | |
| | | /** |
| | | * 上传文件指定后缀并保存至附件表 |
| | | * |
| | | * @param file 文件 |
| | | * @return ObjectStat |
| | | */ |
| | | @SneakyThrows |
| | | @PostMapping("/put-file-attach-suffix") |
| | | public R<BladeFile> putFileAttachSuffix(@RequestParam MultipartFile file, @RequestParam String suffix) { |
| | | String fileName = file.getOriginalFilename(); |
| | | String fileExtension = fileName.substring(fileName.lastIndexOf(".") + 1); |
| | | String[] split = suffix.split(","); |
| | | List<String> list = Arrays.asList(split); |
| | | if (list.contains(fileExtension)) { |
| | | BladeFile bladeFile = ossBuilder.template().putFile(fileName, file.getInputStream()); |
| | | Long attachId = buildAttach(fileName, file.getSize(), bladeFile); |
| | | bladeFile.setAttachId(attachId); |
| | | // 修改link |
| | | changeLink(bladeFile); |
| | | // 返回 |
| | | return R.data(bladeFile); |
| | | } else { |
| | | return R.fail("上传的附件必须是pdf,ppt,doc,docx格式!"); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 上传文件并保存至附件表 |
| | | * |
| | | * @param fileName 存储桶对象名称 |