Browse Source

运行实验时模型版本属于创建中状态

dev-lhz
chenzhihang 1 year ago
parent
commit
529e772436
4 changed files with 45 additions and 13 deletions
  1. +4
    -0
      ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/mapper/ModelDependency1Dao.java
  2. +8
    -3
      ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/ExperimentServiceImpl.java
  3. +15
    -10
      ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/ModelsServiceImpl.java
  4. +18
    -0
      ruoyi-modules/management-platform/src/main/resources/mapper/managementPlatform/ModelDependency1DaoMapper.xml

+ 4
- 0
ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/mapper/ModelDependency1Dao.java View File

@@ -9,8 +9,12 @@ public interface ModelDependency1Dao {

int insert(ModelDependency1 modelDependency1);

int updateState(@Param("repoId") Integer repoId, @Param("identifier") String identifier, @Param("version") String version, @Param("state") Integer state);

List<ModelDependency1> queryModelDependency(@Param("modelName") String modelName, @Param("repoId") Integer repoId, @Param("owner") String owner);

ModelDependency1 getBuildingModel(@Param("repoId") Integer repoId, @Param("identifier") String identifier, @Param("version") String version);

ModelDependency1 queryByRepoAndVersion(@Param("repoId") Integer repoId, @Param("identifier") String identifier, @Param("version") String version);

List<ModelDependency1> queryByParentModel(@Param("parentModel") String parentModel);


+ 8
- 3
ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/ExperimentServiceImpl.java View File

@@ -3,6 +3,7 @@ package com.ruoyi.platform.service.impl;
import com.alibaba.fastjson2.JSON;
import com.ruoyi.common.security.utils.SecurityUtils;
import com.ruoyi.platform.annotations.CheckDuplicate;
import com.ruoyi.platform.constant.Constant;
import com.ruoyi.platform.domain.*;
import com.ruoyi.platform.domain.dependencydomain.ProjectDepency;
import com.ruoyi.platform.domain.dependencydomain.TrainTaskDepency;
@@ -599,6 +600,7 @@ public class ExperimentServiceImpl implements ExperimentService {
modelMetaVo.setName((String) targetModel.get("model_name"));
modelMetaVo.setVersion((String) targetModel.get("model_version"));
modelMetaVo.setOwner(gitLinkUsername);
modelDependency.setModelName((String) targetModel.get("model_name"));

List<VersionVo> versionVos = new ArrayList<>();
for (Map<String, Object> outputFile : outputList) {
@@ -615,17 +617,20 @@ public class ExperimentServiceImpl implements ExperimentService {
}
modelMetaVo.setModelVersionVos(versionVos);
}
modelsService.newCreateVersion(modelMetaVo);
String meta = JSON.toJSONString(modelMetaVo);
modelDependency.setMeta(meta);
modelDependency.setOwner(gitLinkUsername);
modelDependency.setState(Constant.State_building);
modelDependency1Dao.insert(modelDependency);
}
} else {
String meta = JSON.toJSONString(modelMetaVo);
modelDependency.setMeta(meta);
modelDependency.setOwner(gitLinkUsername);
modelDependency.setState(Constant.State_building);
modelDependency1Dao.insert(modelDependency);
}

}

}

/**


+ 15
- 10
ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/ModelsServiceImpl.java View File

@@ -684,7 +684,6 @@ public class ModelsServiceImpl implements ModelsService {
if (oldModelDependencys.stream().anyMatch(oldModelDependency -> oldModelDependency.getVersion().equals(modelsVo.getVersion()))) {
throw new RuntimeException("模型版本已存在,请勿重复创建");
}

//新建版本
String branchName = modelsVo.getVersion();
String owner = (String) userInfo.get("login");
@@ -753,15 +752,21 @@ public class ModelsServiceImpl implements ModelsService {
Map<String, Object> params = modelMetaVo.getParams();
YamlUtils.generateYamlFile(params, rootPath, "params");

//保存模型依赖
modelDependency.setRepoId(modelsVo.getId());
modelDependency.setIdentifier(repositoryName);
modelDependency.setModelName(modelsVo.getName());
modelDependency.setVersion(modelsVo.getVersion());
modelDependency.setParentModel(modelsVo.getParentModel());
modelDependency.setOwner(gitLinkUsername);
modelDependency.setMeta(meta);
modelDependency1Dao.insert(modelDependency);
ModelDependency1 buildingModel = modelDependency1Dao.getBuildingModel(modelsVo.getId(), modelsVo.getIdentifier(), modelsVo.getVersion());
if (buildingModel != null) {
//更新模型依赖
modelDependency1Dao.updateState(modelsVo.getId(), modelsVo.getIdentifier(), modelsVo.getVersion(), Constant.State_valid);
} else {
//保存模型依赖
modelDependency.setRepoId(modelsVo.getId());
modelDependency.setIdentifier(repositoryName);
modelDependency.setModelName(modelsVo.getName());
modelDependency.setVersion(modelsVo.getVersion());
modelDependency.setParentModel(modelsVo.getParentModel());
modelDependency.setOwner(gitLinkUsername);
modelDependency.setMeta(meta);
modelDependency1Dao.insert(modelDependency);
}

// 配置远程S3地址
String s3Path = "management-platform-files/" + ci4sUsername + "/model/" + modelsVo.getId() + "/" + repositoryName + "/" + branchName;


+ 18
- 0
ruoyi-modules/management-platform/src/main/resources/mapper/managementPlatform/ModelDependency1DaoMapper.xml View File

@@ -40,6 +40,15 @@
and state = 1
</select>

<select id="getBuildingModel" resultType="com.ruoyi.platform.domain.ModelDependency1">
select *
from model_dependency1
where repo_id = #{repoId}
and identifier = #{identifier}
and version = #{version}
and state = 2
</select>

<update id="deleteModel">
update model_dependency1
set state = 0
@@ -54,4 +63,13 @@
set parent_model = null
where JSON_CONTAINS(parent_model, #{parentModel})
</update>

<update id="updateState">
update model_dependency1
set state = 1
where repo_id = #{repoId}
and identifier = #{identifier}
and version = #{version}
and state = 2
</update>
</mapper>

Loading…
Cancel
Save