From 23855599412c4d61b38d78f0f3abd3430a48b5b1 Mon Sep 17 00:00:00 2001
From: zhangherong <571457620@qq.com>
Date: 星期三, 25 六月 2025 11:51:38 +0800
Subject: [PATCH] Merge branch 'mdc_hyjs_master'

---
 lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/controller/DocInfoController.java |  198 +++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 198 insertions(+), 0 deletions(-)

diff --git a/lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/controller/DocInfoController.java b/lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/controller/DocInfoController.java
new file mode 100644
index 0000000..4594a87
--- /dev/null
+++ b/lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/controller/DocInfoController.java
@@ -0,0 +1,198 @@
+package org.jeecg.modules.dnc.controller;
+
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.jeecg.common.api.vo.Result;
+import org.jeecg.common.aspect.annotation.AutoLog;
+import org.jeecg.common.system.base.controller.JeecgController;
+import org.jeecg.modules.dnc.entity.DocFile;
+import org.jeecg.modules.dnc.entity.DocInfo;
+import org.jeecg.modules.dnc.request.DocInfoQueryRequest;
+import org.jeecg.modules.dnc.request.DocInfoUploadRequest;
+import org.jeecg.modules.dnc.response.CommonCode;
+import org.jeecg.modules.dnc.response.QueryListResponseResult;
+import org.jeecg.modules.dnc.response.ResponseResult;
+import org.jeecg.modules.dnc.service.IDocInfoService;
+import org.jeecg.modules.dnc.utils.ValidateUtil;
+import org.jeecg.modules.dnc.utils.file.FileUtilS;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+import org.springframework.web.multipart.MultipartFile;
+
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import java.util.List;
+
+@Slf4j
+@Api(tags = "鏂囨。琛�")
+@RestController
+@RequestMapping("/nc/doc")
+public class DocInfoController extends JeecgController<DocInfo, IDocInfoService> {
+    @Autowired
+    private IDocInfoService docInfoService;
+
+    @AutoLog(value = "鏂囨。琛�-瀵煎叆鏂囨。杩涘彛")
+    @ApiOperation(value = "鏂囨。琛�-瀵煎叆鏂囨。杩涘彛", notes = "鏂囨。琛�-瀵煎叆鏂囨。杩涘彛")
+    @PostMapping("/add")
+    public ResponseResult addDocInfo(@RequestParam("file") MultipartFile file, DocInfoUploadRequest docInfo) {
+        boolean b = docInfoService.addDocInfo(file, docInfo);
+        if(!b)
+            return new ResponseResult(CommonCode.FAIL);
+        return new ResponseResult(CommonCode.SUCCESS);
+    }
+
+
+    @AutoLog(value = "鏂囨。琛�-缂栬緫鏂囨。鍩烘湰淇℃伅")
+    @ApiOperation(value = "鏂囨。琛�-缂栬緫鏂囨。鍩烘湰淇℃伅", notes = "鏂囨。琛�-缂栬緫鏂囨。鍩烘湰淇℃伅")
+    @PutMapping("/edit/{id}")
+    public ResponseResult editDocInfo(@PathVariable("id") String id, @RequestBody DocInfo docInfo) {
+        boolean b = docInfoService.editDocInfo(id, docInfo);
+        if(!b)
+            return new ResponseResult(CommonCode.FAIL);
+        return new ResponseResult(CommonCode.SUCCESS);
+    }
+
+    @AutoLog(value = "鏂囨。琛�-鍒犻櫎鏂囨。淇℃伅")
+    @ApiOperation(value = "鏂囨。琛�-鍒犻櫎鏂囨。淇℃伅", notes = "鏂囨。琛�-鍒犻櫎鏂囨。淇℃伅")
+    @DeleteMapping("/delete/{id}/{attrType}/{attrId}")
+    public ResponseResult deleteDocInfo(@PathVariable("id") String id, @PathVariable("attrType") String attrType, @PathVariable("attrId") String attrId) {
+        boolean b = docInfoService.deleteDocInfo(id,attrType,attrId);
+        if(!b)
+            return new ResponseResult(CommonCode.FAIL);
+        return new ResponseResult(CommonCode.SUCCESS);
+    }
+
+    @AutoLog(value = "鏂囨。琛�-鍏ュ簱鎿嶄綔 鏂囨。瀵瑰簲鏂囦欢鍗囩増")
+    @ApiOperation(value = "鏂囨。琛�-鍏ュ簱鎿嶄綔 鏂囨。瀵瑰簲鏂囦欢鍗囩増", notes = "鏂囨。琛�-鍏ュ簱鎿嶄綔 鏂囨。瀵瑰簲鏂囦欢鍗囩増")
+    @PostMapping("/push/{id}")
+    public ResponseResult pushDocFile(@PathVariable("id") String id, @RequestParam("file") MultipartFile file) {
+        boolean b = docInfoService.pushDocFile(id, file);
+        if(!b)
+            return new ResponseResult(CommonCode.FAIL);
+        return new ResponseResult(CommonCode.SUCCESS);
+    }
+
+    @AutoLog(value = "鏂囨。琛�-鍑哄簱")
+    @ApiOperation(value = "鏂囨。琛�-鍑哄簱", notes = "鏂囨。琛�-鍑哄簱")
+    @GetMapping("/pull/{id}")
+    public ResponseResult pullDocFile(HttpServletRequest request, HttpServletResponse response, @PathVariable("id") String id) {
+        return docInfoService.pullDocFile(request, response, id);
+    }
+
+    @AutoLog(value = "鏂囨。琛�-鍙栨秷鍑哄簱")
+    @ApiOperation(value = "鏂囨。琛�-鍙栨秷鍑哄簱", notes = "鏂囨。琛�-鍙栨秷鍑哄簱")
+    @PutMapping("/cancel/pull/{id}")
+    public ResponseResult cancelPullDocInfo(@PathVariable("id") String id) {
+        boolean b = docInfoService.cancelPullDocInfo(id);
+        if(!b)
+            return new ResponseResult(CommonCode.FAIL);
+        return new ResponseResult(CommonCode.SUCCESS);
+    }
+
+    @AutoLog(value = "鏂囨。琛�-鏂囨。鍙戝竷")
+    @ApiOperation(value = "鏂囨。琛�-鏂囨。鍙戝竷", notes = "鏂囨。琛�-鏂囨。鍙戝竷")
+    @PutMapping("/publish/{id}")
+    public ResponseResult publishDocInfo(@PathVariable("id") String id) {
+        boolean b = docInfoService.publishDocInfo(id);
+        if(!b)
+            return new ResponseResult(CommonCode.FAIL);
+        return new ResponseResult(CommonCode.SUCCESS);
+    }
+
+    @AutoLog(value = "鏂囨。琛�-鏂囨。閲嶅彂甯�")
+    @ApiOperation(value = "鏂囨。琛�-鏂囨。閲嶅彂甯�", notes = "鏂囨。琛�-鏂囨。閲嶅彂甯�")
+    @PutMapping("/republish/{id}")
+    public ResponseResult republishDocInfo(@PathVariable("id") String id) {
+        boolean b = docInfoService.republishDocInfo(id);
+        if(!b)
+            return new ResponseResult(CommonCode.FAIL);
+        return new ResponseResult(CommonCode.SUCCESS);
+    }
+
+    @AutoLog(value = "鏂囨。琛�-鏂囨。褰掓。")
+    @ApiOperation(value = "鏂囨。琛�-鏂囨。褰掓。", notes = "鏂囨。琛�-鏂囨。褰掓。")
+    @PutMapping("/pigeonhole/{id}")
+    public ResponseResult pigeonholeDocInfo(@PathVariable("id") String id) {
+        boolean b = docInfoService.pigeonholeDocInfo(id);
+        if(!b)
+            return new ResponseResult(CommonCode.FAIL);
+        return new ResponseResult(CommonCode.SUCCESS);
+    }
+
+    @AutoLog(value = "鏂囨。琛�-鍒嗛〉鏌ヨ鎺ュ彛")
+    @ApiOperation(value = "鏂囨。琛�-鍒嗛〉鏌ヨ鎺ュ彛", notes = "鏂囨。琛�-鍒嗛〉鏌ヨ鎺ュ彛")
+    @GetMapping("/find/page/{page}/{size}")
+    public Result<?> findPageList(@PathVariable("page") int page, @PathVariable("size") int size, DocInfoQueryRequest docQuery) {
+        return docInfoService.findPageList(page, size, docQuery);
+    }
+
+    @AutoLog(value = "鏂囨。琛�-鏌ヨ璁惧鍙戦�佺洰褰曠殑鏂囨。鐘舵��")
+    @ApiOperation(value = "鏂囨。琛�-鏌ヨ璁惧鍙戦�佺洰褰曠殑鏂囨。鐘舵��", notes = "鏂囨。琛�-鏌ヨ璁惧鍙戦�佺洰褰曠殑鏂囨。鐘舵��")
+    @GetMapping("/find/page/device/{page}/{size}")
+    public Result<?> findPageListByDevice(@PathVariable("page") int page, @PathVariable("size") int size, DocInfoQueryRequest docQuery) {
+        return Result.ok(docInfoService.findPageListByDevice(page, size, docQuery));
+    }
+
+    @AutoLog(value = "鏂囨。琛�-鏂囨。鏂囦欢棰勮")
+    @ApiOperation(value = "鏂囨。琛�-鏂囨。鏂囦欢棰勮", notes = "鏂囨。琛�-鏂囨。鏂囦欢棰勮")
+    @GetMapping("/preview/{id}")
+    public QueryListResponseResult previewDocFile(@PathVariable("id") String id) {
+        DocFile docFile = docInfoService.previewDocFile(id);
+        if(!ValidateUtil.validateString(docFile.getFilePath()) || !ValidateUtil.validateString(docFile.getFileName())
+//                || !ValidateUtil.validateString(docFile.getFileSuffix())
+                || !ValidateUtil.validateString(docFile.getFileEncodeName()))
+            return new QueryListResponseResult(CommonCode.FAIL, null);
+        String filePath = docFile.getFilePath();
+        String fileEncodeName = docFile.getFileEncodeName();
+        List<String> list = FileUtilS.readFile(fileEncodeName, filePath);
+        if(list == null || list.isEmpty())
+            return new QueryListResponseResult(CommonCode.FAIL, null);
+        return new QueryListResponseResult(CommonCode.SUCCESS, list);
+    }
+
+    @AutoLog(value = "鏂囨。琛�-鏂囨。鏂囦欢棰勮pdf")
+    @ApiOperation(value = "鏂囨。琛�-鏂囨。鏂囦欢棰勮pdf", notes = "鏂囨。琛�-鏂囨。鏂囦欢棰勮pdf")
+    @GetMapping("/preview/pdf/{id}")
+    public ResponseResult previewPdfDocFile(HttpServletRequest request, HttpServletResponse response, @PathVariable("id") String id) {
+        DocFile docFile = docInfoService.previewDocFile(id);
+        if(!ValidateUtil.validateString(docFile.getFilePath()) || !ValidateUtil.validateString(docFile.getFileName()) ||
+                /*!ValidateUtil.validateString(docFile.getFileSuffix()) ||*/ !ValidateUtil.validateString(docFile.getFileEncodeName()))
+            return new ResponseResult(CommonCode.FAIL);
+        String fileName;
+        if(ValidateUtil.validateString(docFile.getFileSuffix())) {
+            fileName = docFile.getFileName() + "." + docFile.getFileSuffix();
+        }else {
+            fileName = docFile.getFileName();
+        }
+        String filePath = docFile.getFilePath();
+        String fileEncodeName = docFile.getFileEncodeName();
+        FileUtilS.downLoadFile(response, fileEncodeName, filePath, fileName);
+        return null;
+    }
+
+    @AutoLog(value = "鏂囦欢琛�-鏌ヨ鍙寚娲剧殑鏂囨。淇℃伅鍒楄〃")
+    @ApiOperation(value = "鏂囦欢琛�-鏌ヨ鍙寚娲剧殑鏂囨。淇℃伅鍒楄〃", notes = "鏂囦欢琛�-鏌ヨ鍙寚娲剧殑鏂囨。淇℃伅鍒楄〃")
+    @GetMapping("/find/list")
+    public Result<?> findList(DocInfoQueryRequest docQuery) {
+        List<DocInfo> docInfoList=docInfoService.findList(docQuery);
+        return Result.ok(docInfoList);
+    }
+
+    @AutoLog(value = "鏂囦欢琛�-鎵归噺鍒犻櫎鏂囨。鎺ュ彛")
+    @ApiOperation(value = "鏂囦欢琛�-鎵归噺鍒犻櫎鏂囨。鎺ュ彛", notes = "鏂囦欢琛�-鎵归噺鍒犻櫎鏂囨。鎺ュ彛")
+    @PostMapping("/batch/remove/{docIds}/{attrType}/{attrId}")
+    public ResponseResult batchRemoveDocInfo(@PathVariable("docIds") String[] docIds, @PathVariable("attrType") String attrType, @PathVariable("attrId") String attrId) {
+        boolean b = docInfoService.batchRemoveDocInfo(docIds,attrType,attrId);
+        if(!b)
+            return new ResponseResult(CommonCode.FAIL);
+        return new ResponseResult(CommonCode.SUCCESS);
+    }
+
+    @AutoLog(value = "鏂囦欢琛�-鏂囨。涓嬭浇")
+    @ApiOperation(value = "鏂囦欢琛�-鏂囨。涓嬭浇", notes = "鏂囦欢琛�-鏂囨。涓嬭浇")
+    @GetMapping("/download/{id}")
+    public ResponseResult downloadDocFile(HttpServletRequest request, HttpServletResponse response, @PathVariable("id") String id) {
+        return docInfoService.downloadDocFile(request, response, id);
+    }
+}

--
Gitblit v1.9.3