From c9c63baa6aca084be7a9302f240c080c9ab1454b Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期五, 24 一月 2025 16:46:50 +0800
Subject: [PATCH] 修改bug

---
 /dev/null                                                                                           |   20 ----------
 ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/AppUserServiceImpl.java    |   14 +++++-
 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/OrderController.java             |   14 +++++++
 ruoyi-common/ruoyi-common-security/src/main/java/com/ruoyi/common/security/utils/SecurityUtils.java |    2 
 ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/feignClient/OrderClient.java                |    9 ++++
 ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/AppUserController.java       |    5 +-
 ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/factory/OrderClientFallbackFactory.java     |    5 ++
 7 files changed, 43 insertions(+), 26 deletions(-)

diff --git a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/factory/OrderClientFallbackFactory.java b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/factory/OrderClientFallbackFactory.java
index 2a96c13..45c3ff9 100644
--- a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/factory/OrderClientFallbackFactory.java
+++ b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/factory/OrderClientFallbackFactory.java
@@ -42,6 +42,11 @@
             public R editOrder(Order order) {
                 return R.fail("编辑订单详情失败:" + cause.getMessage());
             }
+    
+            @Override
+            public R<Long> getOrderCountByAppUserId(Long appUserId) {
+                return R.fail("获取用户订单数量失败:" + cause.getMessage());
+            }
         };
     }
 }
diff --git a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/feignClient/OrderClient.java b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/feignClient/OrderClient.java
index 603b525..aad932d 100644
--- a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/feignClient/OrderClient.java
+++ b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/feignClient/OrderClient.java
@@ -66,4 +66,13 @@
      */
     @PostMapping("/order/editOrder")
     R editOrder(@RequestBody Order order);
+    
+    
+    /**
+     * 获取用户订单数量
+     * @param appUserId
+     * @return
+     */
+    @PostMapping("/order/getOrderCountByAppUserId")
+    R<Long> getOrderCountByAppUserId(@RequestParam("id") Long appUserId);
 }
diff --git a/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/factory/OrderFallbackFactory.java b/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/factory/OrderFallbackFactory.java
deleted file mode 100644
index a8f2d1e..0000000
--- a/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/factory/OrderFallbackFactory.java
+++ /dev/null
@@ -1,35 +0,0 @@
-package com.ruoyi.other.api.factory;
-
-import com.ruoyi.common.core.domain.R;
-
-import com.ruoyi.other.api.feignClient.OrderClient;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.cloud.openfeign.FallbackFactory;
-import org.springframework.stereotype.Component;
-
-/**
- * 充电订单服务降级处理
- * 
- * @author ruoyi
- */
-@Component
-public class OrderFallbackFactory implements FallbackFactory<OrderClient>
-{
-    private static final Logger log = LoggerFactory.getLogger(OrderFallbackFactory.class);
-
-
-    @Override
-    public OrderClient create(Throwable cause) {
-        log.error("商品订单调用失败:{}", cause.getMessage());
-        return new OrderClient() {
-
-
-            @Override
-            public R getOrderIdsByTechId(Integer id) {
-                return R.fail("根据技师id查订单ids失败:" + cause.getMessage());
-            }
-
-        };
-    }
-}
diff --git a/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/feignClient/OrderClient.java b/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/feignClient/OrderClient.java
deleted file mode 100644
index bc7cd91..0000000
--- a/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/feignClient/OrderClient.java
+++ /dev/null
@@ -1,20 +0,0 @@
-package com.ruoyi.other.api.feignClient;
-
-import com.ruoyi.common.core.constant.ServiceNameConstants;
-import com.ruoyi.common.core.domain.R;
-
-import com.ruoyi.other.api.factory.OrderFallbackFactory;
-import org.springframework.cloud.openfeign.FeignClient;
-import org.springframework.web.bind.annotation.*;
-
-import java.util.List;
-
-/**
- * 后台订单服务
- * @author ruoyi
- */
-@FeignClient(contextId = "OrderClient", value = ServiceNameConstants.OTHER_SERVICE, fallbackFactory = OrderFallbackFactory.class)
-public interface OrderClient {
-    @PostMapping(value = "/management/give/vip")
-    public R<List<Long>> getOrderIdsByTechId(@RequestParam("id") Integer id);
-}
diff --git a/ruoyi-common/ruoyi-common-security/src/main/java/com/ruoyi/common/security/utils/SecurityUtils.java b/ruoyi-common/ruoyi-common-security/src/main/java/com/ruoyi/common/security/utils/SecurityUtils.java
index b6e6633..d0ea2d0 100644
--- a/ruoyi-common/ruoyi-common-security/src/main/java/com/ruoyi/common/security/utils/SecurityUtils.java
+++ b/ruoyi-common/ruoyi-common-security/src/main/java/com/ruoyi/common/security/utils/SecurityUtils.java
@@ -120,6 +120,6 @@
         String s = encryptPassword("0192023a7bbd73250516f069df18b500");
         System.err.println(s);
 
-        System.err.println(matchesPassword("c4ca4238a0b923820dcc509a6f75849b", "$2a$10$/7z/wiZ2ejTjD4GQuuyiSe1ptS8uoxrRAUlGCitiLEmpOO78cISeq"));
+//        System.err.println(matchesPassword("c4ca4238a0b923820dcc509a6f75849b", "$2a$10$/7z/wiZ2ejTjD4GQuuyiSe1ptS8uoxrRAUlGCitiLEmpOO78cISeq"));
     }
 }
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 dadca9e..cdfeca1 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
@@ -91,6 +91,8 @@
     private UserCancellationLogService userCancellationLogService;
     @Resource
     private BalanceChangeRecordService balanceChangeRecordService;
+    @Resource
+    private UserChangeLogService userChangeLogService;
 
 
     @ResponseBody
@@ -701,8 +703,7 @@
         return R.ok(byId);
     }
 
-    @Resource
-    private UserChangeLogService userChangeLogService;
+    
 
     @GetMapping("/change/vip")
     @ApiOperation(value = "用户列表-修改会员等级", tags = {"管理后台"})
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 57e7593..2561d96 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
@@ -25,6 +25,7 @@
 import com.ruoyi.common.redis.annotation.DistributedLock;
 import com.ruoyi.common.redis.service.RedisService;
 import com.ruoyi.common.security.service.TokenService;
+import com.ruoyi.order.feignClient.OrderClient;
 import com.ruoyi.other.api.domain.*;
 import com.ruoyi.other.api.feignClient.*;
 import com.ruoyi.system.api.domain.SysUser;
@@ -111,6 +112,9 @@
 	private RedisTemplate redisTemplate;
 	@Resource
 	private BalancePaymentService balancePaymentService;
+	
+	@Resource
+	private OrderClient orderClient;
 
 
 	/**
@@ -865,7 +869,6 @@
 	@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){
@@ -876,6 +879,7 @@
 				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));
@@ -883,9 +887,13 @@
 			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) {
-				appUser.setChangePromoter(1);
-				this.updateById(appUser);
+				Long data = orderClient.getOrderCountByAppUserId(appUser.getId()).getData();
+				if(data == 0){
+					appUser.setChangePromoter(1);
+					this.updateById(appUser);
+				}
 			}
+			redisTemplate.opsForZSet().remove("replaceable", replaceable.toArray());
 		}
 	}
 	
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/OrderController.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/OrderController.java
index 40cb563..c342857 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/OrderController.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/OrderController.java
@@ -512,5 +512,19 @@
         orderService.updateById(order);
         return R.ok();
     }
+    
+    
+    /**
+     * 获取用户订单数量
+     * @param appUserId
+     * @return
+     */
+    @PostMapping("/getOrderCountByAppUserId")
+    public R<Long> getOrderCountByAppUserId(@RequestParam("id") Long appUserId){
+        long count = orderService.count(new LambdaQueryWrapper<Order>().eq(Order::getDelFlag, 0)
+                .eq(Order::getAppUserId, appUserId).in(Order::getOrderStatus, Arrays.asList(1, 2, 3, 4, 7, 8))
+                .eq(Order::getPayStatus, 2));
+        return R.ok(count);
+    }
 }
 

--
Gitblit v1.7.1