diff --git a/electrmangnetic/src/main/java/com/electromagnetic/industry/software/manage/service/EdFileInfoService.java b/electrmangnetic/src/main/java/com/electromagnetic/industry/software/manage/service/EdFileInfoService.java index e92d942..14b880e 100644 --- a/electrmangnetic/src/main/java/com/electromagnetic/industry/software/manage/service/EdFileInfoService.java +++ b/electrmangnetic/src/main/java/com/electromagnetic/industry/software/manage/service/EdFileInfoService.java @@ -1,6 +1,7 @@ package com.electromagnetic.industry.software.manage.service; import com.electromagnetic.industry.software.common.resp.ElectromagneticResult; +import com.electromagnetic.industry.software.manage.pojo.models.EdFileInfo; import com.electromagnetic.industry.software.manage.pojo.req.CreateFolderDTO; import com.electromagnetic.industry.software.manage.pojo.req.FileChunkDTO; import com.electromagnetic.industry.software.manage.pojo.req.FileInfoQueryDTO; @@ -164,4 +165,10 @@ public interface EdFileInfoService { * @return */ ElectromagneticResult queryChildFolder(String parentId); + + /** + * 处理重名文件,文件名后+_1 + * @param fileInfo + */ + void resetFileInfoName(EdFileInfo fileInfo); } diff --git a/electrmangnetic/src/main/java/com/electromagnetic/industry/software/manage/service/serviceimpl/EdFileInfoServiceImpl.java b/electrmangnetic/src/main/java/com/electromagnetic/industry/software/manage/service/serviceimpl/EdFileInfoServiceImpl.java index f7a16a6..38fa233 100644 --- a/electrmangnetic/src/main/java/com/electromagnetic/industry/software/manage/service/serviceimpl/EdFileInfoServiceImpl.java +++ b/electrmangnetic/src/main/java/com/electromagnetic/industry/software/manage/service/serviceimpl/EdFileInfoServiceImpl.java @@ -561,7 +561,8 @@ public class EdFileInfoServiceImpl extends ServiceImpl 0) { - edFileInfoService.handUploadRepeatFile(parentId, file, 3); - } else { - EdFileInfo parentFolderInfo = edFileInfoService.getOne(Wrappers.lambdaQuery(EdFileInfo.class) - .eq(EdFileInfo::getId, parentId) - .eq(EdFileInfo::getEffectFlag, EffectFlagEnum.EFFECT.code)); - - String codePathByDbPath = commonService.getCodePathByDbPath(parentFolderInfo.getFilePath()); - String fileCode = commonService.createFileCode(codePathByDbPath, suffix, FILE_START_VERSION, newEdFileInfo.getFileTime()); - newEdFileInfo.setParentId(parentId) - .setFileCode(fileCode) - .setFileName(mainName) - .setFileType(suffix) - .setFileVersion(FILE_START_VERSION) - .setFileSize(file.getSize()) - .setFilePath(parentFolderInfo.getFilePath() + MYSQL_FILE_PATH_SPLIT + newEdFileInfo.getId()) - .setDataType(EleDataTypeEnum.FILE.code) - .setDataStatus(PublishEnum.PUBLISHED.getCode()) - .setEffectFlag(EffectFlagEnum.EFFECT.code) - .setFileCode(fileCode) - .setSaveStatus(EleDataSaveStatusEnum.SUCCESS.code) - .setPrjDir(false); - edFileInfoService.saveOrUpdate(newEdFileInfo); - String fileDestPath = commonService.getFileSysPath(newEdFileInfo.getFilePath()); - FileUtil.writeFromStream(file.getInputStream(), fileDestPath); - EleCommonUtil.encryptFile(fileDestPath, SecureUtil.aes(FILE_SEC_PASSWD.getBytes())); -// fileSystemService.save(FileUtil.getInputStream(fileDestPath), fileDestPath); // 这里会导致文件大小为0,考虑到当前的系统为OS文件系统,暂不处理 - - // 创建文件关系 - EdFileRelation relation = new EdFileRelation(); - relation.setId1(id); - relation.setId2(newEdFileInfo.getId()); - relation.setRelationship(descrption); - createRelation(relation); + edFileInfoService.resetFileInfoName(newEdFileInfo); } + + edFileInfoService.saveOrUpdate(newEdFileInfo); + String fileDestPath = commonService.getFileSysPath(newEdFileInfo.getFilePath()); + FileUtil.writeFromStream(file.getInputStream(), fileDestPath); + EleCommonUtil.encryptFile(fileDestPath, SecureUtil.aes(FILE_SEC_PASSWD.getBytes())); + + // 创建文件关系 + EdFileRelation relation = new EdFileRelation(); + relation.setId1(id); + relation.setId2(newEdFileInfo.getId()); + relation.setRelationship(descrption); + createRelation(relation); + } catch (Exception e) { newEdFileInfo.setParentId(parentId) .setFileName(mainName)