From 742c825ad91c17e8e2d2189d590817e3fd3b62c4 Mon Sep 17 00:00:00 2001 From: fuxinji9527 <1992666531@qq.com> Date: Tue, 7 May 2024 17:44:00 +0800 Subject: [PATCH 01/30] =?UTF-8?q?=E5=BC=95=E5=85=A5commons-codec=EF=BC=8C?= =?UTF-8?q?=E6=9B=BF=E6=8D=A2SHA256=E5=8A=A0=E5=AF=86=E7=AE=97=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 7 ++++ .../DomainPackageServiceImpl.java | 3 +- .../com/easysoftware/redis/RedisUtil.java | 36 ------------------- 3 files changed, 9 insertions(+), 37 deletions(-) diff --git a/pom.xml b/pom.xml index a3b0d02..509b378 100644 --- a/pom.xml +++ b/pom.xml @@ -171,6 +171,13 @@ org.springframework.kafka spring-kafka + + + commons-codec + commons-codec + 1.15 + + diff --git a/src/main/java/com/easysoftware/application/domainpackage/DomainPackageServiceImpl.java b/src/main/java/com/easysoftware/application/domainpackage/DomainPackageServiceImpl.java index 6d17dad..65a0519 100644 --- a/src/main/java/com/easysoftware/application/domainpackage/DomainPackageServiceImpl.java +++ b/src/main/java/com/easysoftware/application/domainpackage/DomainPackageServiceImpl.java @@ -30,6 +30,7 @@ import com.easysoftware.ranking.Ranker; import com.easysoftware.redis.RedisGateway; import com.easysoftware.redis.RedisUtil; import jakarta.annotation.Resource; +import org.apache.commons.codec.digest.DigestUtils; import org.apache.commons.lang3.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -201,7 +202,7 @@ public class DomainPackageServiceImpl implements DomainPackageService { // 根据请求参数生成唯一redis key String redisKeyStr = RedisUtil.objectToString(condition); String redisKeyFormat = "domainPage_%s"; - String redisKey = String.format(redisKeyFormat, RedisUtil.getSHA256(redisKeyStr)); + String redisKey = String.format(redisKeyFormat, DigestUtils.sha256Hex(redisKeyStr)); try { // 结果未过期,直接返回 if (redisGateway.hasKey(redisKey)) { diff --git a/src/main/java/com/easysoftware/redis/RedisUtil.java b/src/main/java/com/easysoftware/redis/RedisUtil.java index 90209db..ff32a19 100644 --- a/src/main/java/com/easysoftware/redis/RedisUtil.java +++ b/src/main/java/com/easysoftware/redis/RedisUtil.java @@ -7,9 +7,6 @@ import org.slf4j.LoggerFactory; import java.io.IOException; import java.lang.reflect.Field; -import java.nio.charset.StandardCharsets; -import java.security.MessageDigest; -import java.security.NoSuchAlgorithmException; import java.util.ArrayList; import java.util.List; import java.util.Map; @@ -124,38 +121,5 @@ public final class RedisUtil { return null; } } - - /** - * Generate the SHA-256 hash of an input string. - * - * @param input The input string to generate the hash for. - * @return The SHA-256 hash of the input string. - */ - public static String getSHA256(final String input) { - try { - // 初始化MessageDigest实例,并指定SHA-256算法 - MessageDigest md = MessageDigest.getInstance("SHA-256"); - - // 将输入字符串转换为字节数组,并更新摘要 - md.update(input.getBytes(StandardCharsets.UTF_8)); - - // 完成哈希计算,并获取哈希值的字节表示 - byte[] hash = md.digest(); - - // 将字节数组转换为十六进制字符串 - StringBuilder hexString = new StringBuilder(); - for (byte b : hash) { - String hex = Integer.toHexString(0xff & b); - if (hex.length() == 1) { - hexString.append('0'); - } - hexString.append(hex); - } - - return hexString.toString(); - } catch (NoSuchAlgorithmException e) { - throw new RuntimeException(e); - } - } } -- Gitee From 54764af8c2b9ff259bbff1c3c5a2ec4cf32a37c2 Mon Sep 17 00:00:00 2001 From: fuxinji9527 <1992666531@qq.com> Date: Wed, 8 May 2024 10:33:28 +0800 Subject: [PATCH 02/30] =?UTF-8?q?=E5=88=A0=E9=99=A4=E6=97=A0=E7=94=A8?= =?UTF-8?q?=E6=96=87=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/resources/mapper/ApplicationPackageDOMapper.xml | 5 ----- src/main/resources/mapper/RPMPackageDOMapper.xml | 5 ----- 2 files changed, 10 deletions(-) delete mode 100644 src/main/resources/mapper/ApplicationPackageDOMapper.xml delete mode 100644 src/main/resources/mapper/RPMPackageDOMapper.xml diff --git a/src/main/resources/mapper/ApplicationPackageDOMapper.xml b/src/main/resources/mapper/ApplicationPackageDOMapper.xml deleted file mode 100644 index 38751cd..0000000 --- a/src/main/resources/mapper/ApplicationPackageDOMapper.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - \ No newline at end of file diff --git a/src/main/resources/mapper/RPMPackageDOMapper.xml b/src/main/resources/mapper/RPMPackageDOMapper.xml deleted file mode 100644 index 8f2ec27..0000000 --- a/src/main/resources/mapper/RPMPackageDOMapper.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - \ No newline at end of file -- Gitee From 1aafa38c36f3e65a2ef259b297a580a54209bb3b Mon Sep 17 00:00:00 2001 From: aca Date: Wed, 8 May 2024 08:00:57 +0000 Subject: [PATCH 03/30] update Dockerfile. Signed-off-by: aca --- Dockerfile | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Dockerfile b/Dockerfile index 53a187a..8f9d6c4 100644 --- a/Dockerfile +++ b/Dockerfile @@ -33,12 +33,14 @@ WORKDIR ${WORKSPACE} COPY --chown=easysoftware --from=Builder /EasySoftware/target ${WORKSPACE}/target RUN echo "umask 027" >> /home/easysoftware/.bashrc \ + && echo "umask 027" >> /root/.bashrc \ && source /home/easysoftware/.bashrc \ && mkdir -p /home/easysoftware/tomcat/log \ && chmod 550 -R /home/easysoftware \ && chown -R easysoftware:easysoftware /home/easysoftware/tomcat/ \ && chmod 750 /home/easysoftware/tomcat/log \ && echo "set +o history" >> /etc/bashrc \ + && echo "set +o history" >> /home/easysoftware/bashrc \ && sed -i "s|HISTSIZE=1000|HISTSIZE=0|" /etc/profile \ && sed -i "s|PASS_MAX_DAYS[ \t]*99999|PASS_MAX_DAYS 30|" /etc/login.defs @@ -66,6 +68,7 @@ RUN rm -rf `find / -iname "*tcpdump*"` \ && rm -rf `find / -iname "*mirror*"` \ && rm -rf `find / -iname "*JDK*"` \ && rm -rf /root/.m2/repository/* + && rm -rf /tmp/* RUN rm -rf /usr/bin/gdb* \ && rm -rf /usr/share/gdb \ -- Gitee From 3cd826eb2735123f0d9b0c2010969c6a5b362807 Mon Sep 17 00:00:00 2001 From: aca Date: Wed, 8 May 2024 09:34:31 +0000 Subject: [PATCH 04/30] update Dockerfile. Signed-off-by: aca --- Dockerfile | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/Dockerfile b/Dockerfile index 8f9d6c4..2fe6587 100644 --- a/Dockerfile +++ b/Dockerfile @@ -38,7 +38,7 @@ RUN echo "umask 027" >> /home/easysoftware/.bashrc \ && mkdir -p /home/easysoftware/tomcat/log \ && chmod 550 -R /home/easysoftware \ && chown -R easysoftware:easysoftware /home/easysoftware/tomcat/ \ - && chmod 750 /home/easysoftware/tomcat/log \ + && chmod 700 -R /home/easysoftware/tomcat \ && echo "set +o history" >> /etc/bashrc \ && echo "set +o history" >> /home/easysoftware/bashrc \ && sed -i "s|HISTSIZE=1000|HISTSIZE=0|" /etc/profile \ @@ -53,7 +53,8 @@ RUN passwd -l easysoftware \ RUN dnf install -y wget \ && wget https://mirrors.tuna.tsinghua.edu.cn/Adoptium/17/jre/x64/linux/OpenJDK17U-jre_x64_linux_hotspot_17.0.11_9.tar.gz \ - && tar -zxvf OpenJDK17U-jre_x64_linux_hotspot_17.0.11_9.tar.gz + && tar -zxvf OpenJDK17U-jre_x64_linux_hotspot_17.0.11_9.tar.gz \ + && rm OpenJDK17U-jre_x64_linux_hotspot_17.0.11_9.tar.gz RUN rm -rf `find / -iname "*tcpdump*"` \ && rm -rf `find / -iname "*sniffer*"` \ -- Gitee From 841c33a2e1838243b505feb5229072104a056089 Mon Sep 17 00:00:00 2001 From: aca Date: Thu, 9 May 2024 02:58:11 +0000 Subject: [PATCH 05/30] fix bug: update Dockerfile. Signed-off-by: aca --- Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index 2fe6587..3ff989a 100644 --- a/Dockerfile +++ b/Dockerfile @@ -68,7 +68,7 @@ RUN rm -rf `find / -iname "*tcpdump*"` \ && rm -rf `find / -iname "*dexdump*"` \ && rm -rf `find / -iname "*mirror*"` \ && rm -rf `find / -iname "*JDK*"` \ - && rm -rf /root/.m2/repository/* + && rm -rf /root/.m2/repository/* \ && rm -rf /tmp/* RUN rm -rf /usr/bin/gdb* \ -- Gitee From 13c57ba79d0664c8bd06284e5c14239156e39135 Mon Sep 17 00:00:00 2001 From: aca Date: Thu, 9 May 2024 07:26:39 +0000 Subject: [PATCH 06/30] update src/main/java/com/easysoftware/adapter/query/FieldApplicationQueryAdapter.java. Signed-off-by: aca --- .../query/FieldApplicationQueryAdapter.java | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/src/main/java/com/easysoftware/adapter/query/FieldApplicationQueryAdapter.java b/src/main/java/com/easysoftware/adapter/query/FieldApplicationQueryAdapter.java index 7a7ae8e..09a67b1 100644 --- a/src/main/java/com/easysoftware/adapter/query/FieldApplicationQueryAdapter.java +++ b/src/main/java/com/easysoftware/adapter/query/FieldApplicationQueryAdapter.java @@ -17,6 +17,10 @@ import jakarta.validation.Valid; @RestController @RequestMapping("/field") public class FieldApplicationQueryAdapter { + /** + * Health status. + */ + private static final String HEALTH_STATUS = "health"; /** * Autowired service for handling field application-related operations. @@ -70,4 +74,15 @@ public class FieldApplicationQueryAdapter { public ResponseEntity searchStat() { return service.queryStat(); } + + /** + * Endpoint to health check. + * + * @return ResponseEntity. + */ + @GetMapping("/health") + @RequestLimitRedis() + public String checkHealth() { + return HEALTH_STATUS; + } } -- Gitee From 2bb29f53ab52f28d50543d448ce4e04f28d95510 Mon Sep 17 00:00:00 2001 From: zwjsec Date: Sat, 11 May 2024 08:57:25 +0800 Subject: [PATCH 07/30] =?UTF-8?q?=E6=9C=8D=E5=8A=A1=E5=90=AF=E5=8A=A8?= =?UTF-8?q?=E5=90=8E=20=E5=88=A0=E9=99=A4=E7=9B=B8=E5=85=B3=E5=AF=86?= =?UTF-8?q?=E9=92=A5=E4=B8=8E=E8=AF=81=E4=B9=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../init/ApplicationRunnerStart.java | 54 +++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 src/main/java/com/easysoftware/init/ApplicationRunnerStart.java diff --git a/src/main/java/com/easysoftware/init/ApplicationRunnerStart.java b/src/main/java/com/easysoftware/init/ApplicationRunnerStart.java new file mode 100644 index 0000000..49011c8 --- /dev/null +++ b/src/main/java/com/easysoftware/init/ApplicationRunnerStart.java @@ -0,0 +1,54 @@ +package com.easysoftware.init; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.boot.ApplicationArguments; +import org.springframework.boot.ApplicationRunner; +import org.springframework.stereotype.Component; +import java.io.File; +import com.baomidou.mybatisplus.core.toolkit.StringUtils; + +@Component +public class ApplicationRunnerStart implements ApplicationRunner { + + /** + * Logger for ApplicationRunnerStart. + */ + private static final Logger LOGGER = LoggerFactory.getLogger(ApplicationRunnerStart.class); + + /** + * ApplicationRunner method for the Java application. + * + * @param args Command-line arguments + */ + @Override + public void run(ApplicationArguments args) { + String rawSecretsDirStr = System.getenv("APPLICATION_PATH"); + + if (StringUtils.isBlank(rawSecretsDirStr)) { + LOGGER.info("deletefail, env not found"); + return; + } + + String secretsDirStr = rawSecretsDirStr.replace("/application.yaml", ""); + + File secretsDir = new File(secretsDirStr); + + if (!secretsDir.isDirectory()) { + LOGGER.info("delete fail, not a dir"); + return; + } + + File[] listFiles = secretsDir.listFiles(); + for (File file : listFiles) { + if (file.delete()) { + LOGGER.info("File deleted successfully." + file.getName()); + } else { + LOGGER.info("Delete file failed"); + } + } + + return; + } + +} -- Gitee From f42bd28653ab66da827d073b59c7be700b4f6a13 Mon Sep 17 00:00:00 2001 From: gouzhonglin Date: Tue, 14 May 2024 16:58:51 +0800 Subject: [PATCH 08/30] update os --- .../applicationversion/ApplicationVersionServiceImpl.java | 8 -------- .../applicationversion/dto/InputApplicationVersion.java | 5 +++++ .../domain/applicationversion/ApplicationVersion.java | 4 ++++ .../gatewayimpl/dataobject/ApplicationVersionDO.java | 4 ++++ 4 files changed, 13 insertions(+), 8 deletions(-) diff --git a/src/main/java/com/easysoftware/application/applicationversion/ApplicationVersionServiceImpl.java b/src/main/java/com/easysoftware/application/applicationversion/ApplicationVersionServiceImpl.java index 11f9a65..00051c5 100644 --- a/src/main/java/com/easysoftware/application/applicationversion/ApplicationVersionServiceImpl.java +++ b/src/main/java/com/easysoftware/application/applicationversion/ApplicationVersionServiceImpl.java @@ -61,10 +61,6 @@ public class ApplicationVersionServiceImpl extends ServiceImpl insertAppVersion(final InputApplicationVersion inputAppVersion) { - // 数据库中是否已存在该包 - if (appVersionGateway.existApp(inputAppVersion.getName())) { - return ResultUtil.fail(HttpStatus.BAD_REQUEST, MessageCode.EC0008); - } ApplicationVersion appVersion = new ApplicationVersion(); BeanUtils.copyProperties(inputAppVersion, appVersion); @@ -97,10 +93,6 @@ public class ApplicationVersionServiceImpl extends ServiceImpl updateAppVersion(final InputApplicationVersion inputAppVersion) { - // 数据库中是否已存在该包 - if (!appVersionGateway.existApp(inputAppVersion.getName())) { - return ResultUtil.fail(HttpStatus.BAD_REQUEST, MessageCode.EC0009); - } ApplicationVersion appVersion = new ApplicationVersion(); BeanUtils.copyProperties(inputAppVersion, appVersion); 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 9631832..7faa23c 100644 --- a/src/main/java/com/easysoftware/application/applicationversion/dto/InputApplicationVersion.java +++ b/src/main/java/com/easysoftware/application/applicationversion/dto/InputApplicationVersion.java @@ -66,4 +66,9 @@ public class InputApplicationVersion { @Size(max = 45, message = "the length of compatibleVersion can not exceed 45") private String ciVersion; + /** + * Version of openEuler os: openEuler-22.03 + */ + @Size(max = 45, message = "the length of compatibleVersion can not exceed 45") + private String eulerOsVersion; } diff --git a/src/main/java/com/easysoftware/domain/applicationversion/ApplicationVersion.java b/src/main/java/com/easysoftware/domain/applicationversion/ApplicationVersion.java index 54848e4..1934f26 100644 --- a/src/main/java/com/easysoftware/domain/applicationversion/ApplicationVersion.java +++ b/src/main/java/com/easysoftware/domain/applicationversion/ApplicationVersion.java @@ -59,4 +59,8 @@ public class ApplicationVersion { */ private String id; + /** + * Version of openEuler os: openEuler-22.03 + */ + private String eulerOsVersion; } 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 1571898..2447696 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 @@ -74,4 +74,8 @@ public class ApplicationVersionDO { */ private Timestamp updateAt; + /** + * Version of openEuler os: openEuler-22.03 + */ + private String eulerOsVersion; } -- Gitee From b6494eeb869c7183b4ceb211c3bb70c09af07516 Mon Sep 17 00:00:00 2001 From: gouzhonglin Date: Tue, 14 May 2024 20:30:19 +0800 Subject: [PATCH 09/30] v2 --- .../applicationversion/dto/InputApplicationVersion.java | 2 +- .../domain/applicationversion/ApplicationVersion.java | 2 +- .../gatewayimpl/dataobject/ApplicationVersionDO.java | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) 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 7faa23c..d4ff86f 100644 --- a/src/main/java/com/easysoftware/application/applicationversion/dto/InputApplicationVersion.java +++ b/src/main/java/com/easysoftware/application/applicationversion/dto/InputApplicationVersion.java @@ -67,7 +67,7 @@ public class InputApplicationVersion { private String ciVersion; /** - * Version of openEuler os: openEuler-22.03 + * Version of openEuler os: openEuler-22.03. */ @Size(max = 45, message = "the length of compatibleVersion can not exceed 45") private String eulerOsVersion; diff --git a/src/main/java/com/easysoftware/domain/applicationversion/ApplicationVersion.java b/src/main/java/com/easysoftware/domain/applicationversion/ApplicationVersion.java index 1934f26..19ab24c 100644 --- a/src/main/java/com/easysoftware/domain/applicationversion/ApplicationVersion.java +++ b/src/main/java/com/easysoftware/domain/applicationversion/ApplicationVersion.java @@ -60,7 +60,7 @@ public class ApplicationVersion { private String id; /** - * Version of openEuler os: openEuler-22.03 + * Version of openEuler os: openEuler-22.03. */ private String eulerOsVersion; } 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 2447696..44022ba 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 @@ -75,7 +75,7 @@ public class ApplicationVersionDO { private Timestamp updateAt; /** - * Version of openEuler os: openEuler-22.03 + * Version of openEuler os: openEuler-22.03. */ private String eulerOsVersion; } -- Gitee From 0ecb35157af375f623e79bd751e1626abc6fc800 Mon Sep 17 00:00:00 2001 From: gouzhonglin Date: Wed, 15 May 2024 10:37:36 +0800 Subject: [PATCH 10/30] update app ver --- .../query/ApplicationVersionQueryAdapter.java | 14 ++++ .../ApplicationVersionService.java | 7 ++ .../ApplicationVersionServiceImpl.java | 28 ++++--- .../ApplicationVersionSearchCondition.java | 11 +++ .../rpmpackage/RPMPackageServiceImpl.java | 2 +- .../gateway/ApplicationVersionGateway.java | 16 ++++ .../ApplicationVersionGatewayImpl.java | 78 ++++++++++++++++++- .../ApplicationVersionConvertor.java | 38 +++++++++ 8 files changed, 181 insertions(+), 13 deletions(-) diff --git a/src/main/java/com/easysoftware/adapter/query/ApplicationVersionQueryAdapter.java b/src/main/java/com/easysoftware/adapter/query/ApplicationVersionQueryAdapter.java index ffa739f..8ca7c5f 100644 --- a/src/main/java/com/easysoftware/adapter/query/ApplicationVersionQueryAdapter.java +++ b/src/main/java/com/easysoftware/adapter/query/ApplicationVersionQueryAdapter.java @@ -36,4 +36,18 @@ public class ApplicationVersionQueryAdapter { return appVersionService.searchAppVersion(condition); } + /** + * Endpoint to search for application versions based on the provided search condition. + * + * @param condition The search condition for querying application versions. + * @return ResponseEntity. + */ + @GetMapping("/column") + @LimitRequest() + // @OneidToken + // @CompatibleToken + public ResponseEntity searchAppVerColumn(@Valid final ApplicationVersionSearchCondition condition) { + return appVersionService.searchAppVerColumn(condition); + } + } diff --git a/src/main/java/com/easysoftware/application/applicationversion/ApplicationVersionService.java b/src/main/java/com/easysoftware/application/applicationversion/ApplicationVersionService.java index 06aca6a..d43b30a 100644 --- a/src/main/java/com/easysoftware/application/applicationversion/ApplicationVersionService.java +++ b/src/main/java/com/easysoftware/application/applicationversion/ApplicationVersionService.java @@ -41,4 +41,11 @@ public interface ApplicationVersionService extends BaseIService searchAppVersion(ApplicationVersionSearchCondition condition); + /** + * Searches for column based on the specified search conditions. + * + * @param condition The search conditions to filter application versions. + * @return ResponseEntity. + */ + ResponseEntity searchAppVerColumn(ApplicationVersionSearchCondition condition); } diff --git a/src/main/java/com/easysoftware/application/applicationversion/ApplicationVersionServiceImpl.java b/src/main/java/com/easysoftware/application/applicationversion/ApplicationVersionServiceImpl.java index 00051c5..5814261 100644 --- a/src/main/java/com/easysoftware/application/applicationversion/ApplicationVersionServiceImpl.java +++ b/src/main/java/com/easysoftware/application/applicationversion/ApplicationVersionServiceImpl.java @@ -4,9 +4,8 @@ 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.ObjectMapperUtil; +import com.easysoftware.common.utils.QueryWrapperUtil; import com.easysoftware.common.utils.ResultUtil; -import com.easysoftware.common.utils.UuidUtil; import com.easysoftware.domain.applicationversion.ApplicationVersion; import com.easysoftware.domain.applicationversion.gateway.ApplicationVersionGateway; import com.easysoftware.infrastructure.applicationversion.gatewayimpl.dataobject.ApplicationVersionDO; @@ -63,14 +62,9 @@ public class ApplicationVersionServiceImpl extends ServiceImpl insertAppVersion(final InputApplicationVersion inputAppVersion) { ApplicationVersion appVersion = new ApplicationVersion(); BeanUtils.copyProperties(inputAppVersion, appVersion); - - Map kafkaMsg = ObjectMapperUtil.jsonToMap(appVersion); - kafkaMsg.put("table", "ApplicationVersion"); - kafkaMsg.put("unique", inputAppVersion.getName()); - kafkaProducer.sendMess(topicAppVersion + "_version", - UuidUtil.getUUID32(), ObjectMapperUtil.writeValueAsString(kafkaMsg)); - - return ResultUtil.success(HttpStatus.OK); + boolean success = appVersionGateway.save(appVersion); + return success ? ResultUtil.success(HttpStatus.OK) + : ResultUtil.fail(HttpStatus.BAD_REQUEST, MessageCode.EC0006); } /** @@ -81,7 +75,7 @@ public class ApplicationVersionServiceImpl extends ServiceImpl searchAppVersion(final ApplicationVersionSearchCondition condition) { - Map res = appVersionGateway.queryByName(condition); + Map res = appVersionGateway.queryByEulerOsVersion(condition); return ResultUtil.success(HttpStatus.OK, res); } @@ -125,4 +119,16 @@ public class ApplicationVersionServiceImpl extends ServiceImpl dataObject) { saveOrUpdateBatch(appVersionGateway.convertBatch(dataObject)); } + + /** + * Search column. + * + * @param condition condition. + */ + @Override + public ResponseEntity searchAppVerColumn(ApplicationVersionSearchCondition condition) { + List columns = QueryWrapperUtil.splitStr(condition.getColumn()); + Map> res = appVersionGateway.queryColumn(columns); + return ResultUtil.success(HttpStatus.OK, res); + } } diff --git a/src/main/java/com/easysoftware/application/applicationversion/dto/ApplicationVersionSearchCondition.java b/src/main/java/com/easysoftware/application/applicationversion/dto/ApplicationVersionSearchCondition.java index f977c55..896f315 100644 --- a/src/main/java/com/easysoftware/application/applicationversion/dto/ApplicationVersionSearchCondition.java +++ b/src/main/java/com/easysoftware/application/applicationversion/dto/ApplicationVersionSearchCondition.java @@ -32,5 +32,16 @@ public class ApplicationVersionSearchCondition { @Range(min = PackageConstant.MIN_PAGE_SIZE, max = PackageConstant.MAX_PAGE_SIZE) private Integer pageSize = 10; + /** + * eulerOSVersion. + */ + @Size(max = PackageConstant.MAX_FIELD_LENGTH) + private String eulerOsVersion; + + /** + * column. + */ + @Size(max = PackageConstant.MAX_FIELD_LENGTH) + private String column; } diff --git a/src/main/java/com/easysoftware/application/rpmpackage/RPMPackageServiceImpl.java b/src/main/java/com/easysoftware/application/rpmpackage/RPMPackageServiceImpl.java index 484cce1..fb2e470 100644 --- a/src/main/java/com/easysoftware/application/rpmpackage/RPMPackageServiceImpl.java +++ b/src/main/java/com/easysoftware/application/rpmpackage/RPMPackageServiceImpl.java @@ -206,7 +206,7 @@ public class RPMPackageServiceImpl extends ServiceImpl dataObject) { - saveBatch(rPMPkgGateway.convertBatch(dataObject)); + saveOrUpdateBatch(rPMPkgGateway.convertBatch(dataObject)); } /** diff --git a/src/main/java/com/easysoftware/domain/applicationversion/gateway/ApplicationVersionGateway.java b/src/main/java/com/easysoftware/domain/applicationversion/gateway/ApplicationVersionGateway.java index 07766d9..336a3ad 100644 --- a/src/main/java/com/easysoftware/domain/applicationversion/gateway/ApplicationVersionGateway.java +++ b/src/main/java/com/easysoftware/domain/applicationversion/gateway/ApplicationVersionGateway.java @@ -5,6 +5,7 @@ import com.easysoftware.domain.applicationversion.ApplicationVersion; import com.easysoftware.infrastructure.applicationversion.gatewayimpl.dataobject.ApplicationVersionDO; import java.util.Collection; +import java.util.List; import java.util.Map; @@ -49,6 +50,14 @@ public interface ApplicationVersionGateway { */ Map queryByName(ApplicationVersionSearchCondition condition); + /** + * Query information based on the provided search condition. + * + * @param condition The search condition for querying application versions + * @return A map containing relevant information + */ + Map queryByEulerOsVersion(ApplicationVersionSearchCondition condition); + /** * Convert a batch of data objects to ApplicationVersionDO objects. * @@ -57,5 +66,12 @@ public interface ApplicationVersionGateway { */ Collection convertBatch(Collection dataObject); + /** + * Search column. + * + * @param columns columns + * @return A collection of ApplicationVersionDO objects + */ + Map> queryColumn(List columns); } diff --git a/src/main/java/com/easysoftware/infrastructure/applicationversion/gatewayimpl/ApplicationVersionGatewayImpl.java b/src/main/java/com/easysoftware/infrastructure/applicationversion/gatewayimpl/ApplicationVersionGatewayImpl.java index 4440daa..5d4282d 100644 --- a/src/main/java/com/easysoftware/infrastructure/applicationversion/gatewayimpl/ApplicationVersionGatewayImpl.java +++ b/src/main/java/com/easysoftware/infrastructure/applicationversion/gatewayimpl/ApplicationVersionGatewayImpl.java @@ -4,17 +4,25 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.easysoftware.application.applicationversion.dto.ApplicationVersionSearchCondition; +import com.easysoftware.common.exception.ParamErrorException; import com.easysoftware.common.utils.ObjectMapperUtil; +import com.easysoftware.common.utils.QueryWrapperUtil; import com.easysoftware.domain.applicationversion.ApplicationVersion; import com.easysoftware.domain.applicationversion.gateway.ApplicationVersionGateway; import com.easysoftware.infrastructure.applicationversion.gatewayimpl.converter.ApplicationVersionConvertor; import com.easysoftware.infrastructure.applicationversion.gatewayimpl.dataobject.ApplicationVersionDO; import com.easysoftware.infrastructure.mapper.ApplicationVersionDOMapper; +import com.power.common.util.StringUtil; + +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.jdbc.BadSqlGrammarException; import org.springframework.stereotype.Component; import java.util.ArrayList; +import java.util.Arrays; import java.util.Collection; +import java.util.HashMap; import java.util.List; import java.util.Map; @@ -133,6 +141,74 @@ public class ApplicationVersionGatewayImpl implements ApplicationVersionGateway } return objList; } -} + /** + * Query information based on the provided search condition. + * + * @param condition The search condition for querying application versions + * @return A map containing relevant information + */ + @Override + public Map queryByEulerOsVersion(ApplicationVersionSearchCondition condition) { + Page page = this.createPage(condition); + + QueryWrapper wrapper = null; + if (StringUtils.isNotBlank(StringUtils.trimToEmpty(condition.getEulerOsVersion()))) { + wrapper = new QueryWrapper<>(); + wrapper.eq("euler_os_version", StringUtils.trimToEmpty(condition.getEulerOsVersion())); + } + + Page resPage = appVersionMapper.selectPage(page, wrapper); + List appList = resPage.getRecords(); + List appDetails = ApplicationVersionConvertor.toEntity(appList); + return Map.ofEntries( + Map.entry("total", resPage.getTotal()), + Map.entry("list", appDetails) + ); + } + + private Page createPage(ApplicationVersionSearchCondition condition) { + int pageNum = condition.getPageNum(); + int pageSize = condition.getPageSize(); + return new Page(pageNum, pageSize); + } + + /** + * Query column. + * + * @param columns columns + * @return A map containing relevant information + */ + @Override + public Map> queryColumn(List columns) { + Map> res = new HashMap<>(); + for (String column : columns) { + List colList = queryColumn(column); + if ("eulerOsVersion".equals(column)) { + colList = QueryWrapperUtil.sortOsColumn(colList); + } + res.put(column, colList); + } + return res; + } + + private List queryColumn(String column) { + List allowedColumns = Arrays.asList("eulerOsVersion"); + if (!allowedColumns.contains(column)) { + throw new ParamErrorException("Unsupported column: " + column); + } + + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.select("distinct " + StringUtil.camelToUnderline(column)); + List columnList = new ArrayList<>(); + try { + columnList = appVersionMapper.selectList(wrapper); + } catch (BadSqlGrammarException e) { + throw new ParamErrorException("unsupported param: " + column); + } + + String underlineToCamelColumn = StringUtil.underlineToCamel(column); + return ApplicationVersionConvertor.toColumn(columnList, underlineToCamelColumn); + } +} diff --git a/src/main/java/com/easysoftware/infrastructure/applicationversion/gatewayimpl/converter/ApplicationVersionConvertor.java b/src/main/java/com/easysoftware/infrastructure/applicationversion/gatewayimpl/converter/ApplicationVersionConvertor.java index 39ee8fd..0c70169 100644 --- a/src/main/java/com/easysoftware/infrastructure/applicationversion/gatewayimpl/converter/ApplicationVersionConvertor.java +++ b/src/main/java/com/easysoftware/infrastructure/applicationversion/gatewayimpl/converter/ApplicationVersionConvertor.java @@ -1,15 +1,24 @@ package com.easysoftware.infrastructure.applicationversion.gatewayimpl.converter; +import com.easysoftware.common.entity.MessageCode; import com.easysoftware.common.utils.UuidUtil; import com.easysoftware.domain.applicationversion.ApplicationVersion; import com.easysoftware.infrastructure.applicationversion.gatewayimpl.dataobject.ApplicationVersionDO; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.beans.BeanUtils; +import java.lang.reflect.Field; import java.sql.Timestamp; import java.util.ArrayList; import java.util.List; public final class ApplicationVersionConvertor { + /** + * Logger instance for RPMPackageConverter. + */ + private static final Logger LOGGER = LoggerFactory.getLogger(ApplicationVersionConvertor.class); // Private constructor to prevent instantiation of the utility class private ApplicationVersionConvertor() { @@ -88,5 +97,34 @@ public final class ApplicationVersionConvertor { return appVersionDO; } + + /** + * Extracts a specific column from a list of RPMPackageDO objects and returns it as a list of strings. + * + * @param columnList The list of ApplicationVersionDO objects. + * @param column The name of the column to extract. + * @return A list of strings representing the extracted column values. + */ + public static List toColumn(final List columnList, final String column) { + List res = new ArrayList<>(); + try { + Field field = ApplicationVersionDO.class.getDeclaredField(column); + field.setAccessible(true); + for (ApplicationVersionDO rPMPkgDO : columnList) { + if (rPMPkgDO == null) { + continue; + } + Object obj = field.get(rPMPkgDO); + if (!(obj instanceof String)) { + continue; + } + String value = (String) field.get(rPMPkgDO); + res.add(value); + } + } catch (Exception e) { + LOGGER.error(MessageCode.EC00011.getMsgEn(), e); + } + return res; + } } -- Gitee From 1a9959ae83799c63ec94cdd323acc7fb571a9eb4 Mon Sep 17 00:00:00 2001 From: aca Date: Thu, 16 May 2024 04:08:51 +0000 Subject: [PATCH 11/30] =?UTF-8?q?=E5=B0=86saveorUpdate()=E6=96=B9=E6=B3=95?= =?UTF-8?q?=E5=88=A4=E6=96=AD=E6=95=B0=E6=8D=AE=E8=A1=8C=E5=94=AF=E4=B8=80?= =?UTF-8?q?=E7=9A=84=E4=B8=BB=E9=94=AE=E8=A7=86=E4=B8=BApkgId?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: aca --- .../rpmpackage/gatewayimpl/dataobject/RPMPackageDO.java | 1 + 1 file changed, 1 insertion(+) diff --git a/src/main/java/com/easysoftware/infrastructure/rpmpackage/gatewayimpl/dataobject/RPMPackageDO.java b/src/main/java/com/easysoftware/infrastructure/rpmpackage/gatewayimpl/dataobject/RPMPackageDO.java index b696622..1ab86e1 100644 --- a/src/main/java/com/easysoftware/infrastructure/rpmpackage/gatewayimpl/dataobject/RPMPackageDO.java +++ b/src/main/java/com/easysoftware/infrastructure/rpmpackage/gatewayimpl/dataobject/RPMPackageDO.java @@ -178,6 +178,7 @@ public class RPMPackageDO { /** * Package ID. */ + @TableId private String pkgId; /** -- Gitee From 0dd95da45be445abdb3882c85176053bc629f51e Mon Sep 17 00:00:00 2001 From: gouzhonglin Date: Thu, 16 May 2024 17:37:08 +0800 Subject: [PATCH 12/30] fix bug --- .../FieldApplicationServiceImpl.java | 12 +++++++++++- .../converter/ApplicationPackageConverter.java | 6 +++++- .../gatewayimpl/dataobject/RPMPackageDO.java | 2 ++ .../java/com/easysoftware/ranking/RankerImpl.java | 5 ++--- 4 files changed, 20 insertions(+), 5 deletions(-) diff --git a/src/main/java/com/easysoftware/application/filedapplication/FieldApplicationServiceImpl.java b/src/main/java/com/easysoftware/application/filedapplication/FieldApplicationServiceImpl.java index 90cde2b..25d9ea3 100644 --- a/src/main/java/com/easysoftware/application/filedapplication/FieldApplicationServiceImpl.java +++ b/src/main/java/com/easysoftware/application/filedapplication/FieldApplicationServiceImpl.java @@ -22,6 +22,8 @@ import com.easysoftware.domain.epkgpackage.gateway.EPKGPackageGateway; import com.easysoftware.domain.fieldapplication.gateway.FieldapplicationGateway; import com.easysoftware.domain.rpmpackage.gateway.RPMPackageGateway; import com.easysoftware.infrastructure.fieldapplication.gatewayimpl.converter.FieldApplicationConverter; +import com.easysoftware.ranking.Ranker; + import jakarta.annotation.Resource; import org.apache.commons.lang3.StringUtils; import org.slf4j.Logger; @@ -81,6 +83,12 @@ public class FieldApplicationServiceImpl implements FieldApplicationService { @Resource private ApplicationPackageGateway appGateway; + /** + * Resource injection for the Ranker. + */ + @Resource + private Ranker ranker; + /** * Query menu by name. * @@ -123,7 +131,9 @@ public class FieldApplicationServiceImpl implements FieldApplicationService { String cate = field.getCategory(); cateMap.get(cate).add(field); } - return assembleMainPage(cateMap); + + List> mList = assembleMainPage(cateMap); + return ranker.rankingDomainPageByOperationConfig(mList); } /** diff --git a/src/main/java/com/easysoftware/infrastructure/applicationpackage/gatewayimpl/converter/ApplicationPackageConverter.java b/src/main/java/com/easysoftware/infrastructure/applicationpackage/gatewayimpl/converter/ApplicationPackageConverter.java index 890e5d0..8c55402 100644 --- a/src/main/java/com/easysoftware/infrastructure/applicationpackage/gatewayimpl/converter/ApplicationPackageConverter.java +++ b/src/main/java/com/easysoftware/infrastructure/applicationpackage/gatewayimpl/converter/ApplicationPackageConverter.java @@ -8,6 +8,7 @@ import com.easysoftware.common.entity.MessageCode; import com.easysoftware.common.utils.UuidUtil; import com.easysoftware.domain.applicationpackage.ApplicationPackage; import com.easysoftware.infrastructure.applicationpackage.gatewayimpl.dataobject.ApplicationPackageDO; +import org.apache.commons.lang3.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.BeanUtils; @@ -252,7 +253,10 @@ public final class ApplicationPackageConverter { continue; } String value = (String) field.get(appDo); - res.add(value); + if (StringUtils.isNotBlank(value)) { + res.add(value); + } + } } catch (Exception e) { LOGGER.error(MessageCode.EC00011.getMsgEn(), e); diff --git a/src/main/java/com/easysoftware/infrastructure/rpmpackage/gatewayimpl/dataobject/RPMPackageDO.java b/src/main/java/com/easysoftware/infrastructure/rpmpackage/gatewayimpl/dataobject/RPMPackageDO.java index b696622..898d2b7 100644 --- a/src/main/java/com/easysoftware/infrastructure/rpmpackage/gatewayimpl/dataobject/RPMPackageDO.java +++ b/src/main/java/com/easysoftware/infrastructure/rpmpackage/gatewayimpl/dataobject/RPMPackageDO.java @@ -1,5 +1,6 @@ package com.easysoftware.infrastructure.rpmpackage.gatewayimpl.dataobject; +import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import lombok.AllArgsConstructor; import lombok.Data; @@ -178,6 +179,7 @@ public class RPMPackageDO { /** * Package ID. */ + @TableId private String pkgId; /** diff --git a/src/main/java/com/easysoftware/ranking/RankerImpl.java b/src/main/java/com/easysoftware/ranking/RankerImpl.java index 6ec2fa4..e7b59e9 100644 --- a/src/main/java/com/easysoftware/ranking/RankerImpl.java +++ b/src/main/java/com/easysoftware/ranking/RankerImpl.java @@ -2,8 +2,7 @@ package com.easysoftware.ranking; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; - -import com.easysoftware.application.domainpackage.vo.DomainPackageMenuVo; +import com.easysoftware.application.filedapplication.vo.FiledApplicationVo; import com.easysoftware.application.operationconfig.vo.OperationConfigVo; import com.easysoftware.domain.operationconfig.gateway.OperationConfigGateway; @@ -96,7 +95,7 @@ public class RankerImpl implements Ranker { Iterator iterator = menuVoList.iterator(); while (iterator.hasNext()) { Object menuVoObj = iterator.next(); - DomainPackageMenuVo menuVo = (DomainPackageMenuVo) menuVoObj; + FiledApplicationVo menuVo = (FiledApplicationVo) menuVoObj; String softWareName = (String) menuVo.getName(); if (softWareName.equals(name)) { rankingList.add(menuVo); -- Gitee From 6d4d25eaa1c7b262b1cbd736753e43cbc95fed7c Mon Sep 17 00:00:00 2001 From: gouzhonglin Date: Fri, 17 May 2024 10:17:11 +0800 Subject: [PATCH 13/30] update cateogyr --- .../common/utils/QueryWrapperUtil.java | 14 ++++++++++++++ .../gatewayimpl/ApplicationPackageGatewayImpl.java | 3 +++ .../gatewayimpl/EPKGPackageGatewayImpl.java | 3 +++ .../gatewayimpl/FieldApplicationGatewayImpl.java | 3 +++ .../gatewayimpl/RPMPackageGatewayImpl.java | 3 +++ 5 files changed, 26 insertions(+) diff --git a/src/main/java/com/easysoftware/common/utils/QueryWrapperUtil.java b/src/main/java/com/easysoftware/common/utils/QueryWrapperUtil.java index 0c19b23..1f370e7 100644 --- a/src/main/java/com/easysoftware/common/utils/QueryWrapperUtil.java +++ b/src/main/java/com/easysoftware/common/utils/QueryWrapperUtil.java @@ -129,4 +129,18 @@ public final class QueryWrapperUtil { con.addAll(don); return con; } + + /** + * Sorts the list of strings representing category in ascending order. + * + * @param colList The list of strings representing category to be sorted + * @return A sorted list of strings representing category in ascending order + */ + public static List sortCategoryColumn(List colList) { + if (colList.contains("其他")) { + colList.remove("其他"); + colList.add("其他"); + } + return colList; + } } diff --git a/src/main/java/com/easysoftware/infrastructure/applicationpackage/gatewayimpl/ApplicationPackageGatewayImpl.java b/src/main/java/com/easysoftware/infrastructure/applicationpackage/gatewayimpl/ApplicationPackageGatewayImpl.java index f43716f..646e6d7 100644 --- a/src/main/java/com/easysoftware/infrastructure/applicationpackage/gatewayimpl/ApplicationPackageGatewayImpl.java +++ b/src/main/java/com/easysoftware/infrastructure/applicationpackage/gatewayimpl/ApplicationPackageGatewayImpl.java @@ -251,6 +251,9 @@ public class ApplicationPackageGatewayImpl implements ApplicationPackageGateway if ("os".equals(column)) { colList = QueryWrapperUtil.sortOsColumn(colList); } + if ("category".equals(column)) { + colList = QueryWrapperUtil.sortCategoryColumn(colList); + } res.put(column, colList); } return res; diff --git a/src/main/java/com/easysoftware/infrastructure/epkgpackage/gatewayimpl/EPKGPackageGatewayImpl.java b/src/main/java/com/easysoftware/infrastructure/epkgpackage/gatewayimpl/EPKGPackageGatewayImpl.java index 5b51343..e0c75b1 100644 --- a/src/main/java/com/easysoftware/infrastructure/epkgpackage/gatewayimpl/EPKGPackageGatewayImpl.java +++ b/src/main/java/com/easysoftware/infrastructure/epkgpackage/gatewayimpl/EPKGPackageGatewayImpl.java @@ -207,6 +207,9 @@ public class EPKGPackageGatewayImpl implements EPKGPackageGateway { if ("os".equals(column)) { colList = QueryWrapperUtil.sortOsColumn(colList); } + if ("category".equals(column)) { + colList = QueryWrapperUtil.sortCategoryColumn(colList); + } res.put(column, colList); } return res; diff --git a/src/main/java/com/easysoftware/infrastructure/fieldapplication/gatewayimpl/FieldApplicationGatewayImpl.java b/src/main/java/com/easysoftware/infrastructure/fieldapplication/gatewayimpl/FieldApplicationGatewayImpl.java index afe53be..d68a8c9 100644 --- a/src/main/java/com/easysoftware/infrastructure/fieldapplication/gatewayimpl/FieldApplicationGatewayImpl.java +++ b/src/main/java/com/easysoftware/infrastructure/fieldapplication/gatewayimpl/FieldApplicationGatewayImpl.java @@ -82,6 +82,9 @@ public class FieldApplicationGatewayImpl implements FieldapplicationGateway { if ("os".equals(column)) { colList = QueryWrapperUtil.sortOsColumn(colList); } + if ("category".equals(column)) { + colList = QueryWrapperUtil.sortCategoryColumn(colList); + } res.put(column, colList); } return res; diff --git a/src/main/java/com/easysoftware/infrastructure/rpmpackage/gatewayimpl/RPMPackageGatewayImpl.java b/src/main/java/com/easysoftware/infrastructure/rpmpackage/gatewayimpl/RPMPackageGatewayImpl.java index 243c7b6..af5991f 100644 --- a/src/main/java/com/easysoftware/infrastructure/rpmpackage/gatewayimpl/RPMPackageGatewayImpl.java +++ b/src/main/java/com/easysoftware/infrastructure/rpmpackage/gatewayimpl/RPMPackageGatewayImpl.java @@ -210,6 +210,9 @@ public class RPMPackageGatewayImpl implements RPMPackageGateway { if ("os".equals(column)) { colList = QueryWrapperUtil.sortOsColumn(colList); } + if ("category".equals(column)) { + colList = QueryWrapperUtil.sortCategoryColumn(colList); + } res.put(column, colList); } return res; -- Gitee From 7254009257b572a1184f5d00de03e377e453f3bb Mon Sep 17 00:00:00 2001 From: zwjsec Date: Fri, 17 May 2024 10:40:46 +0800 Subject: [PATCH 14/30] bug fixed: ranker --- .../java/com/easysoftware/ranking/RankerImpl.java | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) diff --git a/src/main/java/com/easysoftware/ranking/RankerImpl.java b/src/main/java/com/easysoftware/ranking/RankerImpl.java index e7b59e9..ac1a644 100644 --- a/src/main/java/com/easysoftware/ranking/RankerImpl.java +++ b/src/main/java/com/easysoftware/ranking/RankerImpl.java @@ -9,15 +9,12 @@ import com.easysoftware.domain.operationconfig.gateway.OperationConfigGateway; import java.util.List; import java.util.Map; import java.util.ArrayList; -import java.util.Collections; import java.util.Comparator; import java.util.Iterator; - @Component public class RankerImpl implements Ranker { - /** * OperationConfigGateway instance for handling operation configurations. */ @@ -34,7 +31,6 @@ public class RankerImpl implements Ranker { return null; } - /** * Rank domain pages based on operation configuration. * @@ -51,7 +47,6 @@ public class RankerImpl implements Ranker { for (OperationConfigVo config : rankingConfig) { String rankingCatego = config.getCategorys(); - // 排序边栏 Iterator> iterator = domainPage.iterator(); while (iterator.hasNext()) { @@ -65,10 +60,10 @@ public class RankerImpl implements Ranker { } } } - // 逆序排列 rankingList - Collections.reverse(rankingList); - // 一次性将 rankingList 添加到 domainPage 的开头 - domainPage.addAll(0, rankingList); + + for (int i = rankingList.size() - 1; i >= 0; i--) { + domainPage.add(0, rankingList.get(i)); + } return domainPage; } -- Gitee From b14361a223472899dbe5690f8ed20b8eef4de22d Mon Sep 17 00:00:00 2001 From: gouzhonglin Date: Sat, 18 May 2024 11:28:21 +0800 Subject: [PATCH 15/30] add license of rpm/epkg --- .../application/epkgpackage/dto/InputEPKGPackage.java | 6 ++++++ .../application/epkgpackage/vo/EPKGPackageDetailVo.java | 5 +++++ .../application/epkgpackage/vo/EPKGPackageMenuVo.java | 5 +++++ .../application/rpmpackage/dto/InputRPMPackage.java | 6 ++++++ .../application/rpmpackage/vo/RPMPackageDetailVo.java | 5 +++++ .../application/rpmpackage/vo/RPMPackageDomainVo.java | 5 +++++ .../application/rpmpackage/vo/RPMPackageMenuVo.java | 5 +++++ .../com/easysoftware/domain/epkgpackage/EPKGPackage.java | 5 +++++ .../java/com/easysoftware/domain/rpmpackage/RPMPackage.java | 4 ++++ .../epkgpackage/gatewayimpl/dataobject/EPKGPackageDO.java | 5 +++++ .../rpmpackage/gatewayimpl/dataobject/RPMPackageDO.java | 5 +++++ 11 files changed, 56 insertions(+) diff --git a/src/main/java/com/easysoftware/application/epkgpackage/dto/InputEPKGPackage.java b/src/main/java/com/easysoftware/application/epkgpackage/dto/InputEPKGPackage.java index bb5ec66..b353406 100644 --- a/src/main/java/com/easysoftware/application/epkgpackage/dto/InputEPKGPackage.java +++ b/src/main/java/com/easysoftware/application/epkgpackage/dto/InputEPKGPackage.java @@ -207,4 +207,10 @@ public class InputEPKGPackage { @Size(max = 255, message = "the length of subPath cannot exceed 255") private String subPath; + /** + * License. + */ + @Size(max = 255, message = "the length of license cannot exceed 255") + private String license; + } diff --git a/src/main/java/com/easysoftware/application/epkgpackage/vo/EPKGPackageDetailVo.java b/src/main/java/com/easysoftware/application/epkgpackage/vo/EPKGPackageDetailVo.java index ff5d198..2faa4f4 100644 --- a/src/main/java/com/easysoftware/application/epkgpackage/vo/EPKGPackageDetailVo.java +++ b/src/main/java/com/easysoftware/application/epkgpackage/vo/EPKGPackageDetailVo.java @@ -168,4 +168,9 @@ public class EPKGPackageDetailVo { */ private String subPath; + /** + * License. + */ + private String license; + } diff --git a/src/main/java/com/easysoftware/application/epkgpackage/vo/EPKGPackageMenuVo.java b/src/main/java/com/easysoftware/application/epkgpackage/vo/EPKGPackageMenuVo.java index 0901f09..54cac30 100644 --- a/src/main/java/com/easysoftware/application/epkgpackage/vo/EPKGPackageMenuVo.java +++ b/src/main/java/com/easysoftware/application/epkgpackage/vo/EPKGPackageMenuVo.java @@ -68,4 +68,9 @@ public class EPKGPackageMenuVo { */ private String subPath; + /** + * License. + */ + private String license; + } diff --git a/src/main/java/com/easysoftware/application/rpmpackage/dto/InputRPMPackage.java b/src/main/java/com/easysoftware/application/rpmpackage/dto/InputRPMPackage.java index be9eb5e..2aea191 100644 --- a/src/main/java/com/easysoftware/application/rpmpackage/dto/InputRPMPackage.java +++ b/src/main/java/com/easysoftware/application/rpmpackage/dto/InputRPMPackage.java @@ -200,4 +200,10 @@ public class InputRPMPackage { @Size(max = 255, message = "the length of subPath can not exceed 255") private String subPath; + /** + * License. + */ + @Size(max = 255, message = "the length of license can not exceed 255") + private String license; + } diff --git a/src/main/java/com/easysoftware/application/rpmpackage/vo/RPMPackageDetailVo.java b/src/main/java/com/easysoftware/application/rpmpackage/vo/RPMPackageDetailVo.java index e8db6a3..27a280b 100644 --- a/src/main/java/com/easysoftware/application/rpmpackage/vo/RPMPackageDetailVo.java +++ b/src/main/java/com/easysoftware/application/rpmpackage/vo/RPMPackageDetailVo.java @@ -168,4 +168,9 @@ public class RPMPackageDetailVo { */ private String subPath; + /** + * License. + */ + private String license; + } diff --git a/src/main/java/com/easysoftware/application/rpmpackage/vo/RPMPackageDomainVo.java b/src/main/java/com/easysoftware/application/rpmpackage/vo/RPMPackageDomainVo.java index b53d667..d0b444f 100644 --- a/src/main/java/com/easysoftware/application/rpmpackage/vo/RPMPackageDomainVo.java +++ b/src/main/java/com/easysoftware/application/rpmpackage/vo/RPMPackageDomainVo.java @@ -45,4 +45,9 @@ public class RPMPackageDomainVo { */ private String subPath; + /** + * License. + */ + private String license; + } diff --git a/src/main/java/com/easysoftware/application/rpmpackage/vo/RPMPackageMenuVo.java b/src/main/java/com/easysoftware/application/rpmpackage/vo/RPMPackageMenuVo.java index 87424b9..4617f70 100644 --- a/src/main/java/com/easysoftware/application/rpmpackage/vo/RPMPackageMenuVo.java +++ b/src/main/java/com/easysoftware/application/rpmpackage/vo/RPMPackageMenuVo.java @@ -68,4 +68,9 @@ public class RPMPackageMenuVo { */ private String subPath; + /** + * License. + */ + private String license; + } diff --git a/src/main/java/com/easysoftware/domain/epkgpackage/EPKGPackage.java b/src/main/java/com/easysoftware/domain/epkgpackage/EPKGPackage.java index 31b9e82..f1519c4 100644 --- a/src/main/java/com/easysoftware/domain/epkgpackage/EPKGPackage.java +++ b/src/main/java/com/easysoftware/domain/epkgpackage/EPKGPackage.java @@ -176,4 +176,9 @@ public class EPKGPackage { */ private String subPath; + /** + * License. + */ + private String license; + } diff --git a/src/main/java/com/easysoftware/domain/rpmpackage/RPMPackage.java b/src/main/java/com/easysoftware/domain/rpmpackage/RPMPackage.java index 19e8aaa..6964525 100644 --- a/src/main/java/com/easysoftware/domain/rpmpackage/RPMPackage.java +++ b/src/main/java/com/easysoftware/domain/rpmpackage/RPMPackage.java @@ -171,4 +171,8 @@ public class RPMPackage { */ private String subPath; + /** + * License. + */ + private String license; } diff --git a/src/main/java/com/easysoftware/infrastructure/epkgpackage/gatewayimpl/dataobject/EPKGPackageDO.java b/src/main/java/com/easysoftware/infrastructure/epkgpackage/gatewayimpl/dataobject/EPKGPackageDO.java index 051385b..297bb0b 100644 --- a/src/main/java/com/easysoftware/infrastructure/epkgpackage/gatewayimpl/dataobject/EPKGPackageDO.java +++ b/src/main/java/com/easysoftware/infrastructure/epkgpackage/gatewayimpl/dataobject/EPKGPackageDO.java @@ -194,4 +194,9 @@ public class EPKGPackageDO { * subPath. */ private String subPath; + + /** + * License. + */ + private String license; } diff --git a/src/main/java/com/easysoftware/infrastructure/rpmpackage/gatewayimpl/dataobject/RPMPackageDO.java b/src/main/java/com/easysoftware/infrastructure/rpmpackage/gatewayimpl/dataobject/RPMPackageDO.java index 898d2b7..c94d9ed 100644 --- a/src/main/java/com/easysoftware/infrastructure/rpmpackage/gatewayimpl/dataobject/RPMPackageDO.java +++ b/src/main/java/com/easysoftware/infrastructure/rpmpackage/gatewayimpl/dataobject/RPMPackageDO.java @@ -187,4 +187,9 @@ public class RPMPackageDO { */ private String subPath; + /** + * License. + */ + private String license; + } -- Gitee From 6ecf43761f54593a7f1885e44b198f7f392f2543 Mon Sep 17 00:00:00 2001 From: gi1tee Date: Sat, 18 May 2024 15:17:06 +0800 Subject: [PATCH 16/30] update --- Dockerfile | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/Dockerfile b/Dockerfile index 3ff989a..b57515f 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,5 +1,9 @@ FROM openeuler/openeuler:22.03-lts-sp1 as BUILDER +RUN sed -i "s|repo.openeuler.org|mirrors.nju.edu.cn/openeuler|g" /etc/yum.repos.d/openEuler.repo \ + && sed -i '/metalink/d' /etc/yum.repos.d/openEuler.repo \ + && sed -i '/metadata_expire/d' /etc/yum.repos.d/openEuler.repo + RUN cd / \ && yum install -y wget \ && wget https://mirrors.tuna.tsinghua.edu.cn/Adoptium/17/jdk/x64/linux/OpenJDK17U-jdk_x64_linux_hotspot_17.0.11_9.tar.gz \ @@ -20,6 +24,10 @@ RUN cd /EasySoftware \ FROM openeuler/openeuler:22.03-lts-sp1 +RUN sed -i "s|repo.openeuler.org|mirrors.nju.edu.cn/openeuler|g" /etc/yum.repos.d/openEuler.repo \ + && sed -i '/metalink/d' /etc/yum.repos.d/openEuler.repo \ + && sed -i '/metadata_expire/d' /etc/yum.repos.d/openEuler.repo + RUN yum update -y \ && yum install -y shadow passwd -- Gitee From f045142801fde88f7c72c1da9ebd53be23cf4edc Mon Sep 17 00:00:00 2001 From: gouzhonglin Date: Sat, 18 May 2024 17:43:47 +0800 Subject: [PATCH 17/30] update epkg --- .../application/epkgpackage/EPKGPackageServiceImpl.java | 2 +- .../epkgpackage/gatewayimpl/dataobject/EPKGPackageDO.java | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/easysoftware/application/epkgpackage/EPKGPackageServiceImpl.java b/src/main/java/com/easysoftware/application/epkgpackage/EPKGPackageServiceImpl.java index 5448e04..c420a6b 100644 --- a/src/main/java/com/easysoftware/application/epkgpackage/EPKGPackageServiceImpl.java +++ b/src/main/java/com/easysoftware/application/epkgpackage/EPKGPackageServiceImpl.java @@ -161,7 +161,7 @@ public class EPKGPackageServiceImpl extends */ @Override public void saveDataObjectBatch(final ArrayList dataObject) { - saveBatch(ePKGPackageGateway.convertBatch(dataObject)); + saveOrUpdateBatch(ePKGPackageGateway.convertBatch(dataObject)); } /** diff --git a/src/main/java/com/easysoftware/infrastructure/epkgpackage/gatewayimpl/dataobject/EPKGPackageDO.java b/src/main/java/com/easysoftware/infrastructure/epkgpackage/gatewayimpl/dataobject/EPKGPackageDO.java index 297bb0b..4842fbf 100644 --- a/src/main/java/com/easysoftware/infrastructure/epkgpackage/gatewayimpl/dataobject/EPKGPackageDO.java +++ b/src/main/java/com/easysoftware/infrastructure/epkgpackage/gatewayimpl/dataobject/EPKGPackageDO.java @@ -1,5 +1,6 @@ package com.easysoftware.infrastructure.epkgpackage.gatewayimpl.dataobject; +import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import lombok.AllArgsConstructor; import lombok.Data; @@ -188,6 +189,7 @@ public class EPKGPackageDO { /** * Package ID. */ + @TableId private String pkgId; /** -- Gitee From 557a5d3da35de5ebea4b6f176c3d0c3ae18a8f46 Mon Sep 17 00:00:00 2001 From: gouzhonglin Date: Sat, 18 May 2024 18:30:40 +0800 Subject: [PATCH 18/30] update license --- .../ApplicationPackageSearchCondition.java | 15 ++-- .../ApplicationVersionSearchCondition.java | 6 ++ .../dto/DomainSearchCondition.java | 13 +++- .../dto/EPKGPackageSearchCondition.java | 12 ++- .../epkgpackage/dto/InputEPKGPackage.java | 2 +- .../dto/FiledApplicationSerachCondition.java | 6 ++ .../rpmpackage/dto/InputRPMPackage.java | 2 +- .../dto/RPMPackageSearchCondition.java | 14 ++-- .../common/utils/QueryWrapperUtil.java | 78 ++++++++++++------- .../ApplicationVersionGatewayImpl.java | 8 +- 10 files changed, 99 insertions(+), 57 deletions(-) diff --git a/src/main/java/com/easysoftware/application/applicationpackage/dto/ApplicationPackageSearchCondition.java b/src/main/java/com/easysoftware/application/applicationpackage/dto/ApplicationPackageSearchCondition.java index 1106502..0a0fae5 100644 --- a/src/main/java/com/easysoftware/application/applicationpackage/dto/ApplicationPackageSearchCondition.java +++ b/src/main/java/com/easysoftware/application/applicationpackage/dto/ApplicationPackageSearchCondition.java @@ -3,8 +3,6 @@ package com.easysoftware.application.applicationpackage.dto; import org.hibernate.validator.constraints.Range; import com.easysoftware.common.constant.PackageConstant; -import com.easysoftware.common.exception.enumvalid.EnumValue; -import com.easysoftware.common.exception.enumvalid.TimeOrderEnum; import jakarta.validation.constraints.Size; import lombok.AllArgsConstructor; import lombok.Data; @@ -78,10 +76,15 @@ public class ApplicationPackageSearchCondition { private String appUpdateAt; /** - * Time order, validated using EnumValue annotation against TimeOrderEnum, - * must be a valid category, default value is "desc". + * Time order. */ - @EnumValue(enumClass = TimeOrderEnum.class, enumMethod = "isValidCategory") - private String timeOrder = "desc"; + @Size(max = PackageConstant.MAX_FIELD_LENGTH) + private String timeOrder; + + /** + * Name order. + */ + @Size(max = PackageConstant.MAX_FIELD_LENGTH) + private String nameOrder; } diff --git a/src/main/java/com/easysoftware/application/applicationversion/dto/ApplicationVersionSearchCondition.java b/src/main/java/com/easysoftware/application/applicationversion/dto/ApplicationVersionSearchCondition.java index 896f315..0449656 100644 --- a/src/main/java/com/easysoftware/application/applicationversion/dto/ApplicationVersionSearchCondition.java +++ b/src/main/java/com/easysoftware/application/applicationversion/dto/ApplicationVersionSearchCondition.java @@ -43,5 +43,11 @@ public class ApplicationVersionSearchCondition { */ @Size(max = PackageConstant.MAX_FIELD_LENGTH) private String column; + + /** + * Name order. + */ + @Size(max = PackageConstant.MAX_FIELD_LENGTH) + private String nameOrder; } diff --git a/src/main/java/com/easysoftware/application/domainpackage/dto/DomainSearchCondition.java b/src/main/java/com/easysoftware/application/domainpackage/dto/DomainSearchCondition.java index 3c74cb4..874767d 100644 --- a/src/main/java/com/easysoftware/application/domainpackage/dto/DomainSearchCondition.java +++ b/src/main/java/com/easysoftware/application/domainpackage/dto/DomainSearchCondition.java @@ -4,7 +4,6 @@ import org.hibernate.validator.constraints.Range; import com.easysoftware.common.constant.PackageConstant; import com.easysoftware.common.exception.enumvalid.DomainNameEnum; import com.easysoftware.common.exception.enumvalid.EnumValue; -import com.easysoftware.common.exception.enumvalid.TimeOrderEnum; import jakarta.validation.constraints.Size; import lombok.AllArgsConstructor; import lombok.Data; @@ -52,10 +51,10 @@ public class DomainSearchCondition { private String version; /** - * Time order with an enum value from TimeOrderEnum.isValidCategory, defaulting to "desc". + * Time order. */ - @EnumValue(enumClass = TimeOrderEnum.class, enumMethod = "isValidCategory") - private String timeOrder = "desc"; + @Size(max = PackageConstant.MAX_FIELD_LENGTH) + private String timeOrder; /** * Page number within the range of PackageConstant.MIN_PAGE_NUM and PackageConstant.MAX_PAGE_NUM. @@ -69,5 +68,11 @@ public class DomainSearchCondition { @Range(min = PackageConstant.MIN_PAGE_SIZE, max = PackageConstant.MAX_PAGE_SIZE) private Integer pageSize = 10; + /** + * Name order + */ + @Size(max = PackageConstant.MAX_FIELD_LENGTH) + private String nameOrder; + } diff --git a/src/main/java/com/easysoftware/application/epkgpackage/dto/EPKGPackageSearchCondition.java b/src/main/java/com/easysoftware/application/epkgpackage/dto/EPKGPackageSearchCondition.java index 9c77927..623f7c2 100644 --- a/src/main/java/com/easysoftware/application/epkgpackage/dto/EPKGPackageSearchCondition.java +++ b/src/main/java/com/easysoftware/application/epkgpackage/dto/EPKGPackageSearchCondition.java @@ -3,8 +3,6 @@ package com.easysoftware.application.epkgpackage.dto; import org.hibernate.validator.constraints.Range; import com.easysoftware.common.constant.PackageConstant; -import com.easysoftware.common.exception.enumvalid.EnumValue; -import com.easysoftware.common.exception.enumvalid.TimeOrderEnum; import jakarta.validation.constraints.Size; import lombok.AllArgsConstructor; @@ -82,9 +80,15 @@ public class EPKGPackageSearchCondition { private String epkgUpdateAt; /** - * Time order field validated against TimeOrderEnum's valid categories. + * Time order. */ - @EnumValue(enumClass = TimeOrderEnum.class, enumMethod = "isValidCategory") + @Size(max = PackageConstant.MAX_FIELD_LENGTH) private String timeOrder; + /** + * Name order. + */ + @Size(max = PackageConstant.MAX_FIELD_LENGTH) + private String nameOrder; + } diff --git a/src/main/java/com/easysoftware/application/epkgpackage/dto/InputEPKGPackage.java b/src/main/java/com/easysoftware/application/epkgpackage/dto/InputEPKGPackage.java index b353406..799eadb 100644 --- a/src/main/java/com/easysoftware/application/epkgpackage/dto/InputEPKGPackage.java +++ b/src/main/java/com/easysoftware/application/epkgpackage/dto/InputEPKGPackage.java @@ -210,7 +210,7 @@ public class InputEPKGPackage { /** * License. */ - @Size(max = 255, message = "the length of license cannot exceed 255") + @Size(max = 10_000, message = "the length of license cannot exceed 10000") private String license; } diff --git a/src/main/java/com/easysoftware/application/filedapplication/dto/FiledApplicationSerachCondition.java b/src/main/java/com/easysoftware/application/filedapplication/dto/FiledApplicationSerachCondition.java index b19d4fb..91b0195 100644 --- a/src/main/java/com/easysoftware/application/filedapplication/dto/FiledApplicationSerachCondition.java +++ b/src/main/java/com/easysoftware/application/filedapplication/dto/FiledApplicationSerachCondition.java @@ -51,6 +51,12 @@ public class FiledApplicationSerachCondition { /** * Time order. */ + @Size(max = PackageConstant.MAX_FIELD_LENGTH) private String timeOrder; + /** + * Name order. + */ + @Size(max = PackageConstant.MAX_FIELD_LENGTH) + private String nameOrder; } diff --git a/src/main/java/com/easysoftware/application/rpmpackage/dto/InputRPMPackage.java b/src/main/java/com/easysoftware/application/rpmpackage/dto/InputRPMPackage.java index 2aea191..1b4a9e8 100644 --- a/src/main/java/com/easysoftware/application/rpmpackage/dto/InputRPMPackage.java +++ b/src/main/java/com/easysoftware/application/rpmpackage/dto/InputRPMPackage.java @@ -203,7 +203,7 @@ public class InputRPMPackage { /** * License. */ - @Size(max = 255, message = "the length of license can not exceed 255") + @Size(max = 10_000, message = "the length of license can not exceed 10000") private String license; } diff --git a/src/main/java/com/easysoftware/application/rpmpackage/dto/RPMPackageSearchCondition.java b/src/main/java/com/easysoftware/application/rpmpackage/dto/RPMPackageSearchCondition.java index b016f3b..fe1a4a5 100644 --- a/src/main/java/com/easysoftware/application/rpmpackage/dto/RPMPackageSearchCondition.java +++ b/src/main/java/com/easysoftware/application/rpmpackage/dto/RPMPackageSearchCondition.java @@ -3,8 +3,6 @@ package com.easysoftware.application.rpmpackage.dto; import org.hibernate.validator.constraints.Range; import com.easysoftware.common.constant.PackageConstant; -import com.easysoftware.common.exception.enumvalid.EnumValue; -import com.easysoftware.common.exception.enumvalid.TimeOrderEnum; import jakarta.validation.constraints.Size; import lombok.AllArgsConstructor; @@ -78,10 +76,14 @@ public class RPMPackageSearchCondition { private String rpmUpdateAt; /** - * Field for timeOrder that must be a valid category according to TimeOrderEnum. - * Default value is "desc". + * Time order. */ - @EnumValue(enumClass = TimeOrderEnum.class, enumMethod = "isValidCategory") - private String timeOrder = "desc"; + @Size(max = PackageConstant.MAX_FIELD_LENGTH) + private String timeOrder; + /** + * Name order. + */ + @Size(max = PackageConstant.MAX_FIELD_LENGTH) + private String nameOrder; } diff --git a/src/main/java/com/easysoftware/common/utils/QueryWrapperUtil.java b/src/main/java/com/easysoftware/common/utils/QueryWrapperUtil.java index 1f370e7..36d9054 100644 --- a/src/main/java/com/easysoftware/common/utils/QueryWrapperUtil.java +++ b/src/main/java/com/easysoftware/common/utils/QueryWrapperUtil.java @@ -30,6 +30,46 @@ public final class QueryWrapperUtil { */ private static final Logger LOGGER = LoggerFactory.getLogger(QueryWrapperUtil.class); + /** + * get field value. + * + * @param field The field + * @param u The second generic type U + * @param the type of array elements + * @return A String + */ + private static String getFieldValue(Field field, U u) { + field.setAccessible(true); + + Object value = null; + try { + value = field.get(u); + } catch (Exception e) { + LOGGER.error(MessageCode.EC00011.getMsgEn(), e); + } + if (!(value instanceof String)) { + return ""; + } + + String vStr = (String) value; + return StringUtils.trimToEmpty(vStr); + } + + /** + * setColumnOrder. + * + * @param wrapper The wrapper + * @param column The column + * @param vStr the vStr + * @param the type of array elements + */ + private static void setColumnOrder(QueryWrapper wrapper, String column, String vStr) { + if (TimeOrderEnum.DESC.getAlias().equals(vStr)) { + wrapper.orderByDesc(column); + } else if (TimeOrderEnum.ASC.getAlias().equals(vStr)) { + wrapper.orderByAsc(column); + } + } /** * Create a QueryWrapper for given generic types T and U, with an updateAt parameter. @@ -46,47 +86,27 @@ public final class QueryWrapperUtil { Field[] fields = u.getClass().getDeclaredFields(); for (Field field : fields) { - field.setAccessible(true); + String vStr = getFieldValue(field, u); - Object value = null; - try { - value = field.get(u); - } catch (Exception e) { - LOGGER.error(MessageCode.EC00011.getMsgEn(), e); - } - if (!(value instanceof String)) { + if ("timeOrder".equals(field.getName())) { + setColumnOrder(wrapper, updateAt, vStr); continue; } - String vStr = (String) value; - vStr = StringUtils.trimToEmpty(vStr); - if (StringUtils.isBlank(vStr)) { - continue; - } - - if ("timeOrder".equals(field.getName()) && TimeOrderEnum.DESC.getAlias().equals(vStr)) { - wrapper.orderByDesc(updateAt); - continue; - } - if ("timeOrder".equals(field.getName()) && TimeOrderEnum.ASC.getAlias().equals(vStr)) { - wrapper.orderByAsc(updateAt); + if ("nameOrder".equals(field.getName())) { + setColumnOrder(wrapper, "name", vStr); continue; } String undLine = StringUtil.camelToUnderline(field.getName()); //","代表该字段有多个参数 - if (vStr.contains(",")) { - List items = splitStr(vStr); - if (items.size() == 0) { - continue; - } + List items = splitStr(vStr); + if (items.size() >= 2) { wrapper.in(undLine, items); - } else { - vStr = StringUtils.trimToEmpty(vStr); - wrapper.eq(undLine, vStr); + } else if (items.size() == 1) { + wrapper.eq(undLine, items.get(0)); } - } return wrapper; } diff --git a/src/main/java/com/easysoftware/infrastructure/applicationversion/gatewayimpl/ApplicationVersionGatewayImpl.java b/src/main/java/com/easysoftware/infrastructure/applicationversion/gatewayimpl/ApplicationVersionGatewayImpl.java index 5d4282d..e2c5c94 100644 --- a/src/main/java/com/easysoftware/infrastructure/applicationversion/gatewayimpl/ApplicationVersionGatewayImpl.java +++ b/src/main/java/com/easysoftware/infrastructure/applicationversion/gatewayimpl/ApplicationVersionGatewayImpl.java @@ -14,7 +14,6 @@ import com.easysoftware.infrastructure.applicationversion.gatewayimpl.dataobject import com.easysoftware.infrastructure.mapper.ApplicationVersionDOMapper; import com.power.common.util.StringUtil; -import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.jdbc.BadSqlGrammarException; import org.springframework.stereotype.Component; @@ -153,11 +152,8 @@ public class ApplicationVersionGatewayImpl implements ApplicationVersionGateway public Map queryByEulerOsVersion(ApplicationVersionSearchCondition condition) { Page page = this.createPage(condition); - QueryWrapper wrapper = null; - if (StringUtils.isNotBlank(StringUtils.trimToEmpty(condition.getEulerOsVersion()))) { - wrapper = new QueryWrapper<>(); - wrapper.eq("euler_os_version", StringUtils.trimToEmpty(condition.getEulerOsVersion())); - } + QueryWrapper wrapper = QueryWrapperUtil.createQueryWrapper(new ApplicationVersionDO(), + condition, ""); Page resPage = appVersionMapper.selectPage(page, wrapper); List appList = resPage.getRecords(); -- Gitee From c7c39893b3a22f564eab64ee6fc76d3d3424803e Mon Sep 17 00:00:00 2001 From: zwjsec Date: Mon, 20 May 2024 15:32:33 +0800 Subject: [PATCH 19/30] bug fixed --- .../java/com/easysoftware/common/constant/PackageConstant.java | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/main/java/com/easysoftware/common/constant/PackageConstant.java b/src/main/java/com/easysoftware/common/constant/PackageConstant.java index 0cee104..8292cfb 100644 --- a/src/main/java/com/easysoftware/common/constant/PackageConstant.java +++ b/src/main/java/com/easysoftware/common/constant/PackageConstant.java @@ -2,7 +2,6 @@ package com.easysoftware.common.constant; public final class PackageConstant { - // Private constructor to prevent instantiation of the PackageConstant class private PackageConstant() { // private constructor to hide the implicit public one @@ -12,7 +11,7 @@ public final class PackageConstant { /** * Maximum page number allowed. */ - public static final int MAX_PAGE_NUM = 1_0000; + public static final int MAX_PAGE_NUM = 100000; /** * Minimum page number allowed. -- Gitee From ff8713bccecb5dbbfdc4e43dc9c0258a8b010d76 Mon Sep 17 00:00:00 2001 From: gouzhonglin Date: Mon, 20 May 2024 16:21:17 +0800 Subject: [PATCH 20/30] update --- .../application/domainpackage/dto/DomainSearchCondition.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/com/easysoftware/application/domainpackage/dto/DomainSearchCondition.java b/src/main/java/com/easysoftware/application/domainpackage/dto/DomainSearchCondition.java index 874767d..5e62419 100644 --- a/src/main/java/com/easysoftware/application/domainpackage/dto/DomainSearchCondition.java +++ b/src/main/java/com/easysoftware/application/domainpackage/dto/DomainSearchCondition.java @@ -69,7 +69,7 @@ public class DomainSearchCondition { private Integer pageSize = 10; /** - * Name order + * Name order. */ @Size(max = PackageConstant.MAX_FIELD_LENGTH) private String nameOrder; -- Gitee From 9cfcce71ca420a580b24ca5726fce5667264d06a Mon Sep 17 00:00:00 2001 From: zwjsec Date: Tue, 21 May 2024 10:32:06 +0800 Subject: [PATCH 21/30] =?UTF-8?q?=E3=80=90feature=E3=80=91RPM=E5=8C=85?= =?UTF-8?q?=E6=AC=A7=E6=8B=89=E7=89=88=E6=9C=AC=E3=80=81=E6=9E=B6=E6=9E=84?= =?UTF-8?q?=E8=81=9A=E5=90=88=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../adapter/query/RPMPackageQueryAdapter.java | 29 +++++++- .../rpmpackage/RPMPackageService.java | 16 +++++ .../rpmpackage/RPMPackageServiceImpl.java | 33 +++++++-- .../rpmpackage/vo/RPMPackageEulerArchsVo.java | 15 ++++ .../vo/RPMPackageEulerVersionVo.java | 15 ++++ .../rpmpackage/gateway/RPMPackageGateway.java | 22 +++++- .../gatewayimpl/RPMPackageGatewayImpl.java | 69 ++++++++++++++++--- .../converter/RPMPackageConverter.java | 52 ++++++++++++-- 8 files changed, 227 insertions(+), 24 deletions(-) create mode 100644 src/main/java/com/easysoftware/application/rpmpackage/vo/RPMPackageEulerArchsVo.java create mode 100644 src/main/java/com/easysoftware/application/rpmpackage/vo/RPMPackageEulerVersionVo.java diff --git a/src/main/java/com/easysoftware/adapter/query/RPMPackageQueryAdapter.java b/src/main/java/com/easysoftware/adapter/query/RPMPackageQueryAdapter.java index 3fe0d69..861d4ca 100644 --- a/src/main/java/com/easysoftware/adapter/query/RPMPackageQueryAdapter.java +++ b/src/main/java/com/easysoftware/adapter/query/RPMPackageQueryAdapter.java @@ -10,6 +10,7 @@ import com.easysoftware.application.rpmpackage.dto.RPMPackageSearchCondition; import com.easysoftware.common.aop.RequestLimitRedis; import jakarta.validation.Valid; +import org.springframework.web.bind.annotation.RequestParam; @RestController @RequestMapping("/rpmpkg") @@ -28,8 +29,34 @@ public class RPMPackageQueryAdapter { * @return ResponseEntity. */ @GetMapping() - @RequestLimitRedis() //dos-global设置 2s内 单一ip调用超5次触发 + @RequestLimitRedis() // dos-global设置 2s内 单一ip调用超5次触发 public ResponseEntity searchRPMPkg(@Valid final RPMPackageSearchCondition condition) { return rPMPkgService.searchRPMPkg(condition); } + + /** + * Endpoint to query for all avalaible openEuler version of RPM packages based + * on the provided search condition. + * + * @param condition The search condition for querying RPM packages. + * @return ResponseEntity. + */ + @GetMapping("/eulerver") + @RequestLimitRedis() + public ResponseEntity queryEulerVersionsByName(@Valid final RPMPackageSearchCondition condition) { + return rPMPkgService.queryEulerVersionsByName(condition); + } + + /** + * Endpoint to query for all avalaible openEuler arch of RPM packages based + * on the provided search condition. + * + * @param condition The search condition for querying RPM packages. + * @return ResponseEntity. + */ + @GetMapping("/eulerarch") + @RequestLimitRedis() + public ResponseEntity queryEulerArchsByName(@Valid final RPMPackageSearchCondition condition) { + return rPMPkgService.queryEulerArchsByName(condition); + } } diff --git a/src/main/java/com/easysoftware/application/rpmpackage/RPMPackageService.java b/src/main/java/com/easysoftware/application/rpmpackage/RPMPackageService.java index 539699f..d9fc294 100644 --- a/src/main/java/com/easysoftware/application/rpmpackage/RPMPackageService.java +++ b/src/main/java/com/easysoftware/application/rpmpackage/RPMPackageService.java @@ -52,6 +52,22 @@ public interface RPMPackageService extends BaseIService { */ Map queryAllRPMPkgMenu(RPMPackageSearchCondition condition); + /** + * Queries available openEuler version of RPM package. + * + * @param condition The search condition. + * @return Map containing the openEuler versions. + */ + ResponseEntity queryEulerVersionsByName(RPMPackageSearchCondition condition); + + /** + * Queries available openEuler archs of RPM package. + * + * @param condition The search condition. + * @return Map containing the openEuler versions. + */ + ResponseEntity queryEulerArchsByName(RPMPackageSearchCondition condition); + /** * Checks if an application exists. * diff --git a/src/main/java/com/easysoftware/application/rpmpackage/RPMPackageServiceImpl.java b/src/main/java/com/easysoftware/application/rpmpackage/RPMPackageServiceImpl.java index fb2e470..6a950ae 100644 --- a/src/main/java/com/easysoftware/application/rpmpackage/RPMPackageServiceImpl.java +++ b/src/main/java/com/easysoftware/application/rpmpackage/RPMPackageServiceImpl.java @@ -70,7 +70,6 @@ public class RPMPackageServiceImpl extends ServiceImpl queryEulerVersionsByName(RPMPackageSearchCondition condition) { + Map res = rPMPkgGateway.queryEulerVersionByName(condition); + return ResultUtil.success(HttpStatus.OK, res); + } + + /** + * Queries all available openEuler archs of RPM package. + * + * @param condition The search condition. + * @return Map containing the RPM package menu. + */ + @Override + public ResponseEntity queryEulerArchsByName(RPMPackageSearchCondition condition) { + Map res = rPMPkgGateway.queryEulerArchsByName(condition); + return ResultUtil.success(HttpStatus.OK, res); + } + /** * Deletes RPM packages. * @@ -127,8 +150,7 @@ public class RPMPackageServiceImpl extends ServiceImpl res = Map.ofEntries( Map.entry("total", rpmList.size()), - Map.entry("list", rpmList) - ); + Map.entry("list", rpmList)); return ResultUtil.success(HttpStatus.OK, res); } @@ -159,7 +181,6 @@ public class RPMPackageServiceImpl extends ServiceImpl) rPMMenu.get("list"); } - } diff --git a/src/main/java/com/easysoftware/application/rpmpackage/vo/RPMPackageEulerArchsVo.java b/src/main/java/com/easysoftware/application/rpmpackage/vo/RPMPackageEulerArchsVo.java new file mode 100644 index 0000000..63be73e --- /dev/null +++ b/src/main/java/com/easysoftware/application/rpmpackage/vo/RPMPackageEulerArchsVo.java @@ -0,0 +1,15 @@ +package com.easysoftware.application.rpmpackage.vo; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@AllArgsConstructor +@NoArgsConstructor +public class RPMPackageEulerArchsVo { + /** + * OpenEuler versions of the package. + */ + private String arch; +} diff --git a/src/main/java/com/easysoftware/application/rpmpackage/vo/RPMPackageEulerVersionVo.java b/src/main/java/com/easysoftware/application/rpmpackage/vo/RPMPackageEulerVersionVo.java new file mode 100644 index 0000000..72c5c4a --- /dev/null +++ b/src/main/java/com/easysoftware/application/rpmpackage/vo/RPMPackageEulerVersionVo.java @@ -0,0 +1,15 @@ +package com.easysoftware.application.rpmpackage.vo; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@AllArgsConstructor +@NoArgsConstructor +public class RPMPackageEulerVersionVo { + /** + * OpenEuler versions of the package. + */ + private String os; +} diff --git a/src/main/java/com/easysoftware/domain/rpmpackage/gateway/RPMPackageGateway.java b/src/main/java/com/easysoftware/domain/rpmpackage/gateway/RPMPackageGateway.java index 8e047a4..2a5f742 100644 --- a/src/main/java/com/easysoftware/domain/rpmpackage/gateway/RPMPackageGateway.java +++ b/src/main/java/com/easysoftware/domain/rpmpackage/gateway/RPMPackageGateway.java @@ -53,7 +53,8 @@ public interface RPMPackageGateway { int delete(List id); /** - * Query detailed information based on the provided search condition for RPM packages. + * Query detailed information based on the provided search condition for RPM + * packages. * * @param condition The search condition for querying RPM package details * @return A map containing detailed information @@ -102,7 +103,8 @@ public interface RPMPackageGateway { /** * Query part of the RPM package menu based on the provided search condition. * - * @param condition The search condition for querying a part of the RPM package menu + * @param condition The search condition for querying a part of the RPM package + * menu * @return A map containing relevant information */ Map queryPartRPMPkgMenu(RPMPackageSearchCondition condition); @@ -115,4 +117,20 @@ public interface RPMPackageGateway { */ RPMPackageMenuVo selectOne(String name); + /** + * Query Euler Version based on the provided search condition. + * + * @param condition The search condition for querying EulerVersion + * @return A map containing tags information + */ + Map queryEulerVersionByName(RPMPackageSearchCondition condition); + + /** + * Query Euler archs based on the provided search condition. + * + * @param condition The search condition for querying EulerVersion + * @return A map containing tags information + */ + Map queryEulerArchsByName(RPMPackageSearchCondition condition); + } diff --git a/src/main/java/com/easysoftware/infrastructure/rpmpackage/gatewayimpl/RPMPackageGatewayImpl.java b/src/main/java/com/easysoftware/infrastructure/rpmpackage/gatewayimpl/RPMPackageGatewayImpl.java index af5991f..f99fb87 100644 --- a/src/main/java/com/easysoftware/infrastructure/rpmpackage/gatewayimpl/RPMPackageGatewayImpl.java +++ b/src/main/java/com/easysoftware/infrastructure/rpmpackage/gatewayimpl/RPMPackageGatewayImpl.java @@ -8,6 +8,8 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.easysoftware.application.rpmpackage.dto.RPMPackageSearchCondition; import com.easysoftware.application.rpmpackage.vo.RPMPackageDetailVo; import com.easysoftware.application.rpmpackage.vo.RPMPackageDomainVo; +import com.easysoftware.application.rpmpackage.vo.RPMPackageEulerArchsVo; +import com.easysoftware.application.rpmpackage.vo.RPMPackageEulerVersionVo; import com.easysoftware.application.rpmpackage.vo.RPMPackageMenuVo; import com.easysoftware.common.exception.ParamErrorException; import com.easysoftware.common.utils.ClassField; @@ -51,7 +53,6 @@ public class RPMPackageGatewayImpl implements RPMPackageGateway { @Autowired private ObjectMapper objectMapper; - /** * Logger for RPMPackageGatewayImpl class. */ @@ -93,7 +94,8 @@ public class RPMPackageGatewayImpl implements RPMPackageGateway { } /** - * Query detailed information based on the provided search condition for RPM packages. + * Query detailed information based on the provided search condition for RPM + * packages. * * @param condition The search condition for querying RPM package details * @return A map containing detailed information @@ -110,8 +112,7 @@ public class RPMPackageGatewayImpl implements RPMPackageGateway { Map res = Map.ofEntries( Map.entry("total", total), - Map.entry("list", rPMDetails) - ); + Map.entry("list", rPMDetails)); return res; } @@ -179,15 +180,15 @@ public class RPMPackageGatewayImpl implements RPMPackageGateway { Map res = Map.ofEntries( Map.entry("total", total), - Map.entry("list", rPMMenus) - ); + Map.entry("list", rPMMenus)); return res; } /** * Creates a Page of RPMPackageDO based on the provided search condition. * - * @param condition The RPMPackageSearchCondition object to create the page from. + * @param condition The RPMPackageSearchCondition object to create the page + * from. * @return A Page of RPMPackageDO entities. */ private Page createPage(final RPMPackageSearchCondition condition) { @@ -282,7 +283,8 @@ public class RPMPackageGatewayImpl implements RPMPackageGateway { /** * Query part of the RPM package menu based on the provided search condition. * - * @param condition The search condition for querying a part of the RPM package menu + * @param condition The search condition for querying a part of the RPM package + * menu * @return A map containing relevant information */ @Override @@ -297,8 +299,55 @@ public class RPMPackageGatewayImpl implements RPMPackageGateway { List menus = RPMPackageConverter.toDomain(rpmList); Map res = Map.ofEntries( Map.entry("total", menus.size()), - Map.entry("list", menus) - ); + Map.entry("list", menus)); + return res; + } + + /** + * Query the Euler Version based on the provided search condition. + * + * @param condition The search condition for querying a part of the RPM Euler + * Version + * @return A map containing relevant information + */ + @Override + public Map queryEulerVersionByName(final RPMPackageSearchCondition condition) { + QueryWrapper wrapper = QueryWrapperUtil.createQueryWrapper(new RPMPackageDO(), + condition, ""); + RPMPackageEulerVersionVo pkgVo = new RPMPackageEulerVersionVo(); + List columns = ClassField.getFieldNames(pkgVo); + wrapper.eq("name", condition.getName()) + .select(columns) + .groupBy("os"); + List rpmList = rPMPkgMapper.selectList(wrapper); + List versions = RPMPackageConverter.toVersion(rpmList); + Map res = Map.ofEntries( + Map.entry("total", versions.size()), + Map.entry("list", versions)); + return res; + } + + /** + * Query the Euler archs based on the provided search condition. + * + * @param condition The search condition for querying a part of the RPM Euler + * archs + * @return A map containing relevant information + */ + @Override + public Map queryEulerArchsByName(final RPMPackageSearchCondition condition) { + QueryWrapper wrapper = QueryWrapperUtil.createQueryWrapper(new RPMPackageDO(), + condition, ""); + RPMPackageEulerArchsVo pkgVo = new RPMPackageEulerArchsVo(); + List columns = ClassField.getFieldNames(pkgVo); + wrapper.eq("name", condition.getName()) + .select(columns) + .groupBy("arch"); + List rpmList = rPMPkgMapper.selectList(wrapper); + List versions = RPMPackageConverter.toArchs(rpmList); + Map res = Map.ofEntries( + Map.entry("total", versions.size()), + Map.entry("list", versions)); return res; } diff --git a/src/main/java/com/easysoftware/infrastructure/rpmpackage/gatewayimpl/converter/RPMPackageConverter.java b/src/main/java/com/easysoftware/infrastructure/rpmpackage/gatewayimpl/converter/RPMPackageConverter.java index f1682ff..45df8db 100644 --- a/src/main/java/com/easysoftware/infrastructure/rpmpackage/gatewayimpl/converter/RPMPackageConverter.java +++ b/src/main/java/com/easysoftware/infrastructure/rpmpackage/gatewayimpl/converter/RPMPackageConverter.java @@ -2,6 +2,8 @@ package com.easysoftware.infrastructure.rpmpackage.gatewayimpl.converter; import com.easysoftware.application.rpmpackage.vo.RPMPackageDetailVo; import com.easysoftware.application.rpmpackage.vo.RPMPackageDomainVo; +import com.easysoftware.application.rpmpackage.vo.RPMPackageEulerArchsVo; +import com.easysoftware.application.rpmpackage.vo.RPMPackageEulerVersionVo; import com.easysoftware.application.rpmpackage.vo.RPMPackageMenuVo; import com.easysoftware.common.entity.MessageCode; import com.easysoftware.common.utils.UuidUtil; @@ -42,10 +44,11 @@ public final class RPMPackageConverter { } /** - * Extracts a specific column from a list of RPMPackageDO objects and returns it as a list of strings. + * Extracts a specific column from a list of RPMPackageDO objects and returns it + * as a list of strings. * * @param rPMPkgDOs The list of RPMPackageDO objects. - * @param column The name of the column to extract. + * @param column The name of the column to extract. * @return A list of strings representing the extracted column values. */ public static List toColumn(final List rPMPkgDOs, final String column) { @@ -86,7 +89,8 @@ public final class RPMPackageConverter { } /** - * Converts a list of RPMPackageDO objects to a list of RPMPackageDetailVo view objects. + * Converts a list of RPMPackageDO objects to a list of RPMPackageDetailVo view + * objects. * * @param rPMPkgDOs The list of RPMPackageDO objects to convert. * @return A list of RPMPackageDetailVo view objects. @@ -103,7 +107,8 @@ public final class RPMPackageConverter { } /** - * Converts a list of RPMPackageDO objects to a list of RPMPackageMenuVo view objects. + * Converts a list of RPMPackageDO objects to a list of RPMPackageMenuVo view + * objects. * * @param rPMPkgDOs The list of RPMPackageDO objects to convert. * @return A list of RPMPackageMenuVo view objects. @@ -131,7 +136,8 @@ public final class RPMPackageConverter { } /** - * Converts a list of RPMPackageDO objects to a list of RPMPackageDomainVo view objects. + * Converts a list of RPMPackageDO objects to a list of RPMPackageDomainVo view + * objects. * * @param rpmPkgDOs The list of RPMPackageDO objects to convert. * @return A list of RPMPackageDomainVo view objects. @@ -149,6 +155,42 @@ public final class RPMPackageConverter { return res; } + /** + * Converts a list of RPMPackageDO objects to a list of RPMPackageEulerVersionVo + * view + * objects. + * + * @param rpmPkgDOs The list of RPMPackageDO objects to convert. + * @return A list of RPMPackageEulerVersionVo view objects. + */ + public static List toVersion(final List rpmPkgDOs) { + List res = new ArrayList<>(); + for (RPMPackageDO rpm : rpmPkgDOs) { + RPMPackageEulerVersionVo version = new RPMPackageEulerVersionVo(); + version.setOs(rpm.getOs()); + res.add(version); + } + return res; + } + + /** + * Converts a list of RPMPackageDO objects to a list of RPMPackageEulerArchsVo + * view + * objects. + * + * @param rpmPkgDOs The list of RPMPackageDO objects to convert. + * @return A list of RPMPackageEulerArchsVo view objects. + */ + public static List toArchs(final List rpmPkgDOs) { + List res = new ArrayList<>(); + for (RPMPackageDO rpm : rpmPkgDOs) { + RPMPackageEulerArchsVo version = new RPMPackageEulerArchsVo(); + version.setArch(rpm.getArch()); + res.add(version); + } + return res; + } + /** * Converts an RPMPackage entity to an RPMPackageDO data object. * -- Gitee From 5fc10ed8958ed7d79cedd5a126ccb238b59b5a47 Mon Sep 17 00:00:00 2001 From: zwjsec Date: Tue, 21 May 2024 11:04:26 +0800 Subject: [PATCH 22/30] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E8=A7=84=E8=8C=83?= =?UTF-8?q?=E6=95=B4=E6=94=B9=20=E7=A7=BB=E9=99=A4=E6=9C=AA=E7=94=A8?= =?UTF-8?q?=E5=88=B0=E7=9A=84=E5=8C=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/easysoftware/adapter/query/RPMPackageQueryAdapter.java | 1 - 1 file changed, 1 deletion(-) diff --git a/src/main/java/com/easysoftware/adapter/query/RPMPackageQueryAdapter.java b/src/main/java/com/easysoftware/adapter/query/RPMPackageQueryAdapter.java index 861d4ca..9cc7aed 100644 --- a/src/main/java/com/easysoftware/adapter/query/RPMPackageQueryAdapter.java +++ b/src/main/java/com/easysoftware/adapter/query/RPMPackageQueryAdapter.java @@ -10,7 +10,6 @@ import com.easysoftware.application.rpmpackage.dto.RPMPackageSearchCondition; import com.easysoftware.common.aop.RequestLimitRedis; import jakarta.validation.Valid; -import org.springframework.web.bind.annotation.RequestParam; @RestController @RequestMapping("/rpmpkg") -- Gitee From 50888313ada10accbd3af7901178d709d7d84c79 Mon Sep 17 00:00:00 2001 From: zwjsec Date: Tue, 21 May 2024 15:39:41 +0800 Subject: [PATCH 23/30] =?UTF-8?q?=E3=80=90feature=E3=80=91=E5=AE=B9?= =?UTF-8?q?=E5=99=A8=E9=95=9C=E5=83=8F=E3=80=81epkg=E6=AC=A7=E6=8B=89?= =?UTF-8?q?=E7=89=88=E6=9C=AC=E4=B8=8E=E6=9E=B6=E6=9E=84=E8=81=9A=E5=90=88?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../query/ApplicationPackageQueryAdapter.java | 28 ++++++++ .../query/EPKGPackageQueryAdapter.java | 26 +++++++ .../ApplicationPackageService.java | 22 +++++- .../ApplicationPackageServiceImpl.java | 31 ++++++++- .../vo/ApplicationPackageEulerArchsVo.java | 15 ++++ .../vo/ApplicationPackageEulerVersionVo.java | 15 ++++ .../epkgpackage/EPKGPackageService.java | 18 ++++- .../epkgpackage/EPKGPackageServiceImpl.java | 27 +++++++- .../vo/EPKGPackageEulerArchsVo.java | 15 ++++ .../vo/EPKGPackageEulerVersionVo.java | 15 ++++ .../gateway/ApplicationPackageGateway.java | 16 +++++ .../gateway/EPKGPackageGateway.java | 15 ++++ .../ApplicationPackageGatewayImpl.java | 68 +++++++++++++++---- .../ApplicationPackageConverter.java | 65 +++++++++++++++--- .../gatewayimpl/EPKGPackageGatewayImpl.java | 60 ++++++++++++++-- .../converter/EPKGPackageConverter.java | 46 ++++++++++++- .../converter/RPMPackageConverter.java | 6 +- 17 files changed, 447 insertions(+), 41 deletions(-) create mode 100644 src/main/java/com/easysoftware/application/applicationpackage/vo/ApplicationPackageEulerArchsVo.java create mode 100644 src/main/java/com/easysoftware/application/applicationpackage/vo/ApplicationPackageEulerVersionVo.java create mode 100644 src/main/java/com/easysoftware/application/epkgpackage/vo/EPKGPackageEulerArchsVo.java create mode 100644 src/main/java/com/easysoftware/application/epkgpackage/vo/EPKGPackageEulerVersionVo.java diff --git a/src/main/java/com/easysoftware/adapter/query/ApplicationPackageQueryAdapter.java b/src/main/java/com/easysoftware/adapter/query/ApplicationPackageQueryAdapter.java index 791d85b..a970259 100644 --- a/src/main/java/com/easysoftware/adapter/query/ApplicationPackageQueryAdapter.java +++ b/src/main/java/com/easysoftware/adapter/query/ApplicationPackageQueryAdapter.java @@ -44,4 +44,32 @@ public class ApplicationPackageQueryAdapter { public ResponseEntity queryByTags(@Valid final ApplicationPackageSearchCondition condition) { return appPkgService.queryPkgByTags(condition); } + + /** + * Endpoint to query for all avalaible openEuler version of application packages + * based + * on the provided search condition. + * + * @param condition The search condition for querying application packages. + * @return ResponseEntity. + */ + @GetMapping("/eulerver") + @RequestLimitRedis() + public ResponseEntity queryEulerVersionsByName(@Valid final ApplicationPackageSearchCondition condition) { + return appPkgService.queryEulerVersionsByName(condition); + } + + /** + * Endpoint to query for all avalaible openEuler arch of application packages + * based + * on the provided search condition. + * + * @param condition The search condition for querying application packages. + * @return ResponseEntity. + */ + @GetMapping("/eulerarch") + @RequestLimitRedis() + public ResponseEntity queryEulerArchsByName(@Valid final ApplicationPackageSearchCondition condition) { + return appPkgService.queryEulerArchsByName(condition); + } } diff --git a/src/main/java/com/easysoftware/adapter/query/EPKGPackageQueryAdapter.java b/src/main/java/com/easysoftware/adapter/query/EPKGPackageQueryAdapter.java index a60cf00..fb30355 100644 --- a/src/main/java/com/easysoftware/adapter/query/EPKGPackageQueryAdapter.java +++ b/src/main/java/com/easysoftware/adapter/query/EPKGPackageQueryAdapter.java @@ -33,4 +33,30 @@ public class EPKGPackageQueryAdapter { public ResponseEntity searchEPKGPkg(@Valid final EPKGPackageSearchCondition condition) { return ePKGPackageService.searchEPKGPkg(condition); } + + /** + * Endpoint to query for all avalaible openEuler version of epkg packages based + * on the provided search condition. + * + * @param condition The search condition for querying epkg packages. + * @return ResponseEntity. + */ + @GetMapping("/eulerver") + @RequestLimitRedis() + public ResponseEntity queryEulerVersionsByName(@Valid final EPKGPackageSearchCondition condition) { + return ePKGPackageService.queryEulerVersionsByName(condition); + } + + /** + * Endpoint to query for all avalaible openEuler arch of epkg packages based + * on the provided search condition. + * + * @param condition The search condition for querying epkg packages. + * @return ResponseEntity. + */ + @GetMapping("/eulerarch") + @RequestLimitRedis() + public ResponseEntity queryEulerArchsByName(@Valid final EPKGPackageSearchCondition condition) { + return ePKGPackageService.queryEulerArchsByName(condition); + } } diff --git a/src/main/java/com/easysoftware/application/applicationpackage/ApplicationPackageService.java b/src/main/java/com/easysoftware/application/applicationpackage/ApplicationPackageService.java index 9631d5a..6133335 100644 --- a/src/main/java/com/easysoftware/application/applicationpackage/ApplicationPackageService.java +++ b/src/main/java/com/easysoftware/application/applicationpackage/ApplicationPackageService.java @@ -41,7 +41,8 @@ public interface ApplicationPackageService { ResponseEntity searchAppPkg(ApplicationPackageSearchCondition condition); /** - * Query a list of application package menus based on the provided search condition. + * Query a list of application package menus based on the provided search + * condition. * * @param condition The search condition for querying application package menus. * @return List of ApplicationPackageMenuVo representing the menu list. @@ -51,8 +52,25 @@ public interface ApplicationPackageService { /** * Query application packages based on specified tags. * - * @param condition The search condition containing tags for querying application packages. + * @param condition The search condition containing tags for querying + * application packages. * @return ResponseEntity. */ ResponseEntity queryPkgByTags(ApplicationPackageSearchCondition condition); + + /** + * Queries available openEuler version of application package. + * + * @param condition The search condition. + * @return Map containing the openEuler versions. + */ + ResponseEntity queryEulerVersionsByName(ApplicationPackageSearchCondition condition); + + /** + * Queries available openEuler archs of application package. + * + * @param condition The search condition. + * @return Map containing the openEuler versions. + */ + ResponseEntity queryEulerArchsByName(ApplicationPackageSearchCondition condition); } diff --git a/src/main/java/com/easysoftware/application/applicationpackage/ApplicationPackageServiceImpl.java b/src/main/java/com/easysoftware/application/applicationpackage/ApplicationPackageServiceImpl.java index 3d7b0c3..fa3a849 100644 --- a/src/main/java/com/easysoftware/application/applicationpackage/ApplicationPackageServiceImpl.java +++ b/src/main/java/com/easysoftware/application/applicationpackage/ApplicationPackageServiceImpl.java @@ -29,7 +29,6 @@ public class ApplicationPackageServiceImpl implements ApplicationPackageService @Resource private ApplicationPackageGateway appPkgGateway; - /** * Autowired service for interacting with Object Storage Service (OBS). */ @@ -63,7 +62,8 @@ public class ApplicationPackageServiceImpl implements ApplicationPackageService /** * Query application packages based on specified tags. * - * @param condition The search condition containing tags for querying application packages. + * @param condition The search condition containing tags for querying + * application packages. * @return ResponseEntity. */ @Override @@ -143,7 +143,8 @@ public class ApplicationPackageServiceImpl implements ApplicationPackageService } /** - * Query a list of application package menus based on the provided search condition. + * Query a list of application package menus based on the provided search + * condition. * * @param condition The search condition for querying application package menus. * @return List of ApplicationPackageMenuVo representing the menu list. @@ -153,4 +154,28 @@ public class ApplicationPackageServiceImpl implements ApplicationPackageService Map map = appPkgGateway.queryMenuByName(condition); return (List) map.get("list"); } + + /** + * Queries all available openEuler version of application package. + * + * @param condition The search condition. + * @return Map containing the epkg package menu. + */ + @Override + public ResponseEntity queryEulerVersionsByName(ApplicationPackageSearchCondition condition) { + Map res = appPkgGateway.queryEulerVersionByName(condition); + return ResultUtil.success(HttpStatus.OK, res); + } + + /** + * Queries all available openEuler archs of application package. + * + * @param condition The search condition. + * @return Map containing the epkg package menu. + */ + @Override + public ResponseEntity queryEulerArchsByName(ApplicationPackageSearchCondition condition) { + Map res = appPkgGateway.queryEulerArchsByName(condition); + return ResultUtil.success(HttpStatus.OK, res); + } } diff --git a/src/main/java/com/easysoftware/application/applicationpackage/vo/ApplicationPackageEulerArchsVo.java b/src/main/java/com/easysoftware/application/applicationpackage/vo/ApplicationPackageEulerArchsVo.java new file mode 100644 index 0000000..596c6f7 --- /dev/null +++ b/src/main/java/com/easysoftware/application/applicationpackage/vo/ApplicationPackageEulerArchsVo.java @@ -0,0 +1,15 @@ +package com.easysoftware.application.applicationpackage.vo; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@AllArgsConstructor +@NoArgsConstructor +public class ApplicationPackageEulerArchsVo { + /** + * OpenEuler arch of the package. + */ + private String arch; +} diff --git a/src/main/java/com/easysoftware/application/applicationpackage/vo/ApplicationPackageEulerVersionVo.java b/src/main/java/com/easysoftware/application/applicationpackage/vo/ApplicationPackageEulerVersionVo.java new file mode 100644 index 0000000..e7520a3 --- /dev/null +++ b/src/main/java/com/easysoftware/application/applicationpackage/vo/ApplicationPackageEulerVersionVo.java @@ -0,0 +1,15 @@ +package com.easysoftware.application.applicationpackage.vo; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@AllArgsConstructor +@NoArgsConstructor +public class ApplicationPackageEulerVersionVo { + /** + * OpenEuler version of the package. + */ + private String os; +} diff --git a/src/main/java/com/easysoftware/application/epkgpackage/EPKGPackageService.java b/src/main/java/com/easysoftware/application/epkgpackage/EPKGPackageService.java index d6d2217..9b3f311 100644 --- a/src/main/java/com/easysoftware/application/epkgpackage/EPKGPackageService.java +++ b/src/main/java/com/easysoftware/application/epkgpackage/EPKGPackageService.java @@ -15,7 +15,7 @@ public interface EPKGPackageService extends BaseIService { * Inserts an EPKG package. * * @param inputrPMPackage InputEPKGPackage object. - * @return ResponseEntity. + * @return ResponseEntity. */ ResponseEntity insertEPKGPkg(InputEPKGPackage inputrPMPackage); @@ -73,4 +73,20 @@ public interface EPKGPackageService extends BaseIService { */ void saveDataObjectBatch(ArrayList dataObject); + /** + * Queries available openEuler version of epkg package. + * + * @param condition The search condition. + * @return Map containing the openEuler versions. + */ + ResponseEntity queryEulerVersionsByName(EPKGPackageSearchCondition condition); + + /** + * Queries available openEuler archs of epkg package. + * + * @param condition The search condition. + * @return Map containing the openEuler versions. + */ + ResponseEntity queryEulerArchsByName(EPKGPackageSearchCondition condition); + } diff --git a/src/main/java/com/easysoftware/application/epkgpackage/EPKGPackageServiceImpl.java b/src/main/java/com/easysoftware/application/epkgpackage/EPKGPackageServiceImpl.java index c420a6b..ffcfde1 100644 --- a/src/main/java/com/easysoftware/application/epkgpackage/EPKGPackageServiceImpl.java +++ b/src/main/java/com/easysoftware/application/epkgpackage/EPKGPackageServiceImpl.java @@ -59,7 +59,6 @@ public class EPKGPackageServiceImpl extends @Value("${producer.topic}") private String topicAppVersion; - /** * Deletes EPKG packages by their names. * @@ -130,8 +129,7 @@ public class EPKGPackageServiceImpl extends if (!epkgList.isEmpty()) { Map res = Map.ofEntries( Map.entry("total", epkgList.size()), - Map.entry("list", epkgList) - ); + Map.entry("list", epkgList)); return ResultUtil.success(HttpStatus.OK, res); } @@ -185,5 +183,28 @@ public class EPKGPackageServiceImpl extends public void saveDataObject(final String dataObject) { } + /** + * Queries all available openEuler version of epkg package. + * + * @param condition The search condition. + * @return Map containing the epkg package menu. + */ + @Override + public ResponseEntity queryEulerVersionsByName(EPKGPackageSearchCondition condition) { + Map res = ePKGPackageGateway.queryEulerVersionByName(condition); + return ResultUtil.success(HttpStatus.OK, res); + } + + /** + * Queries all available openEuler archs of epkg package. + * + * @param condition The search condition. + * @return Map containing the epkg package menu. + */ + @Override + public ResponseEntity queryEulerArchsByName(EPKGPackageSearchCondition condition) { + Map res = ePKGPackageGateway.queryEulerArchsByName(condition); + return ResultUtil.success(HttpStatus.OK, res); + } } diff --git a/src/main/java/com/easysoftware/application/epkgpackage/vo/EPKGPackageEulerArchsVo.java b/src/main/java/com/easysoftware/application/epkgpackage/vo/EPKGPackageEulerArchsVo.java new file mode 100644 index 0000000..485b042 --- /dev/null +++ b/src/main/java/com/easysoftware/application/epkgpackage/vo/EPKGPackageEulerArchsVo.java @@ -0,0 +1,15 @@ +package com.easysoftware.application.epkgpackage.vo; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@AllArgsConstructor +@NoArgsConstructor +public class EPKGPackageEulerArchsVo { + /** + * OpenEuler arch of the package. + */ + private String arch; +} diff --git a/src/main/java/com/easysoftware/application/epkgpackage/vo/EPKGPackageEulerVersionVo.java b/src/main/java/com/easysoftware/application/epkgpackage/vo/EPKGPackageEulerVersionVo.java new file mode 100644 index 0000000..6a524bc --- /dev/null +++ b/src/main/java/com/easysoftware/application/epkgpackage/vo/EPKGPackageEulerVersionVo.java @@ -0,0 +1,15 @@ +package com.easysoftware.application.epkgpackage.vo; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@AllArgsConstructor +@NoArgsConstructor +public class EPKGPackageEulerVersionVo { + /** + * OpenEuler version of the package. + */ + private String os; +} diff --git a/src/main/java/com/easysoftware/domain/applicationpackage/gateway/ApplicationPackageGateway.java b/src/main/java/com/easysoftware/domain/applicationpackage/gateway/ApplicationPackageGateway.java index 0656848..f2d8706 100644 --- a/src/main/java/com/easysoftware/domain/applicationpackage/gateway/ApplicationPackageGateway.java +++ b/src/main/java/com/easysoftware/domain/applicationpackage/gateway/ApplicationPackageGateway.java @@ -96,4 +96,20 @@ public interface ApplicationPackageGateway { */ Map queryTagsByName(ApplicationPackageSearchCondition condition); + /** + * Query Euler Version based on the provided search condition. + * + * @param condition The search condition for querying EulerVersion + * @return A map containing tags information + */ + Map queryEulerVersionByName(ApplicationPackageSearchCondition condition); + + /** + * Query Euler archs based on the provided search condition. + * + * @param condition The search condition for querying EulerVersion + * @return A map containing tags information + */ + Map queryEulerArchsByName(ApplicationPackageSearchCondition condition); + } diff --git a/src/main/java/com/easysoftware/domain/epkgpackage/gateway/EPKGPackageGateway.java b/src/main/java/com/easysoftware/domain/epkgpackage/gateway/EPKGPackageGateway.java index c4db866..80b9b18 100644 --- a/src/main/java/com/easysoftware/domain/epkgpackage/gateway/EPKGPackageGateway.java +++ b/src/main/java/com/easysoftware/domain/epkgpackage/gateway/EPKGPackageGateway.java @@ -107,4 +107,19 @@ public interface EPKGPackageGateway { */ Collection convertBatch(Collection dataObject); + /** + * Query Euler Version based on the provided search condition. + * + * @param condition The search condition for querying EulerVersion + * @return A map containing tags information + */ + Map queryEulerVersionByName(EPKGPackageSearchCondition condition); + + /** + * Query Euler archs based on the provided search condition. + * + * @param condition The search condition for querying EulerVersion + * @return A map containing tags information + */ + Map queryEulerArchsByName(EPKGPackageSearchCondition condition); } diff --git a/src/main/java/com/easysoftware/infrastructure/applicationpackage/gatewayimpl/ApplicationPackageGatewayImpl.java b/src/main/java/com/easysoftware/infrastructure/applicationpackage/gatewayimpl/ApplicationPackageGatewayImpl.java index 646e6d7..b71864c 100644 --- a/src/main/java/com/easysoftware/infrastructure/applicationpackage/gatewayimpl/ApplicationPackageGatewayImpl.java +++ b/src/main/java/com/easysoftware/infrastructure/applicationpackage/gatewayimpl/ApplicationPackageGatewayImpl.java @@ -6,6 +6,8 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.easysoftware.application.applicationpackage.dto.ApplicationPackageSearchCondition; import com.easysoftware.application.applicationpackage.vo.ApplicationPackageDetailVo; +import com.easysoftware.application.applicationpackage.vo.ApplicationPackageEulerArchsVo; +import com.easysoftware.application.applicationpackage.vo.ApplicationPackageEulerVersionVo; import com.easysoftware.application.applicationpackage.vo.ApplicationPackageMenuVo; import com.easysoftware.application.applicationpackage.vo.ApplicationPackageTagsVo; import com.easysoftware.common.exception.ParamErrorException; @@ -42,7 +44,6 @@ public class ApplicationPackageGatewayImpl implements ApplicationPackageGateway @Value("${apppkg.icon.path}") private String apppkgIconPath; - /** * Delete an application by name. * @@ -57,7 +58,6 @@ public class ApplicationPackageGatewayImpl implements ApplicationPackageGateway return mark == 1; } - /** * Check if an application exists based on its name. * @@ -71,7 +71,6 @@ public class ApplicationPackageGatewayImpl implements ApplicationPackageGateway return appPkgMapper.exists(wrapper); } - /** * Save an ApplicationPackage object. * @@ -85,7 +84,6 @@ public class ApplicationPackageGatewayImpl implements ApplicationPackageGateway return mark == 1; } - /** * Update an existing ApplicationPackage object. * @@ -150,8 +148,7 @@ public class ApplicationPackageGatewayImpl implements ApplicationPackageGateway Map res = Map.ofEntries( Map.entry("total", total), - Map.entry("list", aggregatePkgs) - ); + Map.entry("list", aggregatePkgs)); return res; } @@ -174,12 +171,12 @@ public class ApplicationPackageGatewayImpl implements ApplicationPackageGateway return Map.ofEntries( Map.entry("total", total), - Map.entry("list", appDetails) - ); + Map.entry("list", appDetails)); } /** - * Create a page of ApplicationPackageDO objects based on the provided search condition. + * Create a page of ApplicationPackageDO objects based on the provided search + * condition. * * @param condition The search condition for creating the page * @return A page of ApplicationPackageDO objects @@ -202,7 +199,6 @@ public class ApplicationPackageGatewayImpl implements ApplicationPackageGateway return appPkgMapper.selectCount(wrapper); } - /** * Select a single ApplicationPackageMenuVo object by name. * @@ -222,7 +218,6 @@ public class ApplicationPackageGatewayImpl implements ApplicationPackageGateway return ApplicationPackageConverter.toMenu(appList.get(0)); } - /** * Query detailed information by package ID. * @@ -260,7 +255,8 @@ public class ApplicationPackageGatewayImpl implements ApplicationPackageGateway } /** - * Query a specific column in the database and return the results as a list of strings. + * Query a specific column in the database and return the results as a list of + * strings. * * @param column The column to query * @return A list of strings containing the query results @@ -287,4 +283,52 @@ public class ApplicationPackageGatewayImpl implements ApplicationPackageGateway return ApplicationPackageConverter.toColumn(rpmColumn, underlineToCamelColumn); } + + /** + * Query the Euler Version based on the provided search condition. + * + * @param condition The search condition for querying a part of the appkg Euler + * Version + * @return A map containing relevant information + */ + @Override + public Map queryEulerVersionByName(final ApplicationPackageSearchCondition condition) { + QueryWrapper wrapper = QueryWrapperUtil.createQueryWrapper(new ApplicationPackageDO(), + condition, ""); + ApplicationPackageEulerVersionVo pkgVo = new ApplicationPackageEulerVersionVo(); + List columns = ClassField.getFieldNames(pkgVo); + wrapper.eq("name", condition.getName()) + .select(columns) + .groupBy("os"); + List appkgList = appPkgMapper.selectList(wrapper); + List versions = ApplicationPackageConverter.toVersion(appkgList); + Map res = Map.ofEntries( + Map.entry("total", versions.size()), + Map.entry("list", versions)); + return res; + } + + /** + * Query the Euler archs based on the provided search condition. + * + * @param condition The search condition for querying a part of the appkg Euler + * archs + * @return A map containing relevant information + */ + @Override + public Map queryEulerArchsByName(final ApplicationPackageSearchCondition condition) { + QueryWrapper wrapper = QueryWrapperUtil.createQueryWrapper(new ApplicationPackageDO(), + condition, ""); + ApplicationPackageEulerArchsVo pkgVo = new ApplicationPackageEulerArchsVo(); + List columns = ClassField.getFieldNames(pkgVo); + wrapper.eq("name", condition.getName()) + .select(columns) + .groupBy("arch"); + List appkgList = appPkgMapper.selectList(wrapper); + List versions = ApplicationPackageConverter.toArchs(appkgList); + Map res = Map.ofEntries( + Map.entry("total", versions.size()), + Map.entry("list", versions)); + return res; + } } diff --git a/src/main/java/com/easysoftware/infrastructure/applicationpackage/gatewayimpl/converter/ApplicationPackageConverter.java b/src/main/java/com/easysoftware/infrastructure/applicationpackage/gatewayimpl/converter/ApplicationPackageConverter.java index 8c55402..ed94447 100644 --- a/src/main/java/com/easysoftware/infrastructure/applicationpackage/gatewayimpl/converter/ApplicationPackageConverter.java +++ b/src/main/java/com/easysoftware/infrastructure/applicationpackage/gatewayimpl/converter/ApplicationPackageConverter.java @@ -1,6 +1,8 @@ package com.easysoftware.infrastructure.applicationpackage.gatewayimpl.converter; import com.easysoftware.application.applicationpackage.vo.ApplicationPackageDetailVo; +import com.easysoftware.application.applicationpackage.vo.ApplicationPackageEulerArchsVo; +import com.easysoftware.application.applicationpackage.vo.ApplicationPackageEulerVersionVo; import com.easysoftware.application.applicationpackage.vo.ApplicationPackageMenuVo; import com.easysoftware.application.applicationpackage.vo.ApplicationPackageTagsVo; import com.easysoftware.application.domainpackage.vo.DomainPackageMenuVo; @@ -46,7 +48,46 @@ public final class ApplicationPackageConverter { } /** - * Convert a list of ApplicationPackageDO objects to a list of ApplicationPackageDetailVo objects. + * Converts a list of ApplicationPackageDO objects to a list of + * ApplicationPackageEulerVersionVo + * view + * objects. + * + * @param appkgDOs The list of ApplicationPackageDO objects to convert. + * @return A list of ApplicationPackageEulerVersionVo view objects. + */ + public static List toVersion(final List appkgDOs) { + List res = new ArrayList<>(); + for (ApplicationPackageDO appkg : appkgDOs) { + ApplicationPackageEulerVersionVo version = new ApplicationPackageEulerVersionVo(); + version.setOs(appkg.getOs()); + res.add(version); + } + return res; + } + + /** + * Converts a list of ApplicationPackageDO objects to a list of + * ApplicationPackageEulerArchsVo + * view + * objects. + * + * @param appkgDOs The list of ApplicationPackageDO objects to convert. + * @return A list of ApplicationPackageEulerArchsVo view objects. + */ + public static List toArchs(final List appkgDOs) { + List res = new ArrayList<>(); + for (ApplicationPackageDO appkg : appkgDOs) { + ApplicationPackageEulerArchsVo archs = new ApplicationPackageEulerArchsVo(); + archs.setArch(appkg.getArch()); + res.add(archs); + } + return res; + } + + /** + * Convert a list of ApplicationPackageDO objects to a list of + * ApplicationPackageDetailVo objects. * * @param appPkgDOs The list of ApplicationPackageDO objects to convert * @return A list of ApplicationPackageDetailVo objects @@ -60,7 +101,8 @@ public final class ApplicationPackageConverter { } /** - * Convert an ApplicationPackageDO object to an ApplicationPackageDetailVo object. + * Convert an ApplicationPackageDO object to an ApplicationPackageDetailVo + * object. * * @param app The ApplicationPackageDO object to convert * @return An ApplicationPackageDetailVo object @@ -76,7 +118,8 @@ public final class ApplicationPackageConverter { * and return the result as a list of ApplicationPackageTagsVo objects. * * @param appPkgDOs The list of ApplicationPackageDO objects to aggregate - * @return A list of ApplicationPackageTagsVo objects containing the aggregated data + * @return A list of ApplicationPackageTagsVo objects containing the aggregated + * data */ public static List aggregateByTags(final List appPkgDOs) { @@ -114,7 +157,8 @@ public final class ApplicationPackageConverter { } /** - * Convert a list of ApplicationPackageDO objects to a list of ApplicationPackageMenuVo objects. + * Convert a list of ApplicationPackageDO objects to a list of + * ApplicationPackageMenuVo objects. * * @param appPkgDOs The list of ApplicationPackageDO objects to convert * @return A list of ApplicationPackageMenuVo objects @@ -143,7 +187,8 @@ public final class ApplicationPackageConverter { } /** - * Convert a list of ApplicationPackageDO objects to a list of ApplicationPackage entities. + * Convert a list of ApplicationPackageDO objects to a list of + * ApplicationPackage entities. * * @param appDOs The list of ApplicationPackageDO objects to convert * @return A list of ApplicationPackage entities @@ -170,7 +215,8 @@ public final class ApplicationPackageConverter { } /** - * Convert an ApplicationPackage entity to an ApplicationPackageDO data object specifically for creation. + * Convert an ApplicationPackage entity to an ApplicationPackageDO data object + * specifically for creation. * * @param appPkg The ApplicationPackage entity to convert * @return An ApplicationPackageDO data object tailored for creation @@ -188,7 +234,8 @@ public final class ApplicationPackageConverter { } /** - * Convert an ApplicationPackage entity to an ApplicationPackageDO data object specifically for update. + * Convert an ApplicationPackage entity to an ApplicationPackageDO data object + * specifically for update. * * @param appPkg The ApplicationPackage entity to convert * @return An ApplicationPackageDO data object tailored for update @@ -203,7 +250,8 @@ public final class ApplicationPackageConverter { } /** - * Convert a list of ApplicationPackageMenuVo objects to a list of DomainPackageMenuVo objects. + * Convert a list of ApplicationPackageMenuVo objects to a list of + * DomainPackageMenuVo objects. * * @param appList The list of ApplicationPackageMenuVo objects to convert * @return A list of DomainPackageMenuVo objects @@ -264,4 +312,3 @@ public final class ApplicationPackageConverter { return res; } } - diff --git a/src/main/java/com/easysoftware/infrastructure/epkgpackage/gatewayimpl/EPKGPackageGatewayImpl.java b/src/main/java/com/easysoftware/infrastructure/epkgpackage/gatewayimpl/EPKGPackageGatewayImpl.java index e0c75b1..d12a82f 100644 --- a/src/main/java/com/easysoftware/infrastructure/epkgpackage/gatewayimpl/EPKGPackageGatewayImpl.java +++ b/src/main/java/com/easysoftware/infrastructure/epkgpackage/gatewayimpl/EPKGPackageGatewayImpl.java @@ -7,6 +7,8 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.easysoftware.application.epkgpackage.dto.EPKGPackageSearchCondition; import com.easysoftware.application.epkgpackage.vo.EPKGPackageDetailVo; +import com.easysoftware.application.epkgpackage.vo.EPKGPackageEulerArchsVo; +import com.easysoftware.application.epkgpackage.vo.EPKGPackageEulerVersionVo; import com.easysoftware.application.epkgpackage.vo.EPKGPackageMenuVo; import com.easysoftware.common.exception.ParamErrorException; import com.easysoftware.common.utils.ClassField; @@ -119,8 +121,7 @@ public class EPKGPackageGatewayImpl implements EPKGPackageGateway { Map res = Map.ofEntries( Map.entry("total", total), - Map.entry("list", rPMDetails) - ); + Map.entry("list", rPMDetails)); return res; } @@ -146,8 +147,7 @@ public class EPKGPackageGatewayImpl implements EPKGPackageGateway { Map res = Map.ofEntries( Map.entry("total", total), - Map.entry("list", rPMMenus) - ); + Map.entry("list", rPMMenus)); return res; } @@ -183,7 +183,8 @@ public class EPKGPackageGatewayImpl implements EPKGPackageGateway { /** * Creates a Page of EPKGPackageDO based on the provided search condition. * - * @param condition The EPKGPackageSearchCondition object to create the page from. + * @param condition The EPKGPackageSearchCondition object to create the page + * from. * @return A Page of EPKGPackageDO entities. */ private Page createPage(final EPKGPackageSearchCondition condition) { @@ -303,4 +304,53 @@ public class EPKGPackageGatewayImpl implements EPKGPackageGateway { List epkgList = ePKGPkgMapper.selectList(wrapper); return EPKGPackageConverter.toDetail(epkgList); } + + /** + * Query the Euler Version based on the provided search condition. + * + * @param condition The search condition for querying a part of the epkg Euler + * Version + * @return A map containing relevant information + */ + @Override + public Map queryEulerVersionByName(final EPKGPackageSearchCondition condition) { + QueryWrapper wrapper = QueryWrapperUtil.createQueryWrapper(new EPKGPackageDO(), + condition, ""); + EPKGPackageEulerVersionVo pkgVo = new EPKGPackageEulerVersionVo(); + List columns = ClassField.getFieldNames(pkgVo); + wrapper.eq("name", condition.getName()) + .select(columns) + .groupBy("os"); + List epkgList = ePKGPkgMapper.selectList(wrapper); + List versions = EPKGPackageConverter.toVersion(epkgList); + Map res = Map.ofEntries( + Map.entry("total", versions.size()), + Map.entry("list", versions)); + return res; + } + + /** + * Query the Euler archs based on the provided search condition. + * + * @param condition The search condition for querying a part of the epkg Euler + * archs + * @return A map containing relevant information + */ + @Override + public Map queryEulerArchsByName(final EPKGPackageSearchCondition condition) { + QueryWrapper wrapper = QueryWrapperUtil.createQueryWrapper(new EPKGPackageDO(), + condition, ""); + EPKGPackageEulerArchsVo pkgVo = new EPKGPackageEulerArchsVo(); + List columns = ClassField.getFieldNames(pkgVo); + wrapper.eq("name", condition.getName()) + .select(columns) + .groupBy("arch"); + List epkgList = ePKGPkgMapper.selectList(wrapper); + List versions = EPKGPackageConverter.toArchs(epkgList); + Map res = Map.ofEntries( + Map.entry("total", versions.size()), + Map.entry("list", versions)); + return res; + } + } diff --git a/src/main/java/com/easysoftware/infrastructure/epkgpackage/gatewayimpl/converter/EPKGPackageConverter.java b/src/main/java/com/easysoftware/infrastructure/epkgpackage/gatewayimpl/converter/EPKGPackageConverter.java index fee1360..4341ee7 100644 --- a/src/main/java/com/easysoftware/infrastructure/epkgpackage/gatewayimpl/converter/EPKGPackageConverter.java +++ b/src/main/java/com/easysoftware/infrastructure/epkgpackage/gatewayimpl/converter/EPKGPackageConverter.java @@ -1,6 +1,8 @@ package com.easysoftware.infrastructure.epkgpackage.gatewayimpl.converter; import com.easysoftware.application.epkgpackage.vo.EPKGPackageDetailVo; +import com.easysoftware.application.epkgpackage.vo.EPKGPackageEulerArchsVo; +import com.easysoftware.application.epkgpackage.vo.EPKGPackageEulerVersionVo; import com.easysoftware.application.epkgpackage.vo.EPKGPackageMenuVo; import com.easysoftware.common.entity.MessageCode; import com.easysoftware.common.utils.UuidUtil; @@ -17,7 +19,6 @@ import java.util.List; public final class EPKGPackageConverter { - // Private constructor to prevent instantiation of the utility class private EPKGPackageConverter() { // private constructor to hide the implicit public one @@ -30,7 +31,8 @@ public final class EPKGPackageConverter { private static final Logger LOGGER = LoggerFactory.getLogger(EPKGPackageConverter.class); /** - * Convert a list of EPKGPackageDO objects to a list of EPKGPackageMenuVo objects. + * Convert a list of EPKGPackageDO objects to a list of EPKGPackageMenuVo + * objects. * * @param rPMPkgDOs The list of EPKGPackageDO objects to convert * @return A list of EPKGPackageMenuVo objects @@ -56,6 +58,43 @@ public final class EPKGPackageConverter { return menu; } + /** + * Converts a list of EPKGPackageDO objects to a list of + * EPKGPackageEulerVersionVo + * view + * objects. + * + * @param epkgDOs The list of EPKGPackageDO objects to convert. + * @return A list of EPKGPackageEulerVersionVo view objects. + */ + public static List toVersion(final List epkgDOs) { + List res = new ArrayList<>(); + for (EPKGPackageDO epkg : epkgDOs) { + EPKGPackageEulerVersionVo version = new EPKGPackageEulerVersionVo(); + version.setOs(epkg.getOs()); + res.add(version); + } + return res; + } + + /** + * Converts a list of EPKGPackageDO objects to a list of EPKGPackageEulerArchsVo + * view + * objects. + * + * @param epkgDOs The list of EPKGPackageDO objects to convert. + * @return A list of EPKGPackageEulerArchsVo view objects. + */ + public static List toArchs(final List epkgDOs) { + List res = new ArrayList<>(); + for (EPKGPackageDO epkg : epkgDOs) { + EPKGPackageEulerArchsVo archs = new EPKGPackageEulerArchsVo(); + archs.setArch(epkg.getArch()); + res.add(archs); + } + return res; + } + /** * Extract a specific column values from a list of EPKGPackageDO objects. * @@ -86,7 +125,8 @@ public final class EPKGPackageConverter { } /** - * Convert a list of EPKGPackageDO objects to a list of EPKGPackageDetailVo objects. + * Convert a list of EPKGPackageDO objects to a list of EPKGPackageDetailVo + * objects. * * @param rPMPkgDOs The list of EPKGPackageDO objects to convert * @return A list of EPKGPackageDetailVo objects diff --git a/src/main/java/com/easysoftware/infrastructure/rpmpackage/gatewayimpl/converter/RPMPackageConverter.java b/src/main/java/com/easysoftware/infrastructure/rpmpackage/gatewayimpl/converter/RPMPackageConverter.java index 45df8db..705602e 100644 --- a/src/main/java/com/easysoftware/infrastructure/rpmpackage/gatewayimpl/converter/RPMPackageConverter.java +++ b/src/main/java/com/easysoftware/infrastructure/rpmpackage/gatewayimpl/converter/RPMPackageConverter.java @@ -184,9 +184,9 @@ public final class RPMPackageConverter { public static List toArchs(final List rpmPkgDOs) { List res = new ArrayList<>(); for (RPMPackageDO rpm : rpmPkgDOs) { - RPMPackageEulerArchsVo version = new RPMPackageEulerArchsVo(); - version.setArch(rpm.getArch()); - res.add(version); + RPMPackageEulerArchsVo archs = new RPMPackageEulerArchsVo(); + archs.setArch(rpm.getArch()); + res.add(archs); } return res; } -- Gitee From ff005a194e061c6e7327afc4543dcea5162b668d Mon Sep 17 00:00:00 2001 From: gouzhonglin Date: Tue, 21 May 2024 20:40:02 +0800 Subject: [PATCH 24/30] update latestossupport --- .../applicationpackage/dto/InputApplicationPackage.java | 5 +++++ .../applicationpackage/vo/ApplicationPackageDetailVo.java | 4 ++++ .../domain/applicationpackage/ApplicationPackage.java | 4 ++++ .../gatewayimpl/dataobject/ApplicationPackageDO.java | 4 ++++ 4 files changed, 17 insertions(+) diff --git a/src/main/java/com/easysoftware/application/applicationpackage/dto/InputApplicationPackage.java b/src/main/java/com/easysoftware/application/applicationpackage/dto/InputApplicationPackage.java index 4067ea6..97b4b75 100644 --- a/src/main/java/com/easysoftware/application/applicationpackage/dto/InputApplicationPackage.java +++ b/src/main/java/com/easysoftware/application/applicationpackage/dto/InputApplicationPackage.java @@ -172,4 +172,9 @@ public class InputApplicationPackage { */ @Size(max = 10000, message = "the length of usage can not exceed 10000") private String imageUsage; +/** + * imageUsage with a maximum length of 10000 characters. + */ + @Size(max = 50, message = "the length of latestOsSupport can not exceed 50") + private String latestOsSupport; } diff --git a/src/main/java/com/easysoftware/application/applicationpackage/vo/ApplicationPackageDetailVo.java b/src/main/java/com/easysoftware/application/applicationpackage/vo/ApplicationPackageDetailVo.java index 177f0fb..a47d8fb 100644 --- a/src/main/java/com/easysoftware/application/applicationpackage/vo/ApplicationPackageDetailVo.java +++ b/src/main/java/com/easysoftware/application/applicationpackage/vo/ApplicationPackageDetailVo.java @@ -137,4 +137,8 @@ public class ApplicationPackageDetailVo { * Usage information for the software package. */ private String imageUsage; + /** + * latestOsSupport. + */ + private String latestOsSupport; } diff --git a/src/main/java/com/easysoftware/domain/applicationpackage/ApplicationPackage.java b/src/main/java/com/easysoftware/domain/applicationpackage/ApplicationPackage.java index 921d6b4..29db888 100644 --- a/src/main/java/com/easysoftware/domain/applicationpackage/ApplicationPackage.java +++ b/src/main/java/com/easysoftware/domain/applicationpackage/ApplicationPackage.java @@ -161,4 +161,8 @@ public class ApplicationPackage { */ private String imageUsage; + /** + * latestOsSupport. + */ + private String latestOsSupport; } diff --git a/src/main/java/com/easysoftware/infrastructure/applicationpackage/gatewayimpl/dataobject/ApplicationPackageDO.java b/src/main/java/com/easysoftware/infrastructure/applicationpackage/gatewayimpl/dataobject/ApplicationPackageDO.java index bb810da..0c3e1f4 100644 --- a/src/main/java/com/easysoftware/infrastructure/applicationpackage/gatewayimpl/dataobject/ApplicationPackageDO.java +++ b/src/main/java/com/easysoftware/infrastructure/applicationpackage/gatewayimpl/dataobject/ApplicationPackageDO.java @@ -179,4 +179,8 @@ public class ApplicationPackageDO { */ private String imageUsage; + /** + * latestOsSupport. + */ + private String latestOsSupport; } -- Gitee From 312f8b945fe42fb9085748b5805e5213a3339a88 Mon Sep 17 00:00:00 2001 From: zwjsec Date: Tue, 21 May 2024 21:19:36 +0800 Subject: [PATCH 25/30] =?UTF-8?q?=E8=B0=83=E6=95=B4os=E7=89=88=E6=9C=AC?= =?UTF-8?q?=E8=81=9A=E5=90=88=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../vo/ApplicationPackageEulerVersionVo.java | 10 ++++++++++ .../epkgpackage/vo/EPKGPackageEulerVersionVo.java | 9 +++++++++ .../rpmpackage/vo/RPMPackageEulerVersionVo.java | 10 ++++++++++ .../gatewayimpl/ApplicationPackageGatewayImpl.java | 2 +- .../converter/ApplicationPackageConverter.java | 2 ++ .../gatewayimpl/EPKGPackageGatewayImpl.java | 2 +- .../gatewayimpl/converter/EPKGPackageConverter.java | 2 ++ .../rpmpackage/gatewayimpl/RPMPackageGatewayImpl.java | 2 +- .../gatewayimpl/converter/RPMPackageConverter.java | 2 ++ 9 files changed, 38 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/easysoftware/application/applicationpackage/vo/ApplicationPackageEulerVersionVo.java b/src/main/java/com/easysoftware/application/applicationpackage/vo/ApplicationPackageEulerVersionVo.java index e7520a3..275d9c4 100644 --- a/src/main/java/com/easysoftware/application/applicationpackage/vo/ApplicationPackageEulerVersionVo.java +++ b/src/main/java/com/easysoftware/application/applicationpackage/vo/ApplicationPackageEulerVersionVo.java @@ -12,4 +12,14 @@ public class ApplicationPackageEulerVersionVo { * OpenEuler version of the package. */ private String os; + + /** + * OpenEuler arch of the package. + */ + private String arch; + + /** + * pkgId of the package. + */ + private String pkgId; } diff --git a/src/main/java/com/easysoftware/application/epkgpackage/vo/EPKGPackageEulerVersionVo.java b/src/main/java/com/easysoftware/application/epkgpackage/vo/EPKGPackageEulerVersionVo.java index 6a524bc..01e0118 100644 --- a/src/main/java/com/easysoftware/application/epkgpackage/vo/EPKGPackageEulerVersionVo.java +++ b/src/main/java/com/easysoftware/application/epkgpackage/vo/EPKGPackageEulerVersionVo.java @@ -12,4 +12,13 @@ public class EPKGPackageEulerVersionVo { * OpenEuler version of the package. */ private String os; + /** + * OpenEuler arch of the package. + */ + private String arch; + + /** + * pkgId of the package. + */ + private String pkgId; } diff --git a/src/main/java/com/easysoftware/application/rpmpackage/vo/RPMPackageEulerVersionVo.java b/src/main/java/com/easysoftware/application/rpmpackage/vo/RPMPackageEulerVersionVo.java index 72c5c4a..b681030 100644 --- a/src/main/java/com/easysoftware/application/rpmpackage/vo/RPMPackageEulerVersionVo.java +++ b/src/main/java/com/easysoftware/application/rpmpackage/vo/RPMPackageEulerVersionVo.java @@ -12,4 +12,14 @@ public class RPMPackageEulerVersionVo { * OpenEuler versions of the package. */ private String os; + + /** + * OpenEuler arch of the package. + */ + private String arch; + + /** + * pkgId of the package. + */ + private String pkgId; } diff --git a/src/main/java/com/easysoftware/infrastructure/applicationpackage/gatewayimpl/ApplicationPackageGatewayImpl.java b/src/main/java/com/easysoftware/infrastructure/applicationpackage/gatewayimpl/ApplicationPackageGatewayImpl.java index b71864c..c99479e 100644 --- a/src/main/java/com/easysoftware/infrastructure/applicationpackage/gatewayimpl/ApplicationPackageGatewayImpl.java +++ b/src/main/java/com/easysoftware/infrastructure/applicationpackage/gatewayimpl/ApplicationPackageGatewayImpl.java @@ -299,7 +299,7 @@ public class ApplicationPackageGatewayImpl implements ApplicationPackageGateway List columns = ClassField.getFieldNames(pkgVo); wrapper.eq("name", condition.getName()) .select(columns) - .groupBy("os"); + .groupBy("os", "arch"); List appkgList = appPkgMapper.selectList(wrapper); List versions = ApplicationPackageConverter.toVersion(appkgList); Map res = Map.ofEntries( diff --git a/src/main/java/com/easysoftware/infrastructure/applicationpackage/gatewayimpl/converter/ApplicationPackageConverter.java b/src/main/java/com/easysoftware/infrastructure/applicationpackage/gatewayimpl/converter/ApplicationPackageConverter.java index ed94447..7f3c2f7 100644 --- a/src/main/java/com/easysoftware/infrastructure/applicationpackage/gatewayimpl/converter/ApplicationPackageConverter.java +++ b/src/main/java/com/easysoftware/infrastructure/applicationpackage/gatewayimpl/converter/ApplicationPackageConverter.java @@ -61,6 +61,8 @@ public final class ApplicationPackageConverter { for (ApplicationPackageDO appkg : appkgDOs) { ApplicationPackageEulerVersionVo version = new ApplicationPackageEulerVersionVo(); version.setOs(appkg.getOs()); + version.setArch(appkg.getArch()); + version.setPkgId(appkg.getPkgId()); res.add(version); } return res; diff --git a/src/main/java/com/easysoftware/infrastructure/epkgpackage/gatewayimpl/EPKGPackageGatewayImpl.java b/src/main/java/com/easysoftware/infrastructure/epkgpackage/gatewayimpl/EPKGPackageGatewayImpl.java index d12a82f..0ee0a41 100644 --- a/src/main/java/com/easysoftware/infrastructure/epkgpackage/gatewayimpl/EPKGPackageGatewayImpl.java +++ b/src/main/java/com/easysoftware/infrastructure/epkgpackage/gatewayimpl/EPKGPackageGatewayImpl.java @@ -320,7 +320,7 @@ public class EPKGPackageGatewayImpl implements EPKGPackageGateway { List columns = ClassField.getFieldNames(pkgVo); wrapper.eq("name", condition.getName()) .select(columns) - .groupBy("os"); + .groupBy("os", "arch"); List epkgList = ePKGPkgMapper.selectList(wrapper); List versions = EPKGPackageConverter.toVersion(epkgList); Map res = Map.ofEntries( diff --git a/src/main/java/com/easysoftware/infrastructure/epkgpackage/gatewayimpl/converter/EPKGPackageConverter.java b/src/main/java/com/easysoftware/infrastructure/epkgpackage/gatewayimpl/converter/EPKGPackageConverter.java index 4341ee7..0ac3b62 100644 --- a/src/main/java/com/easysoftware/infrastructure/epkgpackage/gatewayimpl/converter/EPKGPackageConverter.java +++ b/src/main/java/com/easysoftware/infrastructure/epkgpackage/gatewayimpl/converter/EPKGPackageConverter.java @@ -72,6 +72,8 @@ public final class EPKGPackageConverter { for (EPKGPackageDO epkg : epkgDOs) { EPKGPackageEulerVersionVo version = new EPKGPackageEulerVersionVo(); version.setOs(epkg.getOs()); + version.setArch(epkg.getArch()); + version.setPkgId(epkg.getPkgId()); res.add(version); } return res; diff --git a/src/main/java/com/easysoftware/infrastructure/rpmpackage/gatewayimpl/RPMPackageGatewayImpl.java b/src/main/java/com/easysoftware/infrastructure/rpmpackage/gatewayimpl/RPMPackageGatewayImpl.java index f99fb87..d38ce3e 100644 --- a/src/main/java/com/easysoftware/infrastructure/rpmpackage/gatewayimpl/RPMPackageGatewayImpl.java +++ b/src/main/java/com/easysoftware/infrastructure/rpmpackage/gatewayimpl/RPMPackageGatewayImpl.java @@ -318,7 +318,7 @@ public class RPMPackageGatewayImpl implements RPMPackageGateway { List columns = ClassField.getFieldNames(pkgVo); wrapper.eq("name", condition.getName()) .select(columns) - .groupBy("os"); + .groupBy("os", "arch"); List rpmList = rPMPkgMapper.selectList(wrapper); List versions = RPMPackageConverter.toVersion(rpmList); Map res = Map.ofEntries( diff --git a/src/main/java/com/easysoftware/infrastructure/rpmpackage/gatewayimpl/converter/RPMPackageConverter.java b/src/main/java/com/easysoftware/infrastructure/rpmpackage/gatewayimpl/converter/RPMPackageConverter.java index 705602e..0ee264e 100644 --- a/src/main/java/com/easysoftware/infrastructure/rpmpackage/gatewayimpl/converter/RPMPackageConverter.java +++ b/src/main/java/com/easysoftware/infrastructure/rpmpackage/gatewayimpl/converter/RPMPackageConverter.java @@ -168,6 +168,8 @@ public final class RPMPackageConverter { for (RPMPackageDO rpm : rpmPkgDOs) { RPMPackageEulerVersionVo version = new RPMPackageEulerVersionVo(); version.setOs(rpm.getOs()); + version.setArch(rpm.getArch()); + version.setPkgId(rpm.getPkgId()); res.add(version); } return res; -- Gitee From 83a35861aa98690a9c188e635d78e93282d47db4 Mon Sep 17 00:00:00 2001 From: gouzhonglin Date: Wed, 22 May 2024 10:39:57 +0800 Subject: [PATCH 26/30] show fieldpkg --- .../dto/FieldPkgColumnSearchCondition.java | 23 ++++ .../dto/FieldPkgDetailSearchCondition.java | 31 +++++ .../fieldpkg/dto/FieldPkgSearchCondition.java | 63 ++++++++++ .../application/fieldpkg/vo/FieldPkgVo.java | 58 +++++++++ .../FieldApplicationServiceImpl.java | 15 ++- .../fieldpkg/gateway/FieldPkgGateway.java | 25 ++++ .../converter/FieldApplicationConverter.java | 14 +++ .../dataobject/FieldApplicationDO.java | 1 - .../fieldpkg/FieldPkgGatewayImpl.java | 119 ++++++++++++++++++ .../fieldpkg/converter/FieldPkgConverter.java | 102 +++++++++++++++ .../fieldpkg/dataobject/FieldPkgDO.java | 59 +++++++++ .../mapper/FieldPkgDOMapper.java | 7 ++ 12 files changed, 513 insertions(+), 4 deletions(-) create mode 100644 src/main/java/com/easysoftware/application/fieldpkg/dto/FieldPkgColumnSearchCondition.java create mode 100644 src/main/java/com/easysoftware/application/fieldpkg/dto/FieldPkgDetailSearchCondition.java create mode 100644 src/main/java/com/easysoftware/application/fieldpkg/dto/FieldPkgSearchCondition.java create mode 100644 src/main/java/com/easysoftware/application/fieldpkg/vo/FieldPkgVo.java create mode 100644 src/main/java/com/easysoftware/domain/fieldpkg/gateway/FieldPkgGateway.java create mode 100644 src/main/java/com/easysoftware/infrastructure/fieldpkg/FieldPkgGatewayImpl.java create mode 100644 src/main/java/com/easysoftware/infrastructure/fieldpkg/converter/FieldPkgConverter.java create mode 100644 src/main/java/com/easysoftware/infrastructure/fieldpkg/dataobject/FieldPkgDO.java create mode 100644 src/main/java/com/easysoftware/infrastructure/mapper/FieldPkgDOMapper.java diff --git a/src/main/java/com/easysoftware/application/fieldpkg/dto/FieldPkgColumnSearchCondition.java b/src/main/java/com/easysoftware/application/fieldpkg/dto/FieldPkgColumnSearchCondition.java new file mode 100644 index 0000000..eefb000 --- /dev/null +++ b/src/main/java/com/easysoftware/application/fieldpkg/dto/FieldPkgColumnSearchCondition.java @@ -0,0 +1,23 @@ +package com.easysoftware.application.fieldpkg.dto; + +import jakarta.validation.constraints.Size; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@NoArgsConstructor +@AllArgsConstructor +public class FieldPkgColumnSearchCondition { + /** + * Column (maximum length: 50). + */ + @Size(max = 50) + private String column; + + /** + * Name (maximum length: 50). + */ + @Size(max = 50) + private String name; +} diff --git a/src/main/java/com/easysoftware/application/fieldpkg/dto/FieldPkgDetailSearchCondition.java b/src/main/java/com/easysoftware/application/fieldpkg/dto/FieldPkgDetailSearchCondition.java new file mode 100644 index 0000000..88b474a --- /dev/null +++ b/src/main/java/com/easysoftware/application/fieldpkg/dto/FieldPkgDetailSearchCondition.java @@ -0,0 +1,31 @@ +package com.easysoftware.application.fieldpkg.dto; + +import com.easysoftware.common.constant.PackageConstant; + +import jakarta.validation.constraints.Size; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@NoArgsConstructor +@AllArgsConstructor +public class FieldPkgDetailSearchCondition { + /** + * RPM package ID (maximum length: PackageConstant.MAX_FIELD_LENGTH). + */ + @Size(max = PackageConstant.MAX_FIELD_LENGTH) + private String rpmPkgId; + + /** + * EPKG package ID (maximum length: PackageConstant.MAX_FIELD_LENGTH). + */ + @Size(max = PackageConstant.MAX_FIELD_LENGTH) + private String epkgPkgId; + + /** + * Application package ID (maximum length: PackageConstant.MAX_FIELD_LENGTH). + */ + @Size(max = PackageConstant.MAX_FIELD_LENGTH) + private String appPkgId; +} diff --git a/src/main/java/com/easysoftware/application/fieldpkg/dto/FieldPkgSearchCondition.java b/src/main/java/com/easysoftware/application/fieldpkg/dto/FieldPkgSearchCondition.java new file mode 100644 index 0000000..abfd754 --- /dev/null +++ b/src/main/java/com/easysoftware/application/fieldpkg/dto/FieldPkgSearchCondition.java @@ -0,0 +1,63 @@ +package com.easysoftware.application.fieldpkg.dto; + +import org.hibernate.validator.constraints.Range; + +import com.easysoftware.common.constant.PackageConstant; + +import jakarta.validation.constraints.Size; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@AllArgsConstructor +@NoArgsConstructor +public class FieldPkgSearchCondition { + /** + * Page number within the specified range. + */ + @Range(min = PackageConstant.MIN_PAGE_NUM, max = PackageConstant.MAX_PAGE_NUM) + private Integer pageNum = 1; + + /** + * Page size within the specified range. + */ + @Range(min = PackageConstant.MIN_PAGE_SIZE, max = PackageConstant.MAX_PAGE_SIZE) + private Integer pageSize = 10; + + /** + * Operating system (maximum length: PackageConstant.MAX_FIELD_LENGTH). + */ + @Size(max = PackageConstant.MAX_FIELD_LENGTH) + private String os; + + /** + * Architecture (maximum length: PackageConstant.MAX_FIELD_LENGTH). + */ + @Size(max = PackageConstant.MAX_FIELD_LENGTH) + private String arch; + + /** + * Category (maximum length: PackageConstant.MAX_FIELD_LENGTH). + */ + @Size(max = PackageConstant.MAX_FIELD_LENGTH) + private String category; + + /** + * Name (maximum length: PackageConstant.MAX_FIELD_LENGTH). + */ + @Size(max = PackageConstant.MAX_FIELD_LENGTH) + private String name; + + /** + * Time order. + */ + @Size(max = PackageConstant.MAX_FIELD_LENGTH) + private String timeOrder; + + /** + * Name order. + */ + @Size(max = PackageConstant.MAX_FIELD_LENGTH) + private String nameOrder; +} diff --git a/src/main/java/com/easysoftware/application/fieldpkg/vo/FieldPkgVo.java b/src/main/java/com/easysoftware/application/fieldpkg/vo/FieldPkgVo.java new file mode 100644 index 0000000..4284403 --- /dev/null +++ b/src/main/java/com/easysoftware/application/fieldpkg/vo/FieldPkgVo.java @@ -0,0 +1,58 @@ +package com.easysoftware.application.fieldpkg.vo; + +import java.util.Map; +import java.util.Set; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@AllArgsConstructor +@NoArgsConstructor +public class FieldPkgVo { + /** + * Operating system. + */ + private String os; + + /** + * Architecture. + */ + private String arch; + + /** + * Name. + */ + private String name; + + /** + * Version. + */ + private String version; + + /** + * Category. + */ + private String category; + + /** + * Icon URL. + */ + private String iconUrl; + + /** + * Set of tags. + */ + private Set tags; + + /** + * Map of package IDs. + */ + private Map pkgIds; + + /** + * Description. + */ + private String description; +} diff --git a/src/main/java/com/easysoftware/application/filedapplication/FieldApplicationServiceImpl.java b/src/main/java/com/easysoftware/application/filedapplication/FieldApplicationServiceImpl.java index 25d9ea3..e033d62 100644 --- a/src/main/java/com/easysoftware/application/filedapplication/FieldApplicationServiceImpl.java +++ b/src/main/java/com/easysoftware/application/filedapplication/FieldApplicationServiceImpl.java @@ -5,6 +5,7 @@ import com.easysoftware.application.applicationpackage.vo.ApplicationPackageDeta import com.easysoftware.application.epkgpackage.EPKGPackageService; import com.easysoftware.application.epkgpackage.dto.EPKGPackageSearchCondition; import com.easysoftware.application.epkgpackage.vo.EPKGPackageDetailVo; +import com.easysoftware.application.fieldpkg.dto.FieldPkgSearchCondition; import com.easysoftware.application.filedapplication.dto.FieldColumnSearchCondition; import com.easysoftware.application.filedapplication.dto.FieldDetailSearchCondition; import com.easysoftware.application.filedapplication.dto.FiledApplicationSerachCondition; @@ -20,6 +21,7 @@ import com.easysoftware.common.utils.ResultUtil; import com.easysoftware.domain.applicationpackage.gateway.ApplicationPackageGateway; import com.easysoftware.domain.epkgpackage.gateway.EPKGPackageGateway; import com.easysoftware.domain.fieldapplication.gateway.FieldapplicationGateway; +import com.easysoftware.domain.fieldpkg.gateway.FieldPkgGateway; import com.easysoftware.domain.rpmpackage.gateway.RPMPackageGateway; import com.easysoftware.infrastructure.fieldapplication.gatewayimpl.converter.FieldApplicationConverter; import com.easysoftware.ranking.Ranker; @@ -83,6 +85,13 @@ public class FieldApplicationServiceImpl implements FieldApplicationService { @Resource private ApplicationPackageGateway appGateway; + /** + * FieldPkgGateway Package Gateway. + */ + @Resource + private FieldPkgGateway fieldPkgGateway; + + /** * Resource injection for the Ranker. */ @@ -174,8 +183,8 @@ public class FieldApplicationServiceImpl implements FieldApplicationService { * @return A map containing domain menu items with their associated objects. */ private Map searchDomainMenu(FiledApplicationSerachCondition condition) { - condition.setName(""); - return domainGateway.queryMenuByPage(condition); + FieldPkgSearchCondition con = FieldApplicationConverter.toFieldPkg(condition); + return fieldPkgGateway.queryMenuByPage(con); } @@ -235,7 +244,7 @@ public class FieldApplicationServiceImpl implements FieldApplicationService { Map> res = appGateway.queryColumn(columns); return ResultUtil.success(HttpStatus.OK, res); } else if ("domain".equals(name)) { - Map> res = domainGateway.queryColumn(columns); + Map> res = fieldPkgGateway.queryColumn(columns); return ResultUtil.success(HttpStatus.OK, res); } else { throw new ParamErrorException("unsupported param: " + condition.getName()); diff --git a/src/main/java/com/easysoftware/domain/fieldpkg/gateway/FieldPkgGateway.java b/src/main/java/com/easysoftware/domain/fieldpkg/gateway/FieldPkgGateway.java new file mode 100644 index 0000000..e7e6145 --- /dev/null +++ b/src/main/java/com/easysoftware/domain/fieldpkg/gateway/FieldPkgGateway.java @@ -0,0 +1,25 @@ +package com.easysoftware.domain.fieldpkg.gateway; + +import java.util.List; +import java.util.Map; + +import com.easysoftware.application.fieldpkg.dto.FieldPkgSearchCondition; + +public interface FieldPkgGateway { + /** + * Query menu items by page based on the specified search condition. + * + * @param condition The search condition for querying menu items. + * @return A map containing menu items based on the page and condition. + */ + Map queryMenuByPage(FieldPkgSearchCondition condition); + + /** + * Query columns and their values based on the specified list of columns. + * + * @param columns The list of columns to query. + * @return A map containing column names as keys and lists of values as values. + */ + Map> queryColumn(List columns); + +} diff --git a/src/main/java/com/easysoftware/infrastructure/fieldapplication/gatewayimpl/converter/FieldApplicationConverter.java b/src/main/java/com/easysoftware/infrastructure/fieldapplication/gatewayimpl/converter/FieldApplicationConverter.java index 9dbeef0..816bdf2 100644 --- a/src/main/java/com/easysoftware/infrastructure/fieldapplication/gatewayimpl/converter/FieldApplicationConverter.java +++ b/src/main/java/com/easysoftware/infrastructure/fieldapplication/gatewayimpl/converter/FieldApplicationConverter.java @@ -3,6 +3,7 @@ package com.easysoftware.infrastructure.fieldapplication.gatewayimpl.converter; import com.easysoftware.application.applicationpackage.dto.ApplicationPackageSearchCondition; import com.easysoftware.application.epkgpackage.dto.EPKGPackageSearchCondition; +import com.easysoftware.application.fieldpkg.dto.FieldPkgSearchCondition; import com.easysoftware.application.filedapplication.dto.FiledApplicationSerachCondition; import com.easysoftware.application.filedapplication.dto.InputFiledApplication; import com.easysoftware.application.filedapplication.vo.FiledApplicationVo; @@ -159,4 +160,17 @@ public final class FieldApplicationConverter { eCon.setName(""); return eCon; } + + /** + * Converts a FieldApplicationSearchCondition object to an FieldPkgSearchCondition object. + * + * @param con The FiledApplicationSerachCondition object to convert. + * @return The converted FieldPkgSearchCondition object. + */ + public static FieldPkgSearchCondition toFieldPkg(final FiledApplicationSerachCondition con) { + FieldPkgSearchCondition fCon = new FieldPkgSearchCondition(); + BeanUtils.copyProperties(con, fCon); + fCon.setName(""); + return fCon; + } } diff --git a/src/main/java/com/easysoftware/infrastructure/fieldapplication/gatewayimpl/dataobject/FieldApplicationDO.java b/src/main/java/com/easysoftware/infrastructure/fieldapplication/gatewayimpl/dataobject/FieldApplicationDO.java index 875431d..ee73d93 100644 --- a/src/main/java/com/easysoftware/infrastructure/fieldapplication/gatewayimpl/dataobject/FieldApplicationDO.java +++ b/src/main/java/com/easysoftware/infrastructure/fieldapplication/gatewayimpl/dataobject/FieldApplicationDO.java @@ -11,7 +11,6 @@ import java.io.Serial; @Data @AllArgsConstructor @NoArgsConstructor -// TODO 修改表名 @TableName("domain_package") public class FieldApplicationDO { /** diff --git a/src/main/java/com/easysoftware/infrastructure/fieldpkg/FieldPkgGatewayImpl.java b/src/main/java/com/easysoftware/infrastructure/fieldpkg/FieldPkgGatewayImpl.java new file mode 100644 index 0000000..3797150 --- /dev/null +++ b/src/main/java/com/easysoftware/infrastructure/fieldpkg/FieldPkgGatewayImpl.java @@ -0,0 +1,119 @@ +package com.easysoftware.infrastructure.fieldpkg; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.jdbc.BadSqlGrammarException; +import org.springframework.stereotype.Component; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.easysoftware.application.fieldpkg.dto.FieldPkgSearchCondition; +import com.easysoftware.application.fieldpkg.vo.FieldPkgVo; +import com.easysoftware.common.exception.ParamErrorException; +import com.easysoftware.common.utils.QueryWrapperUtil; +import com.easysoftware.domain.fieldpkg.gateway.FieldPkgGateway; +import com.easysoftware.infrastructure.fieldpkg.converter.FieldPkgConverter; +import com.easysoftware.infrastructure.fieldpkg.dataobject.FieldPkgDO; +import com.easysoftware.infrastructure.mapper.FieldPkgDOMapper; +import com.power.common.util.StringUtil; + +@Component +public class FieldPkgGatewayImpl implements FieldPkgGateway { + /** + * Autowired FieldApplicationDOMapper for database operations. + */ + @Autowired + private FieldPkgDOMapper mapper; + + /** + * Query menu items by page based on the specified search condition. + * + * @param condition The search condition for querying menu items. + * @return A map containing menu items based on the page and condition. + */ + @Override + public Map queryMenuByPage(final FieldPkgSearchCondition condition) { + Page page = createPage(condition); + QueryWrapper wrapper = QueryWrapperUtil.createQueryWrapper(new FieldPkgDO(), + condition, null); + IPage resPage = mapper.selectPage(page, wrapper); + List list = resPage.getRecords(); + List voList = FieldPkgConverter.toVo(list); + long total = resPage.getTotal(); + + return Map.ofEntries( + Map.entry("total", total), + Map.entry("list", voList) + ); + } + + /** + * Creates a Page of FieldPkgDO based on the provided search condition. + * + * @param condition The FieldPkgSearchCondition object to create the page from. + * @return A Page of FieldPkgDO entities. + */ + private Page createPage(final FieldPkgSearchCondition condition) { + int pageNum = condition.getPageNum(); + int pageSize = condition.getPageSize(); + Page page = new Page<>(pageNum, pageSize); + return page; + } + + /** + * queryColumn as a list of strings. + * + * @param columns The name of the columns to query. + * @return A Map of strings representing the queried column. + */ + @Override + public Map> queryColumn(List columns) { + Map> res = new HashMap<>(); + for (String column : columns) { + List colList = queryColumn(column); + if ("os".equals(column)) { + colList = QueryWrapperUtil.sortOsColumn(colList); + } + if ("category".equals(column)) { + colList = QueryWrapperUtil.sortCategoryColumn(colList); + } + res.put(column, colList); + } + return res; + } + + /** + * Query a specific column and return the results as a list of strings. + * + * @param column The name of the column to query. + * @return A list of strings representing the queried column. + */ + public List queryColumn(final String column) { + // 白名单列 + List allowedColumns = Arrays.asList("category", "os", "arch"); + + if (!allowedColumns.contains(column)) { + throw new ParamErrorException("Unsupported column: " + column); + } + + QueryWrapper wrapper = new QueryWrapper<>(); + // 安全地选择列,列名已经通过白名单验证 + wrapper.select("distinct " + column); + List columnList = new ArrayList<>(); + try { + columnList = mapper.selectList(wrapper); + } catch (BadSqlGrammarException e) { + throw new ParamErrorException("unsupported param: " + column); + } + + String underlineToCamelColumn = StringUtil.underlineToCamel(column); + return FieldPkgConverter.toColumn(columnList, underlineToCamelColumn); + } + +} diff --git a/src/main/java/com/easysoftware/infrastructure/fieldpkg/converter/FieldPkgConverter.java b/src/main/java/com/easysoftware/infrastructure/fieldpkg/converter/FieldPkgConverter.java new file mode 100644 index 0000000..297ab1b --- /dev/null +++ b/src/main/java/com/easysoftware/infrastructure/fieldpkg/converter/FieldPkgConverter.java @@ -0,0 +1,102 @@ +package com.easysoftware.infrastructure.fieldpkg.converter; + +import java.lang.reflect.Field; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.HashSet; +import java.util.List; +import java.util.Map; +import java.util.Set; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.BeanUtils; + +import com.easysoftware.application.fieldpkg.vo.FieldPkgVo; +import com.easysoftware.common.entity.MessageCode; +import com.easysoftware.common.utils.ObjectMapperUtil; +import com.easysoftware.infrastructure.fieldpkg.dataobject.FieldPkgDO; + +public final class FieldPkgConverter { + // Private constructor to prevent instantiation of the utility class + private FieldPkgConverter() { + // private constructor to hide the implicit public one + throw new AssertionError("Cannot instantiate FieldApplicationConverter class"); + } + + /** + * Logger instance for FieldPkgConverter. + */ + private static final Logger LOGGER = LoggerFactory.getLogger(FieldPkgConverter.class); + + /** + * Converts a list of FieldPkgDO objects to a list of FieldPkgDO view objects. + * + * @param doList The list of FieldPkgDO objects to convert. + * @return A list of FieldPkgVo view objects. + */ + public static List toVo(final List doList) { + List res = new ArrayList<>(); + for (FieldPkgDO op : doList) { + FieldPkgVo vo = toVo(op); + res.add(vo); + } + return res; + } + + /** + * Converts a FieldApplicationDO object to a FieldPkgDO view object. + * + * @param opDo The FieldApplicationDO object to convert. + * @return The converted FieldApplicationVo view object. + */ + public static FieldPkgVo toVo(final FieldPkgDO opDo) { + FieldPkgVo opVo = new FieldPkgVo(); + BeanUtils.copyProperties(opDo, opVo); + opDo.getTags(); + List tags = ObjectMapperUtil.toObjectList(String.class, opDo.getTags()); + Map pkgIds = ObjectMapperUtil.toMap(opDo.getPkgIds()); + + Set tagsSet = new HashSet<>(); + tagsSet.addAll(tags); + opVo.setTags(tagsSet); + + Map pkgIdsMap = new HashMap<>(); + for (Map.Entry pkgId : pkgIds.entrySet()) { + String key = pkgId.getKey(); + String value = (String) pkgId.getValue(); + pkgIdsMap.put(key, value); + } + opVo.setPkgIds(pkgIdsMap); + return opVo; + } + + /** + * Extracts a specific column from a list of FieldApplicationDO objects and returns it as a list of strings. + * + * @param columnList The list of FieldApplicationDO objects. + * @param column The name of the column to extract. + * @return A list of strings representing the extracted column values. + */ + public static List toColumn(final List columnList, final String column) { + List res = new ArrayList<>(); + try { + Field field = FieldPkgDO.class.getDeclaredField(column); + field.setAccessible(true); + for (FieldPkgDO pkg : columnList) { + if (pkg == null) { + continue; + } + Object obj = field.get(pkg); + if (!(obj instanceof String)) { + continue; + } + String value = (String) field.get(pkg); + res.add(value); + } + } catch (Exception e) { + LOGGER.error(MessageCode.EC00011.getMsgEn(), e); + } + return res; + } +} diff --git a/src/main/java/com/easysoftware/infrastructure/fieldpkg/dataobject/FieldPkgDO.java b/src/main/java/com/easysoftware/infrastructure/fieldpkg/dataobject/FieldPkgDO.java new file mode 100644 index 0000000..a65f3e2 --- /dev/null +++ b/src/main/java/com/easysoftware/infrastructure/fieldpkg/dataobject/FieldPkgDO.java @@ -0,0 +1,59 @@ +package com.easysoftware.infrastructure.fieldpkg.dataobject; + +import java.io.Serial; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@AllArgsConstructor +@NoArgsConstructor +@TableName("field_package") +public class FieldPkgDO { + /** + * Serializable class with a defined serial version UID. + */ + @Serial + private String os; + + /** + * Architecture information. + */ + private String arch; + + /** + * Name of the entity. + */ + private String name; + + /** + * Version information. + */ + private String version; + + /** + * Category of the entity. + */ + private String category; + + /** + * URL for the icon. + */ + private String iconUrl; + + /** + * Tags associated with the entity. + */ + private String tags; + + /** + * Package IDs related to the entity. + */ + private String pkgIds; + + /** + * Description of the entity. + */ + private String description; +} diff --git a/src/main/java/com/easysoftware/infrastructure/mapper/FieldPkgDOMapper.java b/src/main/java/com/easysoftware/infrastructure/mapper/FieldPkgDOMapper.java new file mode 100644 index 0000000..e911fe3 --- /dev/null +++ b/src/main/java/com/easysoftware/infrastructure/mapper/FieldPkgDOMapper.java @@ -0,0 +1,7 @@ +package com.easysoftware.infrastructure.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.easysoftware.infrastructure.fieldpkg.dataobject.FieldPkgDO; + +public interface FieldPkgDOMapper extends BaseMapper { +} -- Gitee From 9efca1fe65d010b0ab7a7ca778afd8cf7777b4e2 Mon Sep 17 00:00:00 2001 From: zwjsec Date: Wed, 22 May 2024 14:55:18 +0800 Subject: [PATCH 27/30] =?UTF-8?q?=E5=88=A0=E9=99=A4=E5=9B=9E=E6=98=BE?= =?UTF-8?q?=E9=94=99=E8=AF=AF=E5=8F=82=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../DomainPackageServiceImpl.java | 26 +++++++------- .../FieldApplicationServiceImpl.java | 35 ++++++++++--------- .../ApplicationPackageGatewayImpl.java | 4 +-- .../ApplicationVersionGatewayImpl.java | 17 +++------ .../gatewayimpl/EPKGPackageGatewayImpl.java | 4 +-- .../FieldApplicationGatewayImpl.java | 10 +++--- .../fieldpkg/FieldPkgGatewayImpl.java | 9 +++-- .../gatewayimpl/RPMPackageGatewayImpl.java | 4 +-- 8 files changed, 50 insertions(+), 59 deletions(-) diff --git a/src/main/java/com/easysoftware/application/domainpackage/DomainPackageServiceImpl.java b/src/main/java/com/easysoftware/application/domainpackage/DomainPackageServiceImpl.java index 65a0519..30b6fe7 100644 --- a/src/main/java/com/easysoftware/application/domainpackage/DomainPackageServiceImpl.java +++ b/src/main/java/com/easysoftware/application/domainpackage/DomainPackageServiceImpl.java @@ -146,12 +146,10 @@ public class DomainPackageServiceImpl implements DomainPackageService { extendIds(domain); Map res = Map.ofEntries( Map.entry("total", "-1"), - Map.entry("list", domain) - ); + Map.entry("list", domain)); return ResultUtil.success(HttpStatus.OK, res); } - /** * Search for a domain page based on the provided search condition. * @@ -177,7 +175,7 @@ public class DomainPackageServiceImpl implements DomainPackageService { } else if ("all".equals(condition.getName())) { return searchAllEntity(condition); } else { - throw new ParamErrorException("unsupported param: " + condition.getName()); + throw new ParamErrorException("unsupported param"); } } @@ -224,17 +222,16 @@ public class DomainPackageServiceImpl implements DomainPackageService { List rpmMenus = rPMPkgService.queryPartAppPkgMenu(rpmCon); List domainMenus = mergeMenuVOs(appMenus, rpmMenus); - //对 domainMenus 中的每个菜单调用 extendIds 方法。 + // 对 domainMenus 中的每个菜单调用 extendIds 方法。 domainMenus.forEach(this::extendIds); Map> cateMap = getCategorys(); - //对 domainMenus 中的每个菜单,将其添加到 cateMap 中对应类别的列表中。 + // 对 domainMenus 中的每个菜单,将其添加到 cateMap 中对应类别的列表中。 domainMenus.forEach(menu -> cateMap.get(menu.getCategory()).add(menu)); List> mapList = assembleMap(cateMap); List> rankedMapList = ranker.rankingDomainPageByOperationConfig(mapList); Map res = Map.ofEntries( Map.entry("total", domainMenus.size()), - Map.entry("list", rankedMapList) - ); + Map.entry("list", rankedMapList)); try { // 结果转json String resJson = RedisUtil.convertToJson(res); @@ -283,7 +280,7 @@ public class DomainPackageServiceImpl implements DomainPackageService { * @return List of merged DomainPackageMenuVo instances. */ private List mergeMenuVOs(final List appMenus, - final List rpmMenus) { + final List rpmMenus) { Map domainMap = new HashMap<>(); // 遍历 appMenus 列表 appMenus.forEach(app -> { @@ -317,7 +314,8 @@ public class DomainPackageServiceImpl implements DomainPackageService { /** * Get categories with corresponding objects. * - * @return A Map containing category names as keys and lists of objects as values. + * @return A Map containing category names as keys and lists of objects as + * values. */ private Map> getCategorys() { Map> map = new HashMap<>(); @@ -378,7 +376,7 @@ public class DomainPackageServiceImpl implements DomainPackageService { } } else { - throw new ParamErrorException("unsupported param: " + condition.getName()); + throw new ParamErrorException("unsupported param"); } } @@ -395,8 +393,7 @@ public class DomainPackageServiceImpl implements DomainPackageService { Map res = Map.ofEntries( Map.entry("apppkg", appNum), - Map.entry("total", Math.addExact(rpmNum, epkgNum)) - ); + Map.entry("total", Math.addExact(rpmNum, epkgNum))); return ResultUtil.success(HttpStatus.OK, res); } @@ -452,7 +449,8 @@ public class DomainPackageServiceImpl implements DomainPackageService { } /** - * Search for application package detail based on the provided application package ID. + * Search for application package detail based on the provided application + * package ID. * * @param appPkgId The application package ID to search for. * @return An ApplicationPackageDetailVo object containing the details. diff --git a/src/main/java/com/easysoftware/application/filedapplication/FieldApplicationServiceImpl.java b/src/main/java/com/easysoftware/application/filedapplication/FieldApplicationServiceImpl.java index e033d62..5690314 100644 --- a/src/main/java/com/easysoftware/application/filedapplication/FieldApplicationServiceImpl.java +++ b/src/main/java/com/easysoftware/application/filedapplication/FieldApplicationServiceImpl.java @@ -91,7 +91,6 @@ public class FieldApplicationServiceImpl implements FieldApplicationService { @Resource private FieldPkgGateway fieldPkgGateway; - /** * Resource injection for the Ranker. */ @@ -123,11 +122,10 @@ public class FieldApplicationServiceImpl implements FieldApplicationService { List> cateMap = searchMainPage(); return ResultUtil.success(HttpStatus.OK, cateMap); } else { - throw new ParamErrorException("unsupported param: " + name); + throw new ParamErrorException("unsupported param"); } } - /** * Search the main page and return a list of maps containing key-value pairs. * @@ -146,7 +144,8 @@ public class FieldApplicationServiceImpl implements FieldApplicationService { } /** - * Assemble the main page using the provided category map and return a list of maps containing key-value pairs. + * Assemble the main page using the provided category map and return a list of + * maps containing key-value pairs. * * @param cateMap The category map used for assembling the main page. * @return A list of maps with key-value pairs from the assembled main page. @@ -165,7 +164,8 @@ public class FieldApplicationServiceImpl implements FieldApplicationService { /** * Get categories and their associated objects. * - * @return A map containing category names as keys and lists of associated objects as values. + * @return A map containing category names as keys and lists of associated + * objects as values. */ private Map> getCategorys() { Map> map = new HashMap<>(); @@ -187,36 +187,36 @@ public class FieldApplicationServiceImpl implements FieldApplicationService { return fieldPkgGateway.queryMenuByPage(con); } - /** * Search EPKG menu based on the specified search condition. * * @param condition The search condition for EPKG menu search. - * @return A map containing the search results with string keys and object values. + * @return A map containing the search results with string keys and object + * values. */ private Map searchEpkgMenu(final FiledApplicationSerachCondition condition) { EPKGPackageSearchCondition epkg = FieldApplicationConverter.toEpkg(condition); return epkgService.queryAllEPKGPkgMenu(epkg); } - /** * Search Rpm menu based on the specified search condition. * * @param condition The search condition for Rpm menu search. - * @return A map containing the search results with string keys and object values. + * @return A map containing the search results with string keys and object + * values. */ private Map searchRpmMenu(final FiledApplicationSerachCondition condition) { RPMPackageSearchCondition rpm = FieldApplicationConverter.toRpm(condition); return rpmService.queryAllRPMPkgMenu(rpm); } - /** * Search Application menu based on the specified search condition. * * @param condition The search condition for Application menu search. - * @return A map containing the search results with string keys and object values. + * @return A map containing the search results with string keys and object + * values. */ private Map searchAppMenu(final FiledApplicationSerachCondition condition) { ApplicationPackageSearchCondition app = FieldApplicationConverter.toApp(condition); @@ -247,11 +247,10 @@ public class FieldApplicationServiceImpl implements FieldApplicationService { Map> res = fieldPkgGateway.queryColumn(columns); return ResultUtil.success(HttpStatus.OK, res); } else { - throw new ParamErrorException("unsupported param: " + condition.getName()); + throw new ParamErrorException("unsupported param"); } } - /** * Query detail by name. * @@ -293,7 +292,8 @@ public class FieldApplicationServiceImpl implements FieldApplicationService { * Search EPKG package detail by the specified EPKG package ID. * * @param epkgPkgId The ID of the EPKG package to search for. - * @return An EPKGPackageDetailVo object containing the details of the EPKG package. + * @return An EPKGPackageDetailVo object containing the details of the EPKG + * package. */ private EPKGPackageDetailVo searchEpkgDetail(final String epkgPkgId) { List pkgList = epkgGateway.queryDetailByPkgId(epkgPkgId); @@ -308,7 +308,8 @@ public class FieldApplicationServiceImpl implements FieldApplicationService { * Search RPM package detail by the specified RPM package ID. * * @param rpmPkgId The ID of the RPM package to search for. - * @return An RPMPackageDetailVo object containing the details of the RPM package. + * @return An RPMPackageDetailVo object containing the details of the RPM + * package. */ private RPMPackageDetailVo searchRpmDetail(final String rpmPkgId) { List pkgList = rpmGateway.queryDetailByPkgId(rpmPkgId); @@ -323,7 +324,8 @@ public class FieldApplicationServiceImpl implements FieldApplicationService { * Search application package detail by the specified application package ID. * * @param appPkgId The ID of the application package to search for. - * @return An ApplicationPackageDetailVo object containing the details of the application package. + * @return An ApplicationPackageDetailVo object containing the details of the + * application package. */ private ApplicationPackageDetailVo searchAppDetail(final String appPkgId) { List pkgList = appGateway.queryDetailByPkgId(appPkgId); @@ -334,7 +336,6 @@ public class FieldApplicationServiceImpl implements FieldApplicationService { return null; } - /** * Query statistics. * diff --git a/src/main/java/com/easysoftware/infrastructure/applicationpackage/gatewayimpl/ApplicationPackageGatewayImpl.java b/src/main/java/com/easysoftware/infrastructure/applicationpackage/gatewayimpl/ApplicationPackageGatewayImpl.java index c99479e..fc44a4e 100644 --- a/src/main/java/com/easysoftware/infrastructure/applicationpackage/gatewayimpl/ApplicationPackageGatewayImpl.java +++ b/src/main/java/com/easysoftware/infrastructure/applicationpackage/gatewayimpl/ApplicationPackageGatewayImpl.java @@ -266,7 +266,7 @@ public class ApplicationPackageGatewayImpl implements ApplicationPackageGateway List allowedColumns = Arrays.asList("category", "os", "arch"); if (!allowedColumns.contains(column)) { - throw new ParamErrorException("Unsupported column: " + column); + throw new ParamErrorException("Unsupported column"); } QueryWrapper wrapper = new QueryWrapper<>(); @@ -276,7 +276,7 @@ public class ApplicationPackageGatewayImpl implements ApplicationPackageGateway try { rpmColumn = appPkgMapper.selectList(wrapper); } catch (BadSqlGrammarException e) { - throw new ParamErrorException("unsupported param: " + column); + throw new ParamErrorException("unsupported param"); } String underlineToCamelColumn = StringUtil.underlineToCamel(column); diff --git a/src/main/java/com/easysoftware/infrastructure/applicationversion/gatewayimpl/ApplicationVersionGatewayImpl.java b/src/main/java/com/easysoftware/infrastructure/applicationversion/gatewayimpl/ApplicationVersionGatewayImpl.java index e2c5c94..140828b 100644 --- a/src/main/java/com/easysoftware/infrastructure/applicationversion/gatewayimpl/ApplicationVersionGatewayImpl.java +++ b/src/main/java/com/easysoftware/infrastructure/applicationversion/gatewayimpl/ApplicationVersionGatewayImpl.java @@ -34,7 +34,6 @@ public class ApplicationVersionGatewayImpl implements ApplicationVersionGateway @Autowired private ApplicationVersionDOMapper appVersionMapper; - /** * Delete an application by name. * @@ -49,7 +48,6 @@ public class ApplicationVersionGatewayImpl implements ApplicationVersionGateway return mark == 1; } - /** * Check if an application exists based on its name. * @@ -63,7 +61,6 @@ public class ApplicationVersionGatewayImpl implements ApplicationVersionGateway return appVersionMapper.exists(wrapper); } - /** * Save an ApplicationVersion object. * @@ -77,7 +74,6 @@ public class ApplicationVersionGatewayImpl implements ApplicationVersionGateway return mark == 1; } - /** * Update an existing ApplicationVersion object. * @@ -118,8 +114,7 @@ public class ApplicationVersionGatewayImpl implements ApplicationVersionGateway Map res = Map.ofEntries( Map.entry("total", resPage.getTotal()), - Map.entry("list", appDetails) - ); + Map.entry("list", appDetails)); return res; } @@ -141,7 +136,6 @@ public class ApplicationVersionGatewayImpl implements ApplicationVersionGateway return objList; } - /** * Query information based on the provided search condition. * @@ -159,9 +153,8 @@ public class ApplicationVersionGatewayImpl implements ApplicationVersionGateway List appList = resPage.getRecords(); List appDetails = ApplicationVersionConvertor.toEntity(appList); return Map.ofEntries( - Map.entry("total", resPage.getTotal()), - Map.entry("list", appDetails) - ); + Map.entry("total", resPage.getTotal()), + Map.entry("list", appDetails)); } private Page createPage(ApplicationVersionSearchCondition condition) { @@ -192,7 +185,7 @@ public class ApplicationVersionGatewayImpl implements ApplicationVersionGateway private List queryColumn(String column) { List allowedColumns = Arrays.asList("eulerOsVersion"); if (!allowedColumns.contains(column)) { - throw new ParamErrorException("Unsupported column: " + column); + throw new ParamErrorException("Unsupported column"); } QueryWrapper wrapper = new QueryWrapper<>(); @@ -201,7 +194,7 @@ public class ApplicationVersionGatewayImpl implements ApplicationVersionGateway try { columnList = appVersionMapper.selectList(wrapper); } catch (BadSqlGrammarException e) { - throw new ParamErrorException("unsupported param: " + column); + throw new ParamErrorException("unsupported param"); } String underlineToCamelColumn = StringUtil.underlineToCamel(column); diff --git a/src/main/java/com/easysoftware/infrastructure/epkgpackage/gatewayimpl/EPKGPackageGatewayImpl.java b/src/main/java/com/easysoftware/infrastructure/epkgpackage/gatewayimpl/EPKGPackageGatewayImpl.java index 0ee0a41..d2d7f26 100644 --- a/src/main/java/com/easysoftware/infrastructure/epkgpackage/gatewayimpl/EPKGPackageGatewayImpl.java +++ b/src/main/java/com/easysoftware/infrastructure/epkgpackage/gatewayimpl/EPKGPackageGatewayImpl.java @@ -227,7 +227,7 @@ public class EPKGPackageGatewayImpl implements EPKGPackageGateway { List allowedColumns = Arrays.asList("category", "os", "arch"); if (!allowedColumns.contains(column)) { - throw new ParamErrorException("Unsupported column: " + column); + throw new ParamErrorException("Unsupported column"); } QueryWrapper wrapper = new QueryWrapper<>(); @@ -237,7 +237,7 @@ public class EPKGPackageGatewayImpl implements EPKGPackageGateway { try { rpmColumn = ePKGPkgMapper.selectList(wrapper); } catch (BadSqlGrammarException e) { - throw new ParamErrorException("unsupported param: " + column); + throw new ParamErrorException("unsupported param"); } String underlineToCamelColumn = StringUtil.underlineToCamel(column); diff --git a/src/main/java/com/easysoftware/infrastructure/fieldapplication/gatewayimpl/FieldApplicationGatewayImpl.java b/src/main/java/com/easysoftware/infrastructure/fieldapplication/gatewayimpl/FieldApplicationGatewayImpl.java index d68a8c9..0f3b62e 100644 --- a/src/main/java/com/easysoftware/infrastructure/fieldapplication/gatewayimpl/FieldApplicationGatewayImpl.java +++ b/src/main/java/com/easysoftware/infrastructure/fieldapplication/gatewayimpl/FieldApplicationGatewayImpl.java @@ -51,14 +51,14 @@ public class FieldApplicationGatewayImpl implements FieldapplicationGateway { return Map.ofEntries( Map.entry("total", total), - Map.entry("list", voList) - ); + Map.entry("list", voList)); } /** * Creates a Page of FieldApplicationDO based on the provided search condition. * - * @param condition The FieldApplicationSearchCondition object to create the page from. + * @param condition The FieldApplicationSearchCondition object to create the + * page from. * @return A Page of FieldApplicationDO entities. */ private Page createPage(final FiledApplicationSerachCondition condition) { @@ -101,7 +101,7 @@ public class FieldApplicationGatewayImpl implements FieldapplicationGateway { List allowedColumns = Arrays.asList("category", "os", "arch"); if (!allowedColumns.contains(column)) { - throw new ParamErrorException("Unsupported column: " + column); + throw new ParamErrorException("Unsupported column"); } QueryWrapper wrapper = new QueryWrapper<>(); @@ -111,7 +111,7 @@ public class FieldApplicationGatewayImpl implements FieldapplicationGateway { try { columnList = fieldAppMapper.selectList(wrapper); } catch (BadSqlGrammarException e) { - throw new ParamErrorException("unsupported param: " + column); + throw new ParamErrorException("unsupported param"); } String underlineToCamelColumn = StringUtil.underlineToCamel(column); diff --git a/src/main/java/com/easysoftware/infrastructure/fieldpkg/FieldPkgGatewayImpl.java b/src/main/java/com/easysoftware/infrastructure/fieldpkg/FieldPkgGatewayImpl.java index 3797150..75d97d4 100644 --- a/src/main/java/com/easysoftware/infrastructure/fieldpkg/FieldPkgGatewayImpl.java +++ b/src/main/java/com/easysoftware/infrastructure/fieldpkg/FieldPkgGatewayImpl.java @@ -48,9 +48,8 @@ public class FieldPkgGatewayImpl implements FieldPkgGateway { long total = resPage.getTotal(); return Map.ofEntries( - Map.entry("total", total), - Map.entry("list", voList) - ); + Map.entry("total", total), + Map.entry("list", voList)); } /** @@ -99,7 +98,7 @@ public class FieldPkgGatewayImpl implements FieldPkgGateway { List allowedColumns = Arrays.asList("category", "os", "arch"); if (!allowedColumns.contains(column)) { - throw new ParamErrorException("Unsupported column: " + column); + throw new ParamErrorException("Unsupported column"); } QueryWrapper wrapper = new QueryWrapper<>(); @@ -109,7 +108,7 @@ public class FieldPkgGatewayImpl implements FieldPkgGateway { try { columnList = mapper.selectList(wrapper); } catch (BadSqlGrammarException e) { - throw new ParamErrorException("unsupported param: " + column); + throw new ParamErrorException("unsupported param"); } String underlineToCamelColumn = StringUtil.underlineToCamel(column); diff --git a/src/main/java/com/easysoftware/infrastructure/rpmpackage/gatewayimpl/RPMPackageGatewayImpl.java b/src/main/java/com/easysoftware/infrastructure/rpmpackage/gatewayimpl/RPMPackageGatewayImpl.java index d38ce3e..3f0530d 100644 --- a/src/main/java/com/easysoftware/infrastructure/rpmpackage/gatewayimpl/RPMPackageGatewayImpl.java +++ b/src/main/java/com/easysoftware/infrastructure/rpmpackage/gatewayimpl/RPMPackageGatewayImpl.java @@ -230,7 +230,7 @@ public class RPMPackageGatewayImpl implements RPMPackageGateway { List allowedColumns = Arrays.asList("category", "os", "arch"); if (!allowedColumns.contains(column)) { - throw new ParamErrorException("Unsupported column: " + column); + throw new ParamErrorException("Unsupported column"); } QueryWrapper wrapper = new QueryWrapper<>(); @@ -240,7 +240,7 @@ public class RPMPackageGatewayImpl implements RPMPackageGateway { try { rpmColumn = rPMPkgMapper.selectList(wrapper); } catch (BadSqlGrammarException e) { - throw new ParamErrorException("unsupported param: " + column); + throw new ParamErrorException("unsupported param"); } String underlineToCamelColumn = StringUtil.underlineToCamel(column); -- Gitee From a9b63bbbd4bf4a858fff894603a9c209840a54fb Mon Sep 17 00:00:00 2001 From: zwjsec Date: Wed, 22 May 2024 16:08:21 +0800 Subject: [PATCH 28/30] =?UTF-8?q?=E9=BB=98=E8=AE=A4=E4=BC=98=E5=85=88?= =?UTF-8?q?=E5=B1=95=E7=A4=BA=E5=A4=9A=E6=A0=87=E7=AD=BE=E8=BD=AF=E4=BB=B6?= =?UTF-8?q?=E5=8C=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../infrastructure/fieldpkg/FieldPkgGatewayImpl.java | 1 + 1 file changed, 1 insertion(+) diff --git a/src/main/java/com/easysoftware/infrastructure/fieldpkg/FieldPkgGatewayImpl.java b/src/main/java/com/easysoftware/infrastructure/fieldpkg/FieldPkgGatewayImpl.java index 75d97d4..290d6bc 100644 --- a/src/main/java/com/easysoftware/infrastructure/fieldpkg/FieldPkgGatewayImpl.java +++ b/src/main/java/com/easysoftware/infrastructure/fieldpkg/FieldPkgGatewayImpl.java @@ -42,6 +42,7 @@ public class FieldPkgGatewayImpl implements FieldPkgGateway { Page page = createPage(condition); QueryWrapper wrapper = QueryWrapperUtil.createQueryWrapper(new FieldPkgDO(), condition, null); + wrapper.orderByDesc("length(tags)"); IPage resPage = mapper.selectPage(page, wrapper); List list = resPage.getRecords(); List voList = FieldPkgConverter.toVo(list); -- Gitee From b87ce014eb641698846ac9a2ed3b3184743179ef Mon Sep 17 00:00:00 2001 From: aca Date: Wed, 22 May 2024 08:15:17 +0000 Subject: [PATCH 29/30] delete tomcat Signed-off-by: aca --- Dockerfile | 3 --- 1 file changed, 3 deletions(-) diff --git a/Dockerfile b/Dockerfile index b57515f..dfa5db1 100644 --- a/Dockerfile +++ b/Dockerfile @@ -43,10 +43,7 @@ COPY --chown=easysoftware --from=Builder /EasySoftware/target ${WORKSPACE}/targe RUN echo "umask 027" >> /home/easysoftware/.bashrc \ && echo "umask 027" >> /root/.bashrc \ && source /home/easysoftware/.bashrc \ - && mkdir -p /home/easysoftware/tomcat/log \ && chmod 550 -R /home/easysoftware \ - && chown -R easysoftware:easysoftware /home/easysoftware/tomcat/ \ - && chmod 700 -R /home/easysoftware/tomcat \ && echo "set +o history" >> /etc/bashrc \ && echo "set +o history" >> /home/easysoftware/bashrc \ && sed -i "s|HISTSIZE=1000|HISTSIZE=0|" /etc/profile \ -- Gitee From ff0a8abba9ecfb2a18ba997181c7f4eda904397e Mon Sep 17 00:00:00 2001 From: aca Date: Wed, 22 May 2024 08:22:12 +0000 Subject: [PATCH 30/30] update Dockerfile. Signed-off-by: aca --- Dockerfile | 3 --- 1 file changed, 3 deletions(-) diff --git a/Dockerfile b/Dockerfile index b57515f..dfa5db1 100644 --- a/Dockerfile +++ b/Dockerfile @@ -43,10 +43,7 @@ COPY --chown=easysoftware --from=Builder /EasySoftware/target ${WORKSPACE}/targe RUN echo "umask 027" >> /home/easysoftware/.bashrc \ && echo "umask 027" >> /root/.bashrc \ && source /home/easysoftware/.bashrc \ - && mkdir -p /home/easysoftware/tomcat/log \ && chmod 550 -R /home/easysoftware \ - && chown -R easysoftware:easysoftware /home/easysoftware/tomcat/ \ - && chmod 700 -R /home/easysoftware/tomcat \ && echo "set +o history" >> /etc/bashrc \ && echo "set +o history" >> /home/easysoftware/bashrc \ && sed -i "s|HISTSIZE=1000|HISTSIZE=0|" /etc/profile \ -- Gitee