diff --git a/data/src/main/java/com/sdm/data/service/impl/dataFileHandle/ModifyFileApproveStrategy.java b/data/src/main/java/com/sdm/data/service/impl/dataFileHandle/ModifyFileApproveStrategy.java index e76ecf96..2d9b8554 100644 --- a/data/src/main/java/com/sdm/data/service/impl/dataFileHandle/ModifyFileApproveStrategy.java +++ b/data/src/main/java/com/sdm/data/service/impl/dataFileHandle/ModifyFileApproveStrategy.java @@ -80,28 +80,20 @@ public class ModifyFileApproveStrategy implements ApproveStrategy { // 3. 更新主记录为新版本数据 // 锁定主记录 ID,更新核心字段 - FileMetadataInfo updateEntity = new FileMetadataInfo(); - updateEntity.setId(currentFileMetadata.getId()); - - // 复制关键元数据(新文件路径、版本号、大小、名称等) - updateEntity.setObjectKey(newVersionInfo.getObjectKey()); - updateEntity.setOriginalName(newVersionInfo.getOriginalName()); - updateEntity.setFileSize(newVersionInfo.getFileSize()); - updateEntity.setVersionNo(newVersionInfo.getVersionNo()); - - // 复制业务属性 - updateEntity.setProjectId(newVersionInfo.getProjectId()); - updateEntity.setAnalysisDirectionId(newVersionInfo.getAnalysisDirectionId()); - updateEntity.setRemarks(newVersionInfo.getRemarks()); - - // 更新状态 - updateEntity.setIsLatest(true); - updateEntity.setTempMetadata(null); - updateEntity.setApproveType(ApproveFileDataTypeEnum.COMPLETED.getCode()); - updateEntity.setApprovalStatus(ApprovalFileDataStatusEnum.APPROVED.getKey()); - updateEntity.setUpdateTime(LocalDateTime.now()); - - fileMetadataInfoService.updateById(updateEntity); + fileMetadataInfoService.lambdaUpdate() + .eq(FileMetadataInfo::getId, currentFileMetadata.getId()) + .set(FileMetadataInfo::getObjectKey, newVersionInfo.getObjectKey()) + .set(FileMetadataInfo::getOriginalName, newVersionInfo.getOriginalName()) + .set(FileMetadataInfo::getFileSize, newVersionInfo.getFileSize()) + .set(FileMetadataInfo::getVersionNo, newVersionInfo.getVersionNo()) + .set(FileMetadataInfo::getProjectId, newVersionInfo.getProjectId()) + .set(FileMetadataInfo::getAnalysisDirectionId, newVersionInfo.getAnalysisDirectionId()) + .set(FileMetadataInfo::getRemarks, newVersionInfo.getRemarks()) + .set(FileMetadataInfo::getTempMetadata, null) + .set(FileMetadataInfo::getIsLatest, true) + .set(FileMetadataInfo::getApprovalStatus, ApprovalFileDataStatusEnum.APPROVED.getKey()) + .set(FileMetadataInfo::getApproveType, ApproveFileDataTypeEnum.COMPLETED.getCode()) + .update(); return true; }