From 355a3b6e1127bd6c24be799430bd57614da9f793 Mon Sep 17 00:00:00 2001 From: OTTO <731554297@qq.com> Date: Thu, 11 Apr 2024 14:29:24 +0800 Subject: [PATCH 01/13] =?UTF-8?q?feat(=E4=B8=93=E5=8C=BA=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E9=9B=86=E5=8A=9F=E8=83=BD=E5=BC=80=E5=8F=91):=20=E8=8E=B7?= =?UTF-8?q?=E5=8F=96=E7=89=B9=E8=89=B2=E4=B8=93=E5=8C=BA=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E9=9B=86=E9=A1=B9=E7=9B=AE=E5=88=97=E8=A1=A8=E6=8E=A5=E5=8F=A3?= =?UTF-8?q?=E5=BC=80=E5=8F=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 1、批量获取项目列表时,在返回数据中添加是否有数据集属性 --- .../com/ruoyi/zone/project/domain/vo/ZoneProjectDataVo.java | 2 ++ .../zone/project/service/impl/ZoneProjectServiceImpl.java | 3 +++ 2 files changed, 5 insertions(+) diff --git a/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/project/domain/vo/ZoneProjectDataVo.java b/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/project/domain/vo/ZoneProjectDataVo.java index 1a406ec1f..ced9d577c 100644 --- a/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/project/domain/vo/ZoneProjectDataVo.java +++ b/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/project/domain/vo/ZoneProjectDataVo.java @@ -30,6 +30,8 @@ public class ZoneProjectDataVo implements Comparable { private Long zoneId; @ApiModelProperty(value = "排序") private Integer sort; + @ApiModelProperty(value = "是否有数据集") + private Boolean hasDataset; @Override public int compareTo(ZoneProjectDataVo zoneProjectDataVo) { diff --git a/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/project/service/impl/ZoneProjectServiceImpl.java b/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/project/service/impl/ZoneProjectServiceImpl.java index 017c35bc6..229d39dc4 100644 --- a/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/project/service/impl/ZoneProjectServiceImpl.java +++ b/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/project/service/impl/ZoneProjectServiceImpl.java @@ -286,6 +286,9 @@ public class ZoneProjectServiceImpl implements IZoneProjectService { } projectPropertiesVo.put("projectKeyName",projectKeyName); + if (gitLinkProject.containsKey("has_dataset")) { + zoneProjectDataVo.setHasDataset(gitLinkProject.getBoolean("has_dataset")); + } zoneProjectDataVo.setProjectProperties(projectPropertiesVo); zoneProjectDataVo.setProjectURL(EscapeUtil.removeExtraSlashOfUrl(String.format("%s/%s", gitLinkRequestHelper.gitLinkUrl, projectPropertiesVo.get("fullName")))); return zoneProjectDataVo; From b1ce1a6b18bc01a039dbaffc0098d5b0721dc943 Mon Sep 17 00:00:00 2001 From: OTTO <731554297@qq.com> Date: Thu, 11 Apr 2024 14:30:43 +0800 Subject: [PATCH 02/13] =?UTF-8?q?feat(=E4=B8=93=E5=8C=BA=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E9=9B=86=E5=8A=9F=E8=83=BD=E5=BC=80=E5=8F=91):=20=E8=8E=B7?= =?UTF-8?q?=E5=8F=96=E7=89=B9=E8=89=B2=E4=B8=93=E5=8C=BA=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E9=9B=86=E9=A1=B9=E7=9B=AE=E5=88=97=E8=A1=A8=E6=8E=A5=E5=8F=A3?= =?UTF-8?q?=E5=BC=80=E5=8F=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 1、批量获取项目列表时,在返回数据中添加是否有数据集属性 --- .../zone/project/service/impl/ZoneProjectServiceImpl.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/project/service/impl/ZoneProjectServiceImpl.java b/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/project/service/impl/ZoneProjectServiceImpl.java index 229d39dc4..5a6e44e47 100644 --- a/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/project/service/impl/ZoneProjectServiceImpl.java +++ b/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/project/service/impl/ZoneProjectServiceImpl.java @@ -96,7 +96,7 @@ public class ZoneProjectServiceImpl implements IZoneProjectService { * 查询特色专区项目聚合列表 * * @param zoneProjectSearchVo 特色专区项目聚合 - * @param isOpen + * @param isOpen 是否前台访问 * @return 特色专区项目聚合 */ @Override @@ -209,7 +209,7 @@ public class ZoneProjectServiceImpl implements IZoneProjectService { HashMap projectKeyName = new HashMap<>(); JSONObject projectPropertiesVo = new JSONObject(); //项目名称、头像、描述为一定展示的字段 - String authorImageUrl = ""; + String authorImageUrl; JSONObject author = gitLinkProject.getJSONObject("author"); if (author != null) { String authorImagePath = author.getString("image_url"); @@ -406,7 +406,7 @@ public class ZoneProjectServiceImpl implements IZoneProjectService { /** * 修改特色专区项目聚合 * - * @param id + * @param id 项目聚合主键 * @param zoneProjectUpdateVo 特色专区项目聚合 * @return 结果 */ From 8df647f0f1b45e29232ae94ee2a21e6134affabc Mon Sep 17 00:00:00 2001 From: OTTO <731554297@qq.com> Date: Thu, 11 Apr 2024 14:59:56 +0800 Subject: [PATCH 03/13] =?UTF-8?q?feat(=E4=B8=93=E5=8C=BA=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E9=9B=86=E5=8A=9F=E8=83=BD=E5=BC=80=E5=8F=91):=20=E8=8E=B7?= =?UTF-8?q?=E5=8F=96=E7=89=B9=E8=89=B2=E4=B8=93=E5=8C=BA=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E9=9B=86=E9=A1=B9=E7=9B=AE=E5=88=97=E8=A1=A8=E6=8E=A5=E5=8F=A3?= =?UTF-8?q?=E5=BC=80=E5=8F=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 根据项目聚合列表返回有数据集的项目列表 --- .../domain/vo/ZoneDataSetProjectVo.java | 43 ++++++++++++++++ .../dataset/service/IZoneDataSetService.java | 21 ++++++++ .../service/impl/ZoneDataSetServiceImpl.java | 51 +++++++++++++++++++ .../detail/controller/OpenController.java | 13 +++++ 4 files changed, 128 insertions(+) create mode 100644 ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/dataset/domain/vo/ZoneDataSetProjectVo.java create mode 100644 ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/dataset/service/IZoneDataSetService.java create mode 100644 ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/dataset/service/impl/ZoneDataSetServiceImpl.java diff --git a/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/dataset/domain/vo/ZoneDataSetProjectVo.java b/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/dataset/domain/vo/ZoneDataSetProjectVo.java new file mode 100644 index 000000000..abba47c64 --- /dev/null +++ b/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/dataset/domain/vo/ZoneDataSetProjectVo.java @@ -0,0 +1,43 @@ +package com.ruoyi.zone.dataset.domain.vo; + +import com.alibaba.fastjson2.JSONObject; +import com.ruoyi.common.core.utils.html.EscapeUtil; +import com.ruoyi.zone.project.domain.vo.ZoneProjectDataVo; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +@ApiModel("项目聚合数据对象") +public class ZoneDataSetProjectVo { + @ApiModelProperty(value = "项目聚合Id") + private Long id; + @ApiModelProperty(value = "项目名称") + private String name; + @ApiModelProperty(value = "项目完整地址") + private String fullName; + @ApiModelProperty(value = "项目简介") + private String description; + @ApiModelProperty(value = "项目数据集地址") + private String dataSetUrl; + + public ZoneDataSetProjectVo() { + } + + public ZoneDataSetProjectVo(ZoneProjectDataVo projectDataVo, String gitLinkUrl) { + this.id = projectDataVo.getId(); + JSONObject projectProperties = projectDataVo.getProjectProperties(); + if (projectProperties != null) { + if (projectProperties.containsKey("name")) { + this.name = projectProperties.getString("name"); + } + if (projectProperties.containsKey("fullName")) { + this.fullName = projectProperties.getString("fullName"); + this.dataSetUrl = EscapeUtil.removeExtraSlashOfUrl(String.format("%s/%s/dataset", gitLinkUrl, this.fullName)); + } + if (projectProperties.containsKey("description")) { + this.description = projectProperties.getString("description"); + } + } + } +} diff --git a/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/dataset/service/IZoneDataSetService.java b/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/dataset/service/IZoneDataSetService.java new file mode 100644 index 000000000..a518f929b --- /dev/null +++ b/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/dataset/service/IZoneDataSetService.java @@ -0,0 +1,21 @@ +package com.ruoyi.zone.dataset.service; + +import com.ruoyi.zone.dataset.domain.vo.ZoneDataSetProjectVo; + +import java.util.List; + +/** + * 特色专区资源聚合Service接口 + * + * @author otto + * @date 2023-06-27 + */ +public interface IZoneDataSetService { + + /** + * 获取特色专区数据集项目列表 + * + * @return 项目列表 + */ + List getDataSetProjectList(Long zoneId); +} diff --git a/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/dataset/service/impl/ZoneDataSetServiceImpl.java b/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/dataset/service/impl/ZoneDataSetServiceImpl.java new file mode 100644 index 000000000..0aae73109 --- /dev/null +++ b/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/dataset/service/impl/ZoneDataSetServiceImpl.java @@ -0,0 +1,51 @@ +package com.ruoyi.zone.dataset.service.impl; + +import com.ruoyi.common.core.web.page.GenericsTableDataInfo; +import com.ruoyi.common.httpClient.util.GitLinkRequestHelper; +import com.ruoyi.zone.dataset.domain.vo.ZoneDataSetProjectVo; +import com.ruoyi.zone.dataset.service.IZoneDataSetService; +import com.ruoyi.zone.project.domain.vo.ZoneProjectDataVo; +import com.ruoyi.zone.project.domain.vo.ZoneProjectSearchVo; +import com.ruoyi.zone.project.service.IZoneProjectService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.ArrayList; +import java.util.List; + +/** + * 特色专区资源聚合Service业务层处理 + * + * @author otto + * @date 2023-06-27 + */ +@Slf4j +@Service +public class ZoneDataSetServiceImpl implements IZoneDataSetService { + @Autowired + IZoneProjectService projectService; + @Autowired + GitLinkRequestHelper gitLinkRequestHelper; + + @Override + public List getDataSetProjectList(Long zoneId) { + List projectVoList = new ArrayList<>(); + + ZoneProjectSearchVo searchVo = new ZoneProjectSearchVo(); + searchVo.setZoneId(zoneId); + GenericsTableDataInfo zoneProjectDataVoTable + = projectService.selectZoneProjectList(searchVo, true); + if (zoneProjectDataVoTable != null) { + List projectDataVoList = zoneProjectDataVoTable.getRows(); + for (ZoneProjectDataVo projectDataVo : projectDataVoList) { + // 获取有数据集的项目列表 + if (projectDataVo.getHasDataset()) { + ZoneDataSetProjectVo zoneDataSetProjectVo = new ZoneDataSetProjectVo(projectDataVo, gitLinkRequestHelper.gitLinkUrl); + projectVoList.add(zoneDataSetProjectVo); + } + } + } + return projectVoList; + } +} diff --git a/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/detail/controller/OpenController.java b/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/detail/controller/OpenController.java index c3e747328..d33b9dc88 100644 --- a/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/detail/controller/OpenController.java +++ b/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/detail/controller/OpenController.java @@ -8,6 +8,8 @@ import com.ruoyi.common.core.web.page.GenericsTableDataInfo; import com.ruoyi.common.log.annotation.Log; import com.ruoyi.common.log.enums.BusinessType; import com.ruoyi.system.api.domain.SysUser; +import com.ruoyi.zone.dataset.domain.vo.ZoneDataSetProjectVo; +import com.ruoyi.zone.dataset.service.IZoneDataSetService; import com.ruoyi.zone.detail.domain.vo.ZoneBaseDataVo; import com.ruoyi.zone.detail.domain.vo.ZoneDetailDataVo; import com.ruoyi.zone.detail.service.IZoneDetailService; @@ -61,6 +63,8 @@ public class OpenController extends BaseController { @Autowired private IZoneResourceService zoneResourceService; @Autowired + private IZoneDataSetService zoneDataSetService; + @Autowired private IZoneResourceDomainService zoneResourceDomainService; @Autowired private IZoneResourceTypeService zoneResourceTypeService; @@ -261,4 +265,13 @@ public class OpenController extends BaseController { , HttpServletRequest request) { return genericsSuccess(zoneResourceService.selectOpenZoneResourceDataById(resourceId, request)); } + + /** + * 获取特色专区数据集项目列表 + */ + @GetMapping("/{zoneId}/dataSet/projectList") + @ApiOperation("获取特色专区数据集项目列表") + public GenericsTableDataInfo getDataSetProjectList(@ApiParam(name = "zoneId", value = "专区Id", required = true) @PathVariable("zoneId") Long zoneId) { + return getGenericsDataTable(zoneDataSetService.getDataSetProjectList(zoneId)); + } } From f57ea79767f765d800b0c1e659ff12d348bc0a05 Mon Sep 17 00:00:00 2001 From: OTTO <731554297@qq.com> Date: Thu, 11 Apr 2024 15:36:36 +0800 Subject: [PATCH 04/13] =?UTF-8?q?feat(=E4=B8=93=E5=8C=BA=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E9=9B=86=E5=8A=9F=E8=83=BD=E5=BC=80=E5=8F=91):=20=E8=8E=B7?= =?UTF-8?q?=E5=8F=96=E7=89=B9=E8=89=B2=E4=B8=93=E5=8C=BA=E8=81=9A=E5=90=88?= =?UTF-8?q?=E9=A1=B9=E7=9B=AE=E5=AF=B9=E5=BA=94=E6=95=B0=E6=8D=AE=E9=9B=86?= =?UTF-8?q?=E8=AF=A6=E6=83=85=E6=8E=A5=E5=8F=A3=E5=BC=80=E5=8F=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ruoyi/zone/dataset/domain/ZoneDataSet.java | 14 ++++++++++++++ .../dataset/service/IZoneDataSetService.java | 11 +++++++++++ .../service/impl/ZoneDataSetServiceImpl.java | 18 ++++++++++++++++++ .../zone/detail/controller/OpenController.java | 11 +++++++++++ .../zone/utils/ZoneGitLinkRequestUrl.java | 7 +++++++ 5 files changed, 61 insertions(+) create mode 100644 ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/dataset/domain/ZoneDataSet.java diff --git a/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/dataset/domain/ZoneDataSet.java b/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/dataset/domain/ZoneDataSet.java new file mode 100644 index 000000000..6440ff43a --- /dev/null +++ b/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/dataset/domain/ZoneDataSet.java @@ -0,0 +1,14 @@ +package com.ruoyi.zone.dataset.domain; + +import lombok.Data; + +/** + * 特色专区资源聚合对象 zone_resource + * + * @author otto + * @date 2023-06-27 + */ +@Data +public class ZoneDataSet { + +} diff --git a/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/dataset/service/IZoneDataSetService.java b/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/dataset/service/IZoneDataSetService.java index a518f929b..fb2975b39 100644 --- a/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/dataset/service/IZoneDataSetService.java +++ b/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/dataset/service/IZoneDataSetService.java @@ -1,5 +1,6 @@ package com.ruoyi.zone.dataset.service; +import com.alibaba.fastjson2.JSONObject; import com.ruoyi.zone.dataset.domain.vo.ZoneDataSetProjectVo; import java.util.List; @@ -18,4 +19,14 @@ public interface IZoneDataSetService { * @return 项目列表 */ List getDataSetProjectList(Long zoneId); + + /** + * 获取特色专区聚合项目对应数据集详情 + * + * @param projectId 项目聚合id + * @param page + * @param limit + * @return 数据集详情 + */ + JSONObject getDataSetDetail(Long projectId, Integer page, Integer limit); } diff --git a/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/dataset/service/impl/ZoneDataSetServiceImpl.java b/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/dataset/service/impl/ZoneDataSetServiceImpl.java index 0aae73109..4acef0736 100644 --- a/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/dataset/service/impl/ZoneDataSetServiceImpl.java +++ b/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/dataset/service/impl/ZoneDataSetServiceImpl.java @@ -1,5 +1,8 @@ package com.ruoyi.zone.dataset.service.impl; +import com.alibaba.fastjson2.JSONObject; +import com.ruoyi.common.core.exception.ServiceException; +import com.ruoyi.common.core.utils.StringUtils; import com.ruoyi.common.core.web.page.GenericsTableDataInfo; import com.ruoyi.common.httpClient.util.GitLinkRequestHelper; import com.ruoyi.zone.dataset.domain.vo.ZoneDataSetProjectVo; @@ -7,6 +10,7 @@ import com.ruoyi.zone.dataset.service.IZoneDataSetService; import com.ruoyi.zone.project.domain.vo.ZoneProjectDataVo; import com.ruoyi.zone.project.domain.vo.ZoneProjectSearchVo; import com.ruoyi.zone.project.service.IZoneProjectService; +import com.ruoyi.zone.utils.ZoneGitLinkRequestUrl; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -48,4 +52,18 @@ public class ZoneDataSetServiceImpl implements IZoneDataSetService { } return projectVoList; } + + @Override + public JSONObject getDataSetDetail(Long projectId, Integer page, Integer limit) { + ZoneProjectDataVo zoneProjectDataVo = projectService.selectZoneProjectDataById(projectId); + ZoneDataSetProjectVo zoneDataSetProjectVo = new ZoneDataSetProjectVo(zoneProjectDataVo, gitLinkRequestHelper.gitLinkUrl); + if (StringUtils.isNotEmpty(zoneDataSetProjectVo.getFullName())) { + JSONObject dataSetDetail = gitLinkRequestHelper.doGet( + ZoneGitLinkRequestUrl.DATASET(zoneDataSetProjectVo.getFullName(), page, limit) + ); + dataSetDetail.put("dataset_url", zoneDataSetProjectVo.getDataSetUrl()); + return dataSetDetail; + } + throw new ServiceException("获取项目聚合对应的数据集失败"); + } } diff --git a/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/detail/controller/OpenController.java b/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/detail/controller/OpenController.java index d33b9dc88..9e26aeb20 100644 --- a/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/detail/controller/OpenController.java +++ b/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/detail/controller/OpenController.java @@ -1,5 +1,6 @@ package com.ruoyi.zone.detail.controller; +import com.alibaba.fastjson2.JSONObject; import com.ruoyi.common.core.utils.StringUtils; import com.ruoyi.common.core.web.controller.BaseController; import com.ruoyi.common.core.web.domain.AjaxResult; @@ -274,4 +275,14 @@ public class OpenController extends BaseController { public GenericsTableDataInfo getDataSetProjectList(@ApiParam(name = "zoneId", value = "专区Id", required = true) @PathVariable("zoneId") Long zoneId) { return getGenericsDataTable(zoneDataSetService.getDataSetProjectList(zoneId)); } + + /** + * 获取特色专区聚合项目对应数据集详情 + */ + @GetMapping("/dataSet/{projectId}") + @ApiOperation("获取特色专区聚合项目对应数据集详情") + public GenericsAjaxResult getDataSetDetail(@ApiParam(name = "projectId", value = "项目聚合Id", required = true) @PathVariable("projectId") Long projectId + , @RequestParam("page") Integer page, @RequestParam("limit") Integer limit) { + return genericsSuccess(zoneDataSetService.getDataSetDetail(projectId, page, limit)); + } } diff --git a/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/utils/ZoneGitLinkRequestUrl.java b/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/utils/ZoneGitLinkRequestUrl.java index f09b64946..46975620f 100644 --- a/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/utils/ZoneGitLinkRequestUrl.java +++ b/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/utils/ZoneGitLinkRequestUrl.java @@ -22,6 +22,13 @@ public class ZoneGitLinkRequestUrl extends GitLinkRequestUrl { return getOpenGitLinkRequestUrl(String.format("/api/projects.json%s", query)); } + /** + * 数据集详情 + */ + public static GitLinkRequestUrl DATASET(String fullName, Integer page, Integer limit) { + return getOpenGitLinkRequestUrl(String.format("/api/v1/%s/dataset?page=%d&limit=%d", fullName, page, limit)); + } + /** * 搜索用户列表 */ From 90eea934853394823c7864aeb02eeb55696f1ba0 Mon Sep 17 00:00:00 2001 From: OTTO <731554297@qq.com> Date: Thu, 11 Apr 2024 15:41:44 +0800 Subject: [PATCH 05/13] =?UTF-8?q?feat(=E4=B8=93=E5=8C=BA=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E9=9B=86=E5=8A=9F=E8=83=BD=E5=BC=80=E5=8F=91):=20=E4=B8=93?= =?UTF-8?q?=E5=8C=BA=E6=95=B0=E6=8D=AE=E9=9B=86=E6=9D=BF=E5=9D=97=E6=94=AF?= =?UTF-8?q?=E6=8C=81=E5=8F=AF=E9=85=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 新增sql:专区详情新增数据集板块相关配置 --- .../20240411153958_zone_detail_add_dataset_section.sql | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 sql/update/20240411153958_zone_detail_add_dataset_section.sql diff --git a/sql/update/20240411153958_zone_detail_add_dataset_section.sql b/sql/update/20240411153958_zone_detail_add_dataset_section.sql new file mode 100644 index 000000000..724117398 --- /dev/null +++ b/sql/update/20240411153958_zone_detail_add_dataset_section.sql @@ -0,0 +1,10 @@ +-- 专区详情新增数据集板块相关配置 +SET FOREIGN_KEY_CHECKS = 0; + +ALTER TABLE `zone_detail` + ADD COLUMN `section_dataset_show` tinyint(1) UNSIGNED NULL DEFAULT 0 COMMENT '数据集板块是否展示(0:不展示,1:展示)'; + +ALTER TABLE `zone_detail` + ADD COLUMN `section_dataset_title` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '数据集' COMMENT '数据集板块标题'; + +SET FOREIGN_KEY_CHECKS = 1; \ No newline at end of file From c840bbbfa10ae5e6251e507e2090ad2c0ea71b38 Mon Sep 17 00:00:00 2001 From: OTTO <731554297@qq.com> Date: Thu, 11 Apr 2024 15:47:04 +0800 Subject: [PATCH 06/13] =?UTF-8?q?feat(=E4=B8=93=E5=8C=BA=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E9=9B=86=E5=8A=9F=E8=83=BD=E5=BC=80=E5=8F=91):=20=E4=B8=93?= =?UTF-8?q?=E5=8C=BA=E6=95=B0=E6=8D=AE=E9=9B=86=E6=9D=BF=E5=9D=97=E6=94=AF?= =?UTF-8?q?=E6=8C=81=E5=8F=AF=E9=85=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 专区详情新增数据集板块相关配置 --- .../com/ruoyi/zone/detail/domain/ZoneDetail.java | 12 ++++++++++++ .../main/resources/mapper/zone/ZoneDetailMapper.xml | 12 ++++++++++++ 2 files changed, 24 insertions(+) diff --git a/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/detail/domain/ZoneDetail.java b/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/detail/domain/ZoneDetail.java index db1b33e02..990927906 100644 --- a/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/detail/domain/ZoneDetail.java +++ b/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/detail/domain/ZoneDetail.java @@ -221,6 +221,12 @@ public class ZoneDetail extends BaseEntity { @ApiModelProperty(value = "资源板块是否展示(0:不展示,1:展示)") private Integer sectionResourceShow; + /** + * 数据集板块是否展示(0:不展示,1:展示) + */ + @ApiModelProperty(value = "数据集板块是否展示(0:不展示,1:展示)") + private Integer sectionDataSetShow; + /** * 资讯板块标题 */ @@ -257,6 +263,12 @@ public class ZoneDetail extends BaseEntity { @ApiModelProperty(value = "资源板块标题") private String sectionResourceTitle; + /** + * 数据集板块标题 + */ + @ApiModelProperty(value = "数据集板块标题") + private String sectionDataSetTitle; + public ZoneDetailDataVo toZoneDetailDataVo() { ZoneDetailDataVo target = new ZoneDetailDataVo(); diff --git a/ruoyi-modules/ruoyi-zone/src/main/resources/mapper/zone/ZoneDetailMapper.xml b/ruoyi-modules/ruoyi-zone/src/main/resources/mapper/zone/ZoneDetailMapper.xml index f6c0926e2..ba76c83d5 100644 --- a/ruoyi-modules/ruoyi-zone/src/main/resources/mapper/zone/ZoneDetailMapper.xml +++ b/ruoyi-modules/ruoyi-zone/src/main/resources/mapper/zone/ZoneDetailMapper.xml @@ -47,12 +47,14 @@ + + @@ -98,11 +100,13 @@ section_helper_show, section_homepage_show, section_resource_show, + section_dataset_show, section_cms_title, section_project_title, section_member_title, section_homepage_title, section_resource_title, + section_dataset_title, section_helper_title from zone_detail @@ -150,11 +154,13 @@ z.section_helper_show, z.section_homepage_show, z.section_resource_show, + z.section_dataset_show, z.section_cms_title, z.section_project_title, z.section_member_title, z.section_homepage_title, z.section_resource_title, + z.section_dataset_title, z.section_helper_title from zone_detail as z @@ -238,12 +244,14 @@ section_helper_show, section_homepage_show, section_resource_show, + section_dataset_show, section_cms_title, section_project_title, section_member_title, section_helper_title, section_homepage_title, section_resource_title, + section_dataset_title, #{name}, @@ -286,12 +294,14 @@ #{sectionHelperShow}, #{sectionHomepageShow}, #{sectionResourceShow}, + #{sectionDataSetShow}, #{sectionCmsTitle}, #{sectionProjectTitle}, #{sectionMemberTitle}, #{sectionHelperTitle}, #{sectionHomepageTitle}, #{sectionResourceTitle}, + #{sectionDataSetTitle}, @@ -339,12 +349,14 @@ section_helper_show = #{sectionHelperShow}, section_homepage_show = #{sectionHomepageShow}, section_resource_show = #{sectionResourceShow}, + section_dataset_show = #{sectionDataSetShow}, section_cms_title = #{sectionCmsTitle}, section_project_title = #{sectionProjectTitle}, section_member_title = #{sectionMemberTitle}, section_helper_title = #{sectionHelperTitle}, section_homepage_title = #{sectionHomepageTitle}, section_resource_title = #{sectionResourceTitle}, + section_dataset_title = #{sectionDataSetTitle}, where id = #{id} From 3706a5352d0596ead34ee0b5d8abf0262815d6ad Mon Sep 17 00:00:00 2001 From: OTTO <731554297@qq.com> Date: Thu, 11 Apr 2024 16:03:48 +0800 Subject: [PATCH 07/13] =?UTF-8?q?feat(=E4=B8=93=E5=8C=BA=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E9=9B=86=E5=8A=9F=E8=83=BD=E5=BC=80=E5=8F=91):=20=E4=B8=93?= =?UTF-8?q?=E5=8C=BA=E6=95=B0=E6=8D=AE=E9=9B=86=E6=9D=BF=E5=9D=97=E6=94=AF?= =?UTF-8?q?=E6=8C=81=E5=8F=AF=E9=85=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 专区详情新增数据集板块相关配置 --- .../zone/detail/domain/vo/ZoneDetailDataVo.java | 12 ++++++++++++ .../main/resources/mapper/zone/ZoneDetailMapper.xml | 2 ++ 2 files changed, 14 insertions(+) diff --git a/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/detail/domain/vo/ZoneDetailDataVo.java b/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/detail/domain/vo/ZoneDetailDataVo.java index c3c0e0fcd..7f16562bb 100644 --- a/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/detail/domain/vo/ZoneDetailDataVo.java +++ b/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/detail/domain/vo/ZoneDetailDataVo.java @@ -212,6 +212,13 @@ public class ZoneDetailDataVo extends BaseEntity { private Integer sectionResourceShow; + /** + * 数据集板块是否展示(0:不展示,1:展示) + */ + @ApiModelProperty(value = "数据集板块是否展示(0:不展示,1:展示)") + private Integer sectionDataSetShow; + + /** * 首页板块标题 */ @@ -223,4 +230,9 @@ public class ZoneDetailDataVo extends BaseEntity { */ @ApiModelProperty(value = "资源板块标题") private String sectionResourceTitle; + /** + * 数据集板块标题 + */ + @ApiModelProperty(value = "数据集板块标题") + private String sectionDataSetTitle; } diff --git a/ruoyi-modules/ruoyi-zone/src/main/resources/mapper/zone/ZoneDetailMapper.xml b/ruoyi-modules/ruoyi-zone/src/main/resources/mapper/zone/ZoneDetailMapper.xml index ba76c83d5..5a9348444 100644 --- a/ruoyi-modules/ruoyi-zone/src/main/resources/mapper/zone/ZoneDetailMapper.xml +++ b/ruoyi-modules/ruoyi-zone/src/main/resources/mapper/zone/ZoneDetailMapper.xml @@ -358,6 +358,8 @@ section_resource_title = #{sectionResourceTitle}, section_dataset_title = #{sectionDataSetTitle}, + + where id = #{id} From e65465e67e90b9183c1388305442af3dd6e50298 Mon Sep 17 00:00:00 2001 From: OTTO <731554297@qq.com> Date: Thu, 11 Apr 2024 16:08:41 +0800 Subject: [PATCH 08/13] =?UTF-8?q?feat(=E4=B8=93=E5=8C=BA=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E9=9B=86=E5=8A=9F=E8=83=BD=E5=BC=80=E5=8F=91):=20=E4=B8=93?= =?UTF-8?q?=E5=8C=BA=E6=95=B0=E6=8D=AE=E9=9B=86=E6=9D=BF=E5=9D=97=E6=94=AF?= =?UTF-8?q?=E6=8C=81=E5=8F=AF=E9=85=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 专区详情新增数据集板块相关配置 --- .../zone/detail/domain/vo/ZoneDetailUpdateVo.java | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/detail/domain/vo/ZoneDetailUpdateVo.java b/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/detail/domain/vo/ZoneDetailUpdateVo.java index 7bbbc205c..91a3201fd 100644 --- a/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/detail/domain/vo/ZoneDetailUpdateVo.java +++ b/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/detail/domain/vo/ZoneDetailUpdateVo.java @@ -154,6 +154,12 @@ public class ZoneDetailUpdateVo { @ApiModelProperty(value = "资源板块是否展示(0:不展示,1:展示)") private Integer sectionResourceShow; + /** + * 数据集板块是否展示(0:不展示,1:展示) + */ + @ApiModelProperty(value = "数据集板块是否展示(0:不展示,1:展示)") + private Integer sectionDataSetShow; + /** * 资讯板块标题 */ @@ -191,6 +197,12 @@ public class ZoneDetailUpdateVo { @ApiModelProperty(value = "资源板块标题") private String sectionResourceTitle; + /** + * 数据集板块标题 + */ + @ApiModelProperty(value = "数据集板块标题") + private String sectionDataSetTitle; + public ZoneDetail toZoneDetail() { ZoneDetail target = new ZoneDetail(); BeanUtils.copyProperties(this, target); From 5fb26adf01ec5ebec06693a27081141e09e34aa8 Mon Sep 17 00:00:00 2001 From: OTTO <731554297@qq.com> Date: Fri, 12 Apr 2024 11:10:33 +0800 Subject: [PATCH 09/13] =?UTF-8?q?feat(=E4=B8=93=E5=8C=BA=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E9=9B=86=E5=8A=9F=E8=83=BD=E5=BC=80=E5=8F=91):=20=E8=8E=B7?= =?UTF-8?q?=E5=8F=96=E7=89=B9=E8=89=B2=E4=B8=93=E5=8C=BA=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E9=9B=86=E9=A1=B9=E7=9B=AE=E5=88=97=E8=A1=A8=E6=8E=A5=E5=8F=A3?= =?UTF-8?q?=E5=BC=80=E5=8F=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 1、调用Forge数据集批量获取接口获取数据集名称及描述 2、接口增加模糊搜索条件 --- .../src/main/resources/bootstrap.yml | 2 +- .../src/main/resources/bootstrap.yml | 2 +- .../domain/vo/ZoneDataSetProjectVo.java | 29 ++++++----- .../dataset/service/IZoneDataSetService.java | 2 +- .../service/impl/ZoneDataSetServiceImpl.java | 48 +++++++++++++++++-- .../detail/controller/OpenController.java | 5 +- .../service/impl/ZoneProjectServiceImpl.java | 3 ++ .../zone/utils/ZoneGitLinkRequestUrl.java | 7 +++ .../src/main/resources/bootstrap.yml | 2 +- 9 files changed, 79 insertions(+), 21 deletions(-) diff --git a/ruoyi-modules/ruoyi-cms/src/main/resources/bootstrap.yml b/ruoyi-modules/ruoyi-cms/src/main/resources/bootstrap.yml index 6c6132b19..b4dbeca88 100644 --- a/ruoyi-modules/ruoyi-cms/src/main/resources/bootstrap.yml +++ b/ruoyi-modules/ruoyi-cms/src/main/resources/bootstrap.yml @@ -9,7 +9,7 @@ spring: name: ruoyi-cms profiles: # 环境配置 - active: dev + active: zone cloud: nacos: discovery: diff --git a/ruoyi-modules/ruoyi-system/src/main/resources/bootstrap.yml b/ruoyi-modules/ruoyi-system/src/main/resources/bootstrap.yml index 0a083bbe8..df5aa2f25 100644 --- a/ruoyi-modules/ruoyi-system/src/main/resources/bootstrap.yml +++ b/ruoyi-modules/ruoyi-system/src/main/resources/bootstrap.yml @@ -9,7 +9,7 @@ spring: name: ruoyi-system profiles: # 环境配置 - active: dev + active: zone cloud: nacos: discovery: diff --git a/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/dataset/domain/vo/ZoneDataSetProjectVo.java b/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/dataset/domain/vo/ZoneDataSetProjectVo.java index abba47c64..63bbf81af 100644 --- a/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/dataset/domain/vo/ZoneDataSetProjectVo.java +++ b/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/dataset/domain/vo/ZoneDataSetProjectVo.java @@ -10,14 +10,20 @@ import lombok.Data; @Data @ApiModel("项目聚合数据对象") public class ZoneDataSetProjectVo { + @ApiModelProperty(value = "数据集名称") + private String dataSetName; + @ApiModelProperty(value = "数据集描述") + private String dataSetDescription; @ApiModelProperty(value = "项目聚合Id") private Long id; - @ApiModelProperty(value = "项目名称") - private String name; - @ApiModelProperty(value = "项目完整地址") - private String fullName; - @ApiModelProperty(value = "项目简介") - private String description; + @ApiModelProperty(value = "代码库Id") + private Long repositoryId; + @ApiModelProperty(value = "代码库名称") + private String repositoryName; + @ApiModelProperty(value = "代码库标识") + private String repositoryFullName; + @ApiModelProperty(value = "代码库地址") + private String repositoryUrl; @ApiModelProperty(value = "项目数据集地址") private String dataSetUrl; @@ -29,14 +35,15 @@ public class ZoneDataSetProjectVo { JSONObject projectProperties = projectDataVo.getProjectProperties(); if (projectProperties != null) { if (projectProperties.containsKey("name")) { - this.name = projectProperties.getString("name"); + this.repositoryName = projectProperties.getString("name"); } if (projectProperties.containsKey("fullName")) { - this.fullName = projectProperties.getString("fullName"); - this.dataSetUrl = EscapeUtil.removeExtraSlashOfUrl(String.format("%s/%s/dataset", gitLinkUrl, this.fullName)); + this.repositoryFullName = projectProperties.getString("fullName"); + this.repositoryUrl = EscapeUtil.removeExtraSlashOfUrl(String.format("%s/%s", gitLinkUrl, this.repositoryFullName)); + this.dataSetUrl = EscapeUtil.removeExtraSlashOfUrl(String.format("%s/dataset", this.repositoryUrl)); } - if (projectProperties.containsKey("description")) { - this.description = projectProperties.getString("description"); + if (projectProperties.containsKey("repositoryId")) { + this.repositoryId = projectProperties.getLong("repositoryId"); } } } diff --git a/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/dataset/service/IZoneDataSetService.java b/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/dataset/service/IZoneDataSetService.java index fb2975b39..b0f81faef 100644 --- a/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/dataset/service/IZoneDataSetService.java +++ b/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/dataset/service/IZoneDataSetService.java @@ -18,7 +18,7 @@ public interface IZoneDataSetService { * * @return 项目列表 */ - List getDataSetProjectList(Long zoneId); + List getDataSetProjectList(Long zoneId, String search); /** * 获取特色专区聚合项目对应数据集详情 diff --git a/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/dataset/service/impl/ZoneDataSetServiceImpl.java b/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/dataset/service/impl/ZoneDataSetServiceImpl.java index 4acef0736..5ee7db817 100644 --- a/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/dataset/service/impl/ZoneDataSetServiceImpl.java +++ b/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/dataset/service/impl/ZoneDataSetServiceImpl.java @@ -1,5 +1,6 @@ package com.ruoyi.zone.dataset.service.impl; +import com.alibaba.fastjson2.JSONArray; import com.alibaba.fastjson2.JSONObject; import com.ruoyi.common.core.exception.ServiceException; import com.ruoyi.common.core.utils.StringUtils; @@ -17,6 +18,7 @@ import org.springframework.stereotype.Service; import java.util.ArrayList; import java.util.List; +import java.util.stream.Collectors; /** * 特色专区资源聚合Service业务层处理 @@ -33,13 +35,51 @@ public class ZoneDataSetServiceImpl implements IZoneDataSetService { GitLinkRequestHelper gitLinkRequestHelper; @Override - public List getDataSetProjectList(Long zoneId) { - List projectVoList = new ArrayList<>(); + public List getDataSetProjectList(Long zoneId, String search) { + List projectVoList = getZoneDataSetProjectVos(zoneId); + if (projectVoList.isEmpty()) { + return projectVoList; + } + // 获取存在数据集的项目id列表 + String projectIds = projectVoList.stream().map(x -> x.getRepositoryId().toString()).collect(Collectors.joining(",")); + // 根据项目id列表获取数据集列表 + JSONObject projectDataSets = gitLinkRequestHelper.doGet( + ZoneGitLinkRequestUrl.PROJECT_DATASETS(projectIds) + ); + List projectDataSetList = new ArrayList<>(); + JSONArray projectDataSetArray = projectDataSets.getJSONArray("project_datasets"); + for (int i = 0; i < projectDataSetArray.size(); i++) { + JSONObject projectDataSet = projectDataSetArray.getJSONObject(i); + if (projectDataSet.containsKey("project")) { + JSONObject project = projectDataSet.getJSONObject("project"); + if (project.containsKey("id")) { + ZoneDataSetProjectVo zoneDataSetProjectVo = projectVoList + .stream() + .filter(x -> x.getRepositoryId().equals(project.getLong("id"))) + .findFirst().orElse(null); + if (zoneDataSetProjectVo != null) { + zoneDataSetProjectVo.setDataSetName(projectDataSet.getString("title")); + zoneDataSetProjectVo.setDataSetDescription(projectDataSet.getString("description")); + projectDataSetList.add(zoneDataSetProjectVo); + } + } + } + } + // 根据搜索条件进行筛选 + return projectDataSetList.stream().filter(x -> { + if (StringUtils.isNotEmpty(search)) { + return x.getDataSetName().contains(search); + } + return true; + }).collect(Collectors.toList()); + } + private List getZoneDataSetProjectVos(Long zoneId) { ZoneProjectSearchVo searchVo = new ZoneProjectSearchVo(); searchVo.setZoneId(zoneId); GenericsTableDataInfo zoneProjectDataVoTable = projectService.selectZoneProjectList(searchVo, true); + List projectVoList = new ArrayList<>(); if (zoneProjectDataVoTable != null) { List projectDataVoList = zoneProjectDataVoTable.getRows(); for (ZoneProjectDataVo projectDataVo : projectDataVoList) { @@ -57,9 +97,9 @@ public class ZoneDataSetServiceImpl implements IZoneDataSetService { public JSONObject getDataSetDetail(Long projectId, Integer page, Integer limit) { ZoneProjectDataVo zoneProjectDataVo = projectService.selectZoneProjectDataById(projectId); ZoneDataSetProjectVo zoneDataSetProjectVo = new ZoneDataSetProjectVo(zoneProjectDataVo, gitLinkRequestHelper.gitLinkUrl); - if (StringUtils.isNotEmpty(zoneDataSetProjectVo.getFullName())) { + if (StringUtils.isNotEmpty(zoneDataSetProjectVo.getRepositoryFullName())) { JSONObject dataSetDetail = gitLinkRequestHelper.doGet( - ZoneGitLinkRequestUrl.DATASET(zoneDataSetProjectVo.getFullName(), page, limit) + ZoneGitLinkRequestUrl.DATASET(zoneDataSetProjectVo.getRepositoryFullName(), page, limit) ); dataSetDetail.put("dataset_url", zoneDataSetProjectVo.getDataSetUrl()); return dataSetDetail; diff --git a/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/detail/controller/OpenController.java b/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/detail/controller/OpenController.java index 9e26aeb20..f60e56e44 100644 --- a/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/detail/controller/OpenController.java +++ b/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/detail/controller/OpenController.java @@ -272,8 +272,9 @@ public class OpenController extends BaseController { */ @GetMapping("/{zoneId}/dataSet/projectList") @ApiOperation("获取特色专区数据集项目列表") - public GenericsTableDataInfo getDataSetProjectList(@ApiParam(name = "zoneId", value = "专区Id", required = true) @PathVariable("zoneId") Long zoneId) { - return getGenericsDataTable(zoneDataSetService.getDataSetProjectList(zoneId)); + public GenericsTableDataInfo getDataSetProjectList(@ApiParam(name = "zoneId", value = "专区Id", required = true) @PathVariable("zoneId") Long zoneId + , @ApiParam(name = "search", value = "名称模糊搜索") @RequestParam(value = "search", required = false) String search) { + return getGenericsDataTable(zoneDataSetService.getDataSetProjectList(zoneId, search)); } /** diff --git a/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/project/service/impl/ZoneProjectServiceImpl.java b/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/project/service/impl/ZoneProjectServiceImpl.java index 5a6e44e47..af81bde01 100644 --- a/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/project/service/impl/ZoneProjectServiceImpl.java +++ b/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/project/service/impl/ZoneProjectServiceImpl.java @@ -209,6 +209,7 @@ public class ZoneProjectServiceImpl implements IZoneProjectService { HashMap projectKeyName = new HashMap<>(); JSONObject projectPropertiesVo = new JSONObject(); //项目名称、头像、描述为一定展示的字段 + projectPropertiesVo.put("repositoryId", gitLinkProject.getLongValue("id")); String authorImageUrl; JSONObject author = gitLinkProject.getJSONObject("author"); if (author != null) { @@ -288,6 +289,8 @@ public class ZoneProjectServiceImpl implements IZoneProjectService { projectPropertiesVo.put("projectKeyName",projectKeyName); if (gitLinkProject.containsKey("has_dataset")) { zoneProjectDataVo.setHasDataset(gitLinkProject.getBoolean("has_dataset")); + } else { + zoneProjectDataVo.setHasDataset(false); } zoneProjectDataVo.setProjectProperties(projectPropertiesVo); zoneProjectDataVo.setProjectURL(EscapeUtil.removeExtraSlashOfUrl(String.format("%s/%s", gitLinkRequestHelper.gitLinkUrl, projectPropertiesVo.get("fullName")))); diff --git a/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/utils/ZoneGitLinkRequestUrl.java b/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/utils/ZoneGitLinkRequestUrl.java index 46975620f..6c90a6189 100644 --- a/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/utils/ZoneGitLinkRequestUrl.java +++ b/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/utils/ZoneGitLinkRequestUrl.java @@ -29,6 +29,13 @@ public class ZoneGitLinkRequestUrl extends GitLinkRequestUrl { return getOpenGitLinkRequestUrl(String.format("/api/v1/%s/dataset?page=%d&limit=%d", fullName, page, limit)); } + /** + * 数据集详情 + */ + public static GitLinkRequestUrl PROJECT_DATASETS(String ids) { + return getOpenGitLinkRequestUrl(String.format("/api/v1/project_datasets.json?ids=%s", ids)); + } + /** * 搜索用户列表 */ diff --git a/ruoyi-modules/ruoyi-zone/src/main/resources/bootstrap.yml b/ruoyi-modules/ruoyi-zone/src/main/resources/bootstrap.yml index db1f62341..1db1b4066 100644 --- a/ruoyi-modules/ruoyi-zone/src/main/resources/bootstrap.yml +++ b/ruoyi-modules/ruoyi-zone/src/main/resources/bootstrap.yml @@ -9,7 +9,7 @@ spring: name: ruoyi-zone profiles: # 环境配置 - active: dev + active: zone cloud: nacos: discovery: From 1e28fb074778d7c0ef2523a30b698a84aad406d5 Mon Sep 17 00:00:00 2001 From: OTTO <731554297@qq.com> Date: Fri, 12 Apr 2024 11:41:37 +0800 Subject: [PATCH 10/13] =?UTF-8?q?feat(=E4=B8=93=E5=8C=BA=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E9=9B=86=E5=8A=9F=E8=83=BD=E5=BC=80=E5=8F=91):=20=E8=8E=B7?= =?UTF-8?q?=E5=8F=96=E7=89=B9=E8=89=B2=E4=B8=93=E5=8C=BA=E8=81=9A=E5=90=88?= =?UTF-8?q?=E9=A1=B9=E7=9B=AE=E5=AF=B9=E5=BA=94=E6=95=B0=E6=8D=AE=E9=9B=86?= =?UTF-8?q?=E8=AF=A6=E6=83=85=E6=8E=A5=E5=8F=A3=E5=BC=80=E5=8F=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 增加返回代码库地址 --- .../ruoyi/zone/dataset/service/impl/ZoneDataSetServiceImpl.java | 1 + 1 file changed, 1 insertion(+) diff --git a/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/dataset/service/impl/ZoneDataSetServiceImpl.java b/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/dataset/service/impl/ZoneDataSetServiceImpl.java index 5ee7db817..b99c776ef 100644 --- a/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/dataset/service/impl/ZoneDataSetServiceImpl.java +++ b/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/dataset/service/impl/ZoneDataSetServiceImpl.java @@ -101,6 +101,7 @@ public class ZoneDataSetServiceImpl implements IZoneDataSetService { JSONObject dataSetDetail = gitLinkRequestHelper.doGet( ZoneGitLinkRequestUrl.DATASET(zoneDataSetProjectVo.getRepositoryFullName(), page, limit) ); + dataSetDetail.put("repository_url", zoneDataSetProjectVo.getRepositoryUrl()); dataSetDetail.put("dataset_url", zoneDataSetProjectVo.getDataSetUrl()); return dataSetDetail; } From bf43c857e8d6c3209266d4961e03f649f5114f78 Mon Sep 17 00:00:00 2001 From: OTTO <731554297@qq.com> Date: Fri, 12 Apr 2024 14:28:20 +0800 Subject: [PATCH 11/13] =?UTF-8?q?feat(=E9=83=A8=E7=BD=B2=E8=84=9A=E6=9C=AC?= =?UTF-8?q?=E6=9B=B4=E6=96=B0):=20=E5=AE=8C=E5=96=84=E5=89=8D=E7=AB=AF?= =?UTF-8?q?=E9=83=A8=E7=BD=B2=E8=84=9A=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docker-gitlink/auto_redeploy.sh | 12 ++++++------ docker-gitlink/build.sh | 8 ++++---- docker-gitlink/copy.sh | 16 ++++++++-------- 3 files changed, 18 insertions(+), 18 deletions(-) diff --git a/docker-gitlink/auto_redeploy.sh b/docker-gitlink/auto_redeploy.sh index 051e4295e..505e75b00 100755 --- a/docker-gitlink/auto_redeploy.sh +++ b/docker-gitlink/auto_redeploy.sh @@ -9,7 +9,7 @@ server_name=$3 # 使用说明,用来提示输入参数 usage() { echo -e "\e[91m错误:必须传入环境参数 \e[0m" - echo "Usage: sh auto_redeploy.sh [test|prod] [modules|front]" + echo "Usage: sh auto_redeploy.sh [test|prod] [modules|zone_front]" exit 1 } @@ -64,12 +64,12 @@ modules(){ check_success gitlink-modules-zone } -front(){ +zone_front(){ echo "自动部署前端" echo "进行前端编译" - ./build.sh "$current_env" build_front + ./build.sh "$current_env" build_zone_front echo "拷贝前端文件" - ./copy.sh "$current_env" copy_front + ./copy.sh "$current_env" copy_zone_front docker restart gitlink-nginx } zone(){ @@ -293,8 +293,8 @@ case "$2" in "modules") modules ;; -"front") - front +"zone_front") + zone_front ;; "zone") zone diff --git a/docker-gitlink/build.sh b/docker-gitlink/build.sh index cfb213ec9..66f953649 100755 --- a/docker-gitlink/build.sh +++ b/docker-gitlink/build.sh @@ -8,7 +8,7 @@ env=$1 # 使用说明,用来提示输入参数 usage() { echo -e "\e[91m错误:必须传入环境和方法两个参数 \e[0m" - echo "Usage: sh build.sh [test|prod] [build_base_image|gen_nacos_config|gen_nginx_config|gen_nacos_sql|gen_gitlink_sql|gen_docker_compose|gen_dockerfile|build_maven|build_front]" + echo "Usage: sh build.sh [test|prod] [build_base_image|gen_nacos_config|gen_nginx_config|gen_nacos_sql|gen_gitlink_sql|gen_docker_compose|gen_dockerfile|build_maven|build_zone_front]" exit 1 } @@ -176,7 +176,7 @@ build_maven(){ } # 微服务模块编译 -build_front(){ +build_zone_front(){ cd "${orgin_path}"/.. #判断前端项目文件夹是否已创建 if [ ! -d "ruoyi-react" ]; then @@ -236,8 +236,8 @@ case "$2" in "build_maven") build_maven ;; -"build_front") - build_front +"build_zone_front") + build_zone_front ;; "test") test1 diff --git a/docker-gitlink/copy.sh b/docker-gitlink/copy.sh index 3ec76bed2..8b064ac4c 100755 --- a/docker-gitlink/copy.sh +++ b/docker-gitlink/copy.sh @@ -2,7 +2,7 @@ current_env=$1 # 复制项目的文件到对应docker路径,便于一键生成镜像。 usage() { - echo "Usage: sh copy.sh [test|prod] [copy_jar|copy_config|copy_sql|copy_front|copy_all]" + echo "Usage: sh copy.sh [test|prod] [copy_jar|copy_config|copy_sql|copy_zone_front|copy_all]" exit 1 } @@ -74,16 +74,16 @@ copy_sql(){ mkdir -p "${docker_data}"/gitlink/mysql/ cp ./nacos/sql/gitlink-nacos-config.sql "${docker_data}"/gitlink/mysql/gitlink-nacos-config.sql } -copy_front(){ +copy_zone_front(){ # copy 前端文件 - echo "begin copy front file " - rm -rf "${docker_data}"/gitlink/nginx/html/dist + echo "begin copy zone front file " + rm -rf "${docker_data}"/gitlink/nginx/html/zone_admin mkdir -p "${docker_data}"/gitlink/nginx/html/ - cp -r ../ruoyi-react/dist "${docker_data}"/gitlink/nginx/html/dist + cp -r ../ruoyi-react/dist "${docker_data}"/gitlink/nginx/html/zone_admin } copy_all(){ copy_jar - copy_front + copy_zone_front } case "$current_env" in @@ -131,8 +131,8 @@ case "$2" in "copy_sql") copy_sql ;; -"copy_front") - copy_front +"copy_zone_front") + copy_zone_front ;; "copy_all") copy_all From 492a5d335a69bea38ef84058c6975a1e9953604a Mon Sep 17 00:00:00 2001 From: OTTO <731554297@qq.com> Date: Fri, 12 Apr 2024 15:40:29 +0800 Subject: [PATCH 12/13] =?UTF-8?q?feat(=E4=B8=93=E5=8C=BA=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E9=9B=86=E5=8A=9F=E8=83=BD=E5=BC=80=E5=8F=91):=20=E8=8E=B7?= =?UTF-8?q?=E5=8F=96=E7=89=B9=E8=89=B2=E4=B8=93=E5=8C=BA=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E9=9B=86=E9=A1=B9=E7=9B=AE=E5=88=97=E8=A1=A8=E6=8E=A5=E5=8F=A3?= =?UTF-8?q?=E5=BC=80=E5=8F=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 模糊搜索时忽略大小写 --- .../ruoyi/zone/dataset/service/impl/ZoneDataSetServiceImpl.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/dataset/service/impl/ZoneDataSetServiceImpl.java b/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/dataset/service/impl/ZoneDataSetServiceImpl.java index b99c776ef..3ff5faac9 100644 --- a/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/dataset/service/impl/ZoneDataSetServiceImpl.java +++ b/ruoyi-modules/ruoyi-zone/src/main/java/com/ruoyi/zone/dataset/service/impl/ZoneDataSetServiceImpl.java @@ -68,7 +68,7 @@ public class ZoneDataSetServiceImpl implements IZoneDataSetService { // 根据搜索条件进行筛选 return projectDataSetList.stream().filter(x -> { if (StringUtils.isNotEmpty(search)) { - return x.getDataSetName().contains(search); + return x.getDataSetName().toLowerCase().contains(search.toLowerCase()); } return true; }).collect(Collectors.toList()); From 7623ecd8f41446faff95a22b6dccfac20d3dc9cd Mon Sep 17 00:00:00 2001 From: OTTO <731554297@qq.com> Date: Tue, 16 Apr 2024 09:13:09 +0800 Subject: [PATCH 13/13] =?UTF-8?q?feat(=E9=83=A8=E7=BD=B2=E8=84=9A=E6=9C=AC?= =?UTF-8?q?=E6=9B=B4=E6=96=B0):=20=E5=AE=8C=E5=96=84=E5=89=8D=E7=AB=AF?= =?UTF-8?q?=E9=83=A8=E7=BD=B2=E8=84=9A=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docker-gitlink/default_docker-compose.yml | 2 +- docker-gitlink/nginx/conf/default_nginx.conf | 2 +- docker-gitlink/nginx/dockerfile | 6 +++--- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/docker-gitlink/default_docker-compose.yml b/docker-gitlink/default_docker-compose.yml index 40376f112..5464c69c9 100644 --- a/docker-gitlink/default_docker-compose.yml +++ b/docker-gitlink/default_docker-compose.yml @@ -73,7 +73,7 @@ services: - "#mapping_gateway_port:#mapping_gateway_port" - "#mapping_nacos_port:8848" volumes: - - #docker_data/gitlink/nginx/html/dist:/home/gitlink/projects/gitlink-ui + - #docker_data/gitlink/nginx/html/:/home/gitlink/projects/ - #docker_data/gitlink/nginx/conf/nginx.conf:/etc/nginx/nginx.conf - #docker_data/gitlink/nginx/logs:/var/log/nginx - #docker_data/gitlink/nginx/conf.d:/etc/nginx/conf.d diff --git a/docker-gitlink/nginx/conf/default_nginx.conf b/docker-gitlink/nginx/conf/default_nginx.conf index dacf26e85..3548d0259 100644 --- a/docker-gitlink/nginx/conf/default_nginx.conf +++ b/docker-gitlink/nginx/conf/default_nginx.conf @@ -16,7 +16,7 @@ http { server_name localhost; location / { - root /home/gitlink/projects/gitlink-ui; + root /home/gitlink/projects/zone_admin; try_files $uri $uri/ /index.html; index index.html index.htm; } diff --git a/docker-gitlink/nginx/dockerfile b/docker-gitlink/nginx/dockerfile index a43e6b39e..36c0b0e48 100644 --- a/docker-gitlink/nginx/dockerfile +++ b/docker-gitlink/nginx/dockerfile @@ -4,8 +4,8 @@ FROM nginx MAINTAINER gitlink # 挂载目录 -VOLUME /home/gitlink/projects/gitlink-ui +VOLUME /home/gitlink/projects # 创建目录 -RUN mkdir -p /home/gitlink/projects/gitlink-ui +RUN mkdir -p /home/gitlink/projects # 指定路径 -WORKDIR /home/gitlink/projects/gitlink-ui +WORKDIR /home/gitlink/projects