修复:检验文件名唯一性接口

This commit is contained in:
s2042968 2025-02-19 17:21:47 +08:00
parent de63dfe9d6
commit 4a80dc3753
4 changed files with 16 additions and 12 deletions

View File

@ -73,9 +73,7 @@ public class EdFileRelationController {
*/
@RequestMapping(value = "/checkFileNameExist", method = RequestMethod.POST)
public ElectromagneticResult<?> checkFileNameExist(@RequestBody CheckNameUniqueRequest checkNameUniqueRequest) {
String fileName = checkNameUniqueRequest.getFileName();
String parentId = checkNameUniqueRequest.getParentId();
return ElectromagneticResultUtil.success(edFileRelationService.checkNameUnique(parentId, fileName));
return ElectromagneticResultUtil.success(!edFileRelationService.checkNameUnique(checkNameUniqueRequest));
}
/**

View File

@ -14,4 +14,9 @@ public class CheckNameUniqueRequest {
* 文件名称
*/
private String fileName;
/**
* 文件后缀
*/
private String fileType;
}

View File

@ -2,6 +2,7 @@ package com.electromagnetic.industry.software.manage.service;
import com.electromagnetic.industry.software.common.resp.ElectromagneticResult;
import com.electromagnetic.industry.software.manage.pojo.models.EdFileRelation;
import com.electromagnetic.industry.software.manage.pojo.req.CheckNameUniqueRequest;
import com.electromagnetic.industry.software.manage.pojo.resp.FileRelationViewVO;
import org.springframework.web.multipart.MultipartFile;
@ -34,11 +35,9 @@ public interface EdFileRelationService {
/**
* 检查文件名是否唯一
*
* @param parentId
* @param fileName
* @return
*/
Boolean checkNameUnique(String parentId, String fileName);
Boolean checkNameUnique(CheckNameUniqueRequest checkNameUniqueRequest);
/**
* 文件上传并建立关系

View File

@ -18,6 +18,7 @@ import com.electromagnetic.industry.software.manage.mapper.EdFileRelationMapper;
import com.electromagnetic.industry.software.manage.pojo.models.EdFileInfo;
import com.electromagnetic.industry.software.manage.pojo.models.EdFileRelation;
import com.electromagnetic.industry.software.manage.pojo.models.Edge;
import com.electromagnetic.industry.software.manage.pojo.req.CheckNameUniqueRequest;
import com.electromagnetic.industry.software.manage.pojo.resp.FileRelationViewVO;
import com.electromagnetic.industry.software.manage.pojo.resp.FileSimpleInfoVO;
import com.electromagnetic.industry.software.manage.service.EdFileRelationService;
@ -130,19 +131,20 @@ public class EdFileRelationServiceImpl extends ServiceImpl<EdFileRelationMapper,
/**
* 检查文件名是否唯一
*
* @param parentId
* @param fileName
* @return
*/
@Override
@Transactional
public Boolean checkNameUnique(String parentId, String fileName) {
String mainName = FileUtil.mainName(fileName);
String suffix = FileUtil.getSuffix(fileName);
public Boolean checkNameUnique(CheckNameUniqueRequest checkNameUniqueRequest) {
String mainName = checkNameUniqueRequest.getFileName();
String suffix = checkNameUniqueRequest.getFileType();
String parentId = checkNameUniqueRequest.getParentId();
EdFileInfo newEdFileInfo = new EdFileInfo();
newEdFileInfo.newInit();
// 首先检查是否是同名文件
Assert.isTrue(EleCommonUtil.isFileNameValid(fileName), NAME_VALID_MSG);
Assert.isTrue(EleCommonUtil.isFileNameValid(mainName + "." +suffix), NAME_VALID_MSG);
Long count = edFileInfoService.count(Wrappers.lambdaQuery(EdFileInfo.class)
.eq(EdFileInfo::getParentId, parentId)
.eq(EdFileInfo::getFileName, mainName)