From f390e2b7973575a96f5039f5692e8e4f2c67408d Mon Sep 17 00:00:00 2001 From: chenzhihang <709011834@qq.com> Date: Wed, 23 Jul 2025 10:54:47 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=E9=A6=96=E9=A1=B5=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../workspace/WorkspaceController.java | 62 ++++++++++++++++++- 1 file changed, 60 insertions(+), 2 deletions(-) diff --git a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/controller/workspace/WorkspaceController.java b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/controller/workspace/WorkspaceController.java index fe0d04a4..0e75d0ee 100644 --- a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/controller/workspace/WorkspaceController.java +++ b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/controller/workspace/WorkspaceController.java @@ -3,10 +3,17 @@ package com.ruoyi.platform.controller.workspace; import com.ruoyi.common.core.web.controller.BaseController; import com.ruoyi.common.core.web.domain.AjaxResult; import com.ruoyi.common.core.web.domain.GenericsAjaxResult; -import com.ruoyi.platform.service.JupyterService; -import com.ruoyi.platform.service.WorkspaceService; +import com.ruoyi.platform.domain.CodeConfig; +import com.ruoyi.platform.domain.Dataset; +import com.ruoyi.platform.domain.Image; +import com.ruoyi.platform.domain.Service; +import com.ruoyi.platform.service.*; +import com.ruoyi.platform.vo.ModelsVo; +import com.ruoyi.system.api.constant.Constant; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; +import org.springframework.data.domain.Page; +import org.springframework.data.domain.PageRequest; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; @@ -19,6 +26,16 @@ public class WorkspaceController extends BaseController { @Resource private WorkspaceService workspaceService; + @Resource + private NewDatasetService newDatasetService; + @Resource + private ModelsService modelsService; + @Resource + private CodeConfigService codeConfigService; + @Resource + private ServiceService serviceService; + @Resource + private ImageService imageService; @GetMapping("/overview") @ApiOperation("得到运行概览") @@ -38,4 +55,45 @@ public class WorkspaceController extends BaseController { public GenericsAjaxResult> getAssetPublicCount() throws Exception { return genericsSuccess(this.workspaceService.getAssetPublicCount()); } + + @GetMapping("/getPublicDatasets") + @ApiOperation("前6个公开数据集") + public AjaxResult getPublicDatasets() throws Exception { + PageRequest pageRequest = PageRequest.of(0, 6); + Dataset dataset = new Dataset(); + return AjaxResult.success(this.newDatasetService.newPubilcQueryByPage(dataset, pageRequest, null)); + } + + @GetMapping("/getPublicModels") + @ApiOperation("前6个公开模型") + public AjaxResult getPublicModels() throws Exception { + PageRequest pageRequest = PageRequest.of(0, 6); + ModelsVo modelsVo = new ModelsVo(); + return AjaxResult.success(this.modelsService.newPubilcQueryByPage(modelsVo, pageRequest, null)); + } + + @GetMapping("/getPublicCodeConfigs") + @ApiOperation("前6个代码配置") + public GenericsAjaxResult> getPublicCodeConfigs() { + PageRequest pageRequest = PageRequest.of(0, 6); + CodeConfig codeConfig = new CodeConfig(); + return genericsSuccess(this.codeConfigService.queryByPage(codeConfig, pageRequest)); + } + + @GetMapping("/getPublicServices") + @ApiOperation("前6个服务") + public GenericsAjaxResult> getPublicServices() throws Exception { + PageRequest pageRequest = PageRequest.of(0, 6); + Service service = new Service(); + return genericsSuccess(serviceService.queryByPageService(service, pageRequest)); + } + + @GetMapping("/getPublicImages") + @ApiOperation("前6个镜像") + public GenericsAjaxResult> getPublicImages() throws Exception { + PageRequest pageRequest = PageRequest.of(0, 6); + Image image = new Image(); + image.setImageType(Constant.Image_Type_Pub); + return genericsSuccess(this.imageService.queryByPage(image, pageRequest)); + } } From 6ccf797811390910f47caeef499801d33d13de8e Mon Sep 17 00:00:00 2001 From: chenzhihang <709011834@qq.com> Date: Wed, 23 Jul 2025 13:53:03 +0800 Subject: [PATCH 2/3] =?UTF-8?q?=E9=A6=96=E9=A1=B5=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../workspace/WorkspaceController.java | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/controller/workspace/WorkspaceController.java b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/controller/workspace/WorkspaceController.java index 0e75d0ee..c9e9f877 100644 --- a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/controller/workspace/WorkspaceController.java +++ b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/controller/workspace/WorkspaceController.java @@ -3,6 +3,7 @@ package com.ruoyi.platform.controller.workspace; import com.ruoyi.common.core.web.controller.BaseController; import com.ruoyi.common.core.web.domain.AjaxResult; import com.ruoyi.common.core.web.domain.GenericsAjaxResult; +import com.ruoyi.common.security.utils.SecurityUtils; import com.ruoyi.platform.domain.CodeConfig; import com.ruoyi.platform.domain.Dataset; import com.ruoyi.platform.domain.Image; @@ -12,6 +13,7 @@ import com.ruoyi.platform.vo.ModelsVo; import com.ruoyi.system.api.constant.Constant; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; +import org.springframework.beans.factory.annotation.Value; import org.springframework.data.domain.Page; import org.springframework.data.domain.PageRequest; import org.springframework.web.bind.annotation.*; @@ -36,6 +38,13 @@ public class WorkspaceController extends BaseController { private ServiceService serviceService; @Resource private ImageService imageService; + @Resource + private GitService gitService; + + @Value("${git.publicUserName}") + private String publicUserName; + @Value("${git.publicUserPwd}") + private String publicUserPwd; @GetMapping("/overview") @ApiOperation("得到运行概览") @@ -61,7 +70,8 @@ public class WorkspaceController extends BaseController { public AjaxResult getPublicDatasets() throws Exception { PageRequest pageRequest = PageRequest.of(0, 6); Dataset dataset = new Dataset(); - return AjaxResult.success(this.newDatasetService.newPubilcQueryByPage(dataset, pageRequest, null)); + String accessToken = gitService.login(publicUserName, SecurityUtils.encrypt(publicUserPwd)); + return AjaxResult.success(this.newDatasetService.newPubilcQueryByPage(dataset, pageRequest, accessToken)); } @GetMapping("/getPublicModels") @@ -69,7 +79,8 @@ public class WorkspaceController extends BaseController { public AjaxResult getPublicModels() throws Exception { PageRequest pageRequest = PageRequest.of(0, 6); ModelsVo modelsVo = new ModelsVo(); - return AjaxResult.success(this.modelsService.newPubilcQueryByPage(modelsVo, pageRequest, null)); + String accessToken = gitService.login(publicUserName, SecurityUtils.encrypt(publicUserPwd)); + return AjaxResult.success(this.modelsService.newPubilcQueryByPage(modelsVo, pageRequest, accessToken)); } @GetMapping("/getPublicCodeConfigs") @@ -90,7 +101,7 @@ public class WorkspaceController extends BaseController { @GetMapping("/getPublicImages") @ApiOperation("前6个镜像") - public GenericsAjaxResult> getPublicImages() throws Exception { + public GenericsAjaxResult> getPublicImages() { PageRequest pageRequest = PageRequest.of(0, 6); Image image = new Image(); image.setImageType(Constant.Image_Type_Pub); From c8a42559871f2c19962e74ba5c13aa191fb8a52f Mon Sep 17 00:00:00 2001 From: chenzhihang <709011834@qq.com> Date: Wed, 23 Jul 2025 16:35:52 +0800 Subject: [PATCH 3/3] =?UTF-8?q?=E6=B5=81=E6=B0=B4=E7=BA=BF=E6=A8=A1?= =?UTF-8?q?=E6=9D=BF=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../component/ComponentController.java | 25 ++++++++--------- .../workflow/WorkflowController.java | 2 +- .../platform/service/WorkflowService.java | 2 +- .../service/impl/ComponentServiceImpl.java | 27 +++++++++++++++++++ .../service/impl/WorkflowServiceImpl.java | 15 +++++++++-- 5 files changed, 53 insertions(+), 18 deletions(-) diff --git a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/controller/component/ComponentController.java b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/controller/component/ComponentController.java index 937bd7c9..000101af 100644 --- a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/controller/component/ComponentController.java +++ b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/controller/component/ComponentController.java @@ -35,25 +35,22 @@ public class ComponentController { */ @GetMapping @ApiOperation("分页查询") - public AjaxResult queryByPage( Component component, int page, int size) { - PageRequest pageRequest = PageRequest.of(page,size); - return AjaxResult.success(this.componentService.queryByPage(component, pageRequest)); + public AjaxResult queryByPage(Component component, int page, int size) { + PageRequest pageRequest = PageRequest.of(page, size); + return AjaxResult.success(this.componentService.queryByPage(component, pageRequest)); } /** * 查询全部 * - * - * * @return 查询结果 */ - @GetMapping("/components/all") - @ApiOperation("查询全部") - public AjaxResult queryAll() throws Exception { - return AjaxResult.success(this.componentService.queryAllGroupedByCategory()); - } - + @GetMapping("/components/all") + @ApiOperation("查询全部") + public AjaxResult queryAll() throws Exception { + return AjaxResult.success(this.componentService.queryAllGroupedByCategory()); + } /** @@ -77,7 +74,7 @@ public class ComponentController { @PostMapping @ApiOperation("添加组件") public AjaxResult add(@RequestBody ComponentVo component) { - return AjaxResult.success(this.componentService.insert(component)); + return AjaxResult.success(this.componentService.insert(component)); } /** @@ -89,7 +86,7 @@ public class ComponentController { @PutMapping @ApiOperation("编辑组件") public AjaxResult edit(@RequestBody ComponentVo component) { - return AjaxResult.success(this.componentService.update(component)); + return AjaxResult.success(this.componentService.update(component)); } /** @@ -101,7 +98,7 @@ public class ComponentController { @DeleteMapping("{id}") @ApiOperation("根据id删除组件") public AjaxResult deleteById(@PathVariable("id") Integer id) throws Exception { - return AjaxResult.success(this.componentService.removeById(id)); + return AjaxResult.success(this.componentService.removeById(id)); } } diff --git a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/controller/workflow/WorkflowController.java b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/controller/workflow/WorkflowController.java index a0ee3427..463fc4ee 100644 --- a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/controller/workflow/WorkflowController.java +++ b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/controller/workflow/WorkflowController.java @@ -40,7 +40,7 @@ public class WorkflowController extends BaseController { */ @GetMapping @ApiOperation("分页查询") - public GenericsAjaxResult> queryByPage(Workflow workflow, int page, int size) { + public GenericsAjaxResult> queryByPage(Workflow workflow, int page, int size) throws IOException { PageRequest pageRequest = PageRequest.of(page, size); return genericsSuccess(this.workflowService.queryByPage(workflow, pageRequest)); } diff --git a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/WorkflowService.java b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/WorkflowService.java index 856990e3..44b1f42c 100644 --- a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/WorkflowService.java +++ b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/WorkflowService.java @@ -32,7 +32,7 @@ public interface WorkflowService { * @param pageRequest 分页对象 * @return 查询结果 */ - Page queryByPage(Workflow workflow, PageRequest pageRequest); + Page queryByPage(Workflow workflow, PageRequest pageRequest) throws IOException; /** * 新增数据 diff --git a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/ComponentServiceImpl.java b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/ComponentServiceImpl.java index e07632f5..9830fe15 100644 --- a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/ComponentServiceImpl.java +++ b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/ComponentServiceImpl.java @@ -7,6 +7,7 @@ import com.ruoyi.platform.domain.Component; import com.ruoyi.platform.service.ComponentService; import com.ruoyi.platform.mapper.ComponentDao; import com.ruoyi.platform.utils.ConvertUtil; +import com.ruoyi.platform.utils.JacksonUtil; import com.ruoyi.platform.utils.JsonUtils; import com.ruoyi.platform.vo.ComponentVo; import com.ruoyi.system.api.constant.Constant; @@ -151,6 +152,19 @@ public class ComponentServiceImpl implements ComponentService { component.setEnvVirables(envVariable); component.setInParameters(inParameters); component.setOutParameters(outParameters); + + Map taskInfo = componentVo.getTaskInfo(); + Map image = (Map) taskInfo.get("image"); + Map workingDirectory = (Map) taskInfo.get("working_directory"); + Map command = (Map) taskInfo.get("command"); + Map runArgs = (Map) taskInfo.get("run_args"); + Map resourcesStandard = (Map) taskInfo.get("resources_standard"); + component.setImage(JacksonUtil.toJSONString(image)); + component.setWorkingDirectory(JacksonUtil.toJSONString(workingDirectory)); + component.setCommand(JacksonUtil.toJSONString(command)); + component.setRunArgs(JacksonUtil.toJSONString(runArgs)); + component.setResourcesStandard(JacksonUtil.toJSONString(resourcesStandard)); + LoginUser loginUser = SecurityUtils.getLoginUser(); component.setCreateBy(loginUser.getUsername()); component.setUpdateBy(loginUser.getUsername()); @@ -195,6 +209,19 @@ public class ComponentServiceImpl implements ComponentService { component.setEnvVirables(envVariable); component.setInParameters(inParameters); component.setOutParameters(outParameters); + + Map taskInfo = componentVo.getTaskInfo(); + Map image = (Map) taskInfo.get("image"); + Map workingDirectory = (Map) taskInfo.get("working_directory"); + Map command = (Map) taskInfo.get("command"); + Map runArgs = (Map) taskInfo.get("run_args"); + Map resourcesStandard = (Map) taskInfo.get("resources_standard"); + component.setImage(JacksonUtil.toJSONString(image)); + component.setWorkingDirectory(JacksonUtil.toJSONString(workingDirectory)); + component.setCommand(JacksonUtil.toJSONString(command)); + component.setRunArgs(JacksonUtil.toJSONString(runArgs)); + component.setResourcesStandard(JacksonUtil.toJSONString(resourcesStandard)); + LoginUser loginUser = SecurityUtils.getLoginUser(); component.setUpdateBy(loginUser.getUsername()); component.setUpdateTime(new Date()); diff --git a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/WorkflowServiceImpl.java b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/WorkflowServiceImpl.java index eeae51cc..96e3577c 100644 --- a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/WorkflowServiceImpl.java +++ b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/WorkflowServiceImpl.java @@ -96,9 +96,20 @@ public class WorkflowServiceImpl implements WorkflowService { * @return 查询结果 */ @Override - public Page queryByPage(Workflow workflow, PageRequest pageRequest) { + public Page queryByPage(Workflow workflow, PageRequest pageRequest) throws IOException { long total = this.workflowDao.count(workflow); - return new PageImpl<>(this.workflowDao.queryAllByLimit(workflow, pageRequest), pageRequest, total); + List workflows = this.workflowDao.queryAllByLimit(workflow, pageRequest); + List WorkflowVos = new ArrayList<>(); + for (Workflow workflow1 : workflows) { + WorkflowVo workflowVo = new WorkflowVo(); + BeanUtils.copyProperties(workflow1, workflowVo); + workflowVo.setGlobalParam(JacksonUtil.parseJSONStr2MapList(workflow1.getGlobalParam())); + if (StringUtils.isNotEmpty(workflow.getDag())) { + workflowVo.setDag(JsonUtils.jsonToMap(workflow.getDag())); + } + WorkflowVos.add(workflowVo); + } + return new PageImpl<>(WorkflowVos, pageRequest, total); } /**