浏览代码

3.1.0-归档管理原图获取方式变更,没有轨迹也可以下载原图bug

xiaof 2 年之前
父节点
当前提交
c29c53d148

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

@@ -66,10 +66,10 @@ public class TSyncExamStudentScoreServiceImpl extends ServiceImpl<TSyncExamStude
     public IPage<TSyncExamStudentScoreResult> list(IPage<Map> iPage, Long semesterId, Long examId, Long clazzId, String courseCode) {
         SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
         IPage<TSyncExamStudentScoreResult> list = tSyncExamStudentScoreMapper.list(iPage, sysUser.getSchoolId(), semesterId, examId, clazzId, courseCode);
-        List<String> trailUrlsList = new ArrayList<>();
          list.getRecords().stream().map(m->{
              String localSheetUrls = m.getLocalSheetUrls();
              if(StringUtils.isNotBlank(localSheetUrls)) {
+                 List<String> trailUrlsList = new ArrayList<>();
                  List<String> jsonArray = JSON.parseArray(localSheetUrls, String.class);
                  for (String s : jsonArray) {
                      trailUrlsList.add(teachcloudCommonService.filePreview(s));
@@ -167,13 +167,15 @@ public class TSyncExamStudentScoreServiceImpl extends ServiceImpl<TSyncExamStude
                         fileSourceList.add(fileSource);
                         JSONObject sheetObject = new JSONObject();
                         if (oss) {
-                            sheetObject.put(SystemConstant.TYPE, SystemConstant.OSS);
-                            fileStoreUtil.ossUpload(dirJpgName.toString(), fileSource, DigestUtils.md5Hex(new FileInputStream(fileSource)), UploadFileEnum.FILE.getFssType());
+                            String dirName = dirJpgName.toString().replaceAll("\\\\", "/");
+                            fileStoreUtil.ossUpload(dirName, fileSource, DigestUtils.md5Hex(new FileInputStream(fileSource)), UploadFileEnum.FILE.getFssType());
                             if (imageTrajectoryEnum == ImageTrajectoryEnum.PREVIEW) {
-                                trailUrlsList.add(fileStoreUtil.getPrivateUrl(dirJpgName.toString(), UploadFileEnum.FILE.getFssType()));
+                                fileStoreUtil.getPrivateUrl(dirName, UploadFileEnum.FILE.getFssType());
                             }
+                            sheetObject.put(SystemConstant.TYPE, SystemConstant.OSS);
+                            sheetObject.put(SystemConstant.UPLOAD_TYPE, UploadFileEnum.FILE);
+                            sheetObject.put(SystemConstant.PATH, dirName);
                         } else {
-                            sheetObject.put(SystemConstant.TYPE, SystemConstant.LOCAL);
                             if (imageTrajectoryEnum == ImageTrajectoryEnum.PREVIEW) {
                                 String filePath = fileSource.getPath();
                                 String trailUrl;
@@ -182,10 +184,10 @@ public class TSyncExamStudentScoreServiceImpl extends ServiceImpl<TSyncExamStude
                                 } else {
                                     trailUrl = hostUrl + File.separator + filePath;
                                 }
-                                trailUrlsList.add(trailUrl);
                             }
+                            sheetObject.put(SystemConstant.TYPE, SystemConstant.LOCAL);
+                            sheetObject.put(SystemConstant.PATH, (stringJoiner.toString() + dirJpgName.toString()).replaceAll("\\\\", "/"));
                         }
-                        sheetObject.put(SystemConstant.PATH, (stringJoiner.toString() + dirJpgName.toString()).replaceAll("\\\\", "/"));
                         jsonImageSourcePathArray.add(sheetObject);
 
                         // 轨迹
@@ -211,10 +213,12 @@ public class TSyncExamStudentScoreServiceImpl extends ServiceImpl<TSyncExamStude
                         ImageTrajectoryUtil.createImage(fileSource, fileTarget, markTagJsonArray);
                         fileTargetList.add(fileTarget);
                         if (oss) {
-                            fileStoreUtil.ossUpload(dirTargetJpgName.toString(), fileTarget, DigestUtils.md5Hex(new FileInputStream(fileTarget)), UploadFileEnum.FILE.getFssType());
+                            String dirTargetName = dirTargetJpgName.toString().replaceAll("\\\\", "/");
+                            fileStoreUtil.ossUpload(dirTargetName, fileTarget, DigestUtils.md5Hex(new FileInputStream(fileTarget)), UploadFileEnum.FILE.getFssType());
                             if (imageTrajectoryEnum == ImageTrajectoryEnum.PREVIEW) {
-                                trailUrlsList.add(fileStoreUtil.getPrivateUrl(dirTargetJpgName.toString(), UploadFileEnum.FILE.getFssType()));
+                                trailUrlsList.add(fileStoreUtil.getPrivateUrl(dirTargetName, UploadFileEnum.FILE.getFssType()));
                             }
+                            jsonImageTrajectoryPathArray.add(dirTargetName);
                         } else {
                             if (imageTrajectoryEnum == ImageTrajectoryEnum.PREVIEW) {
                                 String filePath = fileTarget.getPath();
@@ -226,8 +230,8 @@ public class TSyncExamStudentScoreServiceImpl extends ServiceImpl<TSyncExamStude
                                 }
                                 trailUrlsList.add(trailUrl);
                             }
+                            jsonImageTrajectoryPathArray.add((stringJoiner.toString() + dirTargetJpgName.toString()).replaceAll("\\\\", "/"));
                         }
-                        jsonImageTrajectoryPathArray.add((stringJoiner.toString() + dirTargetJpgName.toString()).replaceAll("\\\\", "/"));
                     }
                     if(!jsonImageSourcePathArray.isEmpty()){
                         tSyncExamStudentScore.setLocalSheetUrls(jsonImageSourcePathArray.toJSONString());