广州市综治平台后端
xusd
3 days ago a4ffd7669371f4b4d8372a746f3b69f198d2087a
fix:下载优化
1 files modified
21 ■■■■■ changed files
dyh-service/dyh-sys/src/main/java/cn/huge/module/file/controller/web/FileInfoWebController.java 21 ●●●●● patch | view | raw | blame | history
dyh-service/dyh-sys/src/main/java/cn/huge/module/file/controller/web/FileInfoWebController.java
@@ -199,13 +199,15 @@
            response.setHeader("Content-Disposition", "attachment;filename=files.zip");
            ZipOutputStream zipOutputStream = new ZipOutputStream(response.getOutputStream());
            int i = 0;
            for (String s : id) {
                i++;
                FileInfo fileInfo = service.getById(s);
                FtpUtils ftpUtil = new FtpUtils();
                InputStream inputStream = ftpUtil.retrieveFileStream(fileInfo.getFullPath());
                // 每个文件写入到ZIP包中
                zipOutputStream.putNextEntry(new ZipEntry(fileInfo.getName() + BaseConsts.DOT + fileInfo.getSuffix()));
                zipOutputStream.putNextEntry(new ZipEntry(fileInfo.getName() + "-" + i + BaseConsts.DOT + fileInfo.getSuffix()));
                IOUtils.copy(inputStream, zipOutputStream);
                zipOutputStream.closeEntry();
                IOUtils.closeQuietly(inputStream);
@@ -341,22 +343,23 @@
    /**
     * 公共方法-获取附件列表
     * @url {ctx}/api/web/fileInfo/lietNewSysFile
     *
     * @param
     * @return Object
     * @url {ctx}/api/web/fileInfo/lietNewSysFile
     */
    @GetMapping(value = "/listNewSysFile")
    public Object listNewSysFile(@RequestParam (value = "ownerId") String ownerId, @RequestParam (value = "ownerType") String ownerType,
                                 @RequestParam (value = "size") String size){
        try{
    public Object listNewSysFile(@RequestParam(value = "ownerId") String ownerId, @RequestParam(value = "ownerType") String ownerType,
                                 @RequestParam(value = "size") String size) {
        try {
            QueryWrapper<FileRelate> fileRelateQueryWrapper = new QueryWrapper<>();
            fileRelateQueryWrapper.eq("owner_type", ownerType).eq("owner_id", ownerId).orderByDesc("create_time")
                    .last("limit "+size).select("file_id");
                    .last("limit " + size).select("file_id");
            List<FileRelate> fileRelateList = fileRelateService.list(fileRelateQueryWrapper);
            List<FileInfo> fileInfoList = null;
            if(CollectionUtils.isNotEmpty(fileRelateList)){
                List<String>fileIdList = fileRelateList.stream().map(FileRelate:: getFileId).collect(Collectors.toList());
                QueryWrapper<FileInfo>fileInfoQueryWrapper = new QueryWrapper<>();
            if (CollectionUtils.isNotEmpty(fileRelateList)) {
                List<String> fileIdList = fileRelateList.stream().map(FileRelate::getFileId).collect(Collectors.toList());
                QueryWrapper<FileInfo> fileInfoQueryWrapper = new QueryWrapper<>();
                fileInfoQueryWrapper.in("id", fileIdList).select("id", "true_name").orderByDesc("create_time");
                fileInfoList = service.list(fileInfoQueryWrapper);
            }