Commit d9f43408 authored by huyuchen's avatar huyuchen

huych-商险问题修改

parent c9c0ba25
...@@ -621,7 +621,7 @@ public class ElectronicArchiveImportServiceImpl implements ElectronicArchiveImpo ...@@ -621,7 +621,7 @@ public class ElectronicArchiveImportServiceImpl implements ElectronicArchiveImpo
// 遍历该人员的所有文件夹 // 遍历该人员的所有文件夹
for (File personDir : personDirs) { for (File personDir : personDirs) {
processPersonDirectoryWithResult(personDir, detail, materialTypes, failReasons, taskId); processPersonDirectoryWithResult(personDir, detail, materialTypes, failReasons, taskId, userId, userName);
} }
personMaterialTypesMap.put(uniqueKey, materialTypes); personMaterialTypesMap.put(uniqueKey, materialTypes);
...@@ -849,9 +849,12 @@ public class ElectronicArchiveImportServiceImpl implements ElectronicArchiveImpo ...@@ -849,9 +849,12 @@ public class ElectronicArchiveImportServiceImpl implements ElectronicArchiveImpo
* @param materialTypes 成功处理的资料类型列表(输出参数) * @param materialTypes 成功处理的资料类型列表(输出参数)
* @param failReasons 失败原因列表(输出参数) * @param failReasons 失败原因列表(输出参数)
* @param taskId 任务ID * @param taskId 任务ID
* @param userId 用户ID
* @param userName 用户名
*/ */
private void processPersonDirectoryWithResult(File personDir, TElectronicArchiveDetail detail, private void processPersonDirectoryWithResult(File personDir, TElectronicArchiveDetail detail,
List<String> materialTypes, List<String> failReasons, String taskId) { List<String> materialTypes, List<String> failReasons, String taskId,
String userId, String userName) {
// 处理第三级目录(资料类型或直接是文件) // 处理第三级目录(资料类型或直接是文件)
File[] subFiles = personDir.listFiles(); File[] subFiles = personDir.listFiles();
if (subFiles == null || subFiles.length == 0) { if (subFiles == null || subFiles.length == 0) {
...@@ -888,7 +891,7 @@ public class ElectronicArchiveImportServiceImpl implements ElectronicArchiveImpo ...@@ -888,7 +891,7 @@ public class ElectronicArchiveImportServiceImpl implements ElectronicArchiveImpo
} }
// 按资料类型分组处理目录下的所有文件 // 按资料类型分组处理目录下的所有文件
String result = processMaterialTypeDirectoryWithResult(subFile, detail, materialType, taskId); String result = processMaterialTypeDirectoryWithResult(subFile, detail, materialType, taskId, userId, userName);
if ("success".equals(result)) { if ("success".equals(result)) {
materialTypesSet.add(materialType); materialTypesSet.add(materialType);
} else { } else {
...@@ -902,7 +905,7 @@ public class ElectronicArchiveImportServiceImpl implements ElectronicArchiveImpo ...@@ -902,7 +905,7 @@ public class ElectronicArchiveImportServiceImpl implements ElectronicArchiveImpo
// 统一处理所有直接文件(存量类型) // 统一处理所有直接文件(存量类型)
if (!stockFiles.isEmpty()) { if (!stockFiles.isEmpty()) {
String result = processMaterialTypeFilesWithResult(stockFiles, detail, ArchiveConstants.MATERIAL_TYPE_STOCK, taskId); String result = processMaterialTypeFilesWithResult(stockFiles, detail, ArchiveConstants.MATERIAL_TYPE_STOCK, taskId, userId, userName);
if ("success".equals(result)) { if ("success".equals(result)) {
materialTypesSet.add(ArchiveConstants.MATERIAL_TYPE_STOCK); materialTypesSet.add(ArchiveConstants.MATERIAL_TYPE_STOCK);
} else { } else {
...@@ -947,10 +950,12 @@ public class ElectronicArchiveImportServiceImpl implements ElectronicArchiveImpo ...@@ -947,10 +950,12 @@ public class ElectronicArchiveImportServiceImpl implements ElectronicArchiveImpo
* @param detail 电子档案明细 * @param detail 电子档案明细
* @param materialType 资料类型 * @param materialType 资料类型
* @param taskId 任务ID * @param taskId 任务ID
* @param userId 用户ID
* @param userName 用户名
* @return "success" 表示成功,其他表示失败原因 * @return "success" 表示成功,其他表示失败原因
*/ */
private String processMaterialTypeDirectoryWithResult(File directory, TElectronicArchiveDetail detail, private String processMaterialTypeDirectoryWithResult(File directory, TElectronicArchiveDetail detail,
String materialType, String taskId) { String materialType, String taskId, String userId, String userName) {
// 收集该资料类型目录下的所有文件(递归收集子目录中的文件) // 收集该资料类型目录下的所有文件(递归收集子目录中的文件)
List<File> allFiles = new ArrayList<>(); List<File> allFiles = new ArrayList<>();
collectAllFiles(directory, allFiles); collectAllFiles(directory, allFiles);
...@@ -960,7 +965,7 @@ public class ElectronicArchiveImportServiceImpl implements ElectronicArchiveImpo ...@@ -960,7 +965,7 @@ public class ElectronicArchiveImportServiceImpl implements ElectronicArchiveImpo
} }
// 统一处理该资料类型下的所有文件 // 统一处理该资料类型下的所有文件
return processMaterialTypeFilesWithResult(allFiles, detail, materialType, taskId); return processMaterialTypeFilesWithResult(allFiles, detail, materialType, taskId, userId, userName);
} }
/** /**
...@@ -1063,10 +1068,12 @@ public class ElectronicArchiveImportServiceImpl implements ElectronicArchiveImpo ...@@ -1063,10 +1068,12 @@ public class ElectronicArchiveImportServiceImpl implements ElectronicArchiveImpo
* @param detail 电子档案明细 * @param detail 电子档案明细
* @param materialType 资料类型 * @param materialType 资料类型
* @param taskId 任务ID * @param taskId 任务ID
* @param userId 用户ID
* @param userName 用户名
* @return "success" 表示成功,其他表示失败原因 * @return "success" 表示成功,其他表示失败原因
*/ */
private String processMaterialTypeFilesWithResult(List<File> files, TElectronicArchiveDetail detail, private String processMaterialTypeFilesWithResult(List<File> files, TElectronicArchiveDetail detail,
String materialType, String taskId) { String materialType, String taskId, String userId, String userName) {
// 第一步:验证所有文件格式 // 第一步:验证所有文件格式
for (File file : files) { for (File file : files) {
String fileName = file.getName(); String fileName = file.getName();
...@@ -1093,12 +1100,15 @@ public class ElectronicArchiveImportServiceImpl implements ElectronicArchiveImpo ...@@ -1093,12 +1100,15 @@ public class ElectronicArchiveImportServiceImpl implements ElectronicArchiveImpo
} }
// 上传文件到阿里云OSS,uploadFileReturnAtta会自动生成TAttaInfo记录 // 上传文件到阿里云OSS,uploadFileReturnAtta会自动生成TAttaInfo记录
// 传递用户信息,支持异步场景
R<TAttaInfo> uploadResult = fileUploadService.uploadFileReturnAtta( R<TAttaInfo> uploadResult = fileUploadService.uploadFileReturnAtta(
multipartFile, multipartFile,
ossDirectory, ossDirectory,
CommonConstants.FOUR_STRING, CommonConstants.FOUR_STRING,
detail.getId(), detail.getId(),
taskId taskId,
userId,
userName
); );
if (!R.isSuccess(uploadResult)) { if (!R.isSuccess(uploadResult)) {
......
package com.yifu.cloud.plus.v1.batch.service.impl; package com.yifu.cloud.plus.v1.batch.service.impl;
import cn.hutool.core.util.StrUtil;
import com.yifu.cloud.plus.v1.batch.entity.TAttaInfo; import com.yifu.cloud.plus.v1.batch.entity.TAttaInfo;
import com.yifu.cloud.plus.v1.batch.mapper.SysConfigLimitMapper; import com.yifu.cloud.plus.v1.batch.mapper.SysConfigLimitMapper;
import com.yifu.cloud.plus.v1.batch.service.FileUploadService; import com.yifu.cloud.plus.v1.batch.service.FileUploadService;
...@@ -106,7 +107,7 @@ public class FileUploadServiceImpl implements FileUploadService { ...@@ -106,7 +107,7 @@ public class FileUploadServiceImpl implements FileUploadService {
attaInfo.setTaskId(taskId); attaInfo.setTaskId(taskId);
// 优先使用传入的用户信息(支持异步场景) // 优先使用传入的用户信息(支持异步场景)
if (Common.isNotNull(userId)) { if (Common.isNotNull(userId) && StrUtil.isNotBlank(userId)) {
attaInfo.setCreateBy(userId); attaInfo.setCreateBy(userId);
attaInfo.setCreateName(userName); attaInfo.setCreateName(userName);
} else { } else {
...@@ -118,7 +119,7 @@ public class FileUploadServiceImpl implements FileUploadService { ...@@ -118,7 +119,7 @@ public class FileUploadServiceImpl implements FileUploadService {
attaInfo.setCreateName(user.getNickname()); attaInfo.setCreateName(user.getNickname());
} }
} catch (Exception e) { } catch (Exception e) {
log.warn("获取用户上下文失败,使用默认值", e); log.warn("获取用户上下文失败,附件创建人将为空", e);
} }
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment