diff --git a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/controller/model/NewModelFromGitController.java b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/controller/model/NewModelFromGitController.java index 426c3de4..e7eb47ef 100644 --- a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/controller/model/NewModelFromGitController.java +++ b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/controller/model/NewModelFromGitController.java @@ -2,11 +2,9 @@ package com.ruoyi.platform.controller.model; import com.ruoyi.common.core.web.domain.AjaxResult; import com.ruoyi.platform.service.ModelsService; -import com.ruoyi.platform.utils.DVCUtils; import com.ruoyi.platform.vo.ModelsVo; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; -import org.eclipse.jgit.api.errors.GitAPIException; import org.springframework.core.io.InputStreamResource; import org.springframework.data.domain.PageRequest; import org.springframework.http.ResponseEntity; @@ -14,7 +12,6 @@ import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; import javax.annotation.Resource; -import java.io.IOException; import java.util.List; import java.util.Map; @@ -77,6 +74,16 @@ public class NewModelFromGitController { } } + @GetMapping("/queryVersions") + @ApiOperation("分页查询模型版本") + public AjaxResult queryVersions(@RequestParam(value = "page") int page, + @RequestParam(value = "size") int size, + @RequestParam("identifier") String identifier, + @RequestParam("owner") String owner) throws Exception { + PageRequest pageRequest = PageRequest.of(page, size); + return AjaxResult.success(this.modelsService.queryVersions(pageRequest, identifier, owner)); + } + @GetMapping("/getVersionList") @ApiOperation(value = "获取模型分支列表") public AjaxResult getVersionList(@RequestParam("identifier") String identifier, @RequestParam("owner") String owner) throws Exception { diff --git a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/mapper/ModelDependency1Dao.java b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/mapper/ModelDependency1Dao.java index 28baa541..c44bd8bd 100644 --- a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/mapper/ModelDependency1Dao.java +++ b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/mapper/ModelDependency1Dao.java @@ -24,4 +24,6 @@ public interface ModelDependency1Dao { int deleteModel(@Param("repoId") Integer repoId, @Param("identifier") String identifier, @Param("owner") String owner, @Param("version") String version); int deleteModelDependency(@Param("parentModel") String parentModel); + + String getMeta(@Param("identifier") String identifier, @Param("owner") String owner, @Param("version") String version); } diff --git a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/ModelsService.java b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/ModelsService.java index 067f90a7..8b51d696 100644 --- a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/ModelsService.java +++ b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/ModelsService.java @@ -99,6 +99,8 @@ public interface ModelsService { Page newPersonalQueryByPage(ModelsVo modelsVo, PageRequest pageRequest) throws Exception; + Page> queryVersions(PageRequest pageRequest, String identifier, String owner) throws Exception; + List> getVersionList(String identifier, String owner) throws Exception; ModelsVo getModelDetail(Integer id, String identifier, String owner, String version) throws Exception; diff --git a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/ModelsServiceImpl.java b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/ModelsServiceImpl.java index 9a09ab84..fc576881 100644 --- a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/ModelsServiceImpl.java +++ b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/ModelsServiceImpl.java @@ -973,11 +973,33 @@ public class ModelsServiceImpl implements ModelsService { return new PageImpl<>(result, pageRequest, collect.size()); } + @Override + public Page> queryVersions(PageRequest pageRequest, String identifier, String owner) throws Exception { + String token = gitService.checkoutToken(); + List> collect = gitService.getBrancheList(token, owner, identifier); + List> result = collect.stream() + .filter(branch -> !"master".equals(branch.get("name"))) + .skip((pageRequest.getPageNumber()) * pageRequest.getPageSize()).limit(pageRequest.getPageSize()) + .collect(Collectors.toList()); + + for (Map branch : result) { + String meta = modelDependency1Dao.getMeta(identifier, owner, (String) branch.get("name")); + ModelMetaVo modelMetaVo = JSON.parseObject(meta, ModelMetaVo.class); + if (modelMetaVo.getParams() != null) { + branch.putAll(modelMetaVo.getParams()); + } + if (modelMetaVo.getMetrics() != null) { + branch.putAll(modelMetaVo.getMetrics()); + } + } + return new PageImpl<>(result, pageRequest, collect.size()); + } + @Override public List> getVersionList(String identifier, String owner) throws Exception { String token = gitService.checkoutToken(); - List> brancheList = gitService.getBrancheList(token, owner, identifier); - return brancheList.stream() + List> branchList = gitService.getBrancheList(token, owner, identifier); + return branchList.stream() .filter(branch -> !"master".equals(branch.get("name"))) .collect(Collectors.toList()); } diff --git a/ruoyi-modules/management-platform/src/main/resources/mapper/managementPlatform/ModelDependency1DaoMapper.xml b/ruoyi-modules/management-platform/src/main/resources/mapper/managementPlatform/ModelDependency1DaoMapper.xml index 5266f05f..bc2a58fb 100644 --- a/ruoyi-modules/management-platform/src/main/resources/mapper/managementPlatform/ModelDependency1DaoMapper.xml +++ b/ruoyi-modules/management-platform/src/main/resources/mapper/managementPlatform/ModelDependency1DaoMapper.xml @@ -60,6 +60,15 @@ order by create_time desc limit 1 + + update model_dependency1 set state = 0