Browse Source

附件修改

wangliang 2 years ago
parent
commit
cc50eb51ba
13 changed files with 142 additions and 153 deletions
  1. 28 4
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/backup/MySQLDatabaseBackup.java
  2. 24 4
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/ActivitiServiceImpl.java
  3. 5 16
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/ExamTaskServiceImpl.java
  4. 26 27
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/PrintCommonServiceImpl.java
  5. 5 5
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/TSyncExamStudentScoreServiceImpl.java
  6. 12 12
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/templete/service/impl/TaskLogicServiceImpl.java
  7. 5 8
      distributed-print/src/main/java/com/qmth/distributed/print/api/SysController.java
  8. 17 48
      teachcloud-common/src/main/java/com/qmth/teachcloud/common/contant/SystemConstant.java
  9. 2 2
      teachcloud-common/src/main/java/com/qmth/teachcloud/common/service/impl/AuthInfoServiceImpl.java
  10. 6 6
      teachcloud-common/src/main/java/com/qmth/teachcloud/common/service/impl/BasicAttachmentServiceImpl.java
  11. 1 2
      teachcloud-common/src/main/java/com/qmth/teachcloud/common/service/impl/BasicSchoolServiceImpl.java
  12. 8 16
      teachcloud-common/src/main/java/com/qmth/teachcloud/common/service/impl/TeachcloudCommonServiceImpl.java
  13. 3 3
      teachcloud-report-business/src/main/java/com/qmth/teachcloud/report/business/service/impl/ReportCommonServiceImpl.java

+ 28 - 4
distributed-print-business/src/main/java/com/qmth/distributed/print/business/backup/MySQLDatabaseBackup.java

@@ -3,18 +3,21 @@ package com.qmth.distributed.print.business.backup;
 import cn.hutool.core.date.DateUtil;
 import cn.hutool.core.date.DateUtil;
 import com.aventrix.jnanoid.jnanoid.NanoIdUtils;
 import com.aventrix.jnanoid.jnanoid.NanoIdUtils;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.qmth.teachcloud.common.config.DictionaryConfig;
 import com.qmth.teachcloud.common.contant.SystemConstant;
 import com.qmth.teachcloud.common.contant.SystemConstant;
 import com.qmth.teachcloud.common.entity.SysConfig;
 import com.qmth.teachcloud.common.entity.SysConfig;
 import com.qmth.teachcloud.common.entity.SysOrg;
 import com.qmth.teachcloud.common.entity.SysOrg;
 import com.qmth.teachcloud.common.entity.SysRole;
 import com.qmth.teachcloud.common.entity.SysRole;
 import com.qmth.teachcloud.common.entity.SysUser;
 import com.qmth.teachcloud.common.entity.SysUser;
 import com.qmth.teachcloud.common.enums.ExceptionResultEnum;
 import com.qmth.teachcloud.common.enums.ExceptionResultEnum;
+import com.qmth.teachcloud.common.enums.LocalCatalogEnum;
 import com.qmth.teachcloud.common.enums.UploadFileEnum;
 import com.qmth.teachcloud.common.enums.UploadFileEnum;
 import com.qmth.teachcloud.common.service.*;
 import com.qmth.teachcloud.common.service.*;
 import com.qmth.teachcloud.common.util.FileStoreUtil;
 import com.qmth.teachcloud.common.util.FileStoreUtil;
 import org.apache.commons.codec.digest.DigestUtils;
 import org.apache.commons.codec.digest.DigestUtils;
 import org.apache.commons.io.FileUtils;
 import org.apache.commons.io.FileUtils;
 import org.apache.commons.io.IOUtils;
 import org.apache.commons.io.IOUtils;
+import org.apache.commons.lang3.StringUtils;
 import org.slf4j.Logger;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.beans.factory.annotation.Value;
