From 56d62d9edb0dda9ae678dcea2323144db5d11c22 Mon Sep 17 00:00:00 2001 From: puzhibing <393733352@qq.com> Date: 星期六, 28 十二月 2024 18:06:58 +0800 Subject: [PATCH] 修改bug --- ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/CommissionServiceImpl.java | 87 ++++++++++++++++++++++++++++++++++++------- 1 files changed, 73 insertions(+), 14 deletions(-) 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 d55f36b..f63d39d 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 @@ -11,16 +11,10 @@ import com.ruoyi.order.service.CommissionService; import com.ruoyi.order.service.OrderGoodService; import com.ruoyi.order.service.OrderService; -import com.ruoyi.other.api.domain.Shop; -import com.ruoyi.other.api.domain.ShopBalanceStatement; -import com.ruoyi.other.api.domain.ShopPoint; -import com.ruoyi.other.api.domain.Technician; -import com.ruoyi.other.api.feignClient.ShopBalanceStatementClient; -import com.ruoyi.other.api.feignClient.ShopClient; +import com.ruoyi.other.api.domain.*; +import com.ruoyi.other.api.feignClient.*; import com.ruoyi.order.model.Order; import com.ruoyi.order.model.OrderGood; -import com.ruoyi.other.api.feignClient.ShopPointClient; -import com.ruoyi.other.api.feignClient.TechnicianClient; import org.springframework.data.redis.core.RedisTemplate; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -54,6 +48,8 @@ private ShopPointClient shopPointClient; @Resource private TechnicianClient technicianClient; + @Resource + private PointSettingClient pointSettingClient; @@ -106,11 +102,20 @@ //直推上级 if("1".equals(s)){ ztsj_price = ztsj_price.add(superiorSubcommission); - ztsj_point += superiorRebatePoints; } //直帮上级 if("2".equals(s)){ zbsj_price = zbsj_price.add(superiorSubcommission); + } + } + split = orderGood.getSuperiorType().split(","); + for (String s : split) { + //直推上级 + if("1".equals(s)){ + ztsj_point += superiorRebatePoints; + } + //直帮上级 + if("2".equals(s)){ zbsj_point += superiorRebatePoints; } } @@ -143,8 +148,15 @@ inviteUser.setWithdrawableAmount(inviteUser.getWithdrawableAmount().add(ztsj_price).setScale(2, BigDecimal.ROUND_HALF_EVEN)); } if(ztsj_point > 0){ + PointSetting pointSetting = pointSettingClient.getPointSetting(appUser.getVipId()).getData(); + int earnPoint1 = ztsj_point; + //计算可用积分比例 + if(null != pointSetting && 1 == pointSetting.getSharePointOpen()){ + earnPoint1 = new BigDecimal(earnPoint1).multiply(pointSetting.getSharePoint().divide(new BigDecimal(100))).intValue(); + } inviteUser.setSharePoint(inviteUser.getSharePoint() + ztsj_point); inviteUser.setLavePoint(inviteUser.getLavePoint() + ztsj_point); + inviteUser.setAvailablePoint(inviteUser.getAvailablePoint() + earnPoint1); inviteUser.setTotalPoint(inviteUser.getTotalPoint() + ztsj_point); } appUserClient.editAppUserById(inviteUser); @@ -173,6 +185,8 @@ userPoint.setObjectId(order.getId()); userPoint.setExtention(order.getOrderNumber()); userPointClient.saveUserPoint(userPoint); + //变更等级 + appUserClient.vipUpgrade(inviteUser.getId()); } } //直帮上级 @@ -186,8 +200,15 @@ superiorLeader.setWithdrawableAmount(superiorLeader.getWithdrawableAmount().add(zbsj_price).setScale(2, BigDecimal.ROUND_HALF_EVEN)); } if(zbsj_point > 0){ + PointSetting pointSetting = pointSettingClient.getPointSetting(appUser.getVipId()).getData(); + int earnPoint1 = zbsj_point; + //计算可用积分比例 + if(null != pointSetting && 1 == pointSetting.getSharePointOpen()){ + earnPoint1 = new BigDecimal(earnPoint1).multiply(pointSetting.getSharePoint().divide(new BigDecimal(100))).intValue(); + } superiorLeader.setSharePoint(superiorLeader.getSharePoint() + zbsj_point); superiorLeader.setLavePoint(superiorLeader.getLavePoint() + zbsj_point); + superiorLeader.setAvailablePoint(superiorLeader.getAvailablePoint() + earnPoint1); superiorLeader.setTotalPoint(superiorLeader.getTotalPoint() + zbsj_point); } appUserClient.editAppUserById(superiorLeader); @@ -216,6 +237,8 @@ userPoint.setObjectId(order.getId()); userPoint.setExtention(order.getOrderNumber()); userPointClient.saveUserPoint(userPoint); + //变更等级 + appUserClient.vipUpgrade(superiorLeader.getId()); } } @@ -239,9 +262,16 @@ shop.setBalance(shop.getBalance().add(hxmd_price).setScale(2, BigDecimal.ROUND_HALF_EVEN)); } if(hxmd_point > 0){ + PointSetting pointSetting = pointSettingClient.getPointSetting(appUser.getVipId()).getData(); + int earnPoint1 = hxmd_point; + //计算可用积分比例 + if(null != pointSetting && 1 == pointSetting.getShopPointOpen()){ + earnPoint1 = new BigDecimal(earnPoint1).multiply(pointSetting.getShopPoint().divide(new BigDecimal(100))).intValue(); + } shopAppUser.setLavePoint(shopAppUser.getLavePoint() + hxmd_point); + shopAppUser.setAvailablePoint(shopAppUser.getAvailablePoint() + earnPoint1); shopAppUser.setTotalPoint(shopAppUser.getTotalPoint() + hxmd_point); - shopAppUser.setShopSharePoint(shopAppUser.getShopSharePoint() + bdmdsj_point); + shopAppUser.setShopAchievementPoint(shopAppUser.getShopAchievementPoint() + hxmd_point); //门店返佣 shop.setShopAllPoint(shop.getShopAllPoint() + hxmd_point); shop.setServerPoint(shop.getServerPoint() + hxmd_point); @@ -288,6 +318,8 @@ userPoint.setObjectId(order.getId()); userPoint.setExtention(order.getOrderNumber()); userPointClient.saveUserPoint(userPoint); + //变更等级 + appUserClient.vipUpgrade(shopAppUser.getId()); } if(!shop.getLavePoint().equals(shopLavePoint)){ @@ -312,7 +344,14 @@ AppUser technicianAppUser = appUserClient.getAppUserById(technician.getAppUserId()); Integer lavePoint = technicianAppUser.getLavePoint(); if(js_point > 0){ + PointSetting pointSetting = pointSettingClient.getPointSetting(appUser.getVipId()).getData(); + int earnPoint1 = js_point; + //计算可用积分比例 + if(null != pointSetting && 1 == pointSetting.getPersonPointOpen()){ + earnPoint1 = new BigDecimal(earnPoint1).multiply(pointSetting.getPersonPoint().divide(new BigDecimal(100))).intValue(); + } technicianAppUser.setLavePoint(technicianAppUser.getLavePoint() + js_point); + technicianAppUser.setAvailablePoint(technicianAppUser.getAvailablePoint() + earnPoint1); technicianAppUser.setTotalPoint(technicianAppUser.getTotalPoint() + js_point); technicianAppUser.setTotalPerformancePoint(technicianAppUser.getTotalPerformancePoint() + js_point); } @@ -329,6 +368,8 @@ userPoint.setObjectId(order.getId()); userPoint.setExtention(order.getOrderNumber()); userPointClient.saveUserPoint(userPoint); + //变更等级 + appUserClient.vipUpgrade(technicianAppUser.getId()); } } } @@ -354,9 +395,16 @@ shop1.setBalance(shop1.getBalance().add(bdmd_price).setScale(2, BigDecimal.ROUND_HALF_EVEN)); } if(bdmd_point > 0){ + PointSetting pointSetting = pointSettingClient.getPointSetting(appUser.getVipId()).getData(); + int earnPoint1 = bdmd_point; + //计算可用积分比例 + if(null != pointSetting && 1 == pointSetting.getShopSharePointOpen()){ + earnPoint1 = new BigDecimal(earnPoint1).multiply(pointSetting.getShopSharePoint().divide(new BigDecimal(100))).intValue(); + } bdShopAppUser.setLavePoint(bdShopAppUser.getLavePoint() + bdmd_point); + bdShopAppUser.setAvailablePoint(bdShopAppUser.getAvailablePoint() + earnPoint1); bdShopAppUser.setTotalPoint(bdShopAppUser.getTotalPoint() + bdmd_point); - bdShopAppUser.setShopSharePoint(bdShopAppUser.getShopSharePoint() + bdmdsj_point); + bdShopAppUser.setShopSharePoint(bdShopAppUser.getShopSharePoint() + bdmd_point); //门店返佣 shop1.setShopAllPoint(shop1.getShopAllPoint() + bdmd_point); shop1.setSharePoint(shop1.getSharePoint() + bdmd_point); @@ -403,6 +451,8 @@ userPoint.setObjectId(order.getId()); userPoint.setExtention(order.getOrderNumber()); userPointClient.saveUserPoint(userPoint); + //变更等级 + appUserClient.vipUpgrade(bdShopAppUser.getId()); } if(!shop1.getLavePoint().equals(shopLavePoint)){ @@ -422,7 +472,7 @@ } //上级门店分佣 - Integer pid = shopClient.getShopById(order.getShopId()).getData().getPid(); + Integer pid = shop1.getPid(); Shop shop2 = shopClient.getShopById(pid).getData(); if(null != shop2){ AppUser sjShopAppUser = appUserClient.getAppUserById(shop2.getAppUserId()); @@ -442,12 +492,19 @@ shop2.setBalance(shop2.getBalance().add(bdmdsj_price).setScale(2, BigDecimal.ROUND_HALF_EVEN)); } if(bdmdsj_point > 0){ + PointSetting pointSetting = pointSettingClient.getPointSetting(appUser.getVipId()).getData(); + int earnPoint1 = bdmdsj_point; + //计算可用积分比例 + if(null != pointSetting && 1 == pointSetting.getShopSharePointOpen()){ + earnPoint1 = new BigDecimal(earnPoint1).multiply(pointSetting.getShopSharePoint().divide(new BigDecimal(100))).intValue(); + } sjShopAppUser.setLavePoint(sjShopAppUser.getLavePoint() + bdmdsj_point); + sjShopAppUser.setAvailablePoint(sjShopAppUser.getAvailablePoint() + earnPoint1); sjShopAppUser.setTotalPoint(sjShopAppUser.getTotalPoint() + bdmdsj_point); - sjShopAppUser.setShopSharePoint(sjShopAppUser.getShopSharePoint() + bdmdsj_point); + sjShopAppUser.setLowerLevelSharePoint(sjShopAppUser.getLowerLevelSharePoint() + bdmdsj_point); //门店返佣 shop2.setShopAllPoint(shop2.getShopAllPoint() + bdmdsj_point); - shop2.setSharePoint(shop2.getSharePoint() + bdmdsj_point); + shop2.setLowerLevelSharePoint(shop2.getLowerLevelSharePoint() + bdmdsj_point); shop2.setLavePoint(shop2.getLavePoint() + bdmdsj_point); } appUserClient.editAppUserById(sjShopAppUser); @@ -491,6 +548,8 @@ userPoint.setObjectId(order.getId()); userPoint.setExtention(order.getOrderNumber()); userPointClient.saveUserPoint(userPoint); + //变更等级 + appUserClient.vipUpgrade(sjShopAppUser.getId()); } if(!shop2.getLavePoint().equals(shopLavePoint)){ -- Gitblit v1.7.1