yujian
2019-11-05 09c716a16d02ddb06df2bc2af5e588128bc7fdb4
fanli/src/main/java/com/yeshi/fanli/service/impl/order/HongBaoV2ServiceImpl.java
@@ -13,6 +13,7 @@
import javax.annotation.Resource;
import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@@ -107,6 +108,7 @@
   @Resource
   private UserExtraTaoBaoInfoService userExtraTaoBaoInfoService;
   @Lazy
   @Resource
   private UserSystemCouponService userSystemCouponService;
@@ -169,6 +171,7 @@
                  hasUpdate = true;
            }
         }
         /**
          * 通知用户的返利情况
          */
@@ -310,7 +313,7 @@
                  MoneyBigDecimalUtil.mul(commonOrder.getEstimate(), fanliRate.divide(new BigDecimal(100))));
            if (mianDan)
               hongBao.setMoney(commonOrder.getPayment());
         } else if (commonOrder.getState() == CommonOrder.STATE_JS) {
         } else if (commonOrder.getState() == CommonOrder.STATE_JS||commonOrder.getState() == CommonOrder.STATE_WQ) {
            hongBao.setState(HongBaoV2.STATE_KELINGQU);
            hongBao.setMoney(
                  MoneyBigDecimalUtil.mul(commonOrder.geteIncome(), fanliRate.divide(new BigDecimal(100))));
@@ -432,6 +435,7 @@
                  firstHongbao.setType(HongBaoV2.TYPE_YIJI);
                  firstHongbao.setVersion(2);
                  firstHongbao.setState(hongBao.getState());
                  firstHongbao.setOrderType(commonOrder.getSourceType());
                  if (hongBao.getState() == HongBaoV2.STATE_KELINGQU) {
                     firstHongbao.setMoney(
@@ -480,6 +484,7 @@
                     secondHongbao.setType(HongBaoV2.TYPE_ERJI);
                     secondHongbao.setVersion(2);
                     secondHongbao.setState(hongBao.getState());
                     secondHongbao.setOrderType(commonOrder.getSourceType());
                     if (hongBao.getState() == HongBaoV2.STATE_KELINGQU) {
                        secondHongbao.setMoney(MoneyBigDecimalUtil.mul(hongBao.getMoney(),
                              secondRate.divide(new BigDecimal(100))));
@@ -538,7 +543,7 @@
            hongBao.setState(HongBaoV2.STATE_BUKELINGQU);
            hongBao.setMoney(
                  MoneyBigDecimalUtil.mul(commonOrder.getEstimate(), fanliRate.divide(new BigDecimal(100))));
         } else if (commonOrder.getState() == CommonOrder.STATE_JS) {
         } else if (commonOrder.getState() == CommonOrder.STATE_JS||commonOrder.getState() == CommonOrder.STATE_WQ) {
            hongBao.setState(HongBaoV2.STATE_KELINGQU);
            hongBao.setMoney(
                  MoneyBigDecimalUtil.mul(commonOrder.geteIncome(), fanliRate.divide(new BigDecimal(100))));
@@ -586,7 +591,7 @@
               }
               // 以实际收入为准计算预估收益
               if (CommonOrder.STATE_JS == commonOrder.getState()) {
               if (CommonOrder.STATE_JS == commonOrder.getState()||CommonOrder.STATE_WQ == commonOrder.getState()) {
                  childUpdate.setMoney(
                        MoneyBigDecimalUtil.mul(hongBao.getMoney(), rate.divide(new BigDecimal(100))));
                  if (commonOrder.getThirdCreateTime().getTime() > TimeUtil.convertToTimeTemp("2019-04-16",
@@ -686,7 +691,7 @@
            hongBao.setState(HongBaoV2.STATE_BUKELINGQU);
            hongBao.setMoney(
                  MoneyBigDecimalUtil.mul(commonOrder.getEstimate(), fanliRate.divide(new BigDecimal(100))));
         } else if (commonOrder.getState() == CommonOrder.STATE_JS) {
         } else if (commonOrder.getState() == CommonOrder.STATE_JS||CommonOrder.STATE_WQ == commonOrder.getState()) {
            hongBao.setState(HongBaoV2.STATE_KELINGQU);
            hongBao.setMoney(
                  MoneyBigDecimalUtil.mul(commonOrder.geteIncome(), fanliRate.divide(new BigDecimal(100))));
@@ -707,6 +712,7 @@
         UserInfo user = userInfoService.getUserById(commonOrder.getUserInfo().getId());
         hongBao.setUrank(user.getRank());
         hongBao.setOrderType(commonOrder.getSourceType());
         hongBaoV2Mapper.insertSelective(hongBao);
         // 添加红包与订单的映射
         HongBaoOrder hongBaoOrder = new HongBaoOrder();
@@ -748,6 +754,7 @@
            firstHongbao.setType(HongBaoV2.TYPE_YIJI);
            firstHongbao.setVersion(2);
            firstHongbao.setState(hongBao.getState());
            firstHongbao.setOrderType(commonOrder.getSourceType());
            if (hongBao.getState() == HongBaoV2.STATE_KELINGQU) {
               firstHongbao.setMoney(
@@ -800,6 +807,7 @@
               secondHongbao.setType(HongBaoV2.TYPE_ERJI);
               secondHongbao.setVersion(2);
               secondHongbao.setState(hongBao.getState());
               secondHongbao.setOrderType(commonOrder.getSourceType());
               if (hongBao.getState() == HongBaoV2.STATE_KELINGQU) {
                  secondHongbao.setMoney(
                        MoneyBigDecimalUtil.mul(hongBao.getMoney(), secondRate.divide(new BigDecimal(100))));
@@ -890,7 +898,7 @@
            hongBao.setState(HongBaoV2.STATE_BUKELINGQU);
            hongBao.setMoney(
                  MoneyBigDecimalUtil.mul(commonOrder.getEstimate(), shareRate.divide(new BigDecimal(100))));
         } else if (commonOrder.getState() == CommonOrder.STATE_JS) {
         } else if (commonOrder.getState() == CommonOrder.STATE_JS||commonOrder.getState() == CommonOrder.STATE_WQ) {
            hongBao.setState(HongBaoV2.STATE_KELINGQU);
            hongBao.setMoney(
                  MoneyBigDecimalUtil.mul(commonOrder.geteIncome(), shareRate.divide(new BigDecimal(100))));
@@ -903,6 +911,7 @@
         UserInfo user = userInfoService.getUserById(commonOrder.getUserInfo().getId());
         hongBao.setUrank(user.getRank());
         hongBao.setUserInfo(user);
         hongBao.setOrderType(commonOrder.getSourceType());
         hongBaoV2Mapper.insertSelective(hongBao);
         // 插入红包与订单映射
         HongBaoOrder hongBaoOrder = new HongBaoOrder();
@@ -941,7 +950,7 @@
                  child.setState(HongBaoV2.STATE_BUKELINGQU);
                  child.setMoney(MoneyBigDecimalUtil.mul(commonOrder.getEstimate(),
                        firstLevelRate.divide(new BigDecimal(100))));
               } else if (commonOrder.getState() == CommonOrder.STATE_JS) {
               } else if (commonOrder.getState() == CommonOrder.STATE_JS||commonOrder.getState() == CommonOrder.STATE_WQ) {
                  child.setState(HongBaoV2.STATE_KELINGQU);
                  child.setMoney(MoneyBigDecimalUtil.mul(commonOrder.geteIncome(),
                        firstLevelRate.divide(new BigDecimal(100))));
@@ -956,6 +965,7 @@
               child.setUrank(boss.getRank());
               child.setVersion(2);
               child.setCreateTime(new Date());
               child.setOrderType(commonOrder.getSourceType());
               if (child.getMoney().compareTo(new BigDecimal(0)) > 0) {
                  hongBaoV2Mapper.insertSelective(child);
                  // 添加通知
@@ -1080,6 +1090,13 @@
   }
   @Override
   public List<HongBaoV2> listChildrenByIds(List<Long> idList) {
      if (idList == null || idList.size() == 0)
         return null;
      return hongBaoV2Mapper.listChildrenByIds(idList);
   }
   @Override
   public List<Long> getUidByNear30DayShareSucceed() {
      return hongBaoV2Mapper.getUidByNear30DayShareSucceed();
   }
@@ -1128,4 +1145,10 @@
         return hongBaoV2List.get(0);
      return null;
   }
   @Override
   public List<HongBaoV2> listByIds(List<Long> idList) {
      return hongBaoV2Mapper.listByIds(idList);
   }
}