@@ -70,6 +73,9 @@ public class MySQLDatabaseBackup {
     @Resource
     @Resource
     FileStoreUtil fileStoreUtil;
     FileStoreUtil fileStoreUtil;
 
 
+    @Resource
+    DictionaryConfig dictionaryConfig;
+
     /**
     /**
      * Java代码实现MySQL数据库导出
      * Java代码实现MySQL数据库导出
      *
      *
@@ -88,11 +94,20 @@ public class MySQLDatabaseBackup {
             bufferedReader = new BufferedReader(inputStreamReader);
             bufferedReader = new BufferedReader(inputStreamReader);
             IOUtils.copy(bufferedReader, printWriter);
             IOUtils.copy(bufferedReader, printWriter);
             if (process.waitFor() == 0) {//0 表示线程正常终止。
             if (process.waitFor() == 0) {//0 表示线程正常终止。
-                StringJoiner stringJoiner = SystemConstant.getDirName(UploadFileEnum.FILE, true);
+                boolean oss = dictionaryConfig.sysDomain().isOss();
+                StringJoiner stringJoiner = new StringJoiner("");
+                if (!oss && Objects.nonNull(dictionaryConfig.fssPublicDomain()) && !StringUtils.isBlank(dictionaryConfig.fssPublicDomain().getConfig()) && !dictionaryConfig.fssPublicDomain().getConfig().startsWith(SystemConstant.START_PARENT)) {
+                    stringJoiner.add(dictionaryConfig.fssPublicDomain().getConfig()).add(File.separator);
+                }
+                stringJoiner = SystemConstant.getDirName(UploadFileEnum.FILE, true);
                 stringJoiner.add("db").add(File.separator).add("backup").add(File.separator)
                 stringJoiner.add("db").add(File.separator).add("backup").add(File.separator)
                         .add(DateUtil.format(new Date(), SystemConstant.BACK_UP_DATE_PATTERN)).add("_").add(NanoIdUtils.randomNanoId())
                         .add(DateUtil.format(new Date(), SystemConstant.BACK_UP_DATE_PATTERN)).add("_").add(NanoIdUtils.randomNanoId())
                         .add("_backup.sql");
                         .add("_backup.sql");
-                fileStoreUtil.ossUpload(stringJoiner.toString(), file, DigestUtils.md5Hex(new FileInputStream(file)), UploadFileEnum.FILE.getFssType());
+                if (oss || (!oss && dictionaryConfig.fssPublicDomain().getConfig().startsWith(SystemConstant.START_PARENT))) {
+                    fileStoreUtil.ossUpload(stringJoiner.toString(), file, DigestUtils.md5Hex(new FileInputStream(file)), UploadFileEnum.FILE.getFssType());
+                } else {
+                    fileStoreUtil.localUpload(stringJoiner.toString(), new FileInputStream(file), DigestUtils.md5Hex(new FileInputStream(file)), LocalCatalogEnum.LOCAL_FILE);
+                }
                 return true;
                 return true;
             }
             }
         } catch (Exception e) {
         } catch (Exception e) {
@@ -190,11 +205,20 @@ public class MySQLDatabaseBackup {
                 string = DateUtil.format(new Date(), SystemConstant.DEFAULT_DATE_PATTERN) + "删除数据成功!!!";
                 string = DateUtil.format(new Date(), SystemConstant.DEFAULT_DATE_PATTERN) + "删除数据成功!!!";
                 IOUtils.write(string.getBytes(StandardCharsets.UTF_8), new FileOutputStream(file));
                 IOUtils.write(string.getBytes(StandardCharsets.UTF_8), new FileOutputStream(file));
 
 
-                StringJoiner stringJoiner = SystemConstant.getDirName(UploadFileEnum.FILE, true);
+                boolean oss = dictionaryConfig.sysDomain().isOss();
+                StringJoiner stringJoiner = new StringJoiner("");
+                if (!oss && Objects.nonNull(dictionaryConfig.fssPublicDomain()) && !StringUtils.isBlank(dictionaryConfig.fssPublicDomain().getConfig()) && !dictionaryConfig.fssPublicDomain().getConfig().startsWith(SystemConstant.START_PARENT)) {
+                    stringJoiner.add(dictionaryConfig.fssPublicDomain().getConfig()).add(File.separator);
+                }
+                stringJoiner = SystemConstant.getDirName(stringJoiner, UploadFileEnum.FILE, true);
                 stringJoiner.add("db").add(File.separator).add("delete").add(File.separator)
                 stringJoiner.add("db").add(File.separator).add("delete").add(File.separator)
                         .add(DateUtil.format(new Date(), SystemConstant.BACK_UP_DATE_PATTERN)).add("_").add(NanoIdUtils.randomNanoId())
                         .add(DateUtil.format(new Date(), SystemConstant.BACK_UP_DATE_PATTERN)).add("_").add(NanoIdUtils.randomNanoId())
                         .add("_").add(String.valueOf(schoolId)).add("_delete.sql");
                         .add("_").add(String.valueOf(schoolId)).add("_delete.sql");
-                fileStoreUtil.ossUpload(stringJoiner.toString(), file, DigestUtils.md5Hex(new FileInputStream(file)), UploadFileEnum.FILE.getFssType());
+                if (oss || (!oss && dictionaryConfig.fssPublicDomain().getConfig().startsWith(SystemConstant.START_PARENT))) {
+                    fileStoreUtil.ossUpload(stringJoiner.toString(), file, DigestUtils.md5Hex(new FileInputStream(file)), UploadFileEnum.FILE.getFssType());
+                } else {
+                    fileStoreUtil.localUpload(stringJoiner.toString(), new FileInputStream(file), DigestUtils.md5Hex(new FileInputStream(file)), LocalCatalogEnum.LOCAL_FILE);
+                }
 
 
                 if (!CollectionUtils.isEmpty(sysRoleList)) {
                 if (!CollectionUtils.isEmpty(sysRoleList)) {
                     for (SysRole s : sysRoleList) {
                     for (SysRole s : sysRoleList) {

+ 24 - 4
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/ActivitiServiceImpl.java

@@ -242,9 +242,19 @@ public class ActivitiServiceImpl implements ActivitiService {
         try {
         try {
             file = SystemConstant.getFileTempVar(bpmnPngName);
             file = SystemConstant.getFileTempVar(bpmnPngName);
             FileUtils.copyInputStreamToFile(processDiagram, file);
             FileUtils.copyInputStreamToFile(processDiagram, file);
-            StringJoiner stringJoiner = SystemConstant.getDirName(UploadFileEnum.FILE, true);
+            boolean oss = dictionaryConfig.sysDomain().isOss();
+            StringJoiner stringJoiner = new StringJoiner("");
+            if (!oss && Objects.nonNull(dictionaryConfig.fssPublicDomain()) && !StringUtils.isBlank(dictionaryConfig.fssPublicDomain().getConfig()) && !dictionaryConfig.fssPublicDomain().getConfig().startsWith(SystemConstant.START_PARENT)) {
+                stringJoiner.add(dictionaryConfig.fssPublicDomain().getConfig()).add(File.separator);
+            }
+            stringJoiner = SystemConstant.getDirName(stringJoiner, UploadFileEnum.FILE, true);
             stringJoiner.add(DefaultInstanceConvertToMultiInstance.BPMN_NAME).add(File.separator).add(bpmnPngName);
             stringJoiner.add(DefaultInstanceConvertToMultiInstance.BPMN_NAME).add(File.separator).add(bpmnPngName);
-            fileStoreUtil.ossUpload(stringJoiner.toString(), file, DigestUtils.md5Hex(new FileInputStream(file)), UploadFileEnum.FILE.getFssType());
+
+            if (oss || (!oss && dictionaryConfig.fssPublicDomain().getConfig().startsWith(SystemConstant.START_PARENT))) {
+                fileStoreUtil.ossUpload(stringJoiner.toString(), file, DigestUtils.md5Hex(new FileInputStream(file)), UploadFileEnum.FILE.getFssType());
+            } else {
+                fileStoreUtil.localUpload(stringJoiner.toString(), new FileInputStream(file), DigestUtils.md5Hex(new FileInputStream(file)), LocalCatalogEnum.LOCAL_FILE);
+            }
         } catch (Exception e) {
         } catch (Exception e) {
             log.error(SystemConstant.LOG_ERROR, e);
             log.error(SystemConstant.LOG_ERROR, e);
         } finally {
         } finally {
@@ -279,9 +289,19 @@ public class ActivitiServiceImpl implements ActivitiService {
         try {
         try {
             file = SystemConstant.getFileTempVar(bpmnProcessName);
             file = SystemConstant.getFileTempVar(bpmnProcessName);
             FileUtils.copyInputStreamToFile(processBpmn, file);
             FileUtils.copyInputStreamToFile(processBpmn, file);
-            StringJoiner stringJoiner = SystemConstant.getDirName(UploadFileEnum.FILE, true);
+            boolean oss = dictionaryConfig.sysDomain().isOss();
+            StringJoiner stringJoiner = new StringJoiner("");
+            if (!oss && Objects.nonNull(dictionaryConfig.fssPublicDomain()) && !StringUtils.isBlank(dictionaryConfig.fssPublicDomain().getConfig()) && !dictionaryConfig.fssPublicDomain().getConfig().startsWith(SystemConstant.START_PARENT)) {
+                stringJoiner.add(dictionaryConfig.fssPublicDomain().getConfig()).add(File.separator);
+            }
+            stringJoiner = SystemConstant.getDirName(stringJoiner, UploadFileEnum.FILE, true);
             stringJoiner.add(DefaultInstanceConvertToMultiInstance.BPMN_NAME).add(File.separator).add(bpmnProcessName);
             stringJoiner.add(DefaultInstanceConvertToMultiInstance.BPMN_NAME).add(File.separator).add(bpmnProcessName);
-            fileStoreUtil.ossUpload(stringJoiner.toString(), file, DigestUtils.md5Hex(new FileInputStream(file)), UploadFileEnum.FILE.getFssType());
+
+            if (oss || (!oss && dictionaryConfig.fssPublicDomain().getConfig().startsWith(SystemConstant.START_PARENT))) {
+                fileStoreUtil.ossUpload(stringJoiner.toString(), file, DigestUtils.md5Hex(new FileInputStream(file)), UploadFileEnum.FILE.getFssType());
+            } else {
+                fileStoreUtil.localUpload(stringJoiner.toString(), new FileInputStream(file), DigestUtils.md5Hex(new FileInputStream(file)), LocalCatalogEnum.LOCAL_FILE);
+            }
         } catch (Exception e) {
         } catch (Exception e) {
             log.error(SystemConstant.LOG_ERROR, e);
             log.error(SystemConstant.LOG_ERROR, e);
         } finally {
         } finally {

+ 5 - 16
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/ExamTaskServiceImpl.java

@@ -992,9 +992,7 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
     public void paperDownload(HttpServletResponse response, Long examTaskId) throws Exception {
     public void paperDownload(HttpServletResponse response, Long examTaskId) throws Exception {
         ExamTask examTask = this.getById(examTaskId);
         ExamTask examTask = this.getById(examTaskId);
         ExamTaskDetailPdfDownloadDto examTaskDetailPdfDownloadDto = examTaskDetailService.findPdfDownload(examTaskId);
         ExamTaskDetailPdfDownloadDto examTaskDetailPdfDownloadDto = examTaskDetailService.findPdfDownload(examTaskId);
-        if (examTaskDetailPdfDownloadDto == null) {
-            throw ExceptionResultEnum.ERROR.exception("数据异常");
-        }
+        Optional.ofNullable(examTaskDetailPdfDownloadDto).orElseThrow(() -> ExceptionResultEnum.ERROR.exception("数据异常"));
 
 
         String paperAttachmentIds = examTaskDetailPdfDownloadDto.getPaperAttachmentIds();
         String paperAttachmentIds = examTaskDetailPdfDownloadDto.getPaperAttachmentIds();
         List<JSONObject> jsonObjectList = JSONObject.parseArray(paperAttachmentIds, JSONObject.class);
         List<JSONObject> jsonObjectList = JSONObject.parseArray(paperAttachmentIds, JSONObject.class);
@@ -1002,11 +1000,10 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
         String rootPath = null;
         String rootPath = null;
         try {
         try {
             // 本地保存目录
             // 本地保存目录
-            Long time = System.currentTimeMillis();
-            tempFile = SystemConstant.getFileTempDirVar(String.valueOf(time) + File.separator + SystemConstant.getNanoId(), SystemConstant.TEMP_PREFIX);
+            tempFile = SystemConstant.getFileTempDirVar(String.valueOf(System.currentTimeMillis()) + File.separator + SystemConstant.getNanoId(), SystemConstant.TEMP_PREFIX);
             rootPath = tempFile.getParent();
             rootPath = tempFile.getParent();
             StringJoiner dirPath = new StringJoiner("");
             StringJoiner dirPath = new StringJoiner("");
-            dirPath = dirPath.add(String.valueOf(time)).add(File.separator)
+            dirPath = dirPath.add(rootPath).add(File.separator)
                     .add(examTaskDetailPdfDownloadDto.getSemesterName()).add(File.separator)
                     .add(examTaskDetailPdfDownloadDto.getSemesterName()).add(File.separator)
                     .add(examTaskDetailPdfDownloadDto.getExamName()).add(File.separator)
                     .add(examTaskDetailPdfDownloadDto.getExamName()).add(File.separator)
                     .add(examTaskDetailPdfDownloadDto.getCourseNameCode()).add(File.separator)
                     .add(examTaskDetailPdfDownloadDto.getCourseNameCode()).add(File.separator)
@@ -1020,11 +1017,9 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
                 String name = jsonObject.get("name").toString();
                 String name = jsonObject.get("name").toString();
                 if (StringUtils.isNotBlank(id)) {
                 if (StringUtils.isNotBlank(id)) {
                     BasicAttachment attachment = basicAttachmentService.getById(id);
                     BasicAttachment attachment = basicAttachmentService.getById(id);
-                    if (attachment == null) {
-                        throw ExceptionResultEnum.ERROR.exception("附件数据异常");
-                    }
+                    Optional.ofNullable(attachment).orElseThrow(() -> ExceptionResultEnum.ERROR.exception("附件数据异常"));
                     StringJoiner paperPath = new StringJoiner("");
                     StringJoiner paperPath = new StringJoiner("");
-                    paperPath = paperPath.add(String.valueOf(time)).add(File.separator)
+                    paperPath = paperPath.add(rootPath).add(File.separator)
                             .add(examTaskDetailPdfDownloadDto.getSemesterName()).add(File.separator)
                             .add(examTaskDetailPdfDownloadDto.getSemesterName()).add(File.separator)
                             .add(examTaskDetailPdfDownloadDto.getExamName()).add(File.separator)
                             .add(examTaskDetailPdfDownloadDto.getExamName()).add(File.separator)
                             .add(examTaskDetailPdfDownloadDto.getCourseNameCode()).add(File.separator)
                             .add(examTaskDetailPdfDownloadDto.getCourseNameCode()).add(File.separator)
@@ -1056,17 +1051,11 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
 
 
                     // html
                     // html
                     File htmlFile = new File(cardHtmlPath);
                     File htmlFile = new File(cardHtmlPath);
-                    if (!htmlFile.getParentFile().exists()) {
-                        htmlFile.getParentFile().mkdirs();
-                    }
                     // 生成html文件
                     // 生成html文件
                     FileCopyUtils.copy(htmlContent.getBytes(), htmlFile);
                     FileCopyUtils.copy(htmlContent.getBytes(), htmlFile);
                     fileList.add(htmlFile);
                     fileList.add(htmlFile);
                     // 转pdf文件
                     // 转pdf文件
                     File pdfFile = new File(cardPdfPath);
                     File pdfFile = new File(cardPdfPath);
-                    if (!pdfFile.exists()) {
-                        pdfFile.createNewFile();
-                    }
                     HtmlToPdfUtil.convert(cardHtmlPath, cardPdfPath, PageSizeEnum.A3);
                     HtmlToPdfUtil.convert(cardHtmlPath, cardPdfPath, PageSizeEnum.A3);
                     fileList.add(pdfFile);
                     fileList.add(pdfFile);
                 }
                 }

+ 26 - 27
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/PrintCommonServiceImpl.java

@@ -41,7 +41,6 @@ import org.apache.commons.io.FilenameUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.slf4j.Logger;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.slf4j.LoggerFactory;
-import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.context.annotation.Lazy;
 import org.springframework.context.annotation.Lazy;
 import org.springframework.stereotype.Service;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.transaction.annotation.Transactional;
@@ -182,8 +181,8 @@ public class PrintCommonServiceImpl implements PrintCommonService {
             if (Objects.nonNull(type) && Objects.equals(type, SystemConstant.HTML_PREFIX)) {
             if (Objects.nonNull(type) && Objects.equals(type, SystemConstant.HTML_PREFIX)) {
                 filePath = (String) jsonObject.get(SystemConstant.PATH);
                 filePath = (String) jsonObject.get(SystemConstant.PATH);
                 UploadFileEnum uploadType = Enum.valueOf(UploadFileEnum.class, (String) jsonObject.get(SystemConstant.UPLOAD_TYPE));
                 UploadFileEnum uploadType = Enum.valueOf(UploadFileEnum.class, (String) jsonObject.get(SystemConstant.UPLOAD_TYPE));
-                if (oss || (!oss && dictionaryConfig.fssPrivateDomain().getConfig().startsWith("../"))) {
-                    ossStr = SystemConstant.OSS;
+                if (oss || (!oss && dictionaryConfig.fssPrivateDomain().getConfig().startsWith(SystemConstant.START_PARENT))) {
+                    ossStr = oss ? SystemConstant.OSS : SystemConstant.LOCAL;
                     File htmlFileTemp = SystemConstant.getFileTempVar(SystemConstant.HTML_PREFIX);
                     File htmlFileTemp = SystemConstant.getFileTempVar(SystemConstant.HTML_PREFIX);
                     fileTempList.add(htmlFileTemp);
                     fileTempList.add(htmlFileTemp);
                     htmlFile = fileStoreUtil.ossDownload(filePath, htmlFileTemp, uploadType.getFssType());
                     htmlFile = fileStoreUtil.ossDownload(filePath, htmlFileTemp, uploadType.getFssType());
@@ -195,7 +194,7 @@ public class PrintCommonServiceImpl implements PrintCommonService {
                         File htmlFileTemp = SystemConstant.getFileTempVar(SystemConstant.HTML_PREFIX);
                         File htmlFileTemp = SystemConstant.getFileTempVar(SystemConstant.HTML_PREFIX);
                         htmlFile = fileStoreUtil.ossDownload(filePath, htmlFileTemp, uploadType.getFssType());
                         htmlFile = fileStoreUtil.ossDownload(filePath, htmlFileTemp, uploadType.getFssType());
                     }
                     }
-                    if (Objects.nonNull(dictionaryConfig.fssPrivateDomain()) && !StringUtils.isBlank(dictionaryConfig.fssPrivateDomain().getConfig())) {
+                    if (Objects.nonNull(dictionaryConfig.fssPrivateDomain()) && !StringUtils.isBlank(dictionaryConfig.fssPrivateDomain().getConfig()) && !dictionaryConfig.fssPrivateDomain().getConfig().startsWith(SystemConstant.START_PARENT)) {
                         pdfStringJoiner.add(dictionaryConfig.fssPrivateDomain().getConfig()).add(File.separator);
                         pdfStringJoiner.add(dictionaryConfig.fssPrivateDomain().getConfig()).add(File.separator);
                     }
                     }
                 }
                 }
@@ -211,7 +210,7 @@ public class PrintCommonServiceImpl implements PrintCommonService {
 //            File pdfFile = asposePdfUtil.documentToPdf(htmlFile.getPath(), destUrl, PaperSize.A4);
 //            File pdfFile = asposePdfUtil.documentToPdf(htmlFile.getPath(), destUrl, PaperSize.A4);
             String htmlFileMd5 = DigestUtils.md5Hex(new FileInputStream(htmlFile));
             String htmlFileMd5 = DigestUtils.md5Hex(new FileInputStream(htmlFile));
             String pdfFileMd5 = DigestUtils.md5Hex(new FileInputStream(pdfFileTemp));
             String pdfFileMd5 = DigestUtils.md5Hex(new FileInputStream(pdfFileTemp));
-            if (oss || (!oss && dictionaryConfig.fssPrivateDomain().getConfig().startsWith("../"))) {
+            if (oss || (!oss && dictionaryConfig.fssPrivateDomain().getConfig().startsWith(SystemConstant.START_PARENT))) {
                 fileStoreUtil.ossUpload(pdfDirName, pdfFileTemp, pdfFileMd5, fileStoreUtil.getUploadEnumByPath(pdfDirName).getFssType());
                 fileStoreUtil.ossUpload(pdfDirName, pdfFileTemp, pdfFileMd5, fileStoreUtil.getUploadEnumByPath(pdfDirName).getFssType());
             } else {
             } else {
                 fileStoreUtil.localUpload(pdfDirName, new FileInputStream(pdfFileTemp), pdfFileMd5, LocalCatalogEnum.LOCAL_PDF);
                 fileStoreUtil.localUpload(pdfDirName, new FileInputStream(pdfFileTemp), pdfFileMd5, LocalCatalogEnum.LOCAL_PDF);
@@ -266,7 +265,7 @@ public class PrintCommonServiceImpl implements PrintCommonService {
             boolean oss = dictionaryConfig.sysDomain().isOss();
             boolean oss = dictionaryConfig.sysDomain().isOss();
             StringJoiner pdfStringJoiner = new StringJoiner("");
             StringJoiner pdfStringJoiner = new StringJoiner("");
             String ossStr = null;
             String ossStr = null;
-            if (!oss && Objects.nonNull(dictionaryConfig.fssPrivateDomain()) && !StringUtils.isBlank(dictionaryConfig.fssPrivateDomain().getConfig())) {
+            if (!oss && Objects.nonNull(dictionaryConfig.fssPrivateDomain()) && !StringUtils.isBlank(dictionaryConfig.fssPrivateDomain().getConfig()) && !dictionaryConfig.fssPrivateDomain().getConfig().startsWith(SystemConstant.START_PARENT)) {
                 pdfStringJoiner.add(dictionaryConfig.fssPrivateDomain().getConfig()).add(File.separator);
                 pdfStringJoiner.add(dictionaryConfig.fssPrivateDomain().getConfig()).add(File.separator);
             }
             }
             pdfStringJoiner = SystemConstant.getDirName(pdfStringJoiner, UploadFileEnum.PDF, true);
             pdfStringJoiner = SystemConstant.getDirName(pdfStringJoiner, UploadFileEnum.PDF, true);
@@ -279,8 +278,8 @@ public class PrintCommonServiceImpl implements PrintCommonService {
             String pdfDirName = pdfStringJoiner.toString().replaceAll("\\\\", SystemConstant.ORG_SPLIT);
             String pdfDirName = pdfStringJoiner.toString().replaceAll("\\\\", SystemConstant.ORG_SPLIT);
             //pdf生成和上传
             //pdf生成和上传
             String pdfFileMd5 = DigestUtils.md5Hex(new FileInputStream(pdfFileTemp));
             String pdfFileMd5 = DigestUtils.md5Hex(new FileInputStream(pdfFileTemp));
-            if (oss || (!oss && dictionaryConfig.fssPrivateDomain().getConfig().startsWith("../"))) {
-                ossStr = SystemConstant.OSS;
+            if (oss || (!oss && dictionaryConfig.fssPrivateDomain().getConfig().startsWith(SystemConstant.START_PARENT))) {
+                ossStr = oss ? SystemConstant.OSS : SystemConstant.LOCAL;
                 fileStoreUtil.ossUpload(pdfDirName, pdfFileTemp, pdfFileMd5, fileStoreUtil.getUploadEnumByPath(pdfDirName).getFssType());
                 fileStoreUtil.ossUpload(pdfDirName, pdfFileTemp, pdfFileMd5, fileStoreUtil.getUploadEnumByPath(pdfDirName).getFssType());
             } else {
             } else {
                 ossStr = SystemConstant.LOCAL;
                 ossStr = SystemConstant.LOCAL;
@@ -342,10 +341,10 @@ public class PrintCommonServiceImpl implements PrintCommonService {
             boolean oss = dictionaryConfig.sysDomain().isOss();
             boolean oss = dictionaryConfig.sysDomain().isOss();
             StringJoiner stringJoiner = new StringJoiner("");
             StringJoiner stringJoiner = new StringJoiner("");
             StringJoiner pdfStringJoiner = new StringJoiner("");
             StringJoiner pdfStringJoiner = new StringJoiner("");
-            if (!oss && Objects.nonNull(dictionaryConfig.fssPublicDomain()) && !StringUtils.isBlank(dictionaryConfig.fssPublicDomain().getConfig())) {
+            if (!oss && Objects.nonNull(dictionaryConfig.fssPublicDomain()) && !StringUtils.isBlank(dictionaryConfig.fssPublicDomain().getConfig()) && !dictionaryConfig.fssPublicDomain().getConfig().startsWith(SystemConstant.START_PARENT)) {
                 stringJoiner.add(dictionaryConfig.fssPublicDomain().getConfig()).add(File.separator);
                 stringJoiner.add(dictionaryConfig.fssPublicDomain().getConfig()).add(File.separator);
             }
             }
-            if (!oss && Objects.nonNull(dictionaryConfig.fssPrivateDomain()) && !StringUtils.isBlank(dictionaryConfig.fssPrivateDomain().getConfig())) {
+            if (!oss && Objects.nonNull(dictionaryConfig.fssPrivateDomain()) && !StringUtils.isBlank(dictionaryConfig.fssPrivateDomain().getConfig()) && !dictionaryConfig.fssPrivateDomain().getConfig().startsWith(SystemConstant.START_PARENT)) {
                 pdfStringJoiner.add(dictionaryConfig.fssPrivateDomain().getConfig()).add(File.separator);
                 pdfStringJoiner.add(dictionaryConfig.fssPrivateDomain().getConfig()).add(File.separator);
             }
             }
             stringJoiner = SystemConstant.getDirName(stringJoiner, UploadFileEnum.HTML, true);
             stringJoiner = SystemConstant.getDirName(stringJoiner, UploadFileEnum.HTML, true);
@@ -360,8 +359,8 @@ public class PrintCommonServiceImpl implements PrintCommonService {
 
 
             //html生成和上传
             //html生成和上传
             String htmlFileMd5 = DigestUtils.md5Hex(new FileInputStream(htmlFileTemp));
             String htmlFileMd5 = DigestUtils.md5Hex(new FileInputStream(htmlFileTemp));
-            if (oss || (!oss && dictionaryConfig.fssPrivateDomain().getConfig().startsWith("../"))) {
-                jsonObject.put(SystemConstant.TYPE, SystemConstant.OSS);
+            if (oss || (!oss && dictionaryConfig.fssPrivateDomain().getConfig().startsWith(SystemConstant.START_PARENT))) {
+                jsonObject.put(SystemConstant.TYPE, oss ? SystemConstant.OSS : SystemConstant.LOCAL);
                 fileStoreUtil.ossUpload(htmlDirName, htmlFileTemp, htmlFileMd5, fileStoreUtil.getUploadEnumByPath(htmlDirName).getFssType());
                 fileStoreUtil.ossUpload(htmlDirName, htmlFileTemp, htmlFileMd5, fileStoreUtil.getUploadEnumByPath(htmlDirName).getFssType());
             } else {
             } else {
                 fileStoreUtil.localUpload(htmlDirName, new FileInputStream(htmlFileTemp), htmlFileMd5, LocalCatalogEnum.LOCAL_FILE);
                 fileStoreUtil.localUpload(htmlDirName, new FileInputStream(htmlFileTemp), htmlFileMd5, LocalCatalogEnum.LOCAL_FILE);
@@ -373,7 +372,7 @@ public class PrintCommonServiceImpl implements PrintCommonService {
 
 
             //pdf生成和上传
             //pdf生成和上传
             String pdfFileMd5 = DigestUtils.md5Hex(new FileInputStream(pdfFileTemp));
             String pdfFileMd5 = DigestUtils.md5Hex(new FileInputStream(pdfFileTemp));
-            if (oss || (!oss && dictionaryConfig.fssPrivateDomain().getConfig().startsWith("../"))) {
+            if (oss || (!oss && dictionaryConfig.fssPrivateDomain().getConfig().startsWith(SystemConstant.START_PARENT))) {
                 fileStoreUtil.ossUpload(pdfDirName, pdfFileTemp, pdfFileMd5, fileStoreUtil.getUploadEnumByPath(pdfDirName).getFssType());
                 fileStoreUtil.ossUpload(pdfDirName, pdfFileTemp, pdfFileMd5, fileStoreUtil.getUploadEnumByPath(pdfDirName).getFssType());
             } else {
             } else {
                 fileStoreUtil.localUpload(pdfDirName, new FileInputStream(pdfFileTemp), pdfFileMd5, LocalCatalogEnum.LOCAL_PDF);
                 fileStoreUtil.localUpload(pdfDirName, new FileInputStream(pdfFileTemp), pdfFileMd5, LocalCatalogEnum.LOCAL_PDF);
@@ -422,10 +421,10 @@ public class PrintCommonServiceImpl implements PrintCommonService {
             boolean oss = dictionaryConfig.sysDomain().isOss();
             boolean oss = dictionaryConfig.sysDomain().isOss();
             StringJoiner stringJoiner = new StringJoiner("");
             StringJoiner stringJoiner = new StringJoiner("");
             StringJoiner pdfStringJoiner = new StringJoiner("");
             StringJoiner pdfStringJoiner = new StringJoiner("");
-            if (!oss && Objects.nonNull(dictionaryConfig.fssPublicDomain()) && !StringUtils.isBlank(dictionaryConfig.fssPublicDomain().getConfig())) {
+            if (!oss && Objects.nonNull(dictionaryConfig.fssPublicDomain()) && !StringUtils.isBlank(dictionaryConfig.fssPublicDomain().getConfig()) && !dictionaryConfig.fssPublicDomain().getConfig().startsWith(SystemConstant.START_PARENT)) {
                 stringJoiner.add(dictionaryConfig.fssPublicDomain().getConfig()).add(File.separator);
                 stringJoiner.add(dictionaryConfig.fssPublicDomain().getConfig()).add(File.separator);
             }
             }
-            if (!oss && Objects.nonNull(dictionaryConfig.fssPrivateDomain()) && !StringUtils.isBlank(dictionaryConfig.fssPrivateDomain().getConfig())) {
+            if (!oss && Objects.nonNull(dictionaryConfig.fssPrivateDomain()) && !StringUtils.isBlank(dictionaryConfig.fssPrivateDomain().getConfig()) && !dictionaryConfig.fssPrivateDomain().getConfig().startsWith(SystemConstant.START_PARENT)) {
                 stringJoiner.add(dictionaryConfig.fssPrivateDomain().getConfig()).add(File.separator);
                 stringJoiner.add(dictionaryConfig.fssPrivateDomain().getConfig()).add(File.separator);
             }
             }
             stringJoiner = SystemConstant.getDirName(stringJoiner, UploadFileEnum.HTML, true);
             stringJoiner = SystemConstant.getDirName(stringJoiner, UploadFileEnum.HTML, true);
@@ -452,8 +451,8 @@ public class PrintCommonServiceImpl implements PrintCommonService {
             jsonObject.put("htmlMd5", htmlFileMd5);
             jsonObject.put("htmlMd5", htmlFileMd5);
             jsonObject.put("pdfMd5", pdfFileMd5);
             jsonObject.put("pdfMd5", pdfFileMd5);
             HtmlToPdfUtil.convert(htmlFile.getPath(), pdfFile.getPath(), PageSizeEnum.A4);
             HtmlToPdfUtil.convert(htmlFile.getPath(), pdfFile.getPath(), PageSizeEnum.A4);
-            if (oss || (!oss && dictionaryConfig.fssPrivateDomain().getConfig().startsWith("../"))) {//上传至oss
-                jsonObject.put(SystemConstant.TYPE, SystemConstant.OSS);
+            if (oss || (!oss && dictionaryConfig.fssPrivateDomain().getConfig().startsWith(SystemConstant.START_PARENT))) {//上传至oss
+                jsonObject.put(SystemConstant.TYPE, oss ? SystemConstant.OSS : SystemConstant.LOCAL);
                 fileStoreUtil.ossUpload(htmlDirName, htmlContent, fileStoreUtil.getUploadEnumByPath(htmlDirName).getFssType());
                 fileStoreUtil.ossUpload(htmlDirName, htmlContent, fileStoreUtil.getUploadEnumByPath(htmlDirName).getFssType());
 //                File pdfFile = asposePdfUtil.documentToPdf(localHtmlFile.getPath(), destUrl, PaperSize.A3);
 //                File pdfFile = asposePdfUtil.documentToPdf(localHtmlFile.getPath(), destUrl, PaperSize.A3);
                 fileStoreUtil.ossUpload(pdfDirName, pdfFile, pdfFileMd5, fileStoreUtil.getUploadEnumByPath(pdfDirName).getFssType());
                 fileStoreUtil.ossUpload(pdfDirName, pdfFile, pdfFileMd5, fileStoreUtil.getUploadEnumByPath(pdfDirName).getFssType());
@@ -544,7 +543,7 @@ public class PrintCommonServiceImpl implements PrintCommonService {
             }
             }
             boolean oss = dictionaryConfig.sysDomain().isOss();
             boolean oss = dictionaryConfig.sysDomain().isOss();
             StringJoiner stringJoiner = new StringJoiner("");
             StringJoiner stringJoiner = new StringJoiner("");
-            if (!oss && (Objects.nonNull(dictionaryConfig.fssPublicDomain()) && !StringUtils.isBlank(dictionaryConfig.fssPublicDomain().getConfig()))) {
+            if (!oss && (Objects.nonNull(dictionaryConfig.fssPublicDomain()) && !StringUtils.isBlank(dictionaryConfig.fssPublicDomain().getConfig())) && !dictionaryConfig.fssPublicDomain().getConfig().startsWith(SystemConstant.START_PARENT)) {
                 stringJoiner.add(dictionaryConfig.fssPublicDomain().getConfig()).add(File.separator);
                 stringJoiner.add(dictionaryConfig.fssPublicDomain().getConfig()).add(File.separator);
             }
             }
             stringJoiner = SystemConstant.getDirName(stringJoiner, type, true);
             stringJoiner = SystemConstant.getDirName(stringJoiner, type, true);
@@ -552,9 +551,9 @@ public class PrintCommonServiceImpl implements PrintCommonService {
 
 
             JSONObject jsonObject = new JSONObject();
             JSONObject jsonObject = new JSONObject();
             String dirName = stringJoiner.toString().replaceAll("\\\\", SystemConstant.ORG_SPLIT);
             String dirName = stringJoiner.toString().replaceAll("\\\\", SystemConstant.ORG_SPLIT);
-            if (oss || (!oss && dictionaryConfig.fssPrivateDomain().getConfig().startsWith("../"))) {//上传至oss
+            if (oss || (!oss && dictionaryConfig.fssPrivateDomain().getConfig().startsWith(SystemConstant.START_PARENT))) {//上传至oss
                 fileStoreUtil.ossUpload(dirName, file.getInputStream(), md5, type.getFssType());
                 fileStoreUtil.ossUpload(dirName, file.getInputStream(), md5, type.getFssType());
-                jsonObject.put(SystemConstant.TYPE, SystemConstant.OSS);
+                jsonObject.put(SystemConstant.TYPE, oss ? SystemConstant.OSS : SystemConstant.LOCAL);
                 jsonObject.put(SystemConstant.PATH, dirName);
                 jsonObject.put(SystemConstant.PATH, dirName);
             } else {//上传至服务器
             } else {//上传至服务器
                 fileStoreUtil.localUpload(dirName, file.getInputStream(), md5, LocalCatalogEnum.LOCAL_FILE);
                 fileStoreUtil.localUpload(dirName, file.getInputStream(), md5, LocalCatalogEnum.LOCAL_FILE);
@@ -1205,7 +1204,7 @@ public class PrintCommonServiceImpl implements PrintCommonService {
         try {
         try {
             inputStream = new ByteArrayInputStream(fos.toByteArray());
             inputStream = new ByteArrayInputStream(fos.toByteArray());
             StringJoiner stringJoiner = new StringJoiner("");
             StringJoiner stringJoiner = new StringJoiner("");
-            if (!oss && Objects.nonNull(dictionaryConfig.fssPublicDomain()) && !StringUtils.isBlank(dictionaryConfig.fssPublicDomain().getConfig())) {
+            if (!oss && Objects.nonNull(dictionaryConfig.fssPublicDomain()) && !StringUtils.isBlank(dictionaryConfig.fssPublicDomain().getConfig()) && !dictionaryConfig.fssPublicDomain().getConfig().startsWith(SystemConstant.START_PARENT)) {
                 stringJoiner.add(dictionaryConfig.fssPublicDomain().getConfig()).add(File.separator);
                 stringJoiner.add(dictionaryConfig.fssPublicDomain().getConfig()).add(File.separator);
             }
             }
             stringJoiner = SystemConstant.getDirName(stringJoiner, UploadFileEnum.FILE, true);
             stringJoiner = SystemConstant.getDirName(stringJoiner, UploadFileEnum.FILE, true);
@@ -1213,9 +1212,9 @@ public class PrintCommonServiceImpl implements PrintCommonService {
 
 
             jsonObject = new JSONObject();
             jsonObject = new JSONObject();
             String dirName = stringJoiner.toString().replaceAll("\\\\", SystemConstant.ORG_SPLIT);
             String dirName = stringJoiner.toString().replaceAll("\\\\", SystemConstant.ORG_SPLIT);
-            if (oss || (!oss && dictionaryConfig.fssPrivateDomain().getConfig().startsWith("../"))) {//上传至oss
+            if (oss || (!oss && dictionaryConfig.fssPrivateDomain().getConfig().startsWith(SystemConstant.START_PARENT))) {//上传至oss
                 fileStoreUtil.ossUpload(dirName, inputStream, DigestUtils.md5Hex(new ByteArrayInputStream(fos.toByteArray())), UploadFileEnum.FILE.getFssType());
                 fileStoreUtil.ossUpload(dirName, inputStream, DigestUtils.md5Hex(new ByteArrayInputStream(fos.toByteArray())), UploadFileEnum.FILE.getFssType());
-                jsonObject.put(SystemConstant.TYPE, SystemConstant.OSS);
+                jsonObject.put(SystemConstant.TYPE, oss ? SystemConstant.OSS : SystemConstant.LOCAL);
             } else {
             } else {
                 fileStoreUtil.copyInputStreamToFile(inputStream, new File(stringJoiner.toString()), DigestUtils.md5Hex(new ByteArrayInputStream(fos.toByteArray())), LocalCatalogEnum.LOCAL_FILE);
                 fileStoreUtil.copyInputStreamToFile(inputStream, new File(stringJoiner.toString()), DigestUtils.md5Hex(new ByteArrayInputStream(fos.toByteArray())), LocalCatalogEnum.LOCAL_FILE);
                 jsonObject.put(SystemConstant.TYPE, SystemConstant.LOCAL);
                 jsonObject.put(SystemConstant.TYPE, SystemConstant.LOCAL);
@@ -1285,7 +1284,7 @@ public class PrintCommonServiceImpl implements PrintCommonService {
             boolean oss = dictionaryConfig.sysDomain().isOss();
             boolean oss = dictionaryConfig.sysDomain().isOss();
             StringJoiner pdfStringJoiner = new StringJoiner("");
             StringJoiner pdfStringJoiner = new StringJoiner("");
             String ossStr = null;
             String ossStr = null;
-            if (!oss && Objects.nonNull(dictionaryConfig.fssPrivateDomain()) && !StringUtils.isBlank(dictionaryConfig.fssPrivateDomain().getConfig())) {
+            if (!oss && Objects.nonNull(dictionaryConfig.fssPrivateDomain()) && !StringUtils.isBlank(dictionaryConfig.fssPrivateDomain().getConfig()) && !dictionaryConfig.fssPrivateDomain().getConfig().startsWith(SystemConstant.START_PARENT)) {
                 pdfStringJoiner.add(dictionaryConfig.fssPrivateDomain().getConfig()).add(File.separator);
                 pdfStringJoiner.add(dictionaryConfig.fssPrivateDomain().getConfig()).add(File.separator);
             }
             }
             pdfStringJoiner = SystemConstant.getDirName(pdfStringJoiner, UploadFileEnum.PDF, true);
             pdfStringJoiner = SystemConstant.getDirName(pdfStringJoiner, UploadFileEnum.PDF, true);
@@ -1297,8 +1296,8 @@ public class PrintCommonServiceImpl implements PrintCommonService {
             createPrintPdfUtil.createPackagePdf(pdfPackageDto, pdfFileTemp.getPath());
             createPrintPdfUtil.createPackagePdf(pdfPackageDto, pdfFileTemp.getPath());
             //pdf生成和上传
             //pdf生成和上传
             String pdfFileMd5 = DigestUtils.md5Hex(new FileInputStream(pdfFileTemp));
             String pdfFileMd5 = DigestUtils.md5Hex(new FileInputStream(pdfFileTemp));
-            if (oss || (!oss && dictionaryConfig.fssPrivateDomain().getConfig().startsWith("../"))) {
-                ossStr = SystemConstant.OSS;
+            if (oss || (!oss && dictionaryConfig.fssPrivateDomain().getConfig().startsWith(SystemConstant.START_PARENT))) {
+                ossStr = oss ? SystemConstant.OSS : SystemConstant.LOCAL;
                 fileStoreUtil.ossUpload(pdfDirName, pdfFileTemp, pdfFileMd5, fileStoreUtil.getUploadEnumByPath(pdfDirName).getFssType());
                 fileStoreUtil.ossUpload(pdfDirName, pdfFileTemp, pdfFileMd5, fileStoreUtil.getUploadEnumByPath(pdfDirName).getFssType());
             } else {
             } else {
                 ossStr = SystemConstant.LOCAL;
                 ossStr = SystemConstant.LOCAL;
@@ -1347,7 +1346,7 @@ public class PrintCommonServiceImpl implements PrintCommonService {
         try {
         try {
             boolean oss = dictionaryConfig.sysDomain().isOss();
             boolean oss = dictionaryConfig.sysDomain().isOss();
             StringJoiner pdfStringJoiner = new StringJoiner("");
             StringJoiner pdfStringJoiner = new StringJoiner("");
-            if (!oss && Objects.nonNull(dictionaryConfig.fssPrivateDomain()) && !StringUtils.isBlank(dictionaryConfig.fssPrivateDomain().getConfig())) {
+            if (!oss && Objects.nonNull(dictionaryConfig.fssPrivateDomain()) && !StringUtils.isBlank(dictionaryConfig.fssPrivateDomain().getConfig()) && !dictionaryConfig.fssPrivateDomain().getConfig().startsWith(SystemConstant.START_PARENT)) {
                 pdfStringJoiner.add(dictionaryConfig.fssPrivateDomain().getConfig()).add(File.separator);
                 pdfStringJoiner.add(dictionaryConfig.fssPrivateDomain().getConfig()).add(File.separator);
             }
             }
             pdfStringJoiner = SystemConstant.getDirName(pdfStringJoiner, UploadFileEnum.PDF, true);
             pdfStringJoiner = SystemConstant.getDirName(pdfStringJoiner, UploadFileEnum.PDF, true);

+ 5 - 5
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/TSyncExamStudentScoreServiceImpl.java

@@ -124,7 +124,7 @@ public class TSyncExamStudentScoreServiceImpl extends ServiceImpl<TSyncExamStude
             Optional.ofNullable(tSyncExamStudentScore.getSheetUrls()).orElseThrow(() -> ExceptionResultEnum.ERROR.exception("未获取到考生原卷地址"));
             Optional.ofNullable(tSyncExamStudentScore.getSheetUrls()).orElseThrow(() -> ExceptionResultEnum.ERROR.exception("未获取到考生原卷地址"));
             Optional.ofNullable(tSyncExamStudentScore.getSyncData()).orElseThrow(() -> ExceptionResultEnum.ERROR.exception("未获取到考生作答数据"));
             Optional.ofNullable(tSyncExamStudentScore.getSyncData()).orElseThrow(() -> ExceptionResultEnum.ERROR.exception("未获取到考生作答数据"));
             StringJoiner stringJoiner = new StringJoiner("");
             StringJoiner stringJoiner = new StringJoiner("");
-            if (!oss && Objects.nonNull(dictionaryConfig.fssPublicDomain()) && !StringUtils.isBlank(dictionaryConfig.fssPublicDomain().getConfig())) {
+            if (!oss && Objects.nonNull(dictionaryConfig.fssPublicDomain()) && !StringUtils.isBlank(dictionaryConfig.fssPublicDomain().getConfig()) && !dictionaryConfig.fssPublicDomain().getConfig().startsWith(SystemConstant.START_PARENT)) {
                 stringJoiner.add(dictionaryConfig.fssPublicDomain().getConfig()).add(File.separator);
                 stringJoiner.add(dictionaryConfig.fssPublicDomain().getConfig()).add(File.separator);
             }
             }
             stringJoiner = SystemConstant.getDirName(stringJoiner, UploadFileEnum.FILE, true);
             stringJoiner = SystemConstant.getDirName(stringJoiner, UploadFileEnum.FILE, true);
@@ -143,7 +143,7 @@ public class TSyncExamStudentScoreServiceImpl extends ServiceImpl<TSyncExamStude
                     JSONObject jsonObject = new JSONObject();
                     JSONObject jsonObject = new JSONObject();
                     jsonObject.put(SystemConstant.UPLOAD_TYPE, UploadFileEnum.FILE);
                     jsonObject.put(SystemConstant.UPLOAD_TYPE, UploadFileEnum.FILE);
                     if (oss) {
                     if (oss) {
-                        jsonObject.put(SystemConstant.TYPE, SystemConstant.OSS);
+                        jsonObject.put(SystemConstant.TYPE, oss ? SystemConstant.OSS : SystemConstant.LOCAL);
                     } else {
                     } else {
                         jsonObject.put(SystemConstant.TYPE, SystemConstant.LOCAL);
                         jsonObject.put(SystemConstant.TYPE, SystemConstant.LOCAL);
                     }
                     }
@@ -161,9 +161,9 @@ public class TSyncExamStudentScoreServiceImpl extends ServiceImpl<TSyncExamStude
                         JSONObject sheetObject = new JSONObject();
                         JSONObject sheetObject = new JSONObject();
                         sheetObject.put(SystemConstant.PATH, dirJpgName);
                         sheetObject.put(SystemConstant.PATH, dirJpgName);
                         String jpgFileMd5 = DigestUtils.md5Hex(new FileInputStream(fileSource));
                         String jpgFileMd5 = DigestUtils.md5Hex(new FileInputStream(fileSource));
-                        if (oss || (!oss && dictionaryConfig.fssPrivateDomain().getConfig().startsWith("../"))) {
+                        if (oss || (!oss && dictionaryConfig.fssPrivateDomain().getConfig().startsWith(SystemConstant.START_PARENT))) {
                             fileStoreUtil.ossUpload(dirJpgName.toString(), fileSource, DigestUtils.md5Hex(new FileInputStream(fileSource)), UploadFileEnum.FILE.getFssType());
                             fileStoreUtil.ossUpload(dirJpgName.toString(), fileSource, DigestUtils.md5Hex(new FileInputStream(fileSource)), UploadFileEnum.FILE.getFssType());
-                            sheetObject.put(SystemConstant.TYPE, SystemConstant.OSS);
+                            sheetObject.put(SystemConstant.TYPE, oss ? SystemConstant.OSS : SystemConstant.LOCAL);
                         } else {
                         } else {
                             fileStoreUtil.localUpload(dirJpgName.toString(), new FileInputStream(fileSource), jpgFileMd5, LocalCatalogEnum.LOCAL_FILE);
                             fileStoreUtil.localUpload(dirJpgName.toString(), new FileInputStream(fileSource), jpgFileMd5, LocalCatalogEnum.LOCAL_FILE);
                             sheetObject.put(SystemConstant.TYPE, SystemConstant.LOCAL);
                             sheetObject.put(SystemConstant.TYPE, SystemConstant.LOCAL);
@@ -186,7 +186,7 @@ public class TSyncExamStudentScoreServiceImpl extends ServiceImpl<TSyncExamStude
                         String dirTargetName = dirTargetJpgName.toString().replaceAll("\\\\", SystemConstant.ORG_SPLIT);
                         String dirTargetName = dirTargetJpgName.toString().replaceAll("\\\\", SystemConstant.ORG_SPLIT);
                         String jpgTargetFileMd5 = DigestUtils.md5Hex(new FileInputStream(fileTarget));
                         String jpgTargetFileMd5 = DigestUtils.md5Hex(new FileInputStream(fileTarget));
                         jsonImageTrajectoryPathArray.add(dirTargetName);
                         jsonImageTrajectoryPathArray.add(dirTargetName);
-                        if (oss || (!oss && dictionaryConfig.fssPrivateDomain().getConfig().startsWith("../"))) {
+                        if (oss || (!oss && dictionaryConfig.fssPrivateDomain().getConfig().startsWith(SystemConstant.START_PARENT))) {
                             fileStoreUtil.ossUpload(dirTargetName, fileTarget, DigestUtils.md5Hex(new FileInputStream(fileTarget)), UploadFileEnum.FILE.getFssType());
                             fileStoreUtil.ossUpload(dirTargetName, fileTarget, DigestUtils.md5Hex(new FileInputStream(fileTarget)), UploadFileEnum.FILE.getFssType());
                         } else {
                         } else {
                             fileStoreUtil.localUpload(dirTargetName, new FileInputStream(fileTarget), jpgTargetFileMd5, LocalCatalogEnum.LOCAL_FILE);
                             fileStoreUtil.localUpload(dirTargetName, new FileInputStream(fileTarget), jpgTargetFileMd5, LocalCatalogEnum.LOCAL_FILE);

+ 12 - 12
distributed-print-business/src/main/java/com/qmth/distributed/print/business/templete/service/impl/TaskLogicServiceImpl.java

@@ -679,9 +679,9 @@ public class TaskLogicServiceImpl implements TaskLogicService {
         JSONObject jsonObject = new JSONObject();
         JSONObject jsonObject = new JSONObject();
         String dirName = stringJoiner.toString().replaceAll("\\\\", SystemConstant.ORG_SPLIT);
         String dirName = stringJoiner.toString().replaceAll("\\\\", SystemConstant.ORG_SPLIT);
         boolean oss = dictionaryConfig.sysDomain().isOss();
         boolean oss = dictionaryConfig.sysDomain().isOss();
-        if (oss || (!oss && dictionaryConfig.fssPrivateDomain().getConfig().startsWith("../"))) {//上传至oss
+        if (oss || (!oss && dictionaryConfig.fssPrivateDomain().getConfig().startsWith(SystemConstant.START_PARENT))) {//上传至oss
             fileStoreUtil.ossUpload(dirName, in, DigestUtils.md5Hex(new ByteArrayInputStream(outputStream.toByteArray())), fileStoreUtil.getUploadEnumByPath(dirName).getFssType());
             fileStoreUtil.ossUpload(dirName, in, DigestUtils.md5Hex(new ByteArrayInputStream(outputStream.toByteArray())), fileStoreUtil.getUploadEnumByPath(dirName).getFssType());
-            jsonObject.put(SystemConstant.TYPE, SystemConstant.OSS);
+            jsonObject.put(SystemConstant.TYPE, oss ? SystemConstant.OSS : SystemConstant.LOCAL);
             jsonObject.put(SystemConstant.PATH, dirName);
             jsonObject.put(SystemConstant.PATH, dirName);
         } else {
         } else {
             dirName = (dictionaryConfig.fssPublicDomain().getConfig() + File.separator + dirName).replaceAll("\\\\", SystemConstant.ORG_SPLIT);
             dirName = (dictionaryConfig.fssPublicDomain().getConfig() + File.separator + dirName).replaceAll("\\\\", SystemConstant.ORG_SPLIT);
@@ -923,7 +923,7 @@ public class TaskLogicServiceImpl implements TaskLogicService {
                 Long time = System.currentTimeMillis();
                 Long time = System.currentTimeMillis();
                 boolean oss = dictionaryConfig.sysDomain().isOss();
                 boolean oss = dictionaryConfig.sysDomain().isOss();
                 StringJoiner stringJoiner = new StringJoiner("");
                 StringJoiner stringJoiner = new StringJoiner("");
-                if (!oss && Objects.nonNull(dictionaryConfig.fssPublicDomain()) && !StringUtils.isBlank(dictionaryConfig.fssPublicDomain().getConfig())) {
+                if (!oss && Objects.nonNull(dictionaryConfig.fssPublicDomain()) && !StringUtils.isBlank(dictionaryConfig.fssPublicDomain().getConfig()) && !dictionaryConfig.fssPublicDomain().getConfig().startsWith(SystemConstant.START_PARENT)) {
                     stringJoiner.add(dictionaryConfig.fssPublicDomain().getConfig()).add(File.separator);
                     stringJoiner.add(dictionaryConfig.fssPublicDomain().getConfig()).add(File.separator);
                 }
                 }
                 stringJoiner = SystemConstant.getDirName(stringJoiner, UploadFileEnum.FILE, true);
                 stringJoiner = SystemConstant.getDirName(stringJoiner, UploadFileEnum.FILE, true);
@@ -1066,7 +1066,7 @@ public class TaskLogicServiceImpl implements TaskLogicService {
             Long time = System.currentTimeMillis();
             Long time = System.currentTimeMillis();
             boolean oss = dictionaryConfig.sysDomain().isOss();
             boolean oss = dictionaryConfig.sysDomain().isOss();
             StringJoiner stringJoiner = new StringJoiner("");
             StringJoiner stringJoiner = new StringJoiner("");
-            if (!oss && Objects.nonNull(dictionaryConfig.fssPublicDomain()) && !StringUtils.isBlank(dictionaryConfig.fssPublicDomain().getConfig())) {
+            if (!oss && Objects.nonNull(dictionaryConfig.fssPublicDomain()) && !StringUtils.isBlank(dictionaryConfig.fssPublicDomain().getConfig()) && !dictionaryConfig.fssPublicDomain().getConfig().startsWith(SystemConstant.START_PARENT)) {
                 stringJoiner.add(dictionaryConfig.fssPublicDomain().getConfig()).add(File.separator);
                 stringJoiner.add(dictionaryConfig.fssPublicDomain().getConfig()).add(File.separator);
             }
             }
             stringJoiner = SystemConstant.getDirName(stringJoiner, UploadFileEnum.FILE, true);
             stringJoiner = SystemConstant.getDirName(stringJoiner, UploadFileEnum.FILE, true);
@@ -1114,7 +1114,7 @@ public class TaskLogicServiceImpl implements TaskLogicService {
                         JSONObject jsonObject = JSONObject.parseObject(paperAttachment.getPath());
                         JSONObject jsonObject = JSONObject.parseObject(paperAttachment.getPath());
                         UploadFileEnum uploadFileEnum = UploadFileEnum.valueOf((String) jsonObject.get(SystemConstant.UPLOAD_TYPE));
                         UploadFileEnum uploadFileEnum = UploadFileEnum.valueOf((String) jsonObject.get(SystemConstant.UPLOAD_TYPE));
                         String paperPath = firstPath + File.separator + "试卷" + File.separator + paperAttachment.getName() + paperAttachment.getType();
                         String paperPath = firstPath + File.separator + "试卷" + File.separator + paperAttachment.getName() + paperAttachment.getType();
-                        if (oss || (!oss && dictionaryConfig.fssPrivateDomain().getConfig().startsWith("../"))) {
+                        if (oss || (!oss && dictionaryConfig.fssPrivateDomain().getConfig().startsWith(SystemConstant.START_PARENT))) {
                             fileStoreUtil.ossDownload((String) jsonObject.get(SystemConstant.PATH), paperPath, uploadFileEnum.getFssType());
                             fileStoreUtil.ossDownload((String) jsonObject.get(SystemConstant.PATH), paperPath, uploadFileEnum.getFssType());
                         } else {
                         } else {
                             FileUtil.copyFile(jsonObject.getString(SystemConstant.PATH), paperPath);
                             FileUtil.copyFile(jsonObject.getString(SystemConstant.PATH), paperPath);
@@ -1139,7 +1139,7 @@ public class TaskLogicServiceImpl implements TaskLogicService {
                         JSONObject jsonObject = JSONObject.parseObject(confirmAttachment.getPath());
                         JSONObject jsonObject = JSONObject.parseObject(confirmAttachment.getPath());
                         UploadFileEnum uploadFileEnum = UploadFileEnum.valueOf((String) jsonObject.get(SystemConstant.UPLOAD_TYPE));
                         UploadFileEnum uploadFileEnum = UploadFileEnum.valueOf((String) jsonObject.get(SystemConstant.UPLOAD_TYPE));
                         String confirmPath = firstPath + File.separator + "审核样本" + File.separator + confirmAttachment.getName() + confirmAttachment.getType();
                         String confirmPath = firstPath + File.separator + "审核样本" + File.separator + confirmAttachment.getName() + confirmAttachment.getType();
-                        if (oss || (!oss && dictionaryConfig.fssPrivateDomain().getConfig().startsWith("../"))) {
+                        if (oss || (!oss && dictionaryConfig.fssPrivateDomain().getConfig().startsWith(SystemConstant.START_PARENT))) {
                             fileStoreUtil.ossDownload((String) jsonObject.get(SystemConstant.PATH), confirmPath, uploadFileEnum.getFssType());
                             fileStoreUtil.ossDownload((String) jsonObject.get(SystemConstant.PATH), confirmPath, uploadFileEnum.getFssType());
                         } else {
                         } else {
                             FileUtil.copyFile(jsonObject.getString(SystemConstant.PATH), confirmPath);
                             FileUtil.copyFile(jsonObject.getString(SystemConstant.PATH), confirmPath);
@@ -1174,7 +1174,7 @@ public class TaskLogicServiceImpl implements TaskLogicService {
                         }
                         }
                         UploadFileEnum uploadFileEnum = UploadFileEnum.valueOf((String) jsonObject.get(SystemConstant.UPLOAD_TYPE));
                         UploadFileEnum uploadFileEnum = UploadFileEnum.valueOf((String) jsonObject.get(SystemConstant.UPLOAD_TYPE));
 
 
-                        if (oss || (!oss && dictionaryConfig.fssPrivateDomain().getConfig().startsWith("../"))) {
+                        if (oss || (!oss && dictionaryConfig.fssPrivateDomain().getConfig().startsWith(SystemConstant.START_PARENT))) {
                             fileStoreUtil.ossDownload((String) jsonObject.get(SystemConstant.PATH), cardPath, uploadFileEnum.getFssType());
                             fileStoreUtil.ossDownload((String) jsonObject.get(SystemConstant.PATH), cardPath, uploadFileEnum.getFssType());
                         } else {
                         } else {
                             FileUtil.copyFile(jsonObject.getString(SystemConstant.PATH), cardPath);
                             FileUtil.copyFile(jsonObject.getString(SystemConstant.PATH), cardPath);
@@ -1237,7 +1237,7 @@ public class TaskLogicServiceImpl implements TaskLogicService {
             Long time = System.currentTimeMillis();
             Long time = System.currentTimeMillis();
             boolean oss = dictionaryConfig.sysDomain().isOss();
             boolean oss = dictionaryConfig.sysDomain().isOss();
             StringJoiner stringJoiner = new StringJoiner("");
             StringJoiner stringJoiner = new StringJoiner("");
-            if (!oss && Objects.nonNull(dictionaryConfig.fssPublicDomain()) && !StringUtils.isBlank(dictionaryConfig.fssPublicDomain().getConfig())) {
+            if (!oss && Objects.nonNull(dictionaryConfig.fssPublicDomain()) && !StringUtils.isBlank(dictionaryConfig.fssPublicDomain().getConfig()) && !dictionaryConfig.fssPublicDomain().getConfig().startsWith(SystemConstant.START_PARENT)) {
                 stringJoiner.add(dictionaryConfig.fssPublicDomain().getConfig()).add(File.separator);
                 stringJoiner.add(dictionaryConfig.fssPublicDomain().getConfig()).add(File.separator);
             }
             }
             stringJoiner = SystemConstant.getDirName(stringJoiner, UploadFileEnum.FILE, true);
             stringJoiner = SystemConstant.getDirName(stringJoiner, UploadFileEnum.FILE, true);
@@ -1745,7 +1745,7 @@ public class TaskLogicServiceImpl implements TaskLogicService {
                 Long time = System.currentTimeMillis();
                 Long time = System.currentTimeMillis();
                 boolean oss = dictionaryConfig.sysDomain().isOss();
                 boolean oss = dictionaryConfig.sysDomain().isOss();
                 StringJoiner stringJoiner = new StringJoiner("");
                 StringJoiner stringJoiner = new StringJoiner("");
-                if (!oss && Objects.nonNull(dictionaryConfig.fssPublicDomain()) && !StringUtils.isBlank(dictionaryConfig.fssPublicDomain().getConfig())) {
+                if (!oss && Objects.nonNull(dictionaryConfig.fssPublicDomain()) && !StringUtils.isBlank(dictionaryConfig.fssPublicDomain().getConfig()) && !dictionaryConfig.fssPublicDomain().getConfig().startsWith(SystemConstant.START_PARENT)) {
                     stringJoiner.add(dictionaryConfig.fssPublicDomain().getConfig()).add(File.separator);
                     stringJoiner.add(dictionaryConfig.fssPublicDomain().getConfig()).add(File.separator);
                 }
                 }
                 stringJoiner = SystemConstant.getDirName(stringJoiner, UploadFileEnum.FILE, true);
                 stringJoiner = SystemConstant.getDirName(stringJoiner, UploadFileEnum.FILE, true);
@@ -1858,7 +1858,7 @@ public class TaskLogicServiceImpl implements TaskLogicService {
         try {
         try {
             boolean oss = dictionaryConfig.sysDomain().isOss();
             boolean oss = dictionaryConfig.sysDomain().isOss();
             StringJoiner stringJoiner = new StringJoiner("");
             StringJoiner stringJoiner = new StringJoiner("");
-            if (!oss && Objects.nonNull(dictionaryConfig.fssPublicDomain()) && !StringUtils.isBlank(dictionaryConfig.fssPublicDomain().getConfig())) {
+            if (!oss && Objects.nonNull(dictionaryConfig.fssPublicDomain()) && !StringUtils.isBlank(dictionaryConfig.fssPublicDomain().getConfig()) && !dictionaryConfig.fssPublicDomain().getConfig().startsWith(SystemConstant.START_PARENT)) {
                 stringJoiner.add(dictionaryConfig.fssPublicDomain().getConfig()).add(File.separator);
                 stringJoiner.add(dictionaryConfig.fssPublicDomain().getConfig()).add(File.separator);
             }
             }
             stringJoiner = SystemConstant.getDirName(stringJoiner, UploadFileEnum.FILE, true);
             stringJoiner = SystemConstant.getDirName(stringJoiner, UploadFileEnum.FILE, true);
@@ -1995,7 +1995,7 @@ public class TaskLogicServiceImpl implements TaskLogicService {
                                 paperName = paperName + SystemConstant.HYPHEN + examTaskPaperFileDto.getPaperType();
                                 paperName = paperName + SystemConstant.HYPHEN + examTaskPaperFileDto.getPaperType();
                                 String paperLocalPath = filePath + paperName + examTaskPaperFileDto.getPaperSuffix();
                                 String paperLocalPath = filePath + paperName + examTaskPaperFileDto.getPaperSuffix();
                                 String paperPath = examTaskPaperFileDto.getPaperPath();
                                 String paperPath = examTaskPaperFileDto.getPaperPath();
-                                if (oss || (!oss && dictionaryConfig.fssPrivateDomain().getConfig().startsWith("../"))) {
+                                if (oss || (!oss && dictionaryConfig.fssPrivateDomain().getConfig().startsWith(SystemConstant.START_PARENT))) {
                                     fileStoreUtil.ossDownload(paperPath, paperLocalPath, fileStoreUtil.getUploadEnumByPath(paperPath).getFssType());
                                     fileStoreUtil.ossDownload(paperPath, paperLocalPath, fileStoreUtil.getUploadEnumByPath(paperPath).getFssType());
                                 } else {
                                 } else {
                                     FileUtil.copyFile(paperPath, paperLocalPath);
                                     FileUtil.copyFile(paperPath, paperLocalPath);
@@ -2059,7 +2059,7 @@ public class TaskLogicServiceImpl implements TaskLogicService {
                                 String paperLocalPath = filePath + paperName + examTaskPaperFileDto.getPaperSuffix();
                                 String paperLocalPath = filePath + paperName + examTaskPaperFileDto.getPaperSuffix();
                                 String paperPath = examTaskPaperFileDto.getPaperPath();
                                 String paperPath = examTaskPaperFileDto.getPaperPath();
 
 
-                                if (oss || (!oss && dictionaryConfig.fssPrivateDomain().getConfig().startsWith("../"))) {
+                                if (oss || (!oss && dictionaryConfig.fssPrivateDomain().getConfig().startsWith(SystemConstant.START_PARENT))) {
                                     fileStoreUtil.ossDownload(paperPath, paperLocalPath, fileStoreUtil.getUploadEnumByPath(paperPath).getFssType());
                                     fileStoreUtil.ossDownload(paperPath, paperLocalPath, fileStoreUtil.getUploadEnumByPath(paperPath).getFssType());
                                 } else {
                                 } else {
                                     FileUtil.copyFile(paperPath, paperLocalPath);
                                     FileUtil.copyFile(paperPath, paperLocalPath);

+ 5 - 8
distributed-print/src/main/java/com/qmth/distributed/print/api/SysController.java

@@ -28,7 +28,10 @@ import com.qmth.teachcloud.common.enums.log.CustomizedOperationTypeEnum;
 import com.qmth.teachcloud.common.enums.log.SystemEnum;
 import com.qmth.teachcloud.common.enums.log.SystemEnum;
 import com.qmth.teachcloud.common.enums.userPush.SpecialPrivilegeEnum;
 import com.qmth.teachcloud.common.enums.userPush.SpecialPrivilegeEnum;
 import com.qmth.teachcloud.common.service.*;
 import com.qmth.teachcloud.common.service.*;
-import com.qmth.teachcloud.common.util.*;
+import com.qmth.teachcloud.common.util.FileUtil;
+import com.qmth.teachcloud.common.util.Result;
+import com.qmth.teachcloud.common.util.ResultUtil;
+import com.qmth.teachcloud.common.util.ServletUtil;
 import io.swagger.annotations.*;
 import io.swagger.annotations.*;
 import org.apache.commons.lang3.StringUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.slf4j.Logger;
 import org.slf4j.Logger;
@@ -432,13 +435,7 @@ public class SysController {
             Map<String, Object> map = new HashMap<>();
             Map<String, Object> map = new HashMap<>();
 
 
             if (Objects.nonNull(basicSchool.getLogo()) && (!basicSchool.getLogo().startsWith("http") || !basicSchool.getLogo().startsWith("https"))) {
             if (Objects.nonNull(basicSchool.getLogo()) && (!basicSchool.getLogo().startsWith("http") || !basicSchool.getLogo().startsWith("https"))) {
-                String logo = basicSchool.getLogo();
-                if(logo.startsWith("data:image/png;base64")){
-                    map.put(SystemConstant.LOGO, logo);
-                } else {
-                    String url = SystemConstant.getLogoFilePath(basicSchool);
-                    map.put(SystemConstant.LOGO, Base64Util.imageToBase64(new File(url)));
-                }
+                map.put(SystemConstant.LOGO, SystemConstant.getLocalFilePath(basicSchool.getLogo()));
             } else {
             } else {
                 map.put(SystemConstant.LOGO, basicSchool.getLogo());
                 map.put(SystemConstant.LOGO, basicSchool.getLogo());
             }
             }

+ 17 - 48
teachcloud-common/src/main/java/com/qmth/teachcloud/common/contant/SystemConstant.java

@@ -128,6 +128,7 @@ public class SystemConstant {
     /**
     /**
      * 系统配置
      * 系统配置
      */
      */
+    public static final String START_PARENT = "../";
     public static final String DATE_TIME_FORMAT = "%02d";
     public static final String DATE_TIME_FORMAT = "%02d";
     public static final String PRINT_DELETE_DATA_FILE_NAME = "db/4、delete-data.sql";
     public static final String PRINT_DELETE_DATA_FILE_NAME = "db/4、delete-data.sql";
     //    public static final String SYS_USER_INIT_PASSWORD = "sys.user.initPassword";
     //    public static final String SYS_USER_INIT_PASSWORD = "sys.user.initPassword";
@@ -759,12 +760,14 @@ public class SystemConstant {
         DictionaryConfig dictionaryConfig = SpringContextHolder.getBean(DictionaryConfig.class);
         DictionaryConfig dictionaryConfig = SpringContextHolder.getBean(DictionaryConfig.class);
         FileStoreUtil fileStoreUtil = SpringContextHolder.getBean(FileStoreUtil.class);
         FileStoreUtil fileStoreUtil = SpringContextHolder.getBean(FileStoreUtil.class);
         boolean oss = dictionaryConfig.sysDomain().isOss();
         boolean oss = dictionaryConfig.sysDomain().isOss();
-        if (!oss && filePath.contains(dictionaryConfig.fssPublicDomain().getServer())) {
-            filePath = filePath.substring(filePath.indexOf(dictionaryConfig.fssPublicDomain().getServer()), filePath.length());
-        } else if (!oss && filePath.contains(dictionaryConfig.fssPrivateDomain().getServer())) {
-            filePath = filePath.substring(filePath.indexOf(dictionaryConfig.fssPrivateDomain().getServer()), filePath.length());
-        } else if (oss) {
-            filePath = fileStoreUtil.getPrivateUrl(filePath, fileStoreUtil.getUploadEnumByPath(filePath).getFssType());
+        if (oss || (!oss && dictionaryConfig.fssPublicDomain().getConfig().startsWith(SystemConstant.START_PARENT))) {
+            filePath = fileStoreUtil.getPrivateUrl(filePath, UploadFileEnum.FILE.getFssType());
+        } else {
+            if (filePath.contains(dictionaryConfig.fssPublicDomain().getServer())) {
+                filePath = filePath.substring(filePath.indexOf(dictionaryConfig.fssPublicDomain().getServer()), filePath.length());
+            } else if (filePath.contains(dictionaryConfig.fssPrivateDomain().getServer())) {
+                filePath = filePath.substring(filePath.indexOf(dictionaryConfig.fssPrivateDomain().getServer()), filePath.length());
+            }
         }
         }
         return filePath;
         return filePath;
     }
     }
@@ -877,7 +880,7 @@ public class SystemConstant {
         DictionaryConfig dictionaryConfig = SpringContextHolder.getBean(DictionaryConfig.class);
         DictionaryConfig dictionaryConfig = SpringContextHolder.getBean(DictionaryConfig.class);
         FileStoreUtil fileStoreUtil = SpringContextHolder.getBean(FileStoreUtil.class);
         FileStoreUtil fileStoreUtil = SpringContextHolder.getBean(FileStoreUtil.class);
         boolean oss = dictionaryConfig.sysDomain().isOss();
         boolean oss = dictionaryConfig.sysDomain().isOss();
-        if (oss || (!oss && dictionaryConfig.fssPrivateDomain().getConfig().startsWith("../"))) {
+        if (oss || (!oss && dictionaryConfig.fssPrivateDomain().getConfig().startsWith(SystemConstant.START_PARENT))) {
             fileStoreUtil.ossUpload(pdfDirName, file, DigestUtils.md5Hex(new FileInputStream(file)), fileStoreUtil.getUploadEnumByPath(pdfDirName).getFssType());
             fileStoreUtil.ossUpload(pdfDirName, file, DigestUtils.md5Hex(new FileInputStream(file)), fileStoreUtil.getUploadEnumByPath(pdfDirName).getFssType());
         } else {
         } else {
             fileStoreUtil.localUpload(pdfDirName, new FileInputStream(file), DigestUtils.md5Hex(new FileInputStream(file)), LocalCatalogEnum.LOCAL_FILE);
             fileStoreUtil.localUpload(pdfDirName, new FileInputStream(file), DigestUtils.md5Hex(new FileInputStream(file)), LocalCatalogEnum.LOCAL_FILE);
@@ -885,40 +888,6 @@ public class SystemConstant {
         return pdfDirName;
         return pdfDirName;
     }
     }
 
 
-    /**
-     * 获取学校logo
-     *
-     * @param basicSchool
-     * @return
-     */
-    public static String getLogoFilePath(BasicSchool basicSchool) {
-        DictionaryConfig dictionaryConfig = SpringContextHolder.getBean(DictionaryConfig.class);
-        boolean oss = dictionaryConfig.sysDomain().isOss();
-        String url = null;
-        if (oss) {
-            url = dictionaryConfig.fssPublicDomain().getServer() + File.separator + basicSchool.getLogo();
-        } else {
-            if (Objects.nonNull(dictionaryConfig.fssPublicDomain()) && !StringUtils.isBlank(dictionaryConfig.fssPublicDomain().getServer())) {
-                String hostUrl = dictionaryConfig.fssPublicDomain().getServer();
-                hostUrl = hostUrl.replace(SystemConstant.PATH_MATCH, basicSchool.getCode());
-                String filePath = SystemConstant.getLocalFilePath(basicSchool.getLogo());
-                if (filePath.startsWith(SystemConstant.ORG_SPLIT)) {
-                    url = hostUrl + filePath;
-                } else {
-                    url = hostUrl + File.separator + filePath;
-                }
-            } else {
-                String logo = basicSchool.getLogo();
-                if(logo.startsWith(dictionaryConfig.fssPublicDomain().getConfig())){
-                    url = logo;
-                } else {
-                    url = dictionaryConfig.fssPublicDomain().getServer() + File.separator + logo;
-                }
-            }
-        }
-        return url;
-    }
-
     /**
     /**
      * 创建txt文件
      * 创建txt文件
      *
      *
@@ -935,7 +904,7 @@ public class SystemConstant {
             boolean oss = dictionaryConfig.sysDomain().isOss();
             boolean oss = dictionaryConfig.sysDomain().isOss();
             String ossStr = null;
             String ossStr = null;
             StringJoiner stringJoiner = new StringJoiner("");
             StringJoiner stringJoiner = new StringJoiner("");
-            if (!oss && Objects.nonNull(dictionaryConfig.fssPublicDomain()) && !StringUtils.isBlank(dictionaryConfig.fssPublicDomain().getConfig())) {
+            if (!oss && Objects.nonNull(dictionaryConfig.fssPublicDomain()) && !StringUtils.isBlank(dictionaryConfig.fssPublicDomain().getConfig()) && !dictionaryConfig.fssPublicDomain().getConfig().startsWith(SystemConstant.START_PARENT)) {
                 stringJoiner.add(dictionaryConfig.fssPublicDomain().getConfig()).add(File.separator);
                 stringJoiner.add(dictionaryConfig.fssPublicDomain().getConfig()).add(File.separator);
             }
             }
             stringJoiner = SystemConstant.getDirName(stringJoiner, UploadFileEnum.FILE, true);
             stringJoiner = SystemConstant.getDirName(stringJoiner, UploadFileEnum.FILE, true);
@@ -951,8 +920,8 @@ public class SystemConstant {
             }
             }
 
 
             String txtFileMd5 = DigestUtils.md5Hex(new FileInputStream(txtFileTemp));
             String txtFileMd5 = DigestUtils.md5Hex(new FileInputStream(txtFileTemp));
-            if (oss || (!oss && dictionaryConfig.fssPrivateDomain().getConfig().startsWith("../"))) {
-                ossStr = SystemConstant.OSS;
+            if (oss || (!oss && dictionaryConfig.fssPrivateDomain().getConfig().startsWith(SystemConstant.START_PARENT))) {
+                ossStr = oss ? SystemConstant.OSS : SystemConstant.LOCAL;
                 fileStoreUtil.ossUpload(txtDirName, txtFileTemp, txtFileMd5, fileStoreUtil.getUploadEnumByPath(txtDirName).getFssType());
                 fileStoreUtil.ossUpload(txtDirName, txtFileTemp, txtFileMd5, fileStoreUtil.getUploadEnumByPath(txtDirName).getFssType());
             } else {
             } else {
                 ossStr = SystemConstant.LOCAL;
                 ossStr = SystemConstant.LOCAL;
@@ -988,9 +957,9 @@ public class SystemConstant {
         JSONObject jsonObject = new JSONObject();
         JSONObject jsonObject = new JSONObject();
         jsonObject.put(SystemConstant.PATH, zipDirName);
         jsonObject.put(SystemConstant.PATH, zipDirName);
         String zipFileMd5 = DigestUtils.md5Hex(new FileInputStream(zipFile));
         String zipFileMd5 = DigestUtils.md5Hex(new FileInputStream(zipFile));
-        if (oss || (!oss && dictionaryConfig.fssPrivateDomain().getConfig().startsWith("../"))) {//上传至oss
+        if (oss || (!oss && dictionaryConfig.fssPrivateDomain().getConfig().startsWith(SystemConstant.START_PARENT))) {//上传至oss
             fileStoreUtil.ossUpload(zipDirName, zipFile, zipFileMd5, fileStoreUtil.getUploadEnumByPath(zipDirName).getFssType());
             fileStoreUtil.ossUpload(zipDirName, zipFile, zipFileMd5, fileStoreUtil.getUploadEnumByPath(zipDirName).getFssType());
-            jsonObject.put(SystemConstant.TYPE, SystemConstant.OSS);
+            jsonObject.put(SystemConstant.TYPE, oss ? SystemConstant.OSS : SystemConstant.LOCAL);
         } else {
         } else {
             fileStoreUtil.localUpload(zipDirName, new FileInputStream(zipFile), zipFileMd5, LocalCatalogEnum.LOCAL_FILE);
             fileStoreUtil.localUpload(zipDirName, new FileInputStream(zipFile), zipFileMd5, LocalCatalogEnum.LOCAL_FILE);
             jsonObject.put(SystemConstant.TYPE, SystemConstant.LOCAL);
             jsonObject.put(SystemConstant.TYPE, SystemConstant.LOCAL);
@@ -1017,9 +986,9 @@ public class SystemConstant {
         JSONObject jsonObject = new JSONObject();
         JSONObject jsonObject = new JSONObject();
         jsonObject.put(SystemConstant.PATH, zipDirName);
         jsonObject.put(SystemConstant.PATH, zipDirName);
         String zipFileMd5 = DigestUtils.md5Hex(new FileInputStream(zipFile));
         String zipFileMd5 = DigestUtils.md5Hex(new FileInputStream(zipFile));
-        if (oss || (!oss && dictionaryConfig.fssPrivateDomain().getConfig().startsWith("../"))) {//上传至oss
+        if (oss || (!oss && dictionaryConfig.fssPrivateDomain().getConfig().startsWith(SystemConstant.START_PARENT))) {//上传至oss
             fileStoreUtil.ossUpload(zipDirName, zipFile, zipFileMd5, fileStoreUtil.getUploadEnumByPath(zipDirName).getFssType());
             fileStoreUtil.ossUpload(zipDirName, zipFile, zipFileMd5, fileStoreUtil.getUploadEnumByPath(zipDirName).getFssType());
-            jsonObject.put(SystemConstant.TYPE, SystemConstant.OSS);
+            jsonObject.put(SystemConstant.TYPE, oss ? SystemConstant.OSS : SystemConstant.LOCAL);
         } else {
         } else {
             fileStoreUtil.localUpload(zipDirName, new FileInputStream(zipFile), zipFileMd5, LocalCatalogEnum.LOCAL_FILE);
             fileStoreUtil.localUpload(zipDirName, new FileInputStream(zipFile), zipFileMd5, LocalCatalogEnum.LOCAL_FILE);
             jsonObject.put(SystemConstant.TYPE, SystemConstant.LOCAL);
             jsonObject.put(SystemConstant.TYPE, SystemConstant.LOCAL);

+ 2 - 2
teachcloud-common/src/main/java/com/qmth/teachcloud/common/service/impl/AuthInfoServiceImpl.java

@@ -172,7 +172,7 @@ public class AuthInfoServiceImpl implements AuthInfoService {
 
 
         boolean oss = dictionaryConfig.sysDomain().isOss();
         boolean oss = dictionaryConfig.sysDomain().isOss();
         StringJoiner stringJoiner = new StringJoiner("");
         StringJoiner stringJoiner = new StringJoiner("");
-        if (!oss && Objects.nonNull(dictionaryConfig.fssPublicDomain()) && !StringUtils.isBlank(dictionaryConfig.fssPublicDomain().getConfig())) {
+        if (!oss && Objects.nonNull(dictionaryConfig.fssPublicDomain()) && !StringUtils.isBlank(dictionaryConfig.fssPublicDomain().getConfig()) && !dictionaryConfig.fssPublicDomain().getConfig().startsWith(SystemConstant.START_PARENT)) {
             stringJoiner.add(dictionaryConfig.fssPublicDomain().getConfig()).add(File.separator);
             stringJoiner.add(dictionaryConfig.fssPublicDomain().getConfig()).add(File.separator);
         }
         }
         stringJoiner = SystemConstant.getDirName(stringJoiner, UploadFileEnum.FILE, true);
         stringJoiner = SystemConstant.getDirName(stringJoiner, UploadFileEnum.FILE, true);
@@ -203,7 +203,7 @@ public class AuthInfoServiceImpl implements AuthInfoService {
 
 
                         dirName = stringJoiner.toString() + SystemConstant.getNanoId() + "." + FilenameUtils.getExtension(fileTemp.getPath());
                         dirName = stringJoiner.toString() + SystemConstant.getNanoId() + "." + FilenameUtils.getExtension(fileTemp.getPath());
                         String jpgFileMd5 = DigestUtils.md5Hex(new FileInputStream(fileTemp));
                         String jpgFileMd5 = DigestUtils.md5Hex(new FileInputStream(fileTemp));
-                        if (oss || (!oss && dictionaryConfig.fssPrivateDomain().getConfig().startsWith("../"))) {
+                        if (oss || (!oss && dictionaryConfig.fssPrivateDomain().getConfig().startsWith(SystemConstant.START_PARENT))) {
                             fileStoreUtil.ossUpload(dirName, fileTemp, jpgFileMd5, UploadFileEnum.FILE.getFssType());
                             fileStoreUtil.ossUpload(dirName, fileTemp, jpgFileMd5, UploadFileEnum.FILE.getFssType());
                         } else {
                         } else {
                             fileStoreUtil.localUpload(dirName, new FileInputStream(fileTemp), jpgFileMd5, LocalCatalogEnum.LOCAL_FILE);
                             fileStoreUtil.localUpload(dirName, new FileInputStream(fileTemp), jpgFileMd5, LocalCatalogEnum.LOCAL_FILE);

+ 6 - 6
teachcloud-common/src/main/java/com/qmth/teachcloud/common/service/impl/BasicAttachmentServiceImpl.java

@@ -71,7 +71,7 @@ public class BasicAttachmentServiceImpl extends ServiceImpl<BasicAttachmentMappe
             File pdfFile = new File(dirName);
             File pdfFile = new File(dirName);
             boolean oss = dictionaryConfig.sysDomain().isOss();
             boolean oss = dictionaryConfig.sysDomain().isOss();
             StringJoiner pdfStringJoiner = new StringJoiner("");
             StringJoiner pdfStringJoiner = new StringJoiner("");
-            if (!oss && Objects.nonNull(dictionaryConfig.fssPrivateDomain()) && !StringUtils.isBlank(dictionaryConfig.fssPrivateDomain().getConfig())) {
+            if (!oss && Objects.nonNull(dictionaryConfig.fssPrivateDomain()) && !StringUtils.isBlank(dictionaryConfig.fssPrivateDomain().getConfig()) && !dictionaryConfig.fssPrivateDomain().getConfig().startsWith(SystemConstant.START_PARENT)) {
                 pdfStringJoiner.add(dictionaryConfig.fssPrivateDomain().getConfig()).add(File.separator);
                 pdfStringJoiner.add(dictionaryConfig.fssPrivateDomain().getConfig()).add(File.separator);
             }
             }
             pdfStringJoiner = SystemConstant.getDirName(pdfStringJoiner, UploadFileEnum.PDF, true);
             pdfStringJoiner = SystemConstant.getDirName(pdfStringJoiner, UploadFileEnum.PDF, true);
@@ -83,8 +83,8 @@ public class BasicAttachmentServiceImpl extends ServiceImpl<BasicAttachmentMappe
 
 
             JSONObject jsonPdf = new JSONObject();
             JSONObject jsonPdf = new JSONObject();
             jsonPdf.put(SystemConstant.PATH, pdfDirName);
             jsonPdf.put(SystemConstant.PATH, pdfDirName);
-            if (oss || (!oss && dictionaryConfig.fssPrivateDomain().getConfig().startsWith("../"))) {
-                jsonPdf.put(SystemConstant.TYPE, SystemConstant.OSS);
+            if (oss || (!oss && dictionaryConfig.fssPrivateDomain().getConfig().startsWith(SystemConstant.START_PARENT))) {
+                jsonPdf.put(SystemConstant.TYPE, oss ? SystemConstant.OSS : SystemConstant.LOCAL);
                 fileStoreUtil.ossUpload(pdfDirName, pdfFile, pdfFileMd5, fileStoreUtil.getUploadEnumByPath(pdfDirName).getFssType());
                 fileStoreUtil.ossUpload(pdfDirName, pdfFile, pdfFileMd5, fileStoreUtil.getUploadEnumByPath(pdfDirName).getFssType());
             } else {
             } else {
                 fileStoreUtil.localUpload(pdfDirName, new FileInputStream(pdfFile), pdfFileMd5, LocalCatalogEnum.LOCAL_PDF);
                 fileStoreUtil.localUpload(pdfDirName, new FileInputStream(pdfFile), pdfFileMd5, LocalCatalogEnum.LOCAL_PDF);
@@ -181,7 +181,7 @@ public class BasicAttachmentServiceImpl extends ServiceImpl<BasicAttachmentMappe
             }
             }
             boolean oss = dictionaryConfig.sysDomain().isOss();
             boolean oss = dictionaryConfig.sysDomain().isOss();
             StringJoiner stringJoiner = new StringJoiner("");
             StringJoiner stringJoiner = new StringJoiner("");
-            if (!oss && Objects.nonNull(dictionaryConfig.fssPublicDomain()) && !StringUtils.isBlank(dictionaryConfig.fssPublicDomain().getConfig())) {
+            if (!oss && Objects.nonNull(dictionaryConfig.fssPublicDomain()) && !StringUtils.isBlank(dictionaryConfig.fssPublicDomain().getConfig()) && !dictionaryConfig.fssPublicDomain().getConfig().startsWith(SystemConstant.START_PARENT)) {
                 stringJoiner.add(dictionaryConfig.fssPublicDomain().getConfig()).add(File.separator);
                 stringJoiner.add(dictionaryConfig.fssPublicDomain().getConfig()).add(File.separator);
             }
             }
             stringJoiner = SystemConstant.getDirName(stringJoiner, type, true);
             stringJoiner = SystemConstant.getDirName(stringJoiner, type, true);
@@ -190,9 +190,9 @@ public class BasicAttachmentServiceImpl extends ServiceImpl<BasicAttachmentMappe
             JSONObject jsonObject = new JSONObject();
             JSONObject jsonObject = new JSONObject();
             String dirName = stringJoiner.toString().replaceAll("\\\\", SystemConstant.ORG_SPLIT);
             String dirName = stringJoiner.toString().replaceAll("\\\\", SystemConstant.ORG_SPLIT);
             jsonObject.put(SystemConstant.PATH, dirName);
             jsonObject.put(SystemConstant.PATH, dirName);
-            if (oss || (!oss && dictionaryConfig.fssPrivateDomain().getConfig().startsWith("../"))) {//上传至oss
+            if (oss || (!oss && dictionaryConfig.fssPrivateDomain().getConfig().startsWith(SystemConstant.START_PARENT))) {//上传至oss
                 fileStoreUtil.ossUpload(dirName, file.getInputStream(), DigestUtils.md5Hex(file.getInputStream()), type.getFssType());
                 fileStoreUtil.ossUpload(dirName, file.getInputStream(), DigestUtils.md5Hex(file.getInputStream()), type.getFssType());
-                jsonObject.put(SystemConstant.TYPE, SystemConstant.OSS);
+                jsonObject.put(SystemConstant.TYPE, oss ? SystemConstant.OSS : SystemConstant.LOCAL);
             } else {//上传至服务器
             } else {//上传至服务器
                 fileStoreUtil.copyInputStreamToFile(file.getInputStream(), new File(stringJoiner.toString()), DigestUtils.md5Hex(file.getInputStream()), LocalCatalogEnum.LOCAL_FILE);
                 fileStoreUtil.copyInputStreamToFile(file.getInputStream(), new File(stringJoiner.toString()), DigestUtils.md5Hex(file.getInputStream()), LocalCatalogEnum.LOCAL_FILE);
                 jsonObject.put(SystemConstant.TYPE, SystemConstant.LOCAL);
                 jsonObject.put(SystemConstant.TYPE, SystemConstant.LOCAL);

+ 1 - 2
teachcloud-common/src/main/java/com/qmth/teachcloud/common/service/impl/BasicSchoolServiceImpl.java

@@ -5,7 +5,6 @@ import com.qmth.teachcloud.common.bean.dto.SchoolDto;
 import com.qmth.teachcloud.common.config.DictionaryConfig;
 import com.qmth.teachcloud.common.config.DictionaryConfig;
 import com.qmth.teachcloud.common.contant.SystemConstant;
 import com.qmth.teachcloud.common.contant.SystemConstant;
 import com.qmth.teachcloud.common.entity.BasicSchool;
 import com.qmth.teachcloud.common.entity.BasicSchool;
-import com.qmth.teachcloud.common.enums.LocalCatalogEnum;
 import com.qmth.teachcloud.common.enums.UploadFileEnum;
 import com.qmth.teachcloud.common.enums.UploadFileEnum;
 import com.qmth.teachcloud.common.mapper.BasicSchoolMapper;
 import com.qmth.teachcloud.common.mapper.BasicSchoolMapper;
 import com.qmth.teachcloud.common.service.BasicSchoolService;
 import com.qmth.teachcloud.common.service.BasicSchoolService;
@@ -56,7 +55,7 @@ public class BasicSchoolServiceImpl extends ServiceImpl<BasicSchoolMapper, Basic
         if (logo != null) {
         if (logo != null) {
             boolean oss = dictionaryConfig.sysDomain().isOss();
             boolean oss = dictionaryConfig.sysDomain().isOss();
             StringJoiner stringJoiner = new StringJoiner("");
             StringJoiner stringJoiner = new StringJoiner("");
-            if (!oss && Objects.nonNull(dictionaryConfig.fssPublicDomain()) && !StringUtils.isBlank(dictionaryConfig.fssPublicDomain().getConfig())) {
+            if (!oss && Objects.nonNull(dictionaryConfig.fssPublicDomain()) && !StringUtils.isBlank(dictionaryConfig.fssPublicDomain().getConfig()) && !dictionaryConfig.fssPublicDomain().getConfig().startsWith(SystemConstant.START_PARENT)) {
                 stringJoiner.add(dictionaryConfig.fssPublicDomain().getConfig());
                 stringJoiner.add(dictionaryConfig.fssPublicDomain().getConfig());
             }
             }
             stringJoiner = SystemConstant.getDirName(stringJoiner, UploadFileEnum.FILE, true);
             stringJoiner = SystemConstant.getDirName(stringJoiner, UploadFileEnum.FILE, true);

+ 8 - 16
teachcloud-common/src/main/java/com/qmth/teachcloud/common/service/impl/TeachcloudCommonServiceImpl.java

@@ -20,6 +20,7 @@ import com.qmth.teachcloud.common.entity.*;
 import com.qmth.teachcloud.common.enums.*;
 import com.qmth.teachcloud.common.enums.*;
 import com.qmth.teachcloud.common.service.*;
 import com.qmth.teachcloud.common.service.*;
 import com.qmth.teachcloud.common.util.*;
 import com.qmth.teachcloud.common.util.*;
+import org.apache.commons.io.FileUtils;
 import org.apache.commons.io.IOUtils;
 import org.apache.commons.io.IOUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.slf4j.Logger;
 import org.slf4j.Logger;
@@ -605,24 +606,15 @@ public class TeachcloudCommonServiceImpl implements TeachcloudCommonService {
 
 
         File localPath = new File(rootPath, fileName);
         File localPath = new File(rootPath, fileName);
         if (type.equals(SystemConstant.OSS)) {
         if (type.equals(SystemConstant.OSS)) {
-            try {
-                File file = fileStoreUtil.ossDownload(filePath, localPath.getPath(), uploadType.getFssType());
-                return file;
-            } catch (IOException e) {
-                throw ExceptionResultEnum.ERROR.exception("从OSS上下载文件失败");
-            }
+            return fileStoreUtil.ossDownload(filePath, localPath.getPath(), uploadType.getFssType());
         } else {
         } else {
-            filePath = SystemConstant.getLocalFilePath(filePath);
-            File file = new File(filePath);
-            if (!file.exists()) {
-                throw ExceptionResultEnum.ERROR.exception("本地文件不存在");
-            }
-            if (!localPath.exists()) {
-                localPath.getParentFile().mkdirs(); //目标文件目录不存在的话需要创建目录
-                localPath.createNewFile();
+            if (filePath.contains(dictionaryConfig.fssPublicDomain().getConfig()) || filePath.contains(dictionaryConfig.fssPrivateDomain().getConfig())) {
+                File file = new File(filePath);
+                FileUtils.copyFile(file, localPath);
+                return file;
+            } else {
+                return fileStoreUtil.ossDownload(filePath, localPath.getPath(), uploadType.getFssType());
             }
             }
-            IOUtils.copy(new FileInputStream(filePath), new FileOutputStream(localPath));
-            return file;
         }
         }
     }
     }
 
 

+ 3 - 3
teachcloud-report-business/src/main/java/com/qmth/teachcloud/report/business/service/impl/ReportCommonServiceImpl.java

@@ -768,7 +768,7 @@ public class ReportCommonServiceImpl implements ReportCommonService {
             }
             }
             boolean oss = dictionaryConfig.sysDomain().isOss();
             boolean oss = dictionaryConfig.sysDomain().isOss();
             StringJoiner stringJoiner = new StringJoiner("");
             StringJoiner stringJoiner = new StringJoiner("");
-            if (!oss && Objects.nonNull(dictionaryConfig.fssPublicDomain()) && !StringUtils.isBlank(dictionaryConfig.fssPublicDomain().getConfig())) {
+            if (!oss && Objects.nonNull(dictionaryConfig.fssPublicDomain()) && !StringUtils.isBlank(dictionaryConfig.fssPublicDomain().getConfig()) && !dictionaryConfig.fssPublicDomain().getConfig().startsWith(SystemConstant.START_PARENT)) {
                 stringJoiner.add(dictionaryConfig.fssPublicDomain().getConfig()).add(File.separator);
                 stringJoiner.add(dictionaryConfig.fssPublicDomain().getConfig()).add(File.separator);
             }
             }
             stringJoiner = SystemConstant.getDirName(stringJoiner, type, true);
             stringJoiner = SystemConstant.getDirName(stringJoiner, type, true);
@@ -776,9 +776,9 @@ public class ReportCommonServiceImpl implements ReportCommonService {
 
 
             JSONObject jsonObject = new JSONObject();
             JSONObject jsonObject = new JSONObject();
             String dirName = stringJoiner.toString().replaceAll("\\\\", SystemConstant.ORG_SPLIT);
             String dirName = stringJoiner.toString().replaceAll("\\\\", SystemConstant.ORG_SPLIT);
-            if (oss || (!oss && dictionaryConfig.fssPrivateDomain().getConfig().startsWith("../"))) {//上传至oss\
+            if (oss || (!oss && dictionaryConfig.fssPrivateDomain().getConfig().startsWith(SystemConstant.START_PARENT))) {//上传至oss\
                 fileStoreUtil.ossUpload(dirName, file.getInputStream(), md5, type.getFssType());
                 fileStoreUtil.ossUpload(dirName, file.getInputStream(), md5, type.getFssType());
-                jsonObject.put(SystemConstant.TYPE, SystemConstant.OSS);
+                jsonObject.put(SystemConstant.TYPE, oss ? SystemConstant.OSS : SystemConstant.LOCAL);
                 jsonObject.put(SystemConstant.PATH, dirName);
                 jsonObject.put(SystemConstant.PATH, dirName);
             } else {//上传至服务器
             } else {//上传至服务器
                 fileStoreUtil.copyInputStreamToFile(file.getInputStream(), new File(stringJoiner.toString()), md5, LocalCatalogEnum.LOCAL_FILE);
                 fileStoreUtil.copyInputStreamToFile(file.getInputStream(), new File(stringJoiner.toString()), md5, LocalCatalogEnum.LOCAL_FILE);