nili 6 months ago
parent
commit
d57be392f0
  1. 28
      game-service/src/main/java/awesome/group/game/service/AdminService.java

28
game-service/src/main/java/awesome/group/game/service/AdminService.java

@ -183,17 +183,12 @@ public class AdminService {
} }
return incomeOverviewByAppIds(Collections.singletonList(app.getId())); return incomeOverviewByAppIds(Collections.singletonList(app.getId()));
} }
MatrixAdmin admin = adminMapper.selectById(adminId); List<Integer> appIds = getAdminAppIds(adminId);
if (admin.getRole() == SUPER_ADMIN) { if (CollectionUtils.isEmpty(appIds)) {
List<Integer> appIds = appMapper.selectList(null).stream().map(MatrixApp::getId).toList(); return new OverviewBo();
return incomeOverviewByAppIds(appIds);
} }
if (StringUtils.hasText(admin.getAppIds())) {
List<Integer> appIds = Arrays.stream(admin.getAppIds().split(",")).map(Integer::parseInt).toList();
return incomeOverviewByAppIds(appIds); return incomeOverviewByAppIds(appIds);
} }
return new OverviewBo();
}
private OverviewBo incomeOverviewByAppIds(List<Integer> appIds) { private OverviewBo incomeOverviewByAppIds(List<Integer> appIds) {
if (CollectionUtils.isEmpty(appIds)) { if (CollectionUtils.isEmpty(appIds)) {
@ -213,6 +208,17 @@ public class AdminService {
return bo; return bo;
} }
private List<Integer> 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<DateIncome> incomeDaily(IncomeQuery query, int adminId) { public List<DateIncome> incomeDaily(IncomeQuery query, int adminId) {
LambdaQueryWrapper<MatrixAdvAggregation> wrapper = new QueryWrapper<MatrixAdvAggregation>() LambdaQueryWrapper<MatrixAdvAggregation> wrapper = new QueryWrapper<MatrixAdvAggregation>()
.select("date, sum(income) as income") .select("date, sum(income) as income")
@ -223,6 +229,12 @@ public class AdminService {
return new ArrayList<>(); return new ArrayList<>();
} }
wrapper.eq(MatrixAdvAggregation::getAppId, app.getId()); wrapper.eq(MatrixAdvAggregation::getAppId, app.getId());
} else {
List<Integer> appIds = getAdminAppIds(adminId);
if (CollectionUtils.isEmpty(appIds)) {
return new ArrayList<>();
}
wrapper.in(MatrixAdvAggregation::getAppId, appIds);
} }
if (query.platform != null) { if (query.platform != null) {
wrapper.eq(MatrixAdvAggregation::getPlatform, query.platform); wrapper.eq(MatrixAdvAggregation::getPlatform, query.platform);

Loading…
Cancel
Save