diff --git a/src/main/java/com/easysoftware/application/applicationpackage/ApplicationPackageServiceImpl.java b/src/main/java/com/easysoftware/application/applicationpackage/ApplicationPackageServiceImpl.java index 9cf560206da85983106143e6a244412ffc0815e7..67ba8fdd6c9a5ea4b3416e108f675d2f318d697f 100644 --- a/src/main/java/com/easysoftware/application/applicationpackage/ApplicationPackageServiceImpl.java +++ b/src/main/java/com/easysoftware/application/applicationpackage/ApplicationPackageServiceImpl.java @@ -18,12 +18,9 @@ import com.easysoftware.application.applicationpackage.vo.ApplicationPackageMenu import com.easysoftware.common.entity.MessageCode; import com.easysoftware.common.exception.enumvalid.AppCategoryEnum; import com.easysoftware.common.utils.ApiUtil; -import com.easysoftware.common.utils.HttpClientUtil; -import com.easysoftware.common.utils.ObjectMapperUtil; import com.easysoftware.common.utils.ResultUtil; import com.easysoftware.domain.applicationpackage.ApplicationPackage; import com.easysoftware.domain.applicationpackage.gateway.ApplicationPackageGateway; -import com.fasterxml.jackson.databind.JsonNode; import jakarta.annotation.Resource; @@ -118,7 +115,7 @@ public class ApplicationPackageServiceImpl implements ApplicationPackageService appPkg.setMaintainerGiteeId(maintainer.get("gitee_id")); appPkg.setMaintainerEmail(maintainer.get("email")); - Map info = ApiUtil.getApiResponse(String.format(repoInfoApi, appPkg.getName(), "docker_openeuler")); + Map info = ApiUtil.getApiResponse(String.format(repoInfoApi, appPkg.getName(), "app_openeuler")); appPkg.setOs(info.get("os")); appPkg.setAppVer(info.get("latest_version") + "-" + info.get("os_version")); appPkg.setArch(info.get("arch")); diff --git a/src/main/java/com/easysoftware/application/applicationversion/ApplicationVersionServiceImpl.java b/src/main/java/com/easysoftware/application/applicationversion/ApplicationVersionServiceImpl.java index a0ba6aa7abe0ddbda3021e35eefb461aaeb95711..690e84b25f43763f823b64e1f5f2e6b3c862d583 100644 --- a/src/main/java/com/easysoftware/application/applicationversion/ApplicationVersionServiceImpl.java +++ b/src/main/java/com/easysoftware/application/applicationversion/ApplicationVersionServiceImpl.java @@ -1,6 +1,7 @@ package com.easysoftware.application.applicationversion; import java.util.ArrayList; import java.util.List; +import java.util.Map; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; @@ -13,6 +14,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.easysoftware.application.applicationversion.dto.ApplicationVersionSearchCondition; import com.easysoftware.application.applicationversion.dto.InputApplicationVersion; import com.easysoftware.common.entity.MessageCode; +import com.easysoftware.common.utils.ApiUtil; import com.easysoftware.common.utils.ObjectMapperUtil; import com.easysoftware.common.utils.ResultUtil; import com.easysoftware.common.utils.UuidUtil; @@ -21,7 +23,6 @@ import com.easysoftware.domain.applicationversion.gateway.ApplicationVersionGate import com.easysoftware.infrastructure.applicationversion.gatewayimpl.dataobject.ApplicationVersionDO; import com.easysoftware.infrastructure.mapper.ApplicationVersionDOMapper; import com.easysoftware.kafka.Producer; -// import com.easysoftware.domain.compatible.gateway.CompatibleGateway; import jakarta.annotation.Resource; @@ -33,12 +34,12 @@ public class ApplicationVersionServiceImpl extends ServiceImpl info = ApiUtil.getApiResponse(String.format(repoInfoApi, appVer.getName(), "app_openeuler")); + appVer.setCompatibleVersion(info.get("latest_version")); + + info = ApiUtil.getApiResponse(String.format(repoInfoApi, appVer.getName(), "app_up")); + appVer.setUpstreamVersion(info.get("latest_version")); + + info = ApiUtil.getApiResponse(String.format(repoInfoApi, appVer.getName(), "app_openeuler_ci")); + appVer.setCiVersion(info.get("latest_version")); + + if (appVer.getCompatibleVersion() == null) { + appVer.setStatus("MISSING"); + } else if (appVer.getUpstreamVersion().equals(appVer.getCompatibleVersion())) { + appVer.setStatus("OK"); + } else { + appVer.setStatus("OUTDATED"); + } + return appVer; + } } diff --git a/src/main/java/com/easysoftware/application/applicationversion/dto/InputApplicationVersion.java b/src/main/java/com/easysoftware/application/applicationversion/dto/InputApplicationVersion.java index 27a439886d7babbce014de68dfe145070e276eee..0aa715079b11d11b0c911d7b317039134fa313e9 100644 --- a/src/main/java/com/easysoftware/application/applicationversion/dto/InputApplicationVersion.java +++ b/src/main/java/com/easysoftware/application/applicationversion/dto/InputApplicationVersion.java @@ -10,20 +10,28 @@ import lombok.NoArgsConstructor; @AllArgsConstructor @NoArgsConstructor public class InputApplicationVersion { - @Size(max = 255, message = "the length of version can not exceed 255") - @Pattern(regexp = "^[\\u4E00-\\u9FA5A-Za-z0-9.()$\\-_:/ ]+$", message = "Include only letters, digits, and special characters(_-()$.)") - public String version; - @NotBlank(message = "name can not be null") @Pattern(regexp = "^[\\u4E00-\\u9FA5A-Za-z0-9.()$\\-_:/ ]+$", message = "Include only letters, digits, and special characters(_-()$.)") - @Size(max = 255, message = "the length of name can not exceed 255") + @Size(max = 45, message = "the length of name can not exceed 45") public String name; @Size(max = 255, message = "the length of homepage can not exceed 255") @Pattern(regexp = "^[A-Za-z0-9.()\\-_:/ ]+$", message = "Include only letters, digits, and special characters(_-()$.)") public String homepage; - @Size(max = 255, message = "the length of backend can not exceed 255") + @Size(max = 45, message = "the length of backend can not exceed 45") @Pattern(regexp = "^[\\u4E00-\\u9FA5A-Za-z0-9.()$\\-_:/ ]+$", message = "Include only letters, digits, and special characters(_-()$.)") public String backend; + + @Size(max = 45, message = "the length of status can not exceed 45") + public String status; + + @Size(max = 45, message = "the length of upstreamVersion can not exceed 45") + public String upstreamVersion; + + @Size(max = 45, message = "the length of compatibleVersion can not exceed 45") + public String compatibleVersion; + + @Size(max = 45, message = "the length of compatibleVersion can not exceed 45") + public String ciVersion; } diff --git a/src/main/java/com/easysoftware/domain/applicationversion/ApplicationVersion.java b/src/main/java/com/easysoftware/domain/applicationversion/ApplicationVersion.java index d78c1a3b7b08d65ccc7ffaa7f362747eda911553..3cf50b5119ce9618d3bbb9c5aec15fafa0047fb1 100644 --- a/src/main/java/com/easysoftware/domain/applicationversion/ApplicationVersion.java +++ b/src/main/java/com/easysoftware/domain/applicationversion/ApplicationVersion.java @@ -13,8 +13,11 @@ public class ApplicationVersion { @Serial private static final long serialVersionUID = 1L; public String name; - public String version; public String homepage; public String backend; + public String upstreamVersion; + public String compatibleVersion; + public String ciVersion; + public String status; private String id; } diff --git a/src/main/java/com/easysoftware/infrastructure/applicationversion/gatewayimpl/dataobject/ApplicationVersionDO.java b/src/main/java/com/easysoftware/infrastructure/applicationversion/gatewayimpl/dataobject/ApplicationVersionDO.java index da679f888fd060a9e02444cf1108e840ff588e80..3b577f95db8b90f90c31116201fb0f35a910b4c3 100644 --- a/src/main/java/com/easysoftware/infrastructure/applicationversion/gatewayimpl/dataobject/ApplicationVersionDO.java +++ b/src/main/java/com/easysoftware/infrastructure/applicationversion/gatewayimpl/dataobject/ApplicationVersionDO.java @@ -17,9 +17,12 @@ public class ApplicationVersionDO { @Serial private static final long serialVersionUID = 1L; public String name; - public String version; public String homepage; public String backend; + public String upstreamVersion; + public String compatibleVersion; + public String ciVersion; + public String status; private String id; private Timestamp createdAt; private Timestamp updateAt;