Pu Zhibing
2025-01-15 22be02314dae32d2fcfa2f3f31e7213cbbca5260
ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/AppUserController.java
@@ -23,6 +23,7 @@
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.utils.bean.BeanUtils;
import com.ruoyi.common.core.web.page.PageInfo;
import com.ruoyi.common.redis.annotation.DistributedLock;
import com.ruoyi.common.security.service.TokenService;
import com.ruoyi.order.feignClient.OrderClient;
import com.ruoyi.order.feignClient.RemoteOrderGoodsClient;
@@ -137,6 +138,8 @@
    @PostMapping("/editAppUserById")
    public R<Void> editAppUserById(@RequestBody AppUser appUser) {
        appUserService.updateById(appUser);
        appUserService.update(new LambdaUpdateWrapper<AppUser>().eq(AppUser::getId, appUser.getId())
                .set(AppUser::getLastShopTime, appUser.getLastShopTime()));
        return R.ok();
    }
@@ -235,6 +238,14 @@
        userCancellationLogService.save(userCancellationLog);
        user.setStatus(3);
        appUserService.updateById(user);
        List<AppUser> subUserList = appUserService.list(new LambdaQueryWrapper<AppUser>()
                .eq(AppUser::getInviteUserId, userId));
        for (AppUser appUser : subUserList) {
            Long inviteUserId = user.getInviteUserId();
            appUser.setInviteUserId(inviteUserId);
        }
        appUserService.updateBatchById(subUserList);
        return R.ok();
    }
@@ -261,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);
@@ -334,7 +384,8 @@
        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 {
@@ -461,8 +512,10 @@
        //获取在该本店下单的用户ids
        Integer objectId = sysUser.getObjectId();
        R<List<Order>> listR = remoteOrderGoodsClient.byShopId(objectId);
        for (Order datum : listR.getData()) {
            userIds.add(datum.getAppUserId());
        if (listR.getData()!=null){
            for (Order datum : listR.getData()) {
                userIds.add(datum.getAppUserId());
            }
        }
        IPage<AppUser> appuserPage = appUserService.getAppuserPage1(pageCurr, pageSize, appUser, objectId, userIds);
        return R.ok(appuserPage);
@@ -699,14 +752,11 @@
        SysUser data = sysUserClient.getSysUser(userid).getData();
        Integer shopId = null;
        Set<Long> userId = null;
        Set<Long> userIdT = null;
        if(data.getRoleType() == 2){
            shopId = data.getObjectId();
            userId = orderClient.getAppUserByShoppingShop(shopId).getData();
        }
        UserStatistics userStatistics = appUserMapper.getUserStatistics(shopId, userId);
        UserStatistics userStatistics1 = appUserMapper.getUserStatistics(shopId, userIdT);
        userStatistics.setShopUser(userStatistics1.getShopUser());
        return R.ok(userStatistics);
    }
@@ -896,7 +946,8 @@
                .limit(daysBetween + 1)
                .collect(Collectors.toList());
    }
    
    /**
     * 上传图片
@@ -926,6 +977,17 @@
    
    
    /**
     * 检查会员降级
     * @param appUserId
     */
    @PostMapping("/app-user/vipDemotion")
    public void vipDemotion(@RequestParam("appUserId") Long appUserId){
        appUserService.vipDemotion(appUserId);
    }
    /**
     * 用户降级检测
     */
    @PostMapping("/demotionDetection")