Merge remote-tracking branch 'origin/main'

This commit is contained in:
weiweiw 2024-12-31 13:18:18 +08:00
commit 2361deef1f
5 changed files with 58 additions and 24 deletions

View File

@ -51,4 +51,12 @@ public interface ModelEvaluateMapper {
* @return 结果
*/
public int deleteAiModelEvaluateByIds(Long[] ids);
/**
* 唯一性
*
* @param aiModelEvaluate 模型评价
* @return 条数
*/
public Integer checkUniqueEvaluateNameAndVersion(ModelEvaluate aiModelEvaluate);
}

View File

@ -265,6 +265,7 @@ public class DataSetBasicFileServiceImpl implements DataSetBasicFileService {
entity.setIsDirectory("0");
entity.setParentId(Long.valueOf(parentId));
dataSetBasicFileMapper.insertDataSetBasicFile(entity);
return AjaxResult.success(entity);
}
return AjaxResult.success();
} catch (Exception e) {
@ -648,7 +649,7 @@ public class DataSetBasicFileServiceImpl implements DataSetBasicFileService {
}
// 递归获取文件的完整路径从文件到根目录
private String getFullDirectoryPath(DataSetBasicFileEntity fileEntity,Long directoryId) {
private String getFullDirectoryPath(DataSetBasicFileEntity fileEntity, Long directoryId) {
StringBuilder directoryPath = new StringBuilder(fileEntity.getFileName());
Long parentId = fileEntity.getParentId();
while (parentId != null && !parentId.equals(directoryId)) { // 判断是否有父目录

View File

@ -66,6 +66,10 @@ public class ModelEvaluateServiceImpl implements ModelEvaluateService {
aiModelEvaluate.setCreateTime(DateUtils.getNowDate());
aiModelEvaluate.setCreateBy(SecurityUtils.getUserId().toString());
try {
int i = aiModelEvaluateMapper.checkUniqueEvaluateNameAndVersion(aiModelEvaluate);
if (i > 0) {
return AjaxResult.error("评价已存在");
}
int rows = aiModelEvaluateMapper.insertAiModelEvaluate(aiModelEvaluate);
return rows > 0 ? AjaxResult.success() : AjaxResult.error();
} catch (Exception e) {
@ -83,6 +87,10 @@ public class ModelEvaluateServiceImpl implements ModelEvaluateService {
public AjaxResult updateAiModelEvaluate(ModelEvaluate aiModelEvaluate) {
aiModelEvaluate.setUpdateTime(DateUtils.getNowDate());
try {
int i = aiModelEvaluateMapper.checkUniqueEvaluateNameAndVersion(aiModelEvaluate);
if (i > 0) {
return AjaxResult.error("评价已存在");
}
int rows = aiModelEvaluateMapper.updateAiModelEvaluate(aiModelEvaluate);
return rows > 0 ? AjaxResult.success() : AjaxResult.error();
} catch (Exception e) {

View File

@ -109,7 +109,7 @@ public class DatasetServiceImpl implements DatasetService {
@Override
public List<DataSetEntity> getDatasetList(DataSetEntity dataSet) {
try {
if (ObjectUtils.isEmpty(dataSet.getIsPublic())){
if (ObjectUtils.isEmpty(dataSet.getIsPublic())) {
String userId = SecurityUtils.getUserId().toString();
dataSet.setCreateBy(userId);
}
@ -139,7 +139,7 @@ public class DatasetServiceImpl implements DatasetService {
dataSetEntity.setDatasetId(Long.valueOf(datasetId));
if ("1".equals(isPublic) || "0".equals(isPublic)) {
dataSetEntity.setIsPublic(isPublic);
}else {
} else {
dataSetEntity.setIsPublic("0");
}
datasetMapper.update(dataSetEntity);
@ -151,9 +151,11 @@ public class DatasetServiceImpl implements DatasetService {
}
/**验证数据集名称的唯一性*/
/**
* 验证数据集名称的唯一性
*/
@Override
public boolean checkDatasetNameUnique(DataSetEntity dataSet){
public boolean checkDatasetNameUnique(DataSetEntity dataSet) {
Long dataSetId = StringUtils.isNull(dataSet.getDatasetId()) ? -1L : dataSet.getDatasetId();
DataSetEntity info = datasetMapper.checkDatasetNameUnique(dataSet.getDatasetName());
if (StringUtils.isNotNull(info) && info.getDatasetId().longValue() != dataSetId.longValue()) {
@ -181,7 +183,7 @@ public class DatasetServiceImpl implements DatasetService {
*/
@Override
public int removeDataSetBasicFile(String dataSetId, long[] fileIds) {
return datasetMapper.removeDataSetBasicFile(dataSetId,fileIds);
return datasetMapper.removeDataSetBasicFile(dataSetId, fileIds);
}
/**
@ -203,8 +205,8 @@ public class DatasetServiceImpl implements DatasetService {
public void exportDataset(HttpServletRequest request, HttpServletResponse response, Long datasetId) {
List<DataSetBasicFileEntity> list = datasetFileMapper.selectFilesByDatasetId(datasetId);
try {
downloadMultipleFiles(response,list);
}catch (Exception e){
downloadMultipleFiles(response, list);
} catch (Exception e) {
response.setStatus(HttpServletResponse.SC_INTERNAL_SERVER_ERROR);
}
@ -308,12 +310,9 @@ public class DatasetServiceImpl implements DatasetService {
}
/**
* 插入数据集文件映射关系
*
* @param dataSet 数据集实体包含数据集ID输入ID数据类型等信息
*/
private void insertDatasetFileMap(DataSetEntity dataSet) {
@ -322,19 +321,25 @@ public class DatasetServiceImpl implements DatasetService {
// 根据数据类型获取支持的文件后缀列表例如图片视频或音频
List<String> supportedFormats = getSupportedFormats(dataSet.getDataType());
if (ObjectUtils.isNotEmpty(dataSet.getFileIds())) {
List<Long> fileIdList = Arrays.asList(dataSet.getFileIds());
// 批量插入文件映射关系
insertDatasetFileMap(dataSet.getDatasetId(), fileIdList, dataSet.getIsAnnotated());
} else {
// 筛选符合条件的文件ID列表
List<Long> fileIdList = fileList.stream()
.filter(file -> isValidFile(file, supportedFormats)) // 过滤出符合条件的文件
.map(DataSetBasicFileEntity::getFileId) // 提取文件ID
.collect(Collectors.toList());
// 批量插入文件映射关系
insertDatasetFileMap(dataSet.getDatasetId(), fileIdList, dataSet.getIsAnnotated());
}
// 筛选符合条件的文件ID列表
List<Long> fileIdList = fileList.stream()
.filter(file -> isValidFile(file, supportedFormats)) // 过滤出符合条件的文件
.map(DataSetBasicFileEntity::getFileId) // 提取文件ID
.collect(Collectors.toList());
// 批量插入文件映射关系
insertDatasetFileMap(dataSet.getDatasetId(), fileIdList, dataSet.getIsAnnotated());
}
/**
* 根据数据类型获取支持的文件后缀列表
*
* @param dataType 数据类型0 - 图片1 - 视频2 - 音频
* @return 支持的文件后缀列表例如图片格式返回 [".jpg", ".png", ".jpeg", ".bmp"]
*/
@ -354,7 +359,7 @@ public class DatasetServiceImpl implements DatasetService {
/**
* 判断文件是否符合筛选条件
*
* @param file 数据集基础文件实体包含文件名是否为目录等属性
* @param file 数据集基础文件实体包含文件名是否为目录等属性
* @param supportedFormats 支持的文件后缀列表
* @return 如果文件符合条件则返回 true否则返回 false
*/
@ -378,8 +383,9 @@ public class DatasetServiceImpl implements DatasetService {
/**
* 批量插入文件映射关系
* @param datasetId 数据集ID
* @param fileIdList 文件ID列表
*
* @param datasetId 数据集ID
* @param fileIdList 文件ID列表
* @param isAnnotated 是否标注标志
*/
private void insertDatasetFileMap(Long datasetId, List<Long> fileIdList, String isAnnotated) {

View File

@ -71,6 +71,18 @@
<include refid="selectAiModelEvaluateVo"/>
where ame.id = #{id}
</select>
<select id="checkUniqueEvaluateNameAndVersion" resultType="java.lang.Integer">
SELECT COUNT(*)
FROM ai_model_evaluate
WHERE evaluate_name = #{evaluateName}
AND enviro_conditions = #{enviroConditions}
AND evaluate_version = #{evaluateVersion}
AND process_speed = #{processSpeed}
AND memory_usage = #{memoryUsage}
<if test="id != null">
AND id != #{id}
</if>
</select>
<insert id="insertAiModelEvaluate" parameterType="com.bonus.ai.domain.ModelEvaluate">
insert into ai_model_evaluate
@ -115,7 +127,6 @@
<update id="updateAiModelEvaluate" parameterType="com.bonus.ai.domain.ModelEvaluate">
update ai_model_evaluate
<trim prefix="SET" suffixOverrides=",">
<if test="createBy != null and createBy != ''">create_by = #{createBy},</if>
<if test="evaluateName != null">evaluate_name = #{evaluateName},</if>
<if test="evaluateVersion != null">evaluate_version = #{evaluateVersion},</if>
<if test="sampleAll != null">sample_all = #{sampleAll},</if>