diff --git a/kernel-d-file/file-business/src/main/java/cn/stylefeng/roses/kernel/file/modular/service/impl/SysFileInfoServiceImpl.java b/kernel-d-file/file-business/src/main/java/cn/stylefeng/roses/kernel/file/modular/service/impl/SysFileInfoServiceImpl.java index 0b31d8073..99d14a6b5 100644 --- a/kernel-d-file/file-business/src/main/java/cn/stylefeng/roses/kernel/file/modular/service/impl/SysFileInfoServiceImpl.java +++ b/kernel-d-file/file-business/src/main/java/cn/stylefeng/roses/kernel/file/modular/service/impl/SysFileInfoServiceImpl.java @@ -59,6 +59,7 @@ import cn.stylefeng.roses.kernel.file.modular.mapper.SysFileInfoMapper; import cn.stylefeng.roses.kernel.file.modular.service.SysFileInfoService; import cn.stylefeng.roses.kernel.file.modular.service.SysFileStorageService; import cn.stylefeng.roses.kernel.rule.enums.YesOrNotEnum; +import cn.stylefeng.roses.kernel.rule.exception.base.ServiceException; import cn.stylefeng.roses.kernel.rule.util.StrFilterUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; @@ -108,36 +109,34 @@ public class SysFileInfoServiceImpl extends ServiceImpl fileIdListString = fileInfos.stream().map(SysFileInfo::getFileId).map(String::valueOf).collect(Collectors.toList()); + fileInfoCache.remove(fileIdListString); } @Override @@ -444,15 +450,30 @@ public class SysFileInfoServiceImpl extends ServiceImpl wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(SysFileInfo::getFileId, fileId); + wrapper.select(SysFileInfo::getFileId, SysFileInfo::getFileCode, SysFileInfo::getFileVersion, SysFileInfo::getFileStatus, SysFileInfo::getFileSuffix, SysFileInfo::getFileSizeKb, + SysFileInfo::getFileSizeInfo, SysFileInfo::getSecretFlag, SysFileInfo::getFileObjectName, SysFileInfo::getFileLocation, SysFileInfo::getFileBucket, SysFileInfo::getFileOriginName, + SysFileInfo::getFilePath, SysFileInfo::getFileUrl, SysFileInfo::getFileMd5); + SysFileInfo sysFileInfo = this.getOne(wrapper, false); + if (sysFileInfo == null) { + return null; + } // 转化实体 SysFileInfoResponse sysFileInfoResponse = new SysFileInfoResponse(); BeanUtil.copyProperties(sysFileInfo, sysFileInfoResponse); + fileInfoCache.put(fileId.toString(), sysFileInfoResponse, FileConstants.DEFAULT_FILE_TIMEOUT_SECONDS); return sysFileInfoResponse; } @@ -465,33 +486,34 @@ public class SysFileInfoServiceImpl extends ServiceImpl sysFileInfoLambdaQueryWrapper = new LambdaQueryWrapper<>(); - sysFileInfoLambdaQueryWrapper.eq(SysFileInfo::getFileId, fileId); - sysFileInfoLambdaQueryWrapper.select(SysFileInfo::getFileOriginName, SysFileInfo::getFileSizeInfo, SysFileInfo::getFileSuffix); - SysFileInfo sysFileInfo = this.getOne(sysFileInfoLambdaQueryWrapper); + SysFileInfoResponse sysFileInfo = this.getFileInfoWithoutContent(fileId); if (sysFileInfo == null) { continue; }