From e4860db370ded4db181e33946775e72fb5357580 Mon Sep 17 00:00:00 2001 From: Pu Zhibing <393733352@qq.com> Date: 星期六, 08 二月 2025 11:55:38 +0800 Subject: [PATCH] 修改门店首页统计bug --- ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/AppUserController.java | 41 +++++++++++++++++++++++++++++++++-------- 1 files changed, 33 insertions(+), 8 deletions(-) diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/AppUserController.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/AppUserController.java index ac4feb3..c228596 100644 --- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/AppUserController.java +++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/AppUserController.java @@ -233,7 +233,7 @@ if(StringUtils.isEmpty(user.getQrCode())){ //获取微信推广二维码 String fileName = UUID.randomUUID() + ".jpg"; - String getwxacodeunlimit = weChatUtil.getwxacodeunlimit("pages/login/login", "id=" + user.getId(), EnvVersion.RELEASE, filePath + fileName); + String getwxacodeunlimit = weChatUtil.getwxacodeunlimit("pages/start/start", "id=" + user.getId(), EnvVersion.RELEASE, filePath + fileName); user.setQrCode(getwxacodeunlimit); appUserService.updateById(user); } @@ -993,13 +993,29 @@ if (cd.getStartTime().isAfter(cd.getEndTime())) { return R.fail("开始时间不能大于结束时间"); } + Long userid = tokenService.getLoginUser().getUserid(); + SysUser sysUser = sysUserClient.getSysUser(userid).getData(); Map<String, Map<Integer, BigDecimal>> dailyVipCommissions = new TreeMap<>(); getDatesBetween(cd.getStartTime(), cd.getEndTime()).forEach(date -> { for (int i = 1; i < 8; i++){ - List<BalanceChangeRecord> list = balanceChangeRecordService.list(new LambdaQueryWrapper<BalanceChangeRecord>() + LambdaQueryWrapper<BalanceChangeRecord> queryWrapper = new LambdaQueryWrapper<BalanceChangeRecord>() .between(BalanceChangeRecord::getCreateTime, date, date.plusDays(1)) - .eq(BalanceChangeRecord::getChangeType,4) - .eq(BalanceChangeRecord::getVipId, i)); + .eq(BalanceChangeRecord::getChangeType, 4) + .eq(BalanceChangeRecord::getVipId, i); + if(sysUser.getRoleType() == 2){ + Integer objectId = sysUser.getObjectId(); + List<AppUser> list = appUserService.list(new LambdaQueryWrapper<AppUser>().eq(AppUser::getShopId, objectId).eq(AppUser::getDelFlag, 0).eq(AppUser::getStatus, 1)); + List<Long> appUserIds = list.stream().map(AppUser::getId).collect(Collectors.toList()); + Set<Long> data = orderClient.getAppUserByShoppingShop(objectId).getData(); + if(null != data){ + appUserIds.addAll(data); + } + if(appUserIds.size() == 0){ + appUserIds.add(-1L); + } + queryWrapper.in(BalanceChangeRecord::getAppUserId, appUserIds); + } + List<BalanceChangeRecord> list = balanceChangeRecordService.list(queryWrapper); BigDecimal reduce = list.stream().map(BalanceChangeRecord::getChangeAmount).reduce(BigDecimal.ZERO, BigDecimal::add); String dateKey = date.format(DateTimeFormatter.ofPattern("yyyy-MM-dd")); dailyVipCommissions.computeIfAbsent(dateKey, k -> new HashMap<>()) @@ -1007,7 +1023,11 @@ } for (int i = 1; i < 4; i++){ - R<List<ShopBalanceStatement>> r = shopBalanceStatementClient.getShopBalanceStatementList2(i, date); + Integer objectId = 0; + if(sysUser.getRoleType() == 2){ + objectId = sysUser.getObjectId(); + } + R<List<ShopBalanceStatement>> r = shopBalanceStatementClient.getShopBalanceStatementList2(i, objectId, date); if (!CollectionUtils.isEmpty(r.getData())){ List<ShopBalanceStatement> list = r.getData(); BigDecimal reduce = list.stream().map(ShopBalanceStatement::getVariableAmount).reduce(BigDecimal.ZERO, BigDecimal::add); @@ -1025,15 +1045,20 @@ } } }); + Integer objectId = 0; + if(sysUser.getRoleType() == 2){ + objectId = sysUser.getObjectId(); + } - - R<Map<String, BigDecimal>> shopStatistics = shopClient.getShopStatistics(); + R<Map<String, BigDecimal>> shopStatistics = shopClient.getShopStatistics(objectId); Map<String, BigDecimal> data = shopStatistics.getData(); BigDecimal totalServiceFee = BigDecimal.ZERO; BigDecimal totalUserCommission = BigDecimal.ZERO; + BigDecimal lowerLevelGiveawayMoney = BigDecimal.ZERO; if (data != null){ totalServiceFee = data.get("serverGiveawayMoney"); totalUserCommission = data.get("giveawayMoney"); + lowerLevelGiveawayMoney = data.get("lowerLevelGiveawayMoney"); } BigDecimal totalCommission = BigDecimal.ZERO; @@ -1079,7 +1104,6 @@ totalPartnerCommission = totalPartnerCommission.add(dailyCommissions.getOrDefault(7, BigDecimal.ZERO)); // 用户分销总金额 - BigDecimal add = commissionDate.getNormalCommission().add(commissionDate.getGoldCommission()).add(commissionDate.getDiamondCommission()).add(commissionDate.getAgentCommission()) .add(commissionDate.getSuperAgentCommission()).add(commissionDate.getTopAgentCommission()).add(commissionDate.getPartnerCommission()); commissionDate.setTotalCommission(add); @@ -1095,6 +1119,7 @@ CommissionDetail commissionDetail = new CommissionDetail(); commissionDetail.setTotalServiceFee(totalServiceFee); commissionDetail.setTotalUserCommission(totalUserCommission); + commissionDetail.setLowerLevelGiveawayMoney(lowerLevelGiveawayMoney); commissionDetail.setTotalNormalCommission(totalNormalCommission); commissionDetail.setTotalGoldCommission(totalGoldCommission); commissionDetail.setTotalDiamondCommission(totalDiamondCommission); -- Gitblit v1.7.1