From c542c56572ea8936301a6bdc736e23b846c8c006 Mon Sep 17 00:00:00 2001 From: Pu Zhibing <393733352@qq.com> Date: 星期六, 04 一月 2025 18:01:58 +0800 Subject: [PATCH] 修改保级功能bug --- ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/CommissionServiceImpl.java | 8 + ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/AppUserServiceImpl.java | 110 +++++++++++++++++++++++++++ ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/AppUserShareController.java | 1 ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/VipSettingController.java | 2 ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/UserSignRecordController.java | 1 ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/util/TaskUtil.java | 2 ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/SeckillActivityInfoServiceImpl.java | 2 ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/vo/VerifiableShopVo.java | 5 + ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/ShopController.java | 24 +++++ ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/vo/SeckillActivityVO.java | 2 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/ShoppingCartServiceImpl.java | 4 + ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/UserCouponServiceImpl.java | 1 ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/factory/AppUserClientFallbackFactory.java | 5 + ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/model/AppUser.java | 6 + ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/AppUserController.java | 9 ++ ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/AppUserService.java | 6 + ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/feignClient/AppUserClient.java | 7 + ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/domain/ShopPoint.java | 4 18 files changed, 191 insertions(+), 8 deletions(-) diff --git a/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/factory/AppUserClientFallbackFactory.java b/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/factory/AppUserClientFallbackFactory.java index d7281f4..1f771d1 100644 --- a/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/factory/AppUserClientFallbackFactory.java +++ b/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/factory/AppUserClientFallbackFactory.java @@ -104,6 +104,11 @@ public void vipUpgrade(Long appUserId) { R.fail("检查会员等级变更失败:" + cause.getMessage()); } + + @Override + public void demotionDetection() { + R.fail("用户降级检测失败:" + cause.getMessage()); + } }; } } diff --git a/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/feignClient/AppUserClient.java b/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/feignClient/AppUserClient.java index 5e554a6..3197363 100644 --- a/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/feignClient/AppUserClient.java +++ b/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/feignClient/AppUserClient.java @@ -90,4 +90,11 @@ */ @PostMapping("/app-user/vipUpgrade") void vipUpgrade(@RequestParam("appUserId") Long appUserId); + + + /** + * 用户降级检测 + */ + @PostMapping("/app-user/demotionDetection") + void demotionDetection(); } diff --git a/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/model/AppUser.java b/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/model/AppUser.java index 527f3c2..687f9cd 100644 --- a/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/model/AppUser.java +++ b/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/model/AppUser.java @@ -227,6 +227,10 @@ @ApiModelProperty(value = "可用积分") @TableField("available_point") private Integer availablePoint; + + @ApiModelProperty(value = "可用总积分数") + @TableField("total_available_point") + private Integer totalAvailablePoint; @ApiModelProperty(value = "可转增积分") @TableField("transferable_point") @@ -307,7 +311,7 @@ @TableField(exist = false) private Set<Integer> shopIds; - @ApiModelProperty(value = "降级预警") + @ApiModelProperty(value = "降级预警(0=否,1=是)") @TableField("is_danger") private Integer isDanger; diff --git a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/vo/VerifiableShopVo.java b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/vo/VerifiableShopVo.java index 0952e7e..bd98d97 100644 --- a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/vo/VerifiableShopVo.java +++ b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/vo/VerifiableShopVo.java @@ -17,4 +17,9 @@ private String name; @ApiModelProperty("距离") private Long distance; + @ApiModelProperty("地址") + private String address; + @ApiModelProperty("图片") + private String homePicture; + } diff --git a/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/domain/ShopPoint.java b/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/domain/ShopPoint.java index 2939f35..9fbcae4 100644 --- a/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/domain/ShopPoint.java +++ b/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/domain/ShopPoint.java @@ -40,9 +40,9 @@ @TableField("shop_id") private Integer shopId; - @ApiModelProperty(value = "变动类型(1=门店业绩,2=门店返佣,3=下级门店返佣,4=门店服务返佣)") + @ApiModelProperty(value = "变动类型(1=门店业绩,2=门店返佣,3=下级门店返佣)") @TableField("type") - @Excel(name = "变动类型", readConverterExp = "1=门店业绩,2=门店返佣,3=下级门店返佣,4=门店服务返佣") + @Excel(name = "变动类型", readConverterExp = "1=门店服务返佣,2=门店返佣,3=下级门店返佣") private Integer type; @ApiModelProperty(value = "历史余额") 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 daa2396..af03a28 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 @@ -751,5 +751,14 @@ public void vipUpgrade(@RequestParam("appUserId") Long appUserId){ appUserService.vipUpgrade(appUserId); } + + + /** + * 用户降级检测 + */ + @PostMapping("/demotionDetection") + public void demotionDetection(){ + appUserService.demotionDetection(); + } } diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/AppUserShareController.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/AppUserShareController.java index 2ded011..dd3dc73 100644 --- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/AppUserShareController.java +++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/AppUserShareController.java @@ -71,6 +71,7 @@ appUser.setTotalPoint(appUser.getTotalPoint() + everySharePoint); appUser.setLavePoint(appUser.getLavePoint() + everySharePoint); appUser.setAvailablePoint(appUser.getAvailablePoint() + everySharePoint1); + appUser.setTotalAvailablePoint(appUser.getTotalAvailablePoint() + everySharePoint1); if(null != pointSetting && 1 == pointSetting.getWorkPointGift()){ appUser.setTransferablePoint(appUser.getTransferablePoint() + everySharePoint1); } diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/UserSignRecordController.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/UserSignRecordController.java index 2b2891c..1c0c429 100644 --- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/UserSignRecordController.java +++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/UserSignRecordController.java @@ -79,6 +79,7 @@ appUser.setTotalPoint(appUser.getTotalPoint() + signPoint); appUser.setLavePoint(appUser.getLavePoint() + signPoint); appUser.setAvailablePoint(appUser.getAvailablePoint() + signPoint1); + appUser.setTotalAvailablePoint(appUser.getTotalAvailablePoint() + signPoint1); if(null != pointSetting && 1 == pointSetting.getWorkPointGift()){ appUser.setTransferablePoint(appUser.getTransferablePoint() + signPoint1); } diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/AppUserService.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/AppUserService.java index 5ccc375..c7817fe 100644 --- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/AppUserService.java +++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/AppUserService.java @@ -89,4 +89,10 @@ * @param appUserId */ void vipUpgrade(Long appUserId); + + + /** + * 降级检测 + */ + void demotionDetection(); } 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 c0480f9..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); } @@ -755,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); } @@ -796,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); + } + } } diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/UserCouponServiceImpl.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/UserCouponServiceImpl.java index c3d6242..3c4860c 100644 --- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/UserCouponServiceImpl.java +++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/UserCouponServiceImpl.java @@ -39,7 +39,6 @@ /** * 获取支付页面的优惠券列表数据 * @param userId - * @param orderMoney * @return */ @Override diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/util/TaskUtil.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/util/TaskUtil.java index dfa513e..80ab125 100644 --- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/util/TaskUtil.java +++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/util/TaskUtil.java @@ -30,6 +30,8 @@ public void sendVipCoupon(){ //解绑推广人 appUserService.unbindThePromoter(); + //降级检测 + appUserService.demotionDetection(); } /** diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/CommissionServiceImpl.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/CommissionServiceImpl.java index e4014b3..3926014 100644 --- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/CommissionServiceImpl.java +++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/CommissionServiceImpl.java @@ -162,6 +162,7 @@ inviteUser.setSharePoint(inviteUser.getSharePoint() + ztsj_point); inviteUser.setLavePoint(inviteUser.getLavePoint() + ztsj_point); inviteUser.setAvailablePoint(inviteUser.getAvailablePoint() + earnPoint1); + inviteUser.setTotalAvailablePoint(inviteUser.getTotalAvailablePoint() + earnPoint1); if(null != pointSetting && 1 == pointSetting.getSharePointGift()){ inviteUser.setTransferablePoint(inviteUser.getTransferablePoint() + earnPoint1); } @@ -217,6 +218,7 @@ superiorLeader.setSharePoint(superiorLeader.getSharePoint() + zbsj_point); superiorLeader.setLavePoint(superiorLeader.getLavePoint() + zbsj_point); superiorLeader.setAvailablePoint(superiorLeader.getAvailablePoint() + earnPoint1); + superiorLeader.setTotalAvailablePoint(superiorLeader.getTotalAvailablePoint() + earnPoint1); if(null != pointSetting && 1 == pointSetting.getSharePointGift()){ superiorLeader.setTransferablePoint(superiorLeader.getTransferablePoint() + earnPoint1); } @@ -276,6 +278,7 @@ } shopAppUser.setLavePoint(shopAppUser.getLavePoint() + hxmd_point); shopAppUser.setAvailablePoint(shopAppUser.getAvailablePoint() + earnPoint1); + shopAppUser.setTotalAvailablePoint(shopAppUser.getTotalAvailablePoint() + earnPoint1); if(null != pointSetting && 1 == pointSetting.getShopPointGift()){ shopAppUser.setTransferablePoint(shopAppUser.getTransferablePoint() + earnPoint1); } @@ -321,7 +324,7 @@ if(!shop.getLavePoint().equals(shopLavePoint)){ ShopPoint shopPoint = new ShopPoint(); shopPoint.setShopId(shop.getId()); - shopPoint.setType(4); + shopPoint.setType(1); shopPoint.setHistoricalPoint(shopLavePoint); shopPoint.setVariablePoint(hxmd_point); shopPoint.setBalance(shop.getLavePoint()); @@ -348,6 +351,7 @@ } technicianAppUser.setLavePoint(technicianAppUser.getLavePoint() + js_point); technicianAppUser.setAvailablePoint(technicianAppUser.getAvailablePoint() + earnPoint1); + technicianAppUser.setTotalAvailablePoint(technicianAppUser.getTotalAvailablePoint() + earnPoint1); if(null != pointSetting && 1 == pointSetting.getPersonPointGift()){ technicianAppUser.setTransferablePoint(technicianAppUser.getTransferablePoint() + earnPoint1); } @@ -397,6 +401,7 @@ } bdShopAppUser.setLavePoint(bdShopAppUser.getLavePoint() + bdmd_point); bdShopAppUser.setAvailablePoint(bdShopAppUser.getAvailablePoint() + earnPoint1); + bdShopAppUser.setTotalAvailablePoint(bdShopAppUser.getTotalAvailablePoint() + earnPoint1); if(null != pointSetting && 1 == pointSetting.getShopSharePointGift()){ bdShopAppUser.setTransferablePoint(bdShopAppUser.getTransferablePoint() + earnPoint1); } @@ -480,6 +485,7 @@ } sjShopAppUser.setLavePoint(sjShopAppUser.getLavePoint() + bdmdsj_point); sjShopAppUser.setAvailablePoint(sjShopAppUser.getAvailablePoint() + earnPoint1); + sjShopAppUser.setTotalAvailablePoint(sjShopAppUser.getTotalAvailablePoint() + earnPoint1); if(null != pointSetting && 1 == pointSetting.getShopSharePointGift()){ sjShopAppUser.setTransferablePoint(sjShopAppUser.getTransferablePoint() + earnPoint1); } diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/ShoppingCartServiceImpl.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/ShoppingCartServiceImpl.java index cbca3c0..3c5614f 100644 --- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/ShoppingCartServiceImpl.java +++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/ShoppingCartServiceImpl.java @@ -937,6 +937,7 @@ appUser.setLavePoint(appUser.getLavePoint() + earnPoint); appUser.setTotalPoint(appUser.getTotalPoint() + earnPoint); appUser.setAvailablePoint(appUser.getAvailablePoint() + earnPoint1); + appUser.setTotalAvailablePoint(appUser.getTotalAvailablePoint() + earnPoint1); if(null != pointSetting && 1 == pointSetting.getBuyPointGift()){ appUser.setTransferablePoint(appUser.getTransferablePoint() + earnPoint1); } @@ -1009,6 +1010,7 @@ appUser.setShopPoint(appUser.getShopPoint() + earnPoint); appUser.setLavePoint(appUser.getLavePoint() + earnPoint); appUser.setAvailablePoint(appUser.getAvailablePoint() + earnPoint1); + appUser.setTotalAvailablePoint(appUser.getTotalAvailablePoint() + earnPoint1); if(null != pointSetting && 1 == pointSetting.getBuyPointGift()){ appUser.setTransferablePoint(appUser.getTransferablePoint() + earnPoint1); } @@ -1141,6 +1143,7 @@ appUser.setLavePoint(appUser.getLavePoint() + earnPoint); appUser.setTotalPoint(appUser.getTotalPoint() + earnPoint); appUser.setAvailablePoint(appUser.getAvailablePoint() + earnPoint1); + appUser.setTotalAvailablePoint(appUser.getTotalAvailablePoint() + earnPoint1); UserPoint userPoint = new UserPoint(); userPoint.setType(1); @@ -1203,6 +1206,7 @@ appUser.setShopPoint(appUser.getShopPoint() + earnPoint); appUser.setLavePoint(appUser.getLavePoint() + earnPoint); appUser.setAvailablePoint(appUser.getAvailablePoint() + earnPoint1); + appUser.setTotalAvailablePoint(appUser.getTotalAvailablePoint() + earnPoint1); appUser.setTotalPoint(appUser.getTotalPoint() + earnPoint); appUser.setLastShopTime(LocalDateTime.now()); appUserClient.editAppUserById(appUser); diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/ShopController.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/ShopController.java index 92fda6a..d1bac18 100644 --- a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/ShopController.java +++ b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/ShopController.java @@ -12,9 +12,13 @@ import com.ruoyi.common.security.service.TokenService; import com.ruoyi.common.security.utils.SecurityUtils; import com.ruoyi.order.vo.VerifiableShopVo; +import com.ruoyi.other.api.domain.Goods; +import com.ruoyi.other.api.domain.GoodsShop; import com.ruoyi.other.api.domain.Shop; import com.ruoyi.other.api.domain.ShopScore; import com.ruoyi.other.mapper.ShopMapper; +import com.ruoyi.other.service.GoodsService; +import com.ruoyi.other.service.GoodsShopService; import com.ruoyi.other.service.ShopScoreService; import com.ruoyi.other.service.ShopService; import com.ruoyi.other.util.GeodesyUtil; @@ -69,6 +73,10 @@ private UserShopClient userShopClient; @Resource private AppUserShopClient appUserShopClient; + @Resource + private GoodsService goodsService; + @Resource + private GoodsShopService goodsShopService; @@ -466,15 +474,27 @@ @ResponseBody @GetMapping("/getVerifiableShop") @ApiOperation(value = "获取可核销门店列表", tags = {"购物车-小程序"}) - public R<List<VerifiableShopVo>> getVerifiableShop(String longitude, String latitude){ + public R<List<VerifiableShopVo>> getVerifiableShop(String longitude, String latitude, Integer goodsId){ String city = TencentMapUtil.inverseGeographicalAnalysis(longitude, latitude, false); city = city.substring(0, 4) + "00"; - List<Shop> list = shopService.list(new LambdaQueryWrapper<Shop>().eq(Shop::getDelFlag, 0).eq(Shop::getCityCode, city)); + LambdaQueryWrapper<Shop> wrapper = new LambdaQueryWrapper<Shop>().eq(Shop::getDelFlag, 0).eq(Shop::getCityCode, city); + if(null != goodsId){ + Goods goods = goodsService.getById(goodsId); + if(1 == goods.getType() && 1 == goods.getAppointStore()){ + List<Integer> collect = goodsShopService.list(new LambdaQueryWrapper<GoodsShop>().eq(GoodsShop::getGoodsId, goods)).stream().map(GoodsShop::getShopId).collect(Collectors.toList()); + if(collect.size() > 0){ + wrapper.in(Shop::getId, collect); + } + } + } + List<Shop> list = shopService.list(wrapper); List<VerifiableShopVo> verifiableShopVoList = new ArrayList<>(); for (Shop shop : list) { VerifiableShopVo vo = new VerifiableShopVo(); vo.setId(shop.getId()); vo.setName(shop.getName()); + vo.setAddress(shop.getAddress()); + vo.setHomePicture(shop.getHomePicture()); Double wgs84 = GeodesyUtil.getDistance(longitude + "," + latitude, shop.getLongitude() + "," + shop.getLatitude()).get("WGS84"); vo.setDistance(wgs84.longValue()); verifiableShopVoList.add(vo); diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/VipSettingController.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/VipSettingController.java index 73b3308..8811191 100644 --- a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/VipSettingController.java +++ b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/VipSettingController.java @@ -207,6 +207,8 @@ @ApiOperation(value = "设置", tags = {"后台-会员等级设置"}) public R<Void> managelevelset(@RequestBody SetDto setDto) { vipSettingService.updateBatchById(setDto.getVipSettingList()); + //会员降级检测 + appUserClient.demotionDetection(); return R.ok(); } diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/SeckillActivityInfoServiceImpl.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/SeckillActivityInfoServiceImpl.java index eca535e..0387817 100644 --- a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/SeckillActivityInfoServiceImpl.java +++ b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/SeckillActivityInfoServiceImpl.java @@ -65,6 +65,8 @@ Integer goodsId = seckillActivityDetailVO.getGoodsId(); Goods goods = goodsService.getById(goodsId); + seckillActivityDetailVO.setGoodsName(goods.getName()); + seckillActivityDetailVO.setGoodsType(goods.getType()); List<Shop> shops; if(goods.getAppointStore() == 1){ List<Integer> shopIdList = goodsShopMapper.selectList(new LambdaQueryWrapper<GoodsShop>() diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/vo/SeckillActivityVO.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/vo/SeckillActivityVO.java index f9cd82f..5ff9b25 100644 --- a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/vo/SeckillActivityVO.java +++ b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/vo/SeckillActivityVO.java @@ -24,7 +24,7 @@ private String introduction; @ApiModelProperty(value = "商品类型") - private String goodsType; + private Integer goodsType; @ApiModelProperty(value = "商品分类名称") private String goodsCategoryName; -- Gitblit v1.7.1