From abd339106ed3a6465293edccd33e5f87bd43bdde Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期二, 20 十月 2026 18:01:42 +0800
Subject: [PATCH] feat: 质量监控/人员培训对齐程序文件,体系文件控制附件格式放开

---
 cnas-manage/src/main/java/com/ruoyi/manage/service/impl/ManageDocumentControlledServiceImpl.java |   20 ++++++--------------
 1 files changed, 6 insertions(+), 14 deletions(-)

diff --git a/cnas-manage/src/main/java/com/ruoyi/manage/service/impl/ManageDocumentControlledServiceImpl.java b/cnas-manage/src/main/java/com/ruoyi/manage/service/impl/ManageDocumentControlledServiceImpl.java
index 06edf3c..29ed115 100644
--- a/cnas-manage/src/main/java/com/ruoyi/manage/service/impl/ManageDocumentControlledServiceImpl.java
+++ b/cnas-manage/src/main/java/com/ruoyi/manage/service/impl/ManageDocumentControlledServiceImpl.java
@@ -8,6 +8,7 @@
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.ruoyi.common.core.domain.entity.User;
 import com.ruoyi.common.utils.QueryWrappers;
+import com.ruoyi.framework.exception.ErrorException;
 import com.ruoyi.manage.mapper.ManageDocumentControlledMapper;
 import com.ruoyi.manage.mapper.ManageDocumentListMapper;
 import com.ruoyi.manage.mapper.ManageRecordCheckMapper;
@@ -15,6 +16,7 @@
 import com.ruoyi.manage.pojo.ManageDocumentList;
 import com.ruoyi.manage.pojo.ManageRecordCheck;
 import com.ruoyi.manage.service.ManageDocumentControlledService;
+import com.ruoyi.manage.util.DocumentPreviewUtils;
 import com.ruoyi.system.mapper.UserMapper;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
@@ -199,21 +201,11 @@
     @Override
     public void checkManageDocumentControlledPdf(Long id, HttpServletResponse response) throws Exception {
         ManageDocumentControlled manageDocumentControlled = manageDocumentControlledMapper.selectById(id);
-        File file = new File(wordUrl + "/" + manageDocumentControlled.getUrl());
-        FileInputStream fileInputStream = new FileInputStream(file);
-        response.setContentType("application/pdf");
-        response.setCharacterEncoding("UTF-8");
-        response.setHeader("Content-disposition", "inline;filename=" + file.getName());
-        response.setContentLength((int)file.length());
-        OutputStream os = response.getOutputStream();
-        // 灏嗘枃浠跺唴瀹瑰啓鍏ヨ緭鍑烘祦
-        byte[] buffer = new byte[4096];
-        int bytesRead;
-        while ((bytesRead = fileInputStream.read(buffer)) != -1) {
-            os.write(buffer, 0, bytesRead);
+        if (manageDocumentControlled == null || ObjectUtils.isEmpty(manageDocumentControlled.getUrl())) {
+            throw new ErrorException("鏂囦欢鏈笂浼�");
         }
-        os.flush();
-        os.close();
+        // PDF 鐩存帴杈撳嚭锛學ord/鍥剧墖鍦ㄧ嚎杞� PDF锛屼緵鍓嶇棰勮鐩栫珷
+        DocumentPreviewUtils.writeAsPdf(new File(wordUrl + "/" + manageDocumentControlled.getUrl()), response);
     }
 
 }

--
Gitblit v1.9.3