From ecd0dd978d695dd03da13605a9f4bfd5b6214839 Mon Sep 17 00:00:00 2001
From: Crunchy <3114200645@qq.com>
Date: 星期四, 16 五月 2024 14:53:31 +0800
Subject: [PATCH] 2024-5-16 word在线编辑完成
---
inspect-server/src/main/java/com/yuanchu/mom/controller/InsReportController.java | 38 +++++++++++++++++++++++++++++++++++++-
inspect-server/src/main/resources/static/report-template.docx | 0
inspect-server/src/main/java/com/yuanchu/mom/service/InsReportService.java | 2 +-
3 files changed, 38 insertions(+), 2 deletions(-)
diff --git a/inspect-server/src/main/java/com/yuanchu/mom/controller/InsReportController.java b/inspect-server/src/main/java/com/yuanchu/mom/controller/InsReportController.java
index 8d05746..b3eba5f 100644
--- a/inspect-server/src/main/java/com/yuanchu/mom/controller/InsReportController.java
+++ b/inspect-server/src/main/java/com/yuanchu/mom/controller/InsReportController.java
@@ -1,5 +1,8 @@
package com.yuanchu.mom.controller;
+import cn.hutool.core.io.FileUtil;
+import cn.hutool.http.HttpUtil;
+import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yuanchu.mom.annotation.ValueAuth;
import com.yuanchu.mom.annotation.ValueClassify;
@@ -10,16 +13,20 @@
import com.yuanchu.mom.vo.Result;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
-import lombok.AllArgsConstructor;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import javax.annotation.Resource;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
import java.io.File;
+import java.io.PrintWriter;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.Map;
+import java.util.Objects;
+import java.util.Scanner;
@RestController
@RequestMapping("/insReport")
@@ -93,4 +100,33 @@
return Result.success(insReportService.ratifyReport(id, isRatify, ratifyTell));
}
+ @RequestMapping("/onlyOffice/save")
+ public void saveFile(@RequestParam String fileName, HttpServletRequest request, HttpServletResponse response) {
+ PrintWriter writer = null;
+ try {
+ writer = response.getWriter();
+ // 鑾峰彇浼犺緭鐨刯son鏁版嵁
+ Scanner scanner = new Scanner(request.getInputStream()).useDelimiter("\\A");
+ String body = scanner.hasNext() ? scanner.next() : "";
+ JSONObject jsonObject = JSONObject.parseObject(body);
+
+ System.out.println(jsonObject);
+ if (jsonObject.containsKey("url")) {
+ String jsonArray = jsonObject.get("lastsave").toString(); // 鏇存柊鏃堕棿
+ String fileUrl = jsonObject.get("url").toString(); // 鏇存柊鏂囦欢url
+ HttpUtil.downloadFile(fileUrl, FileUtil.file(wordUrl + "/" + fileName));
+ }
+ } catch (Exception e) {
+ e.printStackTrace();
+ writer.write("{\"error\":-1}");
+ return;
+ }
+ /*
+ * status = 1锛屾垜浠粰onlyOffice鐨勬湇鍔¤繑鍥瀧"error":"0"}鐨勪俊鎭��
+ * 杩欐牱onlyOffice浼氳涓哄洖璋冩帴鍙f槸娌¢棶棰樼殑锛岃繖鏍峰氨鍙互鍦ㄧ嚎缂栬緫鏂囨。浜嗭紝鍚﹀垯鐨勮瘽浼氬脊鍑虹獥鍙h鏄�
+ */
+ if (Objects.nonNull(writer)) {
+ writer.write("{\"error\":0}");
+ }
+ }
}
diff --git a/inspect-server/src/main/java/com/yuanchu/mom/service/InsReportService.java b/inspect-server/src/main/java/com/yuanchu/mom/service/InsReportService.java
index d3d9f56..8723b42 100644
--- a/inspect-server/src/main/java/com/yuanchu/mom/service/InsReportService.java
+++ b/inspect-server/src/main/java/com/yuanchu/mom/service/InsReportService.java
@@ -1,9 +1,9 @@
package com.yuanchu.mom.service;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.IService;
import com.yuanchu.mom.dto.ReportPageDto;
import com.yuanchu.mom.pojo.InsReport;
-import com.baomidou.mybatisplus.extension.service.IService;
import java.util.Map;
diff --git a/inspect-server/src/main/resources/static/report-template.docx b/inspect-server/src/main/resources/static/report-template.docx
index 4550e8e..5cfbf5d 100644
--- a/inspect-server/src/main/resources/static/report-template.docx
+++ b/inspect-server/src/main/resources/static/report-template.docx
Binary files differ
--
Gitblit v1.9.3