From d57be392f05fb785e1264609a91b649dea70b6df Mon Sep 17 00:00:00 2001 From: nili Date: Wed, 3 Apr 2024 22:49:58 +0800 Subject: [PATCH] fx --- .../group/game/service/AdminService.java | 30 +++++++++++++------ 1 file changed, 21 insertions(+), 9 deletions(-) diff --git a/game-service/src/main/java/awesome/group/game/service/AdminService.java b/game-service/src/main/java/awesome/group/game/service/AdminService.java index aab7b31..b24bdbc 100644 --- a/game-service/src/main/java/awesome/group/game/service/AdminService.java +++ b/game-service/src/main/java/awesome/group/game/service/AdminService.java @@ -183,16 +183,11 @@ public class AdminService { } return incomeOverviewByAppIds(Collections.singletonList(app.getId())); } - MatrixAdmin admin = adminMapper.selectById(adminId); - if (admin.getRole() == SUPER_ADMIN) { - List appIds = appMapper.selectList(null).stream().map(MatrixApp::getId).toList(); - return incomeOverviewByAppIds(appIds); - } - if (StringUtils.hasText(admin.getAppIds())) { - List appIds = Arrays.stream(admin.getAppIds().split(",")).map(Integer::parseInt).toList(); - return incomeOverviewByAppIds(appIds); + List appIds = getAdminAppIds(adminId); + if (CollectionUtils.isEmpty(appIds)) { + return new OverviewBo(); } - return new OverviewBo(); + return incomeOverviewByAppIds(appIds); } private OverviewBo incomeOverviewByAppIds(List appIds) { @@ -213,6 +208,17 @@ public class AdminService { return bo; } + private List getAdminAppIds(int adminId) { + MatrixAdmin admin = adminMapper.selectById(adminId); + if (admin.getRole() == SUPER_ADMIN) { + return appMapper.selectList(null).stream().map(MatrixApp::getId).toList(); + } + if (StringUtils.hasText(admin.getAppIds())) { + return Arrays.stream(admin.getAppIds().split(",")).map(Integer::parseInt).toList(); + } + return new ArrayList<>(); + } + public List incomeDaily(IncomeQuery query, int adminId) { LambdaQueryWrapper wrapper = new QueryWrapper() .select("date, sum(income) as income") @@ -223,6 +229,12 @@ public class AdminService { return new ArrayList<>(); } wrapper.eq(MatrixAdvAggregation::getAppId, app.getId()); + } else { + List appIds = getAdminAppIds(adminId); + if (CollectionUtils.isEmpty(appIds)) { + return new ArrayList<>(); + } + wrapper.in(MatrixAdvAggregation::getAppId, appIds); } if (query.platform != null) { wrapper.eq(MatrixAdvAggregation::getPlatform, query.platform);