yujian
2020-06-29 880238957a973ecd9676237672276b0e99d31115
fanli/src/main/java/com/yeshi/fanli/service/impl/redpack/RedPackWinInviteServiceImpl.java
@@ -19,8 +19,10 @@
import com.yeshi.fanli.entity.bus.user.UserActiveLog;
import com.yeshi.fanli.entity.bus.user.UserExtraTaoBaoInfo;
import com.yeshi.fanli.entity.bus.user.UserInfo;
import com.yeshi.fanli.entity.bus.user.UserInfoRegister;
import com.yeshi.fanli.entity.bus.user.UserSystemCoupon;
import com.yeshi.fanli.entity.order.CommonOrder;
import com.yeshi.fanli.entity.redpack.RedPackDetail;
import com.yeshi.fanli.entity.redpack.RedPackWinInvite;
import com.yeshi.fanli.entity.redpack.RedPackWinInvite.RedPackWinInviteTypeEnum;
import com.yeshi.fanli.entity.system.SystemCoupon.CouponTypeEnum;
@@ -33,6 +35,7 @@
import com.yeshi.fanli.service.inter.redpack.RedPackConfigService;
import com.yeshi.fanli.service.inter.redpack.RedPackWinInviteService;
import com.yeshi.fanli.service.inter.user.UserActiveLogService;
import com.yeshi.fanli.service.inter.user.UserInfoRegisterService;
import com.yeshi.fanli.service.inter.user.UserInfoService;
import com.yeshi.fanli.service.inter.user.UserSystemCouponService;
import com.yeshi.fanli.service.inter.user.integral.IntegralTaskRecordService;
@@ -71,6 +74,9 @@
   @Resource
   private UserInfoService userInfoService;
   @Resource
   private UserInfoRegisterService userInfoRegisterService;
   @Resource
   private UserExtraTaoBaoInfoService userExtraTaoBaoInfoService;
@@ -466,6 +472,14 @@
         return;
      }
      
      // 注册时间
      UserInfoRegister register = userInfoRegisterService.selectByPrimaryKey(orderUid);
      if (register == null)
         return;
      // 注册48小时 + 以内
      long registerTime = register.getCreateTime().getTime();
      // 是否存在上下级关系
      ThreeSale threeSale = threeSaleSerivce.getByWorkerId(orderUid);
      if (threeSale == null)
@@ -501,6 +515,13 @@
       boolean satisfy = false;
      // 遍历是否存在符合相应商品
      for (CommonOrder commonOrder: list) {
         // 邀请关系之后
         long downTime = commonOrder.getThirdCreateTime().getTime();
         if (downTime < threeSale.getCreateTime())
            continue;
         // 48小时限制
         if (downTime < registerTime || downTime > registerTime + 1000*60*60*48)
            continue;
         // 付款金额限制
         BigDecimal payment = commonOrder.getPayment();
         if (payment == null || payment.compareTo(limitPayMent) < 0) 
@@ -569,11 +590,13 @@
      return count;
   }
   
//   @Override
//   public void arriveMoney(Long uid, ) {
//      // 4、增加红包
//      redPackBalanceService.addRedPack(bossId, money, RedPackDetailFactory.createSeriesReward(winInvite));
//   }
   @Override
   @Transactional(rollbackFor = Exception.class)
   public void arriveMoney(Long uid, BigDecimal money, Date date) throws Exception {
      RedPackDetail detail = RedPackDetailFactory.createByMonth(uid, money, date);
      redPackBalanceService.addRedPack(uid, money, detail);
   }