admin
2020-04-16 0d87595952482b6ec5209a48e4969f953457c6a5
fanli/src/main/java/com/yeshi/fanli/controller/client/v2/UserOrderControllerV2.java
@@ -581,6 +581,15 @@
         userLevel = UserLevelEnum.daRen;
      UserLevelEnum upperLevel =  UserLevelEnum.superVIP;
         
      CommonOrder commonOrder1 = hoList.get(0).getCommonOrder();
      Date downTime = commonOrder1.getThirdCreateTime();
      Integer urank = commonOrder1.getUrank();
      UserLevelEnum buyerUserLevel = UserLevelUtil.getByOrderRank(urank);
      boolean direct = false;
      if (hongBaoV2.getType() == HongBaoV2.TYPE_YIJI || hongBaoV2.getType() == HongBaoV2.TYPE_SHARE_YIJI) {
         direct = true;
      }
      BigDecimal upperTotalMoney = new BigDecimal(0);
      List<GoodsRebateVO> voList = new ArrayList<>();
      for (HongBaoOrder hongBaoOrder : hoList) {
@@ -626,11 +635,11 @@
            upperTotalMoney = upperTotalMoney.add(orderHongBaoMoneyComputeService.computeFanliMoney(commonOrder, upperLevel));
         } else if (type == 2) {
            upperTotalMoney = upperTotalMoney.add(orderHongBaoMoneyComputeService.computeShareMoney(commonOrder, upperLevel));
         } else if (type == 3) {
            upperTotalMoney = upperTotalMoney.add(hongBao);
         }
      }
         
      CommonOrder commonOrder = hoList.get(0).getCommonOrder();
      Date downTime = commonOrder.getThirdCreateTime();
      
      // 团队补贴
      if (type == 3) {
@@ -639,13 +648,7 @@
         InviteOrderSubsidy inviteOrderSubsidy = inviteOrderSubsidyServiceV2.getByOrderNoAndType(uid, orderNo, sourceType);
         if (inviteOrderSubsidy != null) {
            teamSubsidy = inviteOrderSubsidy.getMoney();
            Integer urank = commonOrder.getUrank();
            UserLevelEnum buyerUserLevel = UserLevelUtil.getByOrderRank(urank);
            boolean direct = false;
            if (hongBaoV2.getType() == HongBaoV2.TYPE_YIJI || hongBaoV2.getType() == HongBaoV2.TYPE_SHARE_YIJI) {
               direct = true;
            }
            // 计算原比例
            BigDecimal originRate = orderHongBaoMoneyComputeService.getTeamSubsidyRate(downTime,buyerUserLevel, userLevel, direct);
            
            // 计算达人补贴
@@ -655,12 +658,13 @@
               lowerSubsidy = MoneyBigDecimalUtil.div(teamSubsidy.multiply(daRenRate), originRate);
            }
            
            // 计算超级会员补贴
            if (userLevel != UserLevelEnum.superVIP && userLevel != UserLevelEnum.tearcher) {
               BigDecimal vipRate = orderHongBaoMoneyComputeService.getTeamSubsidyRate(downTime,   buyerUserLevel, 
                     UserLevelEnum.superVIP, direct);
               upperTotalMoney = upperTotalMoney.add(MoneyBigDecimalUtil.div(teamSubsidy.multiply(vipRate), originRate));
               System.out.println(upperTotalMoney);
            }
         } else {
            teamSubsidy = BigDecimal.valueOf(0.00);
            lowerSubsidy =  BigDecimal.valueOf(0.00);
@@ -687,7 +691,7 @@
         orderRebateVO.setUserLevel(userLevel.name());
      }
      
      // 上级返利
      // 超级会员返利
      if (upperLevel != null) {
         orderRebateVO.setUpperFanLi("¥" + upperTotalMoney);
         orderRebateVO.setJumpLink(upperLevel.getDetailLink());