admin
2020-03-20 c3a5e164cbabbfc5f66e1356cb0de657ce3f58b9
fanli/src/main/java/com/yeshi/fanli/service/impl/order/InviteOrderSubsidyServiceImplV2.java
@@ -136,6 +136,8 @@
         throw new CommonOrderException(1, "订单不存在");
      }
      Date orderTime = commonOrderList.get(0).getThirdCreateTime();
      Long sourceUid = commonOrderList.get(0).getUserInfo().getId();
      List<ThreeSale> bossList = threeSaleSerivce.getMyBossDeepList(sourceUid, 4);
@@ -147,7 +149,8 @@
      for (int i = 2; i < bossList.size(); i++) {
         rewardUid.add(bossList.get(i).getBoss().getId());
      }
      // 删除本补贴用户的下级
      // 删除补贴用户的下级用户
      for (int i = 0; i < bossList.size(); i++) {
         if (bossList.get(i).getBoss().getId().longValue() == subsidy.getUid()) {
            break;
@@ -157,30 +160,36 @@
         }
      }
      // 获取补贴用户的直接上级
      if (bossList.size() > 1 && bossList.get(1).getSucceedTime() < subsidy.getCreateTime().getTime()) {
         UserInfo boss = bossList.get(1).getBoss();
         UserLevelEnum userLevel = userLevelManager.getUserLevel(boss.getId());
         BigDecimal rewardMoney = orderHongBaoMoneyComputeService.computeFirstTeamReward(subsidy.getMoney(),
               subsidy.getCreateTime(), userLevel);
      for (int i = 1; i < bossList.size(); i++) {
         if (rewardUid.contains(bossList.get(i).getBoss().getId())) {
            UserInfo boss = bossList.get(i).getBoss();
            if (i == 1) {
               if (bossList.get(i).getSucceedTime() < subsidy.getCreateTime().getTime()) {
                  UserLevelEnum userLevel = userLevelManager.getUserLevel(boss.getId(), orderTime);
                  BigDecimal rewardMoney = orderHongBaoMoneyComputeService
                        .computeFirstTeamReward(subsidy.getMoney(), subsidy.getCreateTime(), userLevel);
         if (rewardMoney != null) {
            // 添加奖励
            orderTeamRewardService.addOrUpdate(subsidy, rewardMoney, boss.getId(), OrderTeamReward.LEVEL_ONE);
         }
                  if (rewardMoney != null) {
                     // 添加奖励
                     orderTeamRewardService.addOrUpdate(subsidy, rewardMoney, boss.getId(),
                           OrderTeamReward.LEVEL_ONE);
                  }
               }
            } else if (i == 2) {
               if (bossList.get(i).getSucceedTime() < subsidy.getCreateTime().getTime()) {
                  UserLevelEnum userLevel = userLevelManager.getUserLevel(boss.getId(), orderTime);
                  BigDecimal rewardMoney = orderHongBaoMoneyComputeService
                        .computeSecondTeamReward(subsidy.getMoney(), subsidy.getCreateTime(), userLevel);
         // 获取补贴的间接上级
         if (bossList.size() > 2 && bossList.get(2).getSucceedTime() < subsidy.getCreateTime().getTime()) {
            boss = bossList.get(2).getBoss();
            userLevel = userLevelManager.getUserLevel(boss.getId());
            rewardMoney = orderHongBaoMoneyComputeService.computeSecondTeamReward(subsidy.getMoney(),
                  subsidy.getCreateTime(), userLevel);
            if (rewardMoney != null) {
               // 添加奖励
               orderTeamRewardService.addOrUpdate(subsidy, rewardMoney, boss.getId(), OrderTeamReward.LEVEL_TWO);
                  if (rewardMoney != null) {
                     // 添加奖励
                     orderTeamRewardService.addOrUpdate(subsidy, rewardMoney, boss.getId(),
                           OrderTeamReward.LEVEL_TWO);
                  }
               }
            }
         }
         }
      }
   }
@@ -249,7 +258,7 @@
               // 计算奖励金
               for (Iterator<Long> its = uidHongBaoMap.keySet().iterator(); its.hasNext();) {
                  Long uid = its.next();
                  UserLevelEnum userLevel = userLevelManager.getUserLevel(uid);
                  UserLevelEnum userLevel = userLevelManager.getUserLevel(uid, placeOrderTime);
                  int type = uidHongBaoMap.get(uid);
                  if (type == HongBaoV2.TYPE_YIJI || type == HongBaoV2.TYPE_ERJI) {