123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116 |
- package com.ghsc.partybuild.controller;
- import com.fasterxml.jackson.databind.JsonNode;
- import com.github.pagehelper.PageInfo;
- import com.ghsc.partybuild.AppConfig;
- import com.ghsc.partybuild.controller.jsonmodel.RequsetData;
- import com.ghsc.partybuild.model.DsjFilemrg;
- import com.ghsc.partybuild.service.FileMgrService;
- import com.ghsc.partybuild.util.Word2PdfUtil;
- import com.ghsc.partybuild.vo.DsjTreeFiletype;
- import lombok.extern.slf4j.Slf4j;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.web.bind.annotation.*;
- import javax.servlet.http.HttpServletResponse;
- import java.io.ByteArrayOutputStream;
- import java.io.OutputStream;
- import java.nio.file.Files;
- import java.nio.file.Path;
- import java.nio.file.Paths;
- import java.util.Base64;
- import java.util.List;
- import java.util.Map;
- @Slf4j
- @RestController
- @RequestMapping(value = "/appApi/fileMgr")
- public class AppFileMgrController {
- @Autowired
- private FileMgrService fileMgrService;
- @Autowired
- private Word2PdfUtil word2PdfUtil;
- @Autowired
- private AppConfig appConfig;
- @GetMapping("/GetFileTypeRoot")
- @ResponseBody
- public RequsetData<List<DsjTreeFiletype>> GetFileTypeRoot() {
- RequsetData<List<DsjTreeFiletype>> res = new RequsetData<>();
- //res.setItem(fileMgrService.getFileTypeRoot());
- res.setItem(fileMgrService.getFileTreeByParent(""));
- return res;
- }
- @PostMapping("/GetFileTypesByParent")
- @ResponseBody
- public RequsetData<List<DsjTreeFiletype>> GetFileTypesByParent(@RequestBody JsonNode reqMap) {
- String parentId=reqMap.get("parentid").asText();
- RequsetData<List<DsjTreeFiletype>> res = new RequsetData<>();
- //@RequestParam("parentid") String parentId
- List<DsjTreeFiletype> parents = fileMgrService.getFileTreeByParent(parentId);
- res.setItem(parents);
- return res;
- }
- @PostMapping("/GetFilesByKey")
- @ResponseBody
- public RequsetData<PageInfo<DsjFilemrg>> GetFilesByKey(@RequestBody JsonNode reqMap) {
- RequsetData<PageInfo<DsjFilemrg>> res = new RequsetData<>();
- String fileName=reqMap.get("fileName").asText();
- int pageIndex=reqMap.get("pageIndex").asInt();
- int pageSize=reqMap.get("pageSize").asInt();
- res.setItem(fileMgrService.getFilesByKey(fileName, pageIndex, pageSize));
- return res;
- }
- /**
- * @Description //TODO 查询cf_file表附件
- * @Date 17:32 2019/7/31
- * @Param [fileRefID, fileTypeId, pageIndex, pageSize]
- **/
- @PostMapping("/getFileList")
- @ResponseBody
- public RequsetData<PageInfo<Map<String,Object>>> GetFileList(@RequestBody JsonNode reqMap) {
- RequsetData<PageInfo<Map<String,Object>>> res = new RequsetData<>();
- String fileName=reqMap.get("fileName")!=null?reqMap.get("fileName").asText():"";
- String fileTypeId=reqMap.get("fileTypeId")!=null?reqMap.get("fileTypeId").asText():"";
- int pageIndex=reqMap.get("pageIndex").asInt();
- int pageSize=reqMap.get("pageSize").asInt();
- res.setItem(fileMgrService.FindFilesApp(fileName,fileTypeId,pageIndex, pageSize));
- return res;
- }
- @PostMapping({"/getFilePDF"})
- @ResponseBody
- public RequsetData<String> getFilePDF(@RequestBody JsonNode reqMap){
- RequsetData<String> res=new RequsetData<>();
- String fileId=reqMap.get("fileId").asText();
- DsjFilemrg file = fileMgrService.getFileInfo(fileId);
- Path pFileName = Paths.get(appConfig.fileMgrUrl, file.getFileurl() + file.getExtendedname());
- if (Files.exists(pFileName)) {
- ByteArrayOutputStream bout=new ByteArrayOutputStream();
- try {
- Files.copy(pFileName, bout);
- String img= Base64.getEncoder().encodeToString(bout.toByteArray());
- res.setItem(img);
- }catch (Exception ex){
- log.error("getFilePDF:",ex);
- res.setSuccess(false);
- res.setMsg(ex.getMessage());
- }
- }
- return res;
- }
- }
|