From d188d191ad898c7ff7798e9e5628c2d9ca84cc8c Mon Sep 17 00:00:00 2001 From: luotaiqian <1147642922@qq.com> Date: Tue, 25 Aug 2026 17:57:20 +0800 Subject: [PATCH] archive file --- .../EvalProcessControlExecutor.java | 41 ++++--------------- .../request/EvalProjectArchiveFileAddCmd.java | 10 ++--- .../EvalProjectArchiveFileMonitorPageQry.java | 5 --- .../EvalProjectArchiveFilePageQry.java | 5 --- .../EvalProjectArchiveFileUpdateCmd.java | 14 ++----- .../response/EvalProjectArchiveFileCo.java | 11 ++--- .../file/model/EvalProjectArchiveFileE.java | 8 +--- .../EvalProjectArchiveFileDO.java | 8 +--- .../EvalProjectArchiveFileRepositoryImpl.java | 6 --- .../mapper/EvalProjectArchiveFileMapper.xml | 6 +-- 10 files changed, 24 insertions(+), 90 deletions(-) diff --git a/safety-eval-app/src/main/java/org/qinan/safetyeval/app/executor/institution/EvalProcessControlExecutor.java b/safety-eval-app/src/main/java/org/qinan/safetyeval/app/executor/institution/EvalProcessControlExecutor.java index b518be82..6907fbeb 100644 --- a/safety-eval-app/src/main/java/org/qinan/safetyeval/app/executor/institution/EvalProcessControlExecutor.java +++ b/safety-eval-app/src/main/java/org/qinan/safetyeval/app/executor/institution/EvalProcessControlExecutor.java @@ -545,27 +545,24 @@ public class EvalProcessControlExecutor implements EvalProcessControlApi { return; } for (EvalProjectFileCO file : files) { - ProjectStageEnum stage = resolveStageByMsg(file.getProcessName()); - for (JSONObject obj : parseFileUrlObjects(file.getProjectDocUrl())) { - if (!StringUtils.hasText(obj.getStr("url"))) { - continue; - } - evalProjectArchiveFileMapper.insert(buildArchiveFileDO(projectId, project, file, stage, obj)); + if (!StringUtils.hasText(file.getProjectDocUrl())) { + continue; } + ProjectStageEnum stage = resolveStageByMsg(file.getProcessName()); + evalProjectArchiveFileMapper.insert(buildArchiveFileDO(projectId, project, file, stage)); } } /** - * 构建单条档案文件记录:archiveType 按业务节点映射 ArchiveTypeEnum,businessNode 存 ProjectStageEnum 英文标识。 + * 构建单条档案文件记录:files 存文件 JSON 数组原文,archiveType 按业务节点映射 ArchiveTypeEnum, + * businessNode 存 ProjectStageEnum 英文标识。 */ private EvalProjectArchiveFileDO buildArchiveFileDO(Long projectId, EvalProjectEntity project, - EvalProjectFileCO file, ProjectStageEnum stage, JSONObject obj) { - String urlName = obj.getStr("name"); + EvalProjectFileCO file, ProjectStageEnum stage) { EvalProjectArchiveFileDO archiveFileDO = new EvalProjectArchiveFileDO(); archiveFileDO.setOrgId(project.getOrgId()); archiveFileDO.setProjectId(String.valueOf(projectId)); - archiveFileDO.setFileUrl(obj.getStr("url")); - archiveFileDO.setFileName(StringUtils.hasText(urlName) ? urlName : file.getItemName()); + archiveFileDO.setFiles(file.getProjectDocUrl()); archiveFileDO.setArchiveType(resolveArchiveType(stage).getCode()); archiveFileDO.setBusinessNode(stage != null ? stage.getVal() : file.getProcessName()); archiveFileDO.setRecordSource(ProjectArchiveFileSourceEnum.AUTO_PROCESS_RECORD.getCode()); @@ -642,28 +639,6 @@ public class EvalProcessControlExecutor implements EvalProcessControlApi { return files; } - /** - * 将文件 projectDocUrl(JSON 数组字符串,如 [{"url":"...","name":"..."}])解析为对象列表。 - * 非数组、解析失败或为空时返回空列表。 - */ - private List parseFileUrlObjects(String projectDocUrl) { - List result = new ArrayList<>(); - if (!StringUtils.hasText(projectDocUrl)) { - return result; - } - try { - JSONArray array = JSONUtil.parseArray(projectDocUrl); - for (Object obj : array) { - if (obj instanceof JSONObject) { - result.add((JSONObject) obj); - } - } - } catch (Exception e) { - log.error(e.getMessage(), e); - } - return result; - } - /** * 验证项目所有签字任务是否已完成(taskStatusCode=2 已签)。 * 无签字任务或存在未完成/未作废的任务均视为未完成。 diff --git a/safety-eval-client/src/main/java/org/qinan/safetyeval/client/file/request/EvalProjectArchiveFileAddCmd.java b/safety-eval-client/src/main/java/org/qinan/safetyeval/client/file/request/EvalProjectArchiveFileAddCmd.java index f573ade3..7bb88ae6 100644 --- a/safety-eval-client/src/main/java/org/qinan/safetyeval/client/file/request/EvalProjectArchiveFileAddCmd.java +++ b/safety-eval-client/src/main/java/org/qinan/safetyeval/client/file/request/EvalProjectArchiveFileAddCmd.java @@ -22,13 +22,9 @@ public class EvalProjectArchiveFileAddCmd implements Serializable { @NotBlank(message = "项目ID不能为空") private String projectId; - @ApiModelProperty(value = "文件地址", required = true) - @NotBlank(message = "文件地址不能为空") - private String fileUrl; - - @ApiModelProperty(value = "文件名称", required = true) - @Size(max = 100, message = "文件名称长度不能超过100") - private String fileName; + @ApiModelProperty(value = "文件列表(JSON 数组,如 [{\"url\":\"...\",\"name\":\"...\"}])", required = true) + @NotBlank(message = "文件列表不能为空") + private String files; @ApiModelProperty(value = ArchiveTypeEnum.REMARKS, required = true) @NotBlank(message = ArchiveTypeEnum.REMARKS + "不能为空") diff --git a/safety-eval-client/src/main/java/org/qinan/safetyeval/client/file/request/EvalProjectArchiveFileMonitorPageQry.java b/safety-eval-client/src/main/java/org/qinan/safetyeval/client/file/request/EvalProjectArchiveFileMonitorPageQry.java index 60588f3e..44d76469 100644 --- a/safety-eval-client/src/main/java/org/qinan/safetyeval/client/file/request/EvalProjectArchiveFileMonitorPageQry.java +++ b/safety-eval-client/src/main/java/org/qinan/safetyeval/client/file/request/EvalProjectArchiveFileMonitorPageQry.java @@ -21,11 +21,6 @@ public class EvalProjectArchiveFileMonitorPageQry extends PageQuery { @ApiModelProperty(value = "项目ID") private String projectId; - /** - * 文件名称 - */ - @ApiModelProperty(value = "文件名称") - private String fileName; /** * ArchiveTypeEnum.REMARKS */ diff --git a/safety-eval-client/src/main/java/org/qinan/safetyeval/client/file/request/EvalProjectArchiveFilePageQry.java b/safety-eval-client/src/main/java/org/qinan/safetyeval/client/file/request/EvalProjectArchiveFilePageQry.java index 50c2cbb0..9a2f77d7 100644 --- a/safety-eval-client/src/main/java/org/qinan/safetyeval/client/file/request/EvalProjectArchiveFilePageQry.java +++ b/safety-eval-client/src/main/java/org/qinan/safetyeval/client/file/request/EvalProjectArchiveFilePageQry.java @@ -21,11 +21,6 @@ public class EvalProjectArchiveFilePageQry extends PageQuery { @ApiModelProperty(value = "项目ID") private String projectId; - /** - * 文件名称 - */ - @ApiModelProperty(value = "文件名称") - private String fileName; /** * ArchiveTypeEnum.REMARKS */ diff --git a/safety-eval-client/src/main/java/org/qinan/safetyeval/client/file/request/EvalProjectArchiveFileUpdateCmd.java b/safety-eval-client/src/main/java/org/qinan/safetyeval/client/file/request/EvalProjectArchiveFileUpdateCmd.java index 4b0c324e..ce7d65fb 100644 --- a/safety-eval-client/src/main/java/org/qinan/safetyeval/client/file/request/EvalProjectArchiveFileUpdateCmd.java +++ b/safety-eval-client/src/main/java/org/qinan/safetyeval/client/file/request/EvalProjectArchiveFileUpdateCmd.java @@ -28,17 +28,11 @@ public class EvalProjectArchiveFileUpdateCmd implements Serializable { @NotBlank(message = "项目ID不能为空") private String projectId; /** - * 文件地址 + * 文件列表(JSON 数组,如 [{"url":"...","name":"..."}]) */ - @ApiModelProperty(value = "文件地址", required = true) - @NotBlank(message = "文件地址不能为空") - private String fileUrl; - /** - * 文件名称 - */ - @ApiModelProperty(value = "文件名称", required = true) - @NotBlank(message = "文件名称不能为空") - private String fileName; + @ApiModelProperty(value = "文件列表(JSON 数组,如 [{\"url\":\"...\",\"name\":\"...\"}])", required = true) + @NotBlank(message = "文件列表不能为空") + private String files; /** * ArchiveTypeEnum.REMARKS */ diff --git a/safety-eval-client/src/main/java/org/qinan/safetyeval/client/file/response/EvalProjectArchiveFileCo.java b/safety-eval-client/src/main/java/org/qinan/safetyeval/client/file/response/EvalProjectArchiveFileCo.java index dfe687d3..d3ab55ab 100644 --- a/safety-eval-client/src/main/java/org/qinan/safetyeval/client/file/response/EvalProjectArchiveFileCo.java +++ b/safety-eval-client/src/main/java/org/qinan/safetyeval/client/file/response/EvalProjectArchiveFileCo.java @@ -23,15 +23,10 @@ public class EvalProjectArchiveFileCo extends ClientObject { @ApiModelProperty(value = "项目ID") private String projectId; /** - * 文件地址 + * 文件列表(JSON 数组,如 [{"url":"...","name":"..."}]) */ - @ApiModelProperty(value = "文件地址") - private String fileUrl; - /** - * 文件名称 - */ - @ApiModelProperty(value = "文件名称") - private String fileName; + @ApiModelProperty(value = "文件列表") + private String files; /** * ArchiveTypeEnum.REMARKS */ diff --git a/safety-eval-domain/src/main/java/org/qinan/safetyeval/domain/file/model/EvalProjectArchiveFileE.java b/safety-eval-domain/src/main/java/org/qinan/safetyeval/domain/file/model/EvalProjectArchiveFileE.java index 0e4de516..8137bf32 100644 --- a/safety-eval-domain/src/main/java/org/qinan/safetyeval/domain/file/model/EvalProjectArchiveFileE.java +++ b/safety-eval-domain/src/main/java/org/qinan/safetyeval/domain/file/model/EvalProjectArchiveFileE.java @@ -25,13 +25,9 @@ public class EvalProjectArchiveFileE extends BaseE { */ private String projectId; /** - * 文件地址 + * 文件列表(JSON 数组,如 [{"url":"...","name":"..."}]) */ - private String fileUrl; - /** - * 文件名称 - */ - private String fileName; + private String files; /** * ArchiveTypeEnum.REMARKS */ diff --git a/safety-eval-infrastructure/src/main/java/org/qinan/safetyeval/infrastructure/persistence/domainobject/EvalProjectArchiveFileDO.java b/safety-eval-infrastructure/src/main/java/org/qinan/safetyeval/infrastructure/persistence/domainobject/EvalProjectArchiveFileDO.java index 3fd8c357..c650ae88 100644 --- a/safety-eval-infrastructure/src/main/java/org/qinan/safetyeval/infrastructure/persistence/domainobject/EvalProjectArchiveFileDO.java +++ b/safety-eval-infrastructure/src/main/java/org/qinan/safetyeval/infrastructure/persistence/domainobject/EvalProjectArchiveFileDO.java @@ -22,13 +22,9 @@ public class EvalProjectArchiveFileDO extends BaseDO { */ private String projectId; /** - * 文件地址 + * 文件列表(JSON 数组,如 [{"url":"...","name":"..."}]) */ - private String fileUrl; - /** - * 文件名称 - */ - private String fileName; + private String files; /** * ArchiveTypeEnum.REMARKS */ diff --git a/safety-eval-infrastructure/src/main/java/org/qinan/safetyeval/infrastructure/persistence/repository/impl/EvalProjectArchiveFileRepositoryImpl.java b/safety-eval-infrastructure/src/main/java/org/qinan/safetyeval/infrastructure/persistence/repository/impl/EvalProjectArchiveFileRepositoryImpl.java index b815ad97..5ab8a92d 100644 --- a/safety-eval-infrastructure/src/main/java/org/qinan/safetyeval/infrastructure/persistence/repository/impl/EvalProjectArchiveFileRepositoryImpl.java +++ b/safety-eval-infrastructure/src/main/java/org/qinan/safetyeval/infrastructure/persistence/repository/impl/EvalProjectArchiveFileRepositoryImpl.java @@ -40,9 +40,6 @@ public class EvalProjectArchiveFileRepositoryImpl extends BaseRepositoryImpl - - + @@ -29,8 +28,7 @@ select id, project_id, - file_url, - file_name, + files, archive_type, business_node, record_source,