From f8c024b1c1de318a4de485e048d1044cd6dcaa53 Mon Sep 17 00:00:00 2001
From: liding <756868258@qq.com>
Date: 星期六, 24 十月 2026 21:05:42 +0800
Subject: [PATCH] feat(search-new): 1.标准查新模块 2.印章使用记录
---
inspect-server/src/main/java/com/ruoyi/inspect/controller/InsReportController.java | 64 ++++++++++++++------------------
1 files changed, 28 insertions(+), 36 deletions(-)
diff --git a/inspect-server/src/main/java/com/ruoyi/inspect/controller/InsReportController.java b/inspect-server/src/main/java/com/ruoyi/inspect/controller/InsReportController.java
index b2cc44f..f204673 100644
--- a/inspect-server/src/main/java/com/ruoyi/inspect/controller/InsReportController.java
+++ b/inspect-server/src/main/java/com/ruoyi/inspect/controller/InsReportController.java
@@ -1,16 +1,13 @@
package com.ruoyi.inspect.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.ruoyi.basic.dto.IfsInventoryQuantitySupplierDto;
-import com.ruoyi.common.annotation.Anonymous;
import com.ruoyi.common.annotation.PersonalScope;
import com.ruoyi.common.core.domain.Result;
import com.ruoyi.framework.exception.ErrorException;
import com.ruoyi.inspect.dto.ReportPageDto;
import com.ruoyi.inspect.service.InsOrderPlanService;
+import com.ruoyi.inspect.service.InsReportEditingService;
import com.ruoyi.inspect.service.InsReportService;
import io.swagger.v3.oas.annotations.tags.Tag;
import io.swagger.v3.oas.annotations.Operation;
@@ -20,16 +17,12 @@
import org.springframework.web.multipart.MultipartFile;
import jakarta.annotation.Resource;
-import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import java.io.File;
import java.io.IOException;
-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")
@@ -41,6 +34,9 @@
@Resource
private InsOrderPlanService insOrderPlanService;
+
+ @Resource
+ private InsReportEditingService insReportEditingService;
@Value("${wordUrl}")
private String wordUrl;
@@ -106,7 +102,11 @@
Integer isExamine = (Integer) param.get("isExamine");
String examineTell = (String) param.get("examineTell");
Integer userId = (Integer) param.get("userId");
- return Result.success(insReportService.examineReport(id, isExamine, examineTell, userId));
+ Map<String, String> sessions = new java.util.HashMap<>();
+ if (param.get("editSessions") instanceof Map<?, ?> values) {
+ values.forEach((key, value) -> sessions.put(String.valueOf(key), String.valueOf(value)));
+ }
+ return Result.success(insReportEditingService.examineReport(id, isExamine, examineTell, userId, sessions));
}
@Operation(summary = "鎵瑰噯")
@@ -131,34 +131,26 @@
return value instanceof Number ? ((Number) value).intValue() : Integer.valueOf(String.valueOf(value));
}
- @Anonymous
- @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);
+ @Operation(summary = "鑾峰彇娴忚鍣ㄧ鎶ュ憡缂栬緫浼氳瘽")
+ @GetMapping("/editor/config")
+ public Result editConfig(Integer id, Integer reportType) {
+ return Result.success(insReportEditingService.createEditConfig(id, reportType));
+ }
- 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}");
- }
+ @Operation(summary = "璇诲彇瀹℃牳 DOCX 鍐呭")
+ @GetMapping("/editor/document")
+ public org.springframework.http.ResponseEntity<byte[]> editDocument(@RequestParam String token) {
+ return org.springframework.http.ResponseEntity.ok().header("Cache-Control", "no-store")
+ .contentType(org.springframework.http.MediaType.parseMediaType(
+ "application/vnd.openxmlformats-officedocument.wordprocessingml.document"))
+ .body(insReportEditingService.readDocument(token));
+ }
+
+ @Operation(summary = "淇濆瓨娴忚鍣ㄥ唴缂栬緫鐨� DOCX")
+ @PostMapping(value = "/editor/document", consumes = "multipart/form-data")
+ public Result saveEditDocument(@RequestParam String token, @RequestParam String version,
+ @RequestPart MultipartFile file) {
+ return Result.success(insReportEditingService.saveDocument(token, version, file));
}
@Operation(summary = "鎶ュ憡鎵归噺涓嬭浇")
--
Gitblit v1.9.3