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()); } }; } } 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); } ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/factory/OrderFallbackFactory.java
File was deleted ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/feignClient/OrderClient.java
File was deleted 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")); } } 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 = {"管理后台"}) 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()); } } 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); } }