From f139b3c8d3b14b16fc4d102fc2995c04a807476e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=A9=AC=E8=B6=85?= <1162714483@qq.com> Date: Sun, 11 Jul 2021 17:10:56 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=96=87=E4=BB=B6=E5=90=8E?= =?UTF-8?q?=EF=BC=8C=E5=90=8C=E6=97=B6=E4=BF=AE=E6=94=B9=E4=BF=9D=E5=AD=98?= =?UTF-8?q?=E6=96=87=E4=BB=B6=E7=9A=84md5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../file/controller/OfficeController.java | 23 ++++++++++--------- 1 file changed, 12 insertions(+), 11 deletions(-) diff --git a/src/main/java/com/qiwenshare/file/controller/OfficeController.java b/src/main/java/com/qiwenshare/file/controller/OfficeController.java index 3b80963..1197088 100644 --- a/src/main/java/com/qiwenshare/file/controller/OfficeController.java +++ b/src/main/java/com/qiwenshare/file/controller/OfficeController.java @@ -12,11 +12,13 @@ import com.qiwenshare.file.api.IFiletransferService; import com.qiwenshare.file.api.IUserFileService; import com.qiwenshare.file.api.IUserService; import com.qiwenshare.file.domain.*; +import com.qiwenshare.file.dto.DownloadFileDTO; import com.qiwenshare.file.dto.file.CreateOfficeFileDTO; import com.qiwenshare.file.dto.file.EditOfficeFileDTO; import com.qiwenshare.file.dto.file.PreviewOfficeFileDTO; import com.qiwenshare.file.helper.ConfigManager; import com.qiwenshare.ufo.factory.UFOFactory; +import com.qiwenshare.ufo.operation.download.domain.DownloadFile; import com.qiwenshare.ufo.operation.write.Writer; import com.qiwenshare.ufo.operation.write.domain.WriteFile; import com.qiwenshare.ufo.util.PathUtil; @@ -259,22 +261,19 @@ public class OfficeController { if (loginUser == null) { throw new NotLoginException(); } - PrintWriter writer = null; - JSONObject jsonObj=null; - writer = response.getWriter(); + PrintWriter writer = response.getWriter(); Scanner scanner = new Scanner(request.getInputStream()).useDelimiter("\\A"); String body = scanner.hasNext() ? scanner.next() : ""; - jsonObj = JSON.parseObject(body); + JSONObject jsonObj = JSON.parseObject(body); log.info("===saveeditedfile:" + jsonObj.get("status")); ; - String status = jsonObj!=null?jsonObj.get("status").toString():""; + String status = jsonObj != null ? jsonObj.get("status").toString() : ""; if ("2".equals(status)) {//新建报告不强制手动操作时状态为2 String type = request.getParameter("type"); String downloadUri = (String) jsonObj.get("url"); if("edit".equals(type)){//修改报告 - log.debug("====文档编辑完成,现在开始保存编辑后的文档,其下载地址为:" + downloadUri); String fileId = request.getParameter("fileId"); String userFileId = request.getParameter("userFileId"); FileBean fileBean = fileService.getById(fileId); @@ -286,7 +285,7 @@ public class OfficeController { URL url = new URL(downloadUri); HttpURLConnection connection = (HttpURLConnection) url.openConnection(); -// String md5Str = ""; + int fileLength = 0; try { InputStream stream = connection.getInputStream(); @@ -295,8 +294,6 @@ public class OfficeController { WriteFile writeFile = new WriteFile(); writeFile.setFileUrl(fileBean.getFileUrl()); - log.info("当前修改文件大小为:" + fileLength); -// log.info("当前修改文件md5为:" + md5Str); writeFile.setFileSize(connection.getContentLength()); writer1.write(stream, writeFile); } catch (Exception e) { @@ -310,10 +307,14 @@ public class OfficeController { userFileService.update(userFileUpdateWrapper); LambdaUpdateWrapper lambdaUpdateWrapper = new LambdaUpdateWrapper<>(); fileLength = connection.getContentLength(); - log.info("当前修改文件大小为2222:" + Long.valueOf(fileLength)); + log.info("当前修改文件大小为:" + Long.valueOf(fileLength)); + DownloadFile downloadFile = new DownloadFile(); + downloadFile.setFileUrl(fileBean.getFileUrl()); + InputStream inputStream = ufoFactory.getDownloader(fileBean.getStorageType()).getInputStream(downloadFile); + String md5Str = DigestUtils.md5Hex(inputStream); lambdaUpdateWrapper -// .set(FileBean::getIdentifier, md5Str) + .set(FileBean::getIdentifier, md5Str) .set(FileBean::getFileSize, Long.valueOf(fileLength)) .eq(FileBean::getFileId, fileId); fileService.update(lambdaUpdateWrapper);