diff --git a/src/main/java/com/easysoftware/application/applicationpackage/ApplicationPackageService.java b/src/main/java/com/easysoftware/application/applicationpackage/ApplicationPackageService.java index c299a3384765781d177d4b17a181ac9f22a63c7c..dba09dc66b7993b640219d2cd468a6e9415cad2c 100644 --- a/src/main/java/com/easysoftware/application/applicationpackage/ApplicationPackageService.java +++ b/src/main/java/com/easysoftware/application/applicationpackage/ApplicationPackageService.java @@ -6,12 +6,11 @@ import org.springframework.http.ResponseEntity; import com.easysoftware.application.applicationpackage.dto.ApplicationPackageSearchCondition; import com.easysoftware.application.applicationpackage.dto.InputApplicationPackage; -import com.easysoftware.application.applicationpackage.vo.ApplicationPackageMenuVo; public interface ApplicationPackageService { ResponseEntity insertAppPkg(InputApplicationPackage listApp); ResponseEntity updateAppPkg(InputApplicationPackage inputAppPackage); ResponseEntity deleteAppPkg(List names); ResponseEntity searchAppPkg(ApplicationPackageSearchCondition condition); - List queryAllAppPkgMenu(ApplicationPackageSearchCondition condition); + Map queryAllAppPkgMenu(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 279124222c5663ae3baf8fed9fd3c2713288a0f4..743af103d30b12cfce34d6ec31c1660cfcbe42d5 100644 --- a/src/main/java/com/easysoftware/application/applicationpackage/ApplicationPackageServiceImpl.java +++ b/src/main/java/com/easysoftware/application/applicationpackage/ApplicationPackageServiceImpl.java @@ -101,16 +101,14 @@ public class ApplicationPackageServiceImpl implements ApplicationPackageService @Override public ResponseEntity searchAppPkg(ApplicationPackageSearchCondition condition) { - - // 查找详情页 - List res = appPkgGateway.queryDetailByName(condition); + Map res = appPkgGateway.queryDetailByName(condition); return ResultUtil.success(HttpStatus.OK, res); } @Override - public List queryAllAppPkgMenu(ApplicationPackageSearchCondition condition) { - List menuList = appPkgGateway.queryMenuByName(condition); + public Map queryAllAppPkgMenu(ApplicationPackageSearchCondition condition) { + Map res = appPkgGateway.queryMenuByName(condition); - return menuList; + return res; } } diff --git a/src/main/java/com/easysoftware/application/applicationpackage/vo/ApplicationPackageMenuVo.java b/src/main/java/com/easysoftware/application/applicationpackage/vo/ApplicationPackageMenuVo.java index 4bc54efc80f8243944441dae211d6de1c72b0984..2448cb3ab006c13e95d5c9d12868d0e2ac55910d 100644 --- a/src/main/java/com/easysoftware/application/applicationpackage/vo/ApplicationPackageMenuVo.java +++ b/src/main/java/com/easysoftware/application/applicationpackage/vo/ApplicationPackageMenuVo.java @@ -1,4 +1,6 @@ package com.easysoftware.application.applicationpackage.vo; +import java.util.List; + import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; @@ -7,9 +9,9 @@ import lombok.NoArgsConstructor; @AllArgsConstructor @NoArgsConstructor public class ApplicationPackageMenuVo { - private String appCategory; + private String category; private String name; private String description; private String iconUrl; - private String type; + private List tags; } diff --git a/src/main/java/com/easysoftware/application/domainpackage/DomainPackageServiceImpl.java b/src/main/java/com/easysoftware/application/domainpackage/DomainPackageServiceImpl.java index 9f0c1ba22ca457cdc271725329d6489b1dcda1dc..36f290b35eaa754f93783ce99c52e9058ad7c255 100644 --- a/src/main/java/com/easysoftware/application/domainpackage/DomainPackageServiceImpl.java +++ b/src/main/java/com/easysoftware/application/domainpackage/DomainPackageServiceImpl.java @@ -15,7 +15,6 @@ import com.easysoftware.application.applicationpackage.ApplicationPackageService import com.easysoftware.application.applicationpackage.dto.ApplicationPackageSearchCondition; 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.rpmpackage.RPMPackageService; import com.easysoftware.application.rpmpackage.dto.RPMPackageSearchCondition; import com.easysoftware.application.rpmpackage.vo.RPMPackageMenuVo; @@ -36,36 +35,32 @@ public class DomainPackageServiceImpl implements DomainPackageService { if ("apppkg".equals(condition.getName())) { ApplicationPackageSearchCondition appCon = new ApplicationPackageSearchCondition(); BeanUtils.copyProperties(condition, appCon); - List appMenuList = appPkgService.queryAllAppPkgMenu(appCon); - List domainMenuList = new ArrayList<>(); + Map map = appPkgService.queryAllAppPkgMenu(appCon); + List appMenus = (List) map.get("list"); - for (ApplicationPackageMenuVo appMenu : appMenuList) { - DomainPackageMenuVo domainMenu = new DomainPackageMenuVo(); - BeanUtils.copyProperties(appMenu, domainMenu); - domainMenu.setCategory(appMenu.getAppCategory()); - domainMenu.setTags(new ArrayList(Arrays.asList(appMenu.getType()))); - domainMenuList.add(domainMenu); - } - - List> res = groupByCategory(domainMenuList); + List> appCate = groupByCategory(appMenus); + Map res = Map.ofEntries( + Map.entry("total", map.get("total")), + Map.entry("list", appCate) + ); return ResultUtil.success(HttpStatus.OK, res); } else if ("rpmpkg".equals(condition.getName())) { RPMPackageSearchCondition rPMCon = new RPMPackageSearchCondition(); BeanUtils.copyProperties(condition, rPMCon); - List appMenuList = rPMPkgService.queryAllRPMPkgMenu(rPMCon); + Map appMenuList = rPMPkgService.queryAllRPMPkgMenu(rPMCon); return ResultUtil.success(HttpStatus.OK, appMenuList); } return null; } - private List> groupByCategory(List menuList) { - Map> map = new HashMap<>(); + private List> groupByCategory(List menuList) { + Map> map = new HashMap<>(); for (AppCategoryEnum categoryEnum : AppCategoryEnum.values()) { String category = categoryEnum.getAlias(); map.put(category, new ArrayList<>()); } - for (DomainPackageMenuVo menu: menuList) { + for (ApplicationPackageMenuVo menu: menuList) { map.get(menu.getCategory()).add(menu); } diff --git a/src/main/java/com/easysoftware/application/domainpackage/vo/DomainPackageMenuVo.java b/src/main/java/com/easysoftware/application/domainpackage/vo/DomainPackageMenuVo.java deleted file mode 100644 index 42da05bd7d7cc7e0c42d29307f470bb91933c517..0000000000000000000000000000000000000000 --- a/src/main/java/com/easysoftware/application/domainpackage/vo/DomainPackageMenuVo.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.easysoftware.application.domainpackage.vo; -import java.util.List; - -import lombok.AllArgsConstructor; -import lombok.Data; -import lombok.NoArgsConstructor; - -@Data -@AllArgsConstructor -@NoArgsConstructor -public class DomainPackageMenuVo { - private String category; - private String name; - private String description; - private String iconUrl; - private List tags; -} diff --git a/src/main/java/com/easysoftware/application/rpmpackage/RPMPackageService.java b/src/main/java/com/easysoftware/application/rpmpackage/RPMPackageService.java index 6e9ed6fda11bbce8061b7b5438a4fc76bfe2c054..8d4ebcf4111330c8a429890f370206c324e8d407 100644 --- a/src/main/java/com/easysoftware/application/rpmpackage/RPMPackageService.java +++ b/src/main/java/com/easysoftware/application/rpmpackage/RPMPackageService.java @@ -1,17 +1,17 @@ package com.easysoftware.application.rpmpackage; import java.util.List; +import java.util.Map; import org.springframework.http.ResponseEntity; import com.easysoftware.application.rpmpackage.dto.InputRPMPackage; import com.easysoftware.application.rpmpackage.dto.RPMPackageSearchCondition; -import com.easysoftware.application.rpmpackage.vo.RPMPackageMenuVo; public interface RPMPackageService { ResponseEntity insertRPMPkg(InputRPMPackage inputrPMPackage); ResponseEntity updateRPMPkg(InputRPMPackage inputrPMPackage); ResponseEntity deleteRPMPkg(List names); ResponseEntity searchRPMPkg(RPMPackageSearchCondition condition); - List queryAllRPMPkgMenu(RPMPackageSearchCondition condition); + Map queryAllRPMPkgMenu(RPMPackageSearchCondition condition); } diff --git a/src/main/java/com/easysoftware/application/rpmpackage/RPMPackageServiceImpl.java b/src/main/java/com/easysoftware/application/rpmpackage/RPMPackageServiceImpl.java index 713967f690265832981f5ee58c32746abf2bf4de..89f3aa2615a07e40e2035338f8d949bfe8a47c7d 100644 --- a/src/main/java/com/easysoftware/application/rpmpackage/RPMPackageServiceImpl.java +++ b/src/main/java/com/easysoftware/application/rpmpackage/RPMPackageServiceImpl.java @@ -2,6 +2,7 @@ package com.easysoftware.application.rpmpackage; import java.util.ArrayList; import java.util.List; +import java.util.Map; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.BeanUtils; @@ -28,8 +29,8 @@ public class RPMPackageServiceImpl implements RPMPackageService { RPMPackageGateway rPMPkgGateway; @Override - public List queryAllRPMPkgMenu(RPMPackageSearchCondition condition) { - List rPMMenu = rPMPkgGateway.queryMenuByName(condition); + public Map queryAllRPMPkgMenu(RPMPackageSearchCondition condition) { + Map rPMMenu = rPMPkgGateway.queryMenuByName(condition); return rPMMenu; } @@ -80,7 +81,7 @@ public class RPMPackageServiceImpl implements RPMPackageService { @Override public ResponseEntity searchRPMPkg(RPMPackageSearchCondition condition) { - List res = rPMPkgGateway.queryDetailByName(condition); + Map res = rPMPkgGateway.queryDetailByName(condition); return ResultUtil.success(HttpStatus.OK, res); } 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 3c6998af8c5795b8ba231d22f7a3dd9aa7871e98..ed9870657ff972949bdcb91d5ab52915cebf3889 100644 --- a/src/main/java/com/easysoftware/domain/applicationpackage/gateway/ApplicationPackageGateway.java +++ b/src/main/java/com/easysoftware/domain/applicationpackage/gateway/ApplicationPackageGateway.java @@ -1,6 +1,7 @@ package com.easysoftware.domain.applicationpackage.gateway; import java.util.List; +import java.util.Map; import com.easysoftware.application.applicationpackage.dto.ApplicationPackageSearchCondition; import com.easysoftware.application.applicationpackage.vo.ApplicationPackageDetailVo; @@ -12,6 +13,6 @@ public interface ApplicationPackageGateway { boolean save(ApplicationPackage appPkg); boolean update(ApplicationPackage appPkg); boolean delete(String name); - List queryMenuByName(ApplicationPackageSearchCondition condition); - List queryDetailByName(ApplicationPackageSearchCondition condition); + Map queryMenuByName(ApplicationPackageSearchCondition condition); + Map queryDetailByName(ApplicationPackageSearchCondition condition); } 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 fc1fcfa75bdd4dd81271e8c3d1f1cb1c27e4b078..93da221c636637e28da0c5607516ab709dc294a4 100644 --- a/src/main/java/com/easysoftware/domain/rpmpackage/gateway/RPMPackageGateway.java +++ b/src/main/java/com/easysoftware/domain/rpmpackage/gateway/RPMPackageGateway.java @@ -1,10 +1,10 @@ package com.easysoftware.domain.rpmpackage.gateway; import java.util.List; +import java.util.Map; 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.rpmpackage.RPMPackage; import com.easysoftware.domain.rpmpackage.RPMPackageUnique; @@ -14,6 +14,6 @@ public interface RPMPackageGateway { boolean save(RPMPackage appPkg); boolean update(RPMPackage appPkg); boolean delete(String id); - List queryDetailByName(RPMPackageSearchCondition condition); - List queryMenuByName(RPMPackageSearchCondition condition); + Map queryDetailByName(RPMPackageSearchCondition condition); + Map queryMenuByName(RPMPackageSearchCondition 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 80d0f6f794a39c9001345c93409980d2a0838981..bbc86787c1f2faca0d921fc591da684597625f13 100644 --- a/src/main/java/com/easysoftware/infrastructure/applicationpackage/gatewayimpl/ApplicationPackageGatewayImpl.java +++ b/src/main/java/com/easysoftware/infrastructure/applicationpackage/gatewayimpl/ApplicationPackageGatewayImpl.java @@ -1,20 +1,26 @@ package com.easysoftware.infrastructure.applicationpackage.gatewayimpl; +import java.util.HashMap; import java.util.List; +import java.util.Map; + import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Component; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; +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.ApplicationPackageMenuVo; +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.dataobject.ApplicationPackageDO; import com.easysoftware.infrastructure.mapper.ApplicationPackageDOMapper; +import com.easysoftware.infrastructure.rpmpackage.gatewayimpl.dataobject.RPMPackageDO; @Component public class ApplicationPackageGatewayImpl implements ApplicationPackageGateway { @@ -61,36 +67,47 @@ public class ApplicationPackageGatewayImpl implements ApplicationPackageGateway } @Override - public List queryMenuByName(ApplicationPackageSearchCondition condition) { + public Map queryMenuByName(ApplicationPackageSearchCondition condition) { int pageNum = condition.getPageNum(); int pageSize = condition.getPageSize(); - Page page = new Page<>(pageNum, pageSize); QueryWrapper wrapper = new QueryWrapper<>(); - Page resPage = appPkgMapper.selectPage(page, wrapper); + IPage resPage = appPkgMapper.selectPage(page, wrapper); List appDOs = resPage.getRecords(); - List res = ApplicationPackageConvertor.toMenu(appDOs); + long total = resPage.getPages(); + List menus = ApplicationPackageConvertor.toMenu(appDOs); + Map res = new HashMap<>(); + res.put("total", total); + res.put("list", menus); return res; } @Override - public List queryDetailByName(ApplicationPackageSearchCondition condition) { - int pageNum = condition.getPageNum(); - int pageSize = condition.getPageSize(); - String name = condition.getName(); - - Page page = new Page<>(pageNum, pageSize); - + public Map queryDetailByName(ApplicationPackageSearchCondition condition) { + Page page = createPage(condition); QueryWrapper wrapper = new QueryWrapper<>(); - wrapper.eq("name", name); + String name = condition.getName(); + wrapper.eq("name", condition.getName()); - Page resPage = appPkgMapper.selectPage(page, wrapper); + IPage resPage = appPkgMapper.selectPage(page, wrapper); List appDOs = resPage.getRecords(); - List res = ApplicationPackageConvertor.toDetail(appDOs); + List appDetails = ApplicationPackageConvertor.toDetail(appDOs); + long total = resPage.getPages(); + Map res = Map.ofEntries( + Map.entry("total", total), + Map.entry("list", appDetails) + ); return res; } + + private Page createPage(ApplicationPackageSearchCondition 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/applicationpackage/gatewayimpl/converter/ApplicationPackageConvertor.java b/src/main/java/com/easysoftware/infrastructure/applicationpackage/gatewayimpl/converter/ApplicationPackageConvertor.java index 2a84604caaf826c8b17bc19bd893e79a6d21c158..ae6b681b81ec0820cc780ae7e9b67dff31739171 100644 --- a/src/main/java/com/easysoftware/infrastructure/applicationpackage/gatewayimpl/converter/ApplicationPackageConvertor.java +++ b/src/main/java/com/easysoftware/infrastructure/applicationpackage/gatewayimpl/converter/ApplicationPackageConvertor.java @@ -2,6 +2,7 @@ package com.easysoftware.infrastructure.applicationpackage.gatewayimpl.converter import java.sql.Timestamp; import java.util.ArrayList; +import java.util.Arrays; import java.util.List; import org.springframework.beans.BeanUtils; @@ -34,6 +35,8 @@ public class ApplicationPackageConvertor { for (ApplicationPackageDO app: appPkgDOs) { ApplicationPackageMenuVo menu = new ApplicationPackageMenuVo(); BeanUtils.copyProperties(app, menu); + menu.setTags(List.of(app.getType())); + menu.setCategory(app.getAppCategory()); res.add(menu); } 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 11344549f6cdab59f6fd364be2a86c6905840452..3aff7fd7ef5f91d1f870c2599813c20e4f228373 100644 --- a/src/main/java/com/easysoftware/infrastructure/rpmpackage/gatewayimpl/RPMPackageGatewayImpl.java +++ b/src/main/java/com/easysoftware/infrastructure/rpmpackage/gatewayimpl/RPMPackageGatewayImpl.java @@ -11,6 +11,7 @@ import org.springframework.stereotype.Component; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.easysoftware.application.rpmpackage.dto.RPMPackageSearchCondition; @@ -63,16 +64,21 @@ public class RPMPackageGatewayImpl implements RPMPackageGateway { } @Override - public List queryDetailByName(RPMPackageSearchCondition condition) { + public Map queryDetailByName(RPMPackageSearchCondition condition) { Page page = createPage(condition); - QueryWrapper wrapper = new QueryWrapper<>(); String name = condition.getName(); wrapper.eq("name", name); - Page resPage = rPMPkgMapper.selectPage(page, wrapper); + IPage resPage = rPMPkgMapper.selectPage(page, wrapper); List rPMDOs = resPage.getRecords(); - List res = RPMPackageConverter.toDetail(rPMDOs); + List rPMDetails = RPMPackageConverter.toDetail(rPMDOs); + long total = resPage.getPages(); + + Map res = Map.ofEntries( + Map.entry("total", total), + Map.entry("list", rPMDetails) + ); return res; } @@ -103,15 +109,19 @@ public class RPMPackageGatewayImpl implements RPMPackageGateway { } @Override - public List queryMenuByName(RPMPackageSearchCondition condition) { + public Map queryMenuByName(RPMPackageSearchCondition condition) { Page page = createPage(condition); - QueryWrapper wrapper = new QueryWrapper<>(); - Page resPage = rPMPkgMapper.selectPage(page, wrapper); + IPage resPage = rPMPkgMapper.selectPage(page, wrapper); List rpmDOs = resPage.getRecords(); - List res = RPMPackageConverter.toMenu(rpmDOs); + List rPMMenus = RPMPackageConverter.toMenu(rpmDOs); + long total = resPage.getPages(); + Map res = Map.ofEntries( + Map.entry("total", total), + Map.entry("list", rPMMenus) + ); return res; }