From 91e9c006a2ce431a5916b137974bd004622eb9fa Mon Sep 17 00:00:00 2001 From: huliguo <2023611923@qq.com> Date: 星期三, 09 四月 2025 20:15:45 +0800 Subject: [PATCH] 用户端代码调整测试 --- ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/AppUserServiceImpl.java | 169 ++++++++----------------------------------------------- 1 files changed, 26 insertions(+), 143 deletions(-) diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/AppUserServiceImpl.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/AppUserServiceImpl.java index eefa38c..3710030 100644 --- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/AppUserServiceImpl.java +++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/AppUserServiceImpl.java @@ -8,6 +8,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ruoyi.account.api.model.*; +import com.ruoyi.account.dto.ApplyForAdmissionDTO; import com.ruoyi.account.mapper.AppUserMapper; import com.ruoyi.account.service.*; import com.ruoyi.account.util.GeodesyUtil; @@ -30,7 +31,9 @@ import com.ruoyi.system.api.feignClient.SysUserClient; import com.ruoyi.system.api.model.LoginUser; import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Bean; import org.springframework.data.redis.core.RedisTemplate; import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils; @@ -267,8 +270,6 @@ /** * 注册账号 - * @param registerAccount - * @return */ /* @Override @@ -473,149 +474,9 @@ - @Override - public List<AppUser> getUserAncestorList(Long id, List<AppUser> list) { - if (list == null) { - list = new ArrayList<>(); - } - - Set<Long> visitedIds = new HashSet<>(); - Long currentId = id; - - while (currentId != null && !visitedIds.contains(currentId)) { - AppUser appUser = getById(currentId); - if (appUser == null) { - break; // 如果用户不存在,终止循环 - } - - Long inviteUserId = appUser.getInviteUserId(); - if (inviteUserId != null) { - AppUser invitedUser = getById(inviteUserId); - if (invitedUser != null) { - list.add(invitedUser); - visitedIds.add(currentId); - currentId = inviteUserId; - } else { - break; // 如果邀请用户不存在,终止循环 - } - } else { - break; // 如果没有邀请用户,终止循环 - } - } - - return list; - } - - @Override - public AppUser getSuperiorLeader(Long id) { - AppUser appUser = getById(id); - Long inviteUserId = appUser.getInviteUserId(); - AppUser inviteUser = getById(inviteUserId); - if (inviteUser == null){ - return null; - } - if (inviteUser.getVipId() > 3) { - return inviteUser; - }else { - return getSuperiorLeader(inviteUserId); - } - } - /** - * 定时解绑推广人 - */ - @Override - public void unbindThePromoter() { - //注册X天后没有升级成黄金会员则自动解绑推广人 - //解绑推广人 - Set<Long> unbind_promoter = redisTemplate.opsForZSet().rangeByScore("unbind_promoter", 0, LocalDateTime.now().toEpochSecond(ZoneOffset.UTC)); - if(unbind_promoter.size() > 0){ - List<AppUser> list = this.list(new LambdaQueryWrapper<AppUser>().eq(AppUser::getVipId, 1).eq(AppUser::getDelFlag, 0).isNotNull(AppUser::getInviteUserId) - .eq(AppUser::getStatus, 1).in(AppUser::getId, unbind_promoter)); - for (AppUser appUser : list) { - UpdateWrapper<AppUser> updateWrapper = new UpdateWrapper<>(); - updateWrapper.set("invite_user_id", null).set("shop_id", null).eq("id", appUser.getId()); - this.update(updateWrapper); - } - redisTemplate.opsForZSet().remove("unbind_promoter", unbind_promoter.toArray()); - } - //可更换推广人 - Set<Long> replaceable = redisTemplate.opsForZSet().rangeByScore("replaceable", 0, LocalDateTime.now().toEpochSecond(ZoneOffset.UTC)); - if(replaceable.size() > 0){ - List<AppUser> list = this.list(new LambdaQueryWrapper<AppUser>().eq(AppUser::getDelFlag, 0).eq(AppUser::getChangePromoter, 0) - .eq(AppUser::getStatus, 1).in(AppUser::getId, replaceable)); - for (AppUser appUser : list) { - Long data = orderClient.getOrderCountByAppUserId(appUser.getId()).getData(); - if(data == 0L){ - appUser.setChangePromoter(1); - this.updateById(appUser); - } - } - redisTemplate.opsForZSet().remove("replaceable", replaceable.toArray()); - } - } - - - /** - * 在线记录操作,用于赠送积分 - */ - @Override - public void onlineRecord() { - Long userid = tokenService.getLoginUserApplet().getUserid(); - Object cacheObject = redisService.getCacheObject("ONLINE_" + userid); - if(null == cacheObject){ - JSONObject jsonObject = new JSONObject(); - jsonObject.put("time", System.currentTimeMillis()); - jsonObject.put("online", 0); - redisService.setCacheObject("ONLINE_" + userid, jsonObject, 1L, TimeUnit.HOURS); - }else{ - JSONObject jsonObject = (JSONObject) cacheObject; - long time = System.currentTimeMillis() - jsonObject.getInteger("time"); - Integer online = jsonObject.getInteger("online"); - online++; - //时间满足1小时,并且次数记录满足6次(10分钟记录一次) - if(time >= 3600000 && 6 <= online){ - jsonObject.put("time", System.currentTimeMillis()); - jsonObject.put("online", 0); - redisService.setCacheObject("ONLINE_" + userid, jsonObject, 1L, TimeUnit.HOURS); - AppUser appUser = this.getById(userid); - PointSetting pointSetting = pointSettingClient.getPointSetting(appUser.getVipId()).getData(); - if(null != pointSetting){ - int hourPoint = pointSetting.getHourPoint().intValue(); - int hourPoint1 = 0; - if(1 == pointSetting.getWorkPointOpen()){ - hourPoint1 = new BigDecimal(hourPoint).multiply(pointSetting.getWorkPoint().divide(new BigDecimal(100))).intValue(); - } - //添加积分变动记录 - if(hourPoint > 0){ - Integer lavePoint = appUser.getLavePoint(); - appUser.setTotalPoint(appUser.getTotalPoint() + hourPoint); - appUser.setLavePoint(appUser.getLavePoint() + hourPoint); - appUser.setAvailablePoint(appUser.getAvailablePoint() + hourPoint1); - appUser.setTotalAvailablePoint(appUser.getTotalAvailablePoint() + hourPoint1); - if(null != pointSetting && 1 == pointSetting.getWorkPointGift()){ - appUser.setTransferablePoint(appUser.getTransferablePoint() + hourPoint1); - } - appUser.setTotalHourPoint(appUser.getTotalHourPoint() + hourPoint); - this.updateById(appUser); - - UserPoint userPoint = new UserPoint(); - userPoint.setType(6); - userPoint.setHistoricalPoint(lavePoint); - userPoint.setVariablePoint(hourPoint); - userPoint.setBalance(appUser.getLavePoint()); - userPoint.setCreateTime(LocalDateTime.now()); - userPoint.setAppUserId(appUser.getId()); - userPointService.save(userPoint); - } - } - }else{ - jsonObject.put("online", online); - redisService.setCacheObject("ONLINE_" + userid, jsonObject, 1L, TimeUnit.HOURS); - } - } - } + @Override public IPage<AppUser> getAppuserPage(Integer pageNum, Integer pageSize, AppUser appUser, Integer shopId, Set<Long> userId) { @@ -643,4 +504,26 @@ public List<AppUser> getAppUserByPhoneNoFilter(String phone) { return this.baseMapper.getAppUserByPhoneNoFilter(phone); } + + + + /** + * 小程序-个人中心 + * @return + */ + @Override + public AppUser index() { + Long userId = tokenService.getLoginUserApplet().getUserid(); + //当前用户信息 + AppUser user = this.getById(userId); + //查询门店,如果门店被冻结 + List<Shop> shopList = shopClient.getShopByUserId(userId).getData(); + user.setShopStatus(0);//未拥有门店 + if (shopList != null && !shopList.isEmpty()) { + for (Shop shop : shopList) { + user.setShopStatus(shop.getStatus());//门店状态 + } + } + return user; + } } -- Gitblit v1.7.1