From ec7528bb6cc65d3bce1c33d59e48ea5bc81c7782 Mon Sep 17 00:00:00 2001 From: 无关风月 <443237572@qq.com> Date: 星期四, 16 一月 2025 14:27:43 +0800 Subject: [PATCH] 修改bug --- ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/AppUserController.java | 144 +++++++++++++++++++++++++++++++++++++---------- 1 files changed, 112 insertions(+), 32 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 d7472d4..9935587 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 @@ -272,15 +272,54 @@ user.setTopUser(byId); } //获取绑定下级列表 - List<AppUser> list = appUserService.lambdaQuery().eq(AppUser::getInviteUserId, user.getId()).list(); + List<AppUser> list = appUserService.lambdaQuery() + .eq(AppUser::getInviteUserId, user.getId()) + .eq(AppUser::getDelFlag, 0) + .ne(AppUser::getStatus, 3) + .list(); for (AppUser appUser : list) { - Long count1 = appUserService.lambdaQuery().eq(AppUser::getVipId, 1).eq(AppUser::getInviteUserId, appUser.getId()).count(); - Long count2 = appUserService.lambdaQuery().eq(AppUser::getVipId, 2).eq(AppUser::getInviteUserId, appUser.getId()).count(); - Long count3 = appUserService.lambdaQuery().eq(AppUser::getVipId, 3).eq(AppUser::getInviteUserId, appUser.getId()).count(); - Long count4 = appUserService.lambdaQuery().eq(AppUser::getVipId, 4).eq(AppUser::getInviteUserId, appUser.getId()).count(); - Long count5 = appUserService.lambdaQuery().eq(AppUser::getVipId, 5).eq(AppUser::getInviteUserId, appUser.getId()).count(); - Long count6 = appUserService.lambdaQuery().eq(AppUser::getVipId, 6).eq(AppUser::getInviteUserId, appUser.getId()).count(); - Long count7 = appUserService.lambdaQuery().eq(AppUser::getVipId, 7).eq(AppUser::getInviteUserId, appUser.getId()).count(); + Long count1 = appUserService.lambdaQuery() + .eq(AppUser::getVipId, 1) + .eq(AppUser::getInviteUserId, appUser.getId()) + .eq(AppUser::getDelFlag, 0) + .ne(AppUser::getStatus, 3) + .count(); + Long count2 = appUserService.lambdaQuery() + .eq(AppUser::getVipId, 2) + .eq(AppUser::getInviteUserId, appUser.getId()) + .eq(AppUser::getDelFlag, 0) + .ne(AppUser::getStatus, 3) + .count(); + Long count3 = appUserService.lambdaQuery() + .eq(AppUser::getVipId, 3) + .eq(AppUser::getInviteUserId, appUser.getId()) + .eq(AppUser::getDelFlag, 0) + .ne(AppUser::getStatus, 3) + .count(); + Long count4 = appUserService.lambdaQuery() + .eq(AppUser::getVipId, 4) + .eq(AppUser::getInviteUserId, appUser.getId()) + .eq(AppUser::getDelFlag, 0) + .ne(AppUser::getStatus, 3) + .count(); + Long count5 = appUserService.lambdaQuery() + .eq(AppUser::getVipId, 5) + .eq(AppUser::getInviteUserId, appUser.getId()) + .eq(AppUser::getDelFlag, 0) + .ne(AppUser::getStatus, 3) + .count(); + Long count6 = appUserService.lambdaQuery() + .eq(AppUser::getVipId, 6) + .eq(AppUser::getInviteUserId, appUser.getId()) + .eq(AppUser::getDelFlag, 0) + .ne(AppUser::getStatus, 3) + .count(); + Long count7 = appUserService.lambdaQuery() + .eq(AppUser::getVipId, 7) + .eq(AppUser::getInviteUserId, appUser.getId()) + .eq(AppUser::getDelFlag, 0) + .ne(AppUser::getStatus, 3) + .count(); appUser.setCount1(count1); appUser.setCount2(count2); appUser.setCount3(count3); @@ -330,30 +369,49 @@ user.setShopName(shop.getName()); } } - Long count1 = appUserService.lambdaQuery().ne(AppUser::getStatus,3).eq(AppUser::getVipId, 1).eq(AppUser::getInviteUserId, userId).or().eq(AppUser::getTopInviteId,userId).count(); - Long count2 = appUserService.lambdaQuery().ne(AppUser::getStatus,3).eq(AppUser::getVipId, 2).eq(AppUser::getInviteUserId, userId).or().eq(AppUser::getTopInviteId,userId).count(); - Long count3 = appUserService.lambdaQuery().ne(AppUser::getStatus,3).eq(AppUser::getVipId, 3).eq(AppUser::getInviteUserId, userId).or().eq(AppUser::getTopInviteId,userId).count(); - Long count4 = appUserService.lambdaQuery().ne(AppUser::getStatus,3).eq(AppUser::getVipId, 4).eq(AppUser::getInviteUserId, userId).or().eq(AppUser::getTopInviteId,userId).count(); - Long count5 = appUserService.lambdaQuery().ne(AppUser::getStatus,3).eq(AppUser::getVipId, 5).eq(AppUser::getInviteUserId, userId).or().eq(AppUser::getTopInviteId,userId).count(); - Long count6 = appUserService.lambdaQuery().ne(AppUser::getStatus,3).eq(AppUser::getVipId, 6).eq(AppUser::getInviteUserId, userId).or().eq(AppUser::getTopInviteId,userId).count(); - Long count7 = appUserService.lambdaQuery().ne(AppUser::getStatus,3).eq(AppUser::getVipId, 7).eq(AppUser::getInviteUserId, userId).or().eq(AppUser::getTopInviteId,userId).count(); - user.setCount1(count1); - user.setCount2(count2); - user.setCount3(count3); - user.setCount4(count4); - user.setCount5(count5); - user.setCount6(count6); - user.setCount7(count7); + List<AppUser> appUserList = appUserService.list(new LambdaQueryWrapper<AppUser>() + .ne(AppUser::getStatus, 3) + .eq(AppUser::getDelFlag, 0)); + ArrayList<Long> userIds = new ArrayList<>(); + userIds.add(userId); + getUserAncestorList(user,userIds,new ArrayList<>(),appUserList); +// Long count1 = appUserService.lambdaQuery().ne(AppUser::getStatus,3).eq(AppUser::getVipId, 1).eq(AppUser::getInviteUserId, userId).or().eq(AppUser::getTopInviteId,userId).count(); +// Long count2 = appUserService.lambdaQuery().ne(AppUser::getStatus,3).eq(AppUser::getVipId, 2).eq(AppUser::getInviteUserId, userId).or().eq(AppUser::getTopInviteId,userId).count(); +// Long count3 = appUserService.lambdaQuery().ne(AppUser::getStatus,3).eq(AppUser::getVipId, 3).eq(AppUser::getInviteUserId, userId).or().eq(AppUser::getTopInviteId,userId).count(); +// Long count4 = appUserService.lambdaQuery().ne(AppUser::getStatus,3).eq(AppUser::getVipId, 4).eq(AppUser::getInviteUserId, userId).or().eq(AppUser::getTopInviteId,userId).count(); +// Long count5 = appUserService.lambdaQuery().ne(AppUser::getStatus,3).eq(AppUser::getVipId, 5).eq(AppUser::getInviteUserId, userId).or().eq(AppUser::getTopInviteId,userId).count(); +// Long count6 = appUserService.lambdaQuery().ne(AppUser::getStatus,3).eq(AppUser::getVipId, 6).eq(AppUser::getInviteUserId, userId).or().eq(AppUser::getTopInviteId,userId).count(); +// Long count7 = appUserService.lambdaQuery().ne(AppUser::getStatus,3).eq(AppUser::getVipId, 7).eq(AppUser::getInviteUserId, userId).or().eq(AppUser::getTopInviteId,userId).count(); +// user.setCount1(count1); +// user.setCount2(count2); +// user.setCount3(count3); +// user.setCount4(count4); +// user.setCount5(count5); +// user.setCount6(count6); +// user.setCount7(count7); - List<UserSignRecord> list = userSignRecordService.lambdaQuery().eq(UserSignRecord::getSignDay, LocalDate.now()).list(); + List<UserSignRecord> list = userSignRecordService.lambdaQuery().eq(UserSignRecord::getSignDay, LocalDate.now()) + .eq(UserSignRecord::getAppUserId,userId).list(); if (!list.isEmpty()) { user.setIsSign(1); } else { user.setIsSign(0); } return R.ok(user); - - + } + public void getUserAncestorList(AppUser user,List<Long> userIds, List<AppUser> children,List<AppUser> list) { + children = list.stream().filter(u -> userIds.contains(u.getInviteUserId()) || userIds.contains(u.getTopInviteId())).collect(Collectors.toList()); + if(!CollectionUtils.isEmpty(children)){ + user.setCount1((user.getCount1() == null ? 0L : user.getCount1()) + children.stream().filter(e->e.getVipId() == 1).count()); + user.setCount2((user.getCount2() == null ? 0L : user.getCount2()) + children.stream().filter(e->e.getVipId() == 2).count()); + user.setCount3((user.getCount3() == null ? 0L : user.getCount3()) + children.stream().filter(e->e.getVipId() == 3).count()); + user.setCount4((user.getCount4() == null ? 0L : user.getCount4()) + children.stream().filter(e->e.getVipId() == 4).count()); + user.setCount5((user.getCount5() == null ? 0L : user.getCount5()) + children.stream().filter(e->e.getVipId() == 5).count()); + user.setCount6((user.getCount6() == null ? 0L : user.getCount6()) + children.stream().filter(e->e.getVipId() == 6).count()); + user.setCount7((user.getCount7() == null ? 0L : user.getCount7()) + children.stream().filter(e->e.getVipId() == 7).count()); + List<Long> userIdList = children.stream().map(AppUser::getId).collect(Collectors.toList()); + getUserAncestorList(user,userIdList, children,list); + } } @GetMapping("/index/change") @@ -492,8 +550,8 @@ DangerInfoDto dangerInfoDto = new DangerInfoDto(); BeanUtils.copyProperties(data, dangerInfoDto); List<UserPoint> list1 = userPointService.lambdaQuery().eq(UserPoint::getType, 1).ge(UserPoint::getCreateTime, now.minusDays(data.getKeepBuyDay())).list(); - List<UserPoint> list2 = userPointService.lambdaQuery().eq(UserPoint::getType, 2).ge(UserPoint::getCreateTime, now.minusDays(data.getKeepBuyDay())).list(); - List<UserPoint> list3 = userPointService.lambdaQuery().eq(UserPoint::getType, 5).ge(UserPoint::getCreateTime, now.minusDays(data.getKeepBuyDay())).list(); + List<UserPoint> list2 = userPointService.lambdaQuery().eq(UserPoint::getType, 9).ge(UserPoint::getCreateTime, now.minusDays(data.getKeepBuyDay())).list(); + List<UserPoint> list3 = userPointService.lambdaQuery().eq(UserPoint::getType, 8).ge(UserPoint::getCreateTime, now.minusDays(data.getKeepBuyDay())).list(); Integer userKeepBuyPoint = 0; for (UserPoint userPoint : list1) { userKeepBuyPoint = userPoint.getVariablePoint() + userKeepBuyPoint; @@ -516,9 +574,17 @@ @GetMapping("/danger/down") @ApiOperation(value = "用户列表-保级条件降级", tags = {"管理后台"}) public R down(Long id) { - AppUser byId = appUserService.getById(id); - byId.setVipId(byId.getVipId() - 1); - appUserService.updateById(byId); + AppUser appUser = appUserService.getById(id); + UserChangeLog userChangeLog = new UserChangeLog(); + userChangeLog.setDelFlag(0); + userChangeLog.setCreateTime(LocalDateTime.now()); + userChangeLog.setAppUserId(id); + userChangeLog.setBeforeVipId(appUser.getVipId()); + userChangeLog.setAfterVipId(appUser.getVipId() - 1); + userChangeLog.setChangeType(0); + userChangeLogService.save(userChangeLog); + appUser.setVipId(appUser.getVipId() - 1); + appUserService.updateById(appUser); return R.ok(); } @@ -618,7 +684,7 @@ List<AppUser> list = appUserService.lambdaQuery().eq(AppUser::getInviteUserId, id).list(); byId.setBottomUsers(list); //消费总金额 - R<List<Order>> orderR = remoteOrderGoodsClient.byShopId(sysUser.getObjectId()); + R<List<Order>> orderR = remoteOrderGoodsClient.byShopIdAndUserId(id,sysUser.getObjectId()); List<Order> orderList = orderR.getData(); if (!CollectionUtils.isEmpty(orderList)){ BigDecimal paymentAmount = orderList.stream().map(Order::getPaymentAmount).reduce(BigDecimal.ZERO, BigDecimal::add); @@ -666,7 +732,10 @@ @GetMapping("/orders") @ApiOperation(value = "用户列表-订单列表", tags = {"管理后台"}) public R<List<Order>> orders(Long id) { - R<List<Order>> listR = remoteOrderGoodsClient.byUserId(id); + Long userid = tokenService.getLoginUser().getUserid(); + SysUser sysUser = sysUserClient.getSysUser(userid).getData(); + Integer shopId = sysUser.getObjectId(); + R<List<Order>> listR = remoteOrderGoodsClient.byUserId(id,shopId); return R.ok(listR.getData()); } @@ -937,6 +1006,17 @@ /** + * 检查会员降级 + * @param appUserId + */ + @PostMapping("/app-user/vipDemotion") + public void vipDemotion(@RequestParam("appUserId") Long appUserId){ + appUserService.vipDemotion(appUserId); + } + + + + /** * 用户降级检测 */ @PostMapping("/demotionDetection") -- Gitblit v1.7.1