admin
2020-03-19 0d91bad397c1a1b41bc77d9cd9f7555ed78f7f1a
fanli/src/main/java/com/yeshi/fanli/service/impl/user/vip/UserVIPInfoServiceImpl.java
@@ -18,12 +18,14 @@
import com.yeshi.fanli.dao.mybatis.user.vip.UserVIPInfoMapper;
import com.yeshi.fanli.dto.msg.MsgOtherVIPDTO;
import com.yeshi.fanli.entity.bus.user.HongBaoV2;
import com.yeshi.fanli.entity.bus.user.ThreeSale;
import com.yeshi.fanli.entity.bus.user.UserInfo;
import com.yeshi.fanli.entity.bus.user.UserInfoExtra;
import com.yeshi.fanli.entity.bus.user.UserInviteSeparate;
import com.yeshi.fanli.entity.bus.user.UserSystemCoupon;
import com.yeshi.fanli.entity.bus.user.vip.UserVIPInfo;
import com.yeshi.fanli.entity.bus.user.vip.UserVIPPreInfo;
import com.yeshi.fanli.entity.integral.IntegralDetail;
import com.yeshi.fanli.entity.shop.BanLiShopOrder;
import com.yeshi.fanli.entity.system.ConfigKeyEnum;
@@ -40,6 +42,7 @@
import com.yeshi.fanli.service.inter.user.integral.IntegralDetailService;
import com.yeshi.fanli.service.inter.user.invite.ThreeSaleSerivce;
import com.yeshi.fanli.service.inter.user.vip.UserVIPInfoService;
import com.yeshi.fanli.service.inter.user.vip.UserVIPPreInfoService;
import com.yeshi.fanli.service.inter.user.vip.UserVipConfigService;
import com.yeshi.fanli.util.Constant;
import com.yeshi.fanli.util.TimeUtil;
@@ -84,6 +87,9 @@
   @Lazy
   @Resource
   private UserSystemCouponService userSystemCouponService;
   @Resource
   private UserVIPPreInfoService userVIPPreInfoService;
   @Override
   @Transactional(rollbackFor = Exception.class)
@@ -434,4 +440,30 @@
      }
   }
   /**
    * 验证是否符合VIP
    * @param uid
    * @return
    */
   private boolean verifyVip(Long uid) {
      // 邀请订单
      long countZiGou = hongBaoV2CountService.counOrderByUidAndOrderType(uid, Constant.VIP_ORDER_PAY,
            HongBaoV2.TYPE_ZIGOU);
      // 邀请订单
      long countShare = hongBaoV2CountService.counOrderByUidAndOrderType(uid, Constant.VIP_ORDER_PAY,
            HongBaoV2.TYPE_SHARE_GOODS);
      // 队员
      long firstTeam = threeSaleSerivce.countFirstTeam(uid, 1);
      long secondTeam = threeSaleSerivce.countSecondTeam(uid, 1);
      if (countZiGou >= Constant.VIP_PROCESS_3_ZIGOU || countShare >= Constant.VIP_PROCESS_3_SHARE
            || (firstTeam >= Constant.VIP_PROCESS_3_TEAM && secondTeam >= Constant.VIP_PROCESS_3_TEAM_SECOND)) {
         UserVIPPreInfo latestProcess = userVIPPreInfoService.getLatestProcessInfo(uid);
         if (latestProcess == null || latestProcess.getProcess() != UserVIPPreInfo.PROCESS_2) {
            userVIPPreInfoService.verifyVipPreInfo(uid, false);
         }
         return true;
      }
      return false;
   }
}