From 77e1a3c262f53ed3234151058b8ec8196998ada0 Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期六, 04 一月 2025 18:03:00 +0800
Subject: [PATCH] Merge branch 'master' of http://120.76.84.145:10101/gitblit/r/java/qijisheng

---
 ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/AppUserServiceImpl.java |  136 ++++++++++++++++++++++++++++++++++++--------
 1 files changed, 110 insertions(+), 26 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 2094c25..9d47a7a 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
@@ -330,6 +330,7 @@
 				}
 				appUser.setLavePoint(regisPoint);
 				appUser.setAvailablePoint(regisPoint1);
+				appUser.setTotalAvailablePoint(regisPoint1);
 				if(null != pointSetting && 1 == pointSetting.getGetRegisPointGift()){
 					appUser.setTransferablePoint(regisPoint1);
 				}
@@ -379,6 +380,7 @@
 				}
 				appUser2.setLavePoint(appUser2.getLavePoint() + newPoint);
 				appUser2.setAvailablePoint(appUser2.getAvailablePoint() + newPoint1);
+				appUser2.setTotalAvailablePoint(appUser2.getTotalAvailablePoint() + newPoint1);
 				if(null != pointSetting && 1 == pointSetting.getGetNewPointGift()){
 					appUser2.setTransferablePoint(appUser2.getTransferablePoint() + newPoint1);
 				}
@@ -402,6 +404,7 @@
 					AppUser appUser3 = this.getById(appUser2.getInviteUserId());
 					appUser3.setLavePoint(appUser3.getLavePoint() + newPoint);
 					appUser3.setAvailablePoint(appUser3.getAvailablePoint() + newPoint1);
+					appUser3.setTotalAvailablePoint(appUser3.getTotalAvailablePoint() + newPoint1);
 					if(null != pointSetting && 1 == pointSetting.getGetRegisPointGift()){
 						appUser3.setTransferablePoint(appUser3.getTransferablePoint() + newPoint1);
 					}
@@ -428,32 +431,6 @@
 			weChatUtil.getwxacodeunlimit("pages/login/login", "id=" + appUser.getId(), EnvVersion.TRIAL, filePath + fileName);
 			appUser.setQrCode(accessPath + fileName);
 			this.updateById(appUser);
-			
-			//查询当前注册的手机号是都和门店管理员手机号相同
-			Shop shop = shopClient.getShopByPhone(registerAccount.getPhone()).getData();
-			if(null != shop){
-				//添加门店用户关系数据
-				AppUserShop appUserShop = appUserShopService.getOne(new LambdaQueryWrapper<AppUserShop>().eq(AppUserShop::getAppUserId, appUser.getId()).eq(AppUserShop::getShopId, shop.getId()));
-				if(null == appUserShop){
-					appUserShop = new AppUserShop();
-					appUserShop.setShopId(shop.getId());
-					appUserShop.setAppUserId(appUser.getId());
-					appUserShopService.save(appUserShop);
-					//添加管理后台账号
-					SysUser user = new SysUser();
-					user.setDeptId(1L);
-					user.setUserName(appUser.getName());
-					user.setNickName(appUser.getName());
-					user.setPhonenumber(appUser.getPhone());
-					user.setAvatar(appUser.getAvatar());
-					user.setStatus("0");
-					user.setDelFlag("0");
-					user.setRoleType(2);
-					user.setObjectId(shop.getId());
-					user.setAppUserId(appUser.getId());
-					sysUserClient.saveShopUser(user);
-				}
-			}
 		}
 		LoginVo loginVo = new LoginVo();
 		loginVo.setSkipPage(1);
@@ -781,6 +758,7 @@
 					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);
 					}
@@ -822,4 +800,110 @@
 
 		return appUserMapper.getAppuserPage1(new Page<>(pageNum, pageSize), appUser,objectId,userIds);
 	}
+	
+	
+	/**
+	 * 降级检测
+	 */
+	@Override
+	public void demotionDetection() {
+		//代理
+		List<AppUser> appUserList = new ArrayList<>();
+		VipSetting vipSetting = vipSettingClient.getVipSetting(5).getData();
+		List<AppUser> list = this.list(new LambdaQueryWrapper<AppUser>().eq(AppUser::getVipId, 5).eq(AppUser::getStatus, 1).eq(AppUser::getDelFlag, 0).eq(AppUser::getIsDanger, 0));
+		for (AppUser appUser : list) {
+			//消费积分
+			List<UserPoint> list1 = userPointService.list(new LambdaQueryWrapper<UserPoint>().eq(UserPoint::getAppUserId, appUser.getId()).eq(UserPoint::getType, 1).last(" and SUBDATE(now(), INTERVAL " + vipSetting.getKeepBuyDay() + " DAY) >= create_time"));
+			int sum = list1.stream().mapToInt(UserPoint::getVariablePoint).sum();
+			if(sum < vipSetting.getKeepBuyPoint()){
+				appUser.setIsDanger(1);
+				appUserList.add(appUser);
+				continue;
+			}
+			//返佣积分
+			list1 = userPointService.list(new LambdaQueryWrapper<UserPoint>().eq(UserPoint::getAppUserId, appUser.getId()).eq(UserPoint::getType, 2).last(" and SUBDATE(now(), INTERVAL " + vipSetting.getKeepShareDay() + " DAY) >= create_time"));
+			sum = list1.stream().mapToInt(UserPoint::getVariablePoint).sum();
+			if(sum < vipSetting.getKeepSharePoint()){
+				appUser.setIsDanger(1);
+				appUserList.add(appUser);
+				continue;
+			}
+			//门店业绩
+			list1 = userPointService.list(new LambdaQueryWrapper<UserPoint>().eq(UserPoint::getAppUserId, appUser.getId()).eq(UserPoint::getType, 8).last(" and SUBDATE(now(), INTERVAL " + vipSetting.getKeepShopDay() + " DAY) >= create_time"));
+			sum = list1.stream().mapToInt(UserPoint::getVariablePoint).sum();
+			if(sum < vipSetting.getKeepShopPoint()){
+				appUser.setIsDanger(1);
+				appUserList.add(appUser);
+			}
+		}
+		if(appUserList.size() > 0){
+			this.updateBatchById(appUserList);
+		}
+		
+		//总代
+		appUserList = new ArrayList<>();
+		vipSetting = vipSettingClient.getVipSetting(6).getData();
+		list = this.list(new LambdaQueryWrapper<AppUser>().eq(AppUser::getVipId, 6).eq(AppUser::getStatus, 1).eq(AppUser::getDelFlag, 0).eq(AppUser::getIsDanger, 0));
+		for (AppUser appUser : list) {
+			//消费积分
+			List<UserPoint> list1 = userPointService.list(new LambdaQueryWrapper<UserPoint>().eq(UserPoint::getAppUserId, appUser.getId()).eq(UserPoint::getType, 1).last(" and SUBDATE(now(), INTERVAL " + vipSetting.getKeepBuyDay() + " DAY) >= create_time"));
+			int sum = list1.stream().mapToInt(UserPoint::getVariablePoint).sum();
+			if(sum < vipSetting.getKeepBuyPoint()){
+				appUser.setIsDanger(1);
+				appUserList.add(appUser);
+				continue;
+			}
+			//返佣积分
+			list1 = userPointService.list(new LambdaQueryWrapper<UserPoint>().eq(UserPoint::getAppUserId, appUser.getId()).eq(UserPoint::getType, 2).last(" and SUBDATE(now(), INTERVAL " + vipSetting.getKeepShareDay() + " DAY) >= create_time"));
+			sum = list1.stream().mapToInt(UserPoint::getVariablePoint).sum();
+			if(sum < vipSetting.getKeepSharePoint()){
+				appUser.setIsDanger(1);
+				appUserList.add(appUser);
+				continue;
+			}
+			//门店业绩
+			list1 = userPointService.list(new LambdaQueryWrapper<UserPoint>().eq(UserPoint::getAppUserId, appUser.getId()).eq(UserPoint::getType, 8).last(" and SUBDATE(now(), INTERVAL " + vipSetting.getKeepShopDay() + " DAY) >= create_time"));
+			sum = list1.stream().mapToInt(UserPoint::getVariablePoint).sum();
+			if(sum < vipSetting.getKeepShopPoint()){
+				appUser.setIsDanger(1);
+				appUserList.add(appUser);
+			}
+		}
+		if(appUserList.size() > 0){
+			this.updateBatchById(appUserList);
+		}
+		
+		//合伙人
+		appUserList = new ArrayList<>();
+		vipSetting = vipSettingClient.getVipSetting(7).getData();
+		list = this.list(new LambdaQueryWrapper<AppUser>().eq(AppUser::getVipId, 7).eq(AppUser::getStatus, 1).eq(AppUser::getDelFlag, 0).eq(AppUser::getIsDanger, 0));
+		for (AppUser appUser : list) {
+			//消费积分
+			List<UserPoint> list1 = userPointService.list(new LambdaQueryWrapper<UserPoint>().eq(UserPoint::getAppUserId, appUser.getId()).eq(UserPoint::getType, 1).last(" and SUBDATE(now(), INTERVAL " + vipSetting.getKeepBuyDay() + " DAY) >= create_time"));
+			int sum = list1.stream().mapToInt(UserPoint::getVariablePoint).sum();
+			if(sum < vipSetting.getKeepBuyPoint()){
+				appUser.setIsDanger(1);
+				appUserList.add(appUser);
+				continue;
+			}
+			//返佣积分
+			list1 = userPointService.list(new LambdaQueryWrapper<UserPoint>().eq(UserPoint::getAppUserId, appUser.getId()).eq(UserPoint::getType, 2).last(" and SUBDATE(now(), INTERVAL " + vipSetting.getKeepShareDay() + " DAY) >= create_time"));
+			sum = list1.stream().mapToInt(UserPoint::getVariablePoint).sum();
+			if(sum < vipSetting.getKeepSharePoint()){
+				appUser.setIsDanger(1);
+				appUserList.add(appUser);
+				continue;
+			}
+			//门店业绩
+			list1 = userPointService.list(new LambdaQueryWrapper<UserPoint>().eq(UserPoint::getAppUserId, appUser.getId()).eq(UserPoint::getType, 8).last(" and SUBDATE(now(), INTERVAL " + vipSetting.getKeepShopDay() + " DAY) >= create_time"));
+			sum = list1.stream().mapToInt(UserPoint::getVariablePoint).sum();
+			if(sum < vipSetting.getKeepShopPoint()){
+				appUser.setIsDanger(1);
+				appUserList.add(appUser);
+			}
+		}
+		if(appUserList.size() > 0){
+			this.updateBatchById(appUserList);
+		}
+	}
 }

--
Gitblit v1.7.1