diff --git a/src/main/java/com/easysoftware/adapter/query/EPKGPackageQueryAdapter.java b/src/main/java/com/easysoftware/adapter/query/EPKGPackageQueryAdapter.java new file mode 100644 index 0000000000000000000000000000000000000000..7383d526cd0931534705051ed3a86a1541783d2d --- /dev/null +++ b/src/main/java/com/easysoftware/adapter/query/EPKGPackageQueryAdapter.java @@ -0,0 +1,24 @@ +package com.easysoftware.adapter.query; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.ResponseEntity; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import com.easysoftware.application.epkgpackage.EPKGPackageService; +import com.easysoftware.application.epkgpackage.dto.EPKGPackageSearchCondition; +import jakarta.validation.Valid; + +@RestController +@RequestMapping("/epkgpkg") +public class EPKGPackageQueryAdapter { + @Autowired + private EPKGPackageService ePKGPackageService; + + @GetMapping() + public ResponseEntity searchEPKGPkg(@Valid EPKGPackageSearchCondition condition) { + ResponseEntity res = ePKGPackageService.searchEPKGPkg(condition); + return res; + } +} diff --git a/src/main/java/com/easysoftware/application/domainpackage/DomainPackageServiceImpl.java b/src/main/java/com/easysoftware/application/domainpackage/DomainPackageServiceImpl.java index 8997a76cb909a6ecb153fa614adbc6af1c9c0c53..6588927d099b06aed5705f317e22941b18142e0c 100644 --- a/src/main/java/com/easysoftware/application/domainpackage/DomainPackageServiceImpl.java +++ b/src/main/java/com/easysoftware/application/domainpackage/DomainPackageServiceImpl.java @@ -16,6 +16,8 @@ import com.easysoftware.application.applicationpackage.dto.ApplicationPackageSea import com.easysoftware.application.applicationpackage.vo.ApplicationPackageMenuVo; import com.easysoftware.application.domainpackage.dto.DomainSearchCondition; import com.easysoftware.application.domainpackage.vo.DomainPackageMenuVo; +import com.easysoftware.application.epkgpackage.EPKGPackageService; +import com.easysoftware.application.epkgpackage.dto.EPKGPackageSearchCondition; import com.easysoftware.application.rpmpackage.RPMPackageService; import com.easysoftware.application.rpmpackage.dto.RPMPackageSearchCondition; import com.easysoftware.application.rpmpackage.vo.RPMPackageMenuVo; @@ -34,6 +36,9 @@ public class DomainPackageServiceImpl implements DomainPackageService { @Resource RPMPackageService rPMPkgService; + @Resource + EPKGPackageService epkgPackageService; + @Resource RPMPackageGateway rpmPackageGateway; @@ -54,13 +59,19 @@ public class DomainPackageServiceImpl implements DomainPackageService { } else if ("rpmpkg".equals(condition.getName())) { RPMPackageSearchCondition rPMCon = new RPMPackageSearchCondition(); BeanUtils.copyProperties(condition, rPMCon); - Map appMenuList = rPMPkgService.queryAllRPMPkgMenu(rPMCon); - return ResultUtil.success(HttpStatus.OK, appMenuList); + Map rpmMenuList = rPMPkgService.queryAllRPMPkgMenu(rPMCon); + return ResultUtil.success(HttpStatus.OK, rpmMenuList); + } else if ("epkgpkg".equals(condition.getName())) { + EPKGPackageSearchCondition eCon = new EPKGPackageSearchCondition(); + BeanUtils.copyProperties(condition, eCon); + Map epkgMenu = epkgPackageService.queryAllEPKGPkgMenu(eCon); + return ResultUtil.success(HttpStatus.OK, epkgMenu); } else if ("all".equals(condition.getName())) { ResponseEntity res = searchAllEntity(condition); return res; + } else { + return null; } - return null; } private ResponseEntity searchAllEntity(DomainSearchCondition condition) { diff --git a/src/main/java/com/easysoftware/application/epkgpackage/EPKGPackageService.java b/src/main/java/com/easysoftware/application/epkgpackage/EPKGPackageService.java new file mode 100644 index 0000000000000000000000000000000000000000..c8f381ecf6a16f363a1776531fd30b987d01fdc6 --- /dev/null +++ b/src/main/java/com/easysoftware/application/epkgpackage/EPKGPackageService.java @@ -0,0 +1,19 @@ +package com.easysoftware.application.epkgpackage; + +import java.util.List; +import java.util.Map; + +import org.springframework.http.ResponseEntity; + +import com.easysoftware.application.epkgpackage.dto.EPKGPackageSearchCondition; +import com.easysoftware.application.epkgpackage.dto.InputEPKGPackage; +import com.easysoftware.application.rpmpackage.dto.InputRPMPackage; +import com.easysoftware.application.rpmpackage.dto.RPMPackageSearchCondition; + +public interface EPKGPackageService { + ResponseEntity insertEPKGPkg(InputEPKGPackage inputrPMPackage); + ResponseEntity updateEPKGPkg(InputEPKGPackage inputrPMPackage); + ResponseEntity deleteEPKGPkg(List names); + ResponseEntity searchEPKGPkg(EPKGPackageSearchCondition condition); + Map queryAllEPKGPkgMenu(EPKGPackageSearchCondition condition); +} diff --git a/src/main/java/com/easysoftware/application/epkgpackage/EPKGPackageServiceImpl.java b/src/main/java/com/easysoftware/application/epkgpackage/EPKGPackageServiceImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..c015f372a5ee51b825fac11cc617cbced060db7c --- /dev/null +++ b/src/main/java/com/easysoftware/application/epkgpackage/EPKGPackageServiceImpl.java @@ -0,0 +1,52 @@ +package com.easysoftware.application.epkgpackage; + +import java.util.List; +import java.util.Map; + +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.stereotype.Service; + +import com.easysoftware.application.epkgpackage.dto.EPKGPackageSearchCondition; +import com.easysoftware.application.epkgpackage.dto.InputEPKGPackage; +import com.easysoftware.common.utils.ResultUtil; +import com.easysoftware.domain.epkgpackage.gateway.EPKGPackageGateway; +import com.easysoftware.domain.rpmpackage.gateway.RPMPackageGateway; + +import jakarta.annotation.Resource; + +@Service +public class EPKGPackageServiceImpl implements EPKGPackageService { + @Resource + EPKGPackageGateway ePKGPackageGateway; + + @Override + public ResponseEntity deleteEPKGPkg(List names) { + // TODO Auto-generated method stub + return null; + } + + @Override + public ResponseEntity insertEPKGPkg(InputEPKGPackage input) { + return null; + } + + @Override + public Map queryAllEPKGPkgMenu(EPKGPackageSearchCondition condition) { + Map ePKGMenu = ePKGPackageGateway.queryMenuByName(condition); + return ePKGMenu; + } + + @Override + public ResponseEntity searchEPKGPkg(EPKGPackageSearchCondition condition) { + Map res = ePKGPackageGateway.queryDetailByName(condition); + return ResultUtil.success(HttpStatus.OK, res); + } + + @Override + public ResponseEntity updateEPKGPkg(InputEPKGPackage inputrPMPackage) { + // TODO Auto-generated method stub + return null; + } + +} diff --git a/src/main/java/com/easysoftware/application/epkgpackage/dto/EPKGPackageSearchCondition.java b/src/main/java/com/easysoftware/application/epkgpackage/dto/EPKGPackageSearchCondition.java new file mode 100644 index 0000000000000000000000000000000000000000..279b09edc059561e6b8e055b0baf05b8b76eb348 --- /dev/null +++ b/src/main/java/com/easysoftware/application/epkgpackage/dto/EPKGPackageSearchCondition.java @@ -0,0 +1,24 @@ +package com.easysoftware.application.epkgpackage.dto; + +import org.hibernate.validator.constraints.Range; + +import jakarta.validation.constraints.NotBlank; +import jakarta.validation.constraints.Size; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@AllArgsConstructor +@NoArgsConstructor +public class EPKGPackageSearchCondition { + @Size(max = 50) + @NotBlank + private String name; + + @Range(min = 1, max = 1000, message = "page must be greater than 0 and less than 1000 ") + private Integer pageNum = 1; + + @Range(min = 5, max = 50, message = "page must be greater than 5 and less than 50 ") + private Integer pageSize = 10; +} diff --git a/src/main/java/com/easysoftware/application/epkgpackage/dto/InputEPKGPackage.java b/src/main/java/com/easysoftware/application/epkgpackage/dto/InputEPKGPackage.java new file mode 100644 index 0000000000000000000000000000000000000000..4c836fda926c9f456ee9499df11570fdfbeead9f --- /dev/null +++ b/src/main/java/com/easysoftware/application/epkgpackage/dto/InputEPKGPackage.java @@ -0,0 +1,97 @@ +package com.easysoftware.application.epkgpackage.dto; + +import jakarta.validation.constraints.NotBlank; +import jakarta.validation.constraints.Size; + +public class InputEPKGPackage { + @Size(max = 255, message = "the length of name can not exceed 255") + @NotBlank + private String name; + + @Size(max = 255, message = "the length of id can not exceed 255") + private String id; + + @Size(max = 255, message = "the length of version can not exceed 255") + private String version; + + @Size(max = 255, message = "the length of os can not exceed 255") + private String os; + + @Size(max = 255, message = "the length of arch can not exceed 255") + private String arch; + + @Size(max = 255, message = "the length of epkgCategory can not exceed 255") + private String epkgCategory; + + @Size(max = 255, message = "the length of epkgUpdateAt can not exceed 255") + private String epkgUpdateAt; + + @Size(max = 255, message = "the length of srcRepo can not exceed 255") + private String srcRepo; + + @Size(max = 255, message = "the length of epkgSize can not exceed 255") + private String epkgSize; + + @Size(max = 255, message = "the length of binDownloadUrl can not exceed 255") + private String binDownloadUrl; + + @Size(max = 255, message = "the length of srcDownloadUrl can not exceed 255") + private String srcDownloadUrl; + + @Size(max = 255, message = "the length of summary can not exceed 255") + private String summary; + + @Size(max = 255, message = "the length of osSupport can not exceed 255") + private String osSupport; + + @Size(max = 255, message = "the length of repo can not exceed 255") + private String repo; + + @Size(max = 255, message = "the length of repoType can not exceed 255") + private String repoType; + + @Size(max = 10000, message = "the length of installation can not exceed 10000") + private String installation; + + @Size(max = 10000, message = "the length of description can not exceed 10000") + private String description; + + @Size(max = 100_0000, message = "the length of requires can not exceed 100_0000") + private String requires; + + @Size(max = 100_0000, message = "the length of provides can not exceed 100_0000") + private String provides; + + @Size(max = 100_0000, message = "the length of conflicts can not exceed 100_0000") + private String conflicts; + + @Size(max = 100_0000, message = "the length of changeLog can not exceed 100_0000") + private String changeLog; + + @Size(max = 100_0000, message = "the length of path can not exceed 100_0000") + private String path; + + @Size(max = 255, message = "the length of maintanierId can not exceed 255") + private String maintanierId; + + @Size(max = 255, message = "the length of maintianerEmail can not exceed 255") + private String maintianerEmail; + + @Size(max = 255, message = "the length of maintainerGiteeId can not exceed 255") + private String maintainerGiteeId; + + @Size(max = 255, message = "the length of maintainerUpdateAt can not exceed 255") + private String maintainerUpdateAt; + + @Size(max = 255, message = "the length of maintainerStatus can not exceed 255") + private String maintainerStatus; + + @Size(max = 255, message = "the length of upStream can not exceed 255") + private String upStream; + + @Size(max = 255, message = "the length of security can not exceed 255") + private String security; + + @Size(max = 1000, message = "the length of similarPkgs can not exceed 1000") + private String similarPkgs; +} diff --git a/src/main/java/com/easysoftware/application/epkgpackage/vo/EPKGPackageDetailVo.java b/src/main/java/com/easysoftware/application/epkgpackage/vo/EPKGPackageDetailVo.java new file mode 100644 index 0000000000000000000000000000000000000000..a6b2dfad4ac4fc7d275c98f552b2eba28149b5f4 --- /dev/null +++ b/src/main/java/com/easysoftware/application/epkgpackage/vo/EPKGPackageDetailVo.java @@ -0,0 +1,70 @@ +package com.easysoftware.application.epkgpackage.vo; + +import jakarta.validation.constraints.NotBlank; +import jakarta.validation.constraints.Size; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@AllArgsConstructor +@NoArgsConstructor +public class EPKGPackageDetailVo { + private String name; + + private String version; + + private String os; + + private String arch; + + private String epkgCategory; + + private String epkgUpdateAt; + + private String srcRepo; + + private String epkgSize; + + private String binDownloadUrl; + + private String srcDownloadUrl; + + private String summary; + + private String osSupport; + + private String repo; + + private String repoType; + + private String installation; + + private String description; + + private String requires; + + private String provides; + + private String conflicts; + + private String changeLog; + + private String path; + + private String maintanierId; + + private String maintianerEmail; + + private String maintainerGiteeId; + + private String maintainerUpdateAt; + + private String maintainerStatus; + + private String upStream; + + private String security; + + private String similarPkgs; +} diff --git a/src/main/java/com/easysoftware/application/epkgpackage/vo/EPKGPackageMenuVo.java b/src/main/java/com/easysoftware/application/epkgpackage/vo/EPKGPackageMenuVo.java new file mode 100644 index 0000000000000000000000000000000000000000..8563c85129cc9fd4c94fe86e5b2e1babce3bd266 --- /dev/null +++ b/src/main/java/com/easysoftware/application/epkgpackage/vo/EPKGPackageMenuVo.java @@ -0,0 +1,20 @@ +package com.easysoftware.application.epkgpackage.vo; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@AllArgsConstructor +@NoArgsConstructor +public class EPKGPackageMenuVo { + private String name; + private String version; + private String os; + private String arch; + private String epkgCategory; + private String epkgUpdateAt; + private String srcRepo; + private String epkgSize; + private String binDownloadUrl; +} diff --git a/src/main/java/com/easysoftware/domain/epkgpackage/EPKGPackage.java b/src/main/java/com/easysoftware/domain/epkgpackage/EPKGPackage.java new file mode 100644 index 0000000000000000000000000000000000000000..f550bdf35fffcecf8023df76480aca22794aa7b6 --- /dev/null +++ b/src/main/java/com/easysoftware/domain/epkgpackage/EPKGPackage.java @@ -0,0 +1,70 @@ +package com.easysoftware.domain.epkgpackage; + +import java.io.Serial; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@NoArgsConstructor +@AllArgsConstructor +public class EPKGPackage { + @Serial + private static final long serialVersionUID = 1L; + + private String name; + + private String version; + + private String os; + + private String arch; + + private String rpmCategory; + + private String rpmUpdateAt; + + private String srcRepo; + + private String rpmSize; + + private String binDownloadUrl; + + private String srcDownloadUrl; + + private String summary; + + private String osSupport; + + private String repo; + + private String repoType; + + private String installation; + + private String description; + + private String requires; + + private String provides; + + private String conflicts; + + private String changeLog; + + private String maintanierId; + + private String maintianerEmail; + + private String maintainerGiteeId; + + private String maintainerUpdateAt; + + private String maintainerStatus; + + private String upStream; + + private String security; + + private String similarPkgs; +} diff --git a/src/main/java/com/easysoftware/domain/epkgpackage/EPKGPackageUnique.java b/src/main/java/com/easysoftware/domain/epkgpackage/EPKGPackageUnique.java new file mode 100644 index 0000000000000000000000000000000000000000..f992dd83e2555f681ccb4c83f2e1627b93ee7ece --- /dev/null +++ b/src/main/java/com/easysoftware/domain/epkgpackage/EPKGPackageUnique.java @@ -0,0 +1,5 @@ +package com.easysoftware.domain.epkgpackage; + +public class EPKGPackageUnique { + +} diff --git a/src/main/java/com/easysoftware/domain/epkgpackage/gateway/EPKGPackageGateway.java b/src/main/java/com/easysoftware/domain/epkgpackage/gateway/EPKGPackageGateway.java new file mode 100644 index 0000000000000000000000000000000000000000..d8ba9df0dc85e7c8535dcd9be55b0a69bc6d1cae --- /dev/null +++ b/src/main/java/com/easysoftware/domain/epkgpackage/gateway/EPKGPackageGateway.java @@ -0,0 +1,20 @@ +package com.easysoftware.domain.epkgpackage.gateway; + +import java.util.Map; + +import com.easysoftware.application.epkgpackage.dto.EPKGPackageSearchCondition; +import com.easysoftware.application.rpmpackage.dto.RPMPackageSearchCondition; +import com.easysoftware.domain.epkgpackage.EPKGPackage; +import com.easysoftware.domain.epkgpackage.EPKGPackageUnique; +import com.easysoftware.domain.rpmpackage.RPMPackage; +import com.easysoftware.domain.rpmpackage.RPMPackageUnique; + +public interface EPKGPackageGateway { + boolean existRPM(EPKGPackageUnique unique); + boolean existRPM(String id); + boolean save(EPKGPackage appPkg); + boolean update(EPKGPackage appPkg); + boolean delete(String id); + Map queryDetailByName(EPKGPackageSearchCondition condition); + Map queryMenuByName(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 5d1f560338f5278f99a981d7aad0cf685f5117ac..eb98ed5f2e2991e65f07f976cd76f81720ab991e 100644 --- a/src/main/java/com/easysoftware/infrastructure/applicationpackage/gatewayimpl/ApplicationPackageGatewayImpl.java +++ b/src/main/java/com/easysoftware/infrastructure/applicationpackage/gatewayimpl/ApplicationPackageGatewayImpl.java @@ -17,7 +17,7 @@ import com.easysoftware.application.applicationpackage.vo.ApplicationPackageMenu import com.easysoftware.application.rpmpackage.dto.RPMPackageSearchCondition; import com.easysoftware.domain.applicationpackage.ApplicationPackage; import com.easysoftware.domain.applicationpackage.gateway.ApplicationPackageGateway; -import com.easysoftware.infrastructure.applicationpackage.gatewayimpl.converter.ApplicationPackageConvertor; +import com.easysoftware.infrastructure.applicationpackage.gatewayimpl.converter.ApplicationPackageConverter; import com.easysoftware.infrastructure.applicationpackage.gatewayimpl.dataobject.ApplicationPackageDO; import com.easysoftware.infrastructure.mapper.ApplicationPackageDOMapper; import com.easysoftware.infrastructure.rpmpackage.gatewayimpl.dataobject.RPMPackageDO; @@ -49,7 +49,7 @@ public class ApplicationPackageGatewayImpl implements ApplicationPackageGateway @Override public boolean save(ApplicationPackage appPkg) { - ApplicationPackageDO appPkgDO = ApplicationPackageConvertor.toDataObjectForCreate(appPkg); + ApplicationPackageDO appPkgDO = ApplicationPackageConverter.toDataObjectForCreate(appPkg); int mark = appPkgMapper.insert(appPkgDO); return mark == 1; } @@ -57,7 +57,7 @@ public class ApplicationPackageGatewayImpl implements ApplicationPackageGateway @Override public boolean update(ApplicationPackage appPkg) { - ApplicationPackageDO appPkgDO = ApplicationPackageConvertor.toDataObjectForUpdate(appPkg); + ApplicationPackageDO appPkgDO = ApplicationPackageConverter.toDataObjectForUpdate(appPkg); UpdateWrapper wrapper = new UpdateWrapper<>(); wrapper.eq("name", appPkg.getName()); @@ -77,7 +77,7 @@ public class ApplicationPackageGatewayImpl implements ApplicationPackageGateway IPage resPage = appPkgMapper.selectPage(page, wrapper); List appDOs = resPage.getRecords(); long total = resPage.getTotal(); - List menus = ApplicationPackageConvertor.toMenu(appDOs); + List menus = ApplicationPackageConverter.toMenu(appDOs); Map res = new HashMap<>(); res.put("total", total); @@ -94,7 +94,7 @@ public class ApplicationPackageGatewayImpl implements ApplicationPackageGateway IPage resPage = appPkgMapper.selectPage(page, wrapper); List appDOs = resPage.getRecords(); - List appDetails = ApplicationPackageConvertor.toDetail(appDOs); + List appDetails = ApplicationPackageConverter.toDetail(appDOs); long total = resPage.getTotal(); Map res = Map.ofEntries( diff --git a/src/main/java/com/easysoftware/infrastructure/applicationpackage/gatewayimpl/converter/ApplicationPackageConvertor.java b/src/main/java/com/easysoftware/infrastructure/applicationpackage/gatewayimpl/converter/ApplicationPackageConverter.java similarity index 98% rename from src/main/java/com/easysoftware/infrastructure/applicationpackage/gatewayimpl/converter/ApplicationPackageConvertor.java rename to src/main/java/com/easysoftware/infrastructure/applicationpackage/gatewayimpl/converter/ApplicationPackageConverter.java index ae6b681b81ec0820cc780ae7e9b67dff31739171..8deec8f4c114ee683a496290d4255a105eb63fd9 100644 --- a/src/main/java/com/easysoftware/infrastructure/applicationpackage/gatewayimpl/converter/ApplicationPackageConvertor.java +++ b/src/main/java/com/easysoftware/infrastructure/applicationpackage/gatewayimpl/converter/ApplicationPackageConverter.java @@ -13,7 +13,7 @@ import com.easysoftware.common.utils.UuidUtil; import com.easysoftware.domain.applicationpackage.ApplicationPackage; import com.easysoftware.infrastructure.applicationpackage.gatewayimpl.dataobject.ApplicationPackageDO; -public class ApplicationPackageConvertor { +public class ApplicationPackageConverter { public static ApplicationPackage toEntity(ApplicationPackageDO appPkgDO) { ApplicationPackage appPkg = new ApplicationPackage(); BeanUtils.copyProperties(appPkgDO, appPkg); diff --git a/src/main/java/com/easysoftware/infrastructure/epkgpackage/gatewayimpl/EPKGPackageGatewayImpl.java b/src/main/java/com/easysoftware/infrastructure/epkgpackage/gatewayimpl/EPKGPackageGatewayImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..860e1d903e3fee85732d5b37dea22cbfaae35f5e --- /dev/null +++ b/src/main/java/com/easysoftware/infrastructure/epkgpackage/gatewayimpl/EPKGPackageGatewayImpl.java @@ -0,0 +1,111 @@ +package com.easysoftware.infrastructure.epkgpackage.gatewayimpl; + +import java.util.List; +import java.util.Map; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; +import org.springframework.stereotype.Service; + +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.epkgpackage.dto.EPKGPackageSearchCondition; +import com.easysoftware.application.epkgpackage.vo.EPKGPackageDetailVo; +import com.easysoftware.application.epkgpackage.vo.EPKGPackageMenuVo; +import com.easysoftware.application.rpmpackage.dto.RPMPackageSearchCondition; +import com.easysoftware.application.rpmpackage.vo.RPMPackageDetailVo; +import com.easysoftware.application.rpmpackage.vo.RPMPackageMenuVo; +import com.easysoftware.domain.epkgpackage.EPKGPackage; +import com.easysoftware.domain.epkgpackage.EPKGPackageUnique; +import com.easysoftware.domain.epkgpackage.gateway.EPKGPackageGateway; +import com.easysoftware.infrastructure.epkgpackage.gatewayimpl.converter.EPKGPackageConverter; +import com.easysoftware.infrastructure.epkgpackage.gatewayimpl.dataobject.EPKGPackageDO; +import com.easysoftware.infrastructure.mapper.EPKGPackageDOMapper; +import com.easysoftware.infrastructure.mapper.RPMPackageDOMapper; +import com.easysoftware.infrastructure.rpmpackage.gatewayimpl.converter.RPMPackageConverter; +import com.easysoftware.infrastructure.rpmpackage.gatewayimpl.dataobject.RPMPackageDO; +import com.fasterxml.jackson.databind.ObjectMapper; + +@Component +public class EPKGPackageGatewayImpl implements EPKGPackageGateway{ + @Autowired + private EPKGPackageDOMapper ePKGPkgMapper; + + @Autowired + private ObjectMapper objectMapper; + + @Override + public boolean delete(String id) { + // TODO Auto-generated method stub + return false; + } + + @Override + public boolean existRPM(EPKGPackageUnique unique) { + // TODO Auto-generated method stub + return false; + } + + @Override + public boolean existRPM(String id) { + // TODO Auto-generated method stub + return false; + } + + @Override + public Map queryDetailByName(EPKGPackageSearchCondition condition) { + Page page = createPage(condition); + QueryWrapper wrapper = new QueryWrapper<>(); + String name = condition.getName(); + wrapper.eq("name", name); + + IPage resPage = ePKGPkgMapper.selectPage(page, wrapper); + List rPMDOs = resPage.getRecords(); + List rPMDetails = EPKGPackageConverter.toDetail(rPMDOs); + long total = resPage.getTotal(); + + Map res = Map.ofEntries( + Map.entry("total", total), + Map.entry("list", rPMDetails) + ); + + return res; + } + + @Override + public Map queryMenuByName(EPKGPackageSearchCondition condition) { + Page page = createPage(condition); + QueryWrapper wrapper = new QueryWrapper<>(); + + IPage resPage = ePKGPkgMapper.selectPage(page, wrapper); + List rpmDOs = resPage.getRecords(); + List rPMMenus = EPKGPackageConverter.toMenu(rpmDOs); + long total = resPage.getTotal(); + + Map res = Map.ofEntries( + Map.entry("total", total), + Map.entry("list", rPMMenus) + ); + return res; + } + + @Override + public boolean save(EPKGPackage appPkg) { + // TODO Auto-generated method stub + return false; + } + + @Override + public boolean update(EPKGPackage appPkg) { + // TODO Auto-generated method stub + return false; + } + + private Page createPage(EPKGPackageSearchCondition condition) { + int pageNum = condition.getPageNum(); + int pageSize = condition.getPageSize(); + Page page = new Page<>(pageNum, pageSize); + return page; + } +} 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 new file mode 100644 index 0000000000000000000000000000000000000000..baab9299efe15b4e2ceb77daa37cd23ef925aac8 --- /dev/null +++ b/src/main/java/com/easysoftware/infrastructure/epkgpackage/gatewayimpl/converter/EPKGPackageConverter.java @@ -0,0 +1,37 @@ +package com.easysoftware.infrastructure.epkgpackage.gatewayimpl.converter; + +import java.util.ArrayList; +import java.util.List; + +import org.springframework.beans.BeanUtils; + +import com.easysoftware.application.epkgpackage.vo.EPKGPackageDetailVo; +import com.easysoftware.application.epkgpackage.vo.EPKGPackageMenuVo; +import com.easysoftware.application.rpmpackage.vo.RPMPackageDetailVo; +import com.easysoftware.application.rpmpackage.vo.RPMPackageMenuVo; +import com.easysoftware.infrastructure.epkgpackage.gatewayimpl.dataobject.EPKGPackageDO; +import com.easysoftware.infrastructure.rpmpackage.gatewayimpl.dataobject.RPMPackageDO; + +public class EPKGPackageConverter { + public static List toMenu(List rPMPkgDOs) { + List res = new ArrayList<>(); + for (EPKGPackageDO rpm: rPMPkgDOs) { + EPKGPackageMenuVo menu = new EPKGPackageMenuVo(); + BeanUtils.copyProperties(rpm, menu); + res.add(menu); + } + + return res; + } + + public static List toDetail(List rPMPkgDOs) { + List res = new ArrayList<>(); + for (EPKGPackageDO rpm: rPMPkgDOs) { + EPKGPackageDetailVo detail = new EPKGPackageDetailVo(); + BeanUtils.copyProperties(rpm, detail); + res.add(detail); + } + return res; + } + +} 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 new file mode 100644 index 0000000000000000000000000000000000000000..e05d2c3fb019172ab005c5f769b24a7de556b5ad --- /dev/null +++ b/src/main/java/com/easysoftware/infrastructure/epkgpackage/gatewayimpl/dataobject/EPKGPackageDO.java @@ -0,0 +1,74 @@ +package com.easysoftware.infrastructure.epkgpackage.gatewayimpl.dataobject; + +import java.io.Serial; + +import com.baomidou.mybatisplus.annotation.TableName; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@AllArgsConstructor +@NoArgsConstructor +@TableName("epkg_pkg") +public class EPKGPackageDO { + @Serial + private static final long serialVersionUID = 1L; + + private String name; + + private String version; + + private String os; + + private String arch; + + private String epkgCategory; + + private String epkgUpdateAt; + + private String srcRepo; + + private String epkgSize; + + private String binDownloadUrl; + + private String srcDownloadUrl; + + private String summary; + + private String osSupport; + + private String repo; + + private String repoType; + + private String installation; + + private String description; + + private String requires; + + private String provides; + + private String conflicts; + + private String changeLog; + + private String maintanierId; + + private String maintianerEmail; + + private String maintainerGiteeId; + + private String maintainerUpdateAt; + + private String maintainerStatus; + + private String upStream; + + private String security; + + private String similarPkgs; +} diff --git a/src/main/java/com/easysoftware/infrastructure/mapper/EPKGPackageDOMapper.java b/src/main/java/com/easysoftware/infrastructure/mapper/EPKGPackageDOMapper.java new file mode 100644 index 0000000000000000000000000000000000000000..27b34824deb44e99b5ec8cca3acd232ae84c74c3 --- /dev/null +++ b/src/main/java/com/easysoftware/infrastructure/mapper/EPKGPackageDOMapper.java @@ -0,0 +1,8 @@ +package com.easysoftware.infrastructure.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.easysoftware.infrastructure.epkgpackage.gatewayimpl.dataobject.EPKGPackageDO; + +public interface EPKGPackageDOMapper extends BaseMapper { + +} 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 0b4ca2e50534f780b54e94410fcd53fbe3b36242..fdca5c382ec231c5aefe384c321dbe5214805058 100644 --- a/src/main/java/com/easysoftware/infrastructure/rpmpackage/gatewayimpl/RPMPackageGatewayImpl.java +++ b/src/main/java/com/easysoftware/infrastructure/rpmpackage/gatewayimpl/RPMPackageGatewayImpl.java @@ -21,7 +21,7 @@ import com.easysoftware.domain.applicationpackage.ApplicationPackage; import com.easysoftware.domain.rpmpackage.RPMPackage; import com.easysoftware.domain.rpmpackage.RPMPackageUnique; import com.easysoftware.domain.rpmpackage.gateway.RPMPackageGateway; -import com.easysoftware.infrastructure.applicationpackage.gatewayimpl.converter.ApplicationPackageConvertor; +import com.easysoftware.infrastructure.applicationpackage.gatewayimpl.converter.ApplicationPackageConverter; import com.easysoftware.infrastructure.applicationpackage.gatewayimpl.dataobject.ApplicationPackageDO; import com.easysoftware.infrastructure.mapper.RPMPackageDOMapper; import com.easysoftware.infrastructure.rpmpackage.gatewayimpl.converter.RPMPackageConverter; 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 ce8fbc023ce4dd02eb0f331e0acdbd4584e19834..324d898ef01a73fe2e2cd16a11542578ec5dd13a 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 @@ -38,7 +38,6 @@ public class RPMPackageConverter { RPMPackageDetailVo detail = new RPMPackageDetailVo(); BeanUtils.copyProperties(rpm, detail); - System.out.println(); res.add(detail); } return res;