yujian
2019-01-22 88b54772dbcf5ecab1e2316e4e4626ac901b8908
fanli/src/main/java/com/yeshi/fanli/service/impl/hongbao/ThreeSaleSerivceImpl.java
@@ -32,6 +32,7 @@
import com.yeshi.fanli.service.inter.config.InviteGetMoneyService;
import com.yeshi.fanli.service.inter.hongbao.HongBaoManageService;
import com.yeshi.fanli.service.inter.hongbao.ThreeSaleSerivce;
import com.yeshi.fanli.service.inter.msg.UserInviteMsgNotificationService;
import com.yeshi.fanli.service.inter.user.UserInfoService;
import com.yeshi.fanli.util.Constant;
import com.yeshi.fanli.util.StringUtil;
@@ -56,6 +57,9 @@
   @Resource
   private ThreeSaleMapper threeSaleMapper;
   @Resource
   private UserInviteMsgNotificationService userInviteMsgNotificationService;
   public UserInfo getBoss(final long uid) {
      return (UserInfo) dao.excute(new HibernateCallback<UserInfo>() {
@@ -108,6 +112,11 @@
         threeSale.setUpdateTime(java.lang.System.currentTimeMillis());
         threeSale.setWorker(inviteeUser);
         threeSaleMapper.insertSelective(threeSale);
         //创建通知
         userInviteMsgNotificationService.inviteScan(inviter.getId(), threeSale);
      } else {// 是已经存在的用户
         // 用户已经存在我们的用户库中
@@ -133,7 +142,7 @@
                  threeSale.setUpdateTime(java.lang.System.currentTimeMillis());
                  threeSale.setWorker(invitee);
                  threeSaleMapper.insertSelective(threeSale);
                  userInviteMsgNotificationService.inviteScan(inviter.getId(), threeSale);
                  // threeSaleSerivce.bind(invitee, inviter);
               } else {
@@ -156,9 +165,12 @@
         ThreeSale threeSale = list.get(0);
         UserInfo inviter = threeSale.getBoss();
         threeSale.setState(true);
         threeSale.setSucceedTime(System.currentTimeMillis());
         dao.update(threeSale);
         if (inviter != null)
            reComputeUserRank(inviter.getId());
         //通知
         userInviteMsgNotificationService.inviteSuccess(inviter.getId(), threeSale);
         // }
         // });
      }
@@ -576,5 +588,44 @@
   public List<ThreeSale> listByWorkerId(Long workerId) {
      return threeSaleMapper.listByWorkerId(workerId);
   }
   @Override
   public int getSuccessRelationshipNum(Long uid) {
      return threeSaleMapper.getSuccessRelationshipNum(uid);
   }
   @Override
   @Transactional
   public void bindRelationshipByInviteCode(UserInfo invitee, UserInfo inviter) throws ThreeSaleException {
      if (invitee == null || inviter == null)
         throw new ThreeSaleException(1, "用户信息为空");
      // 获取有效的邀请关系
      ThreeSale threeSale =
            threeSaleMapper.getRelationshipByBossIdAndWorkerId(inviter.getId(), invitee.getId());
      if (threeSale != null) {
         // 有效关系--生效
         threeSale.setState(true);
         threeSale.setExpire(ThreeSale.EXPIRE_NORMAL);
         threeSale.setSucceedTime(java.lang.System.currentTimeMillis());
         threeSale.setUpdateTime(java.lang.System.currentTimeMillis());
         threeSaleMapper.updateByPrimaryKeySelective(threeSale);
      } else {
         // 新建立确定关系
         threeSale = new ThreeSale();
         threeSale.setBoss(inviter);
         threeSale.setWorker(invitee);
         threeSale.setState(true);
         threeSale.setExpire(ThreeSale.EXPIRE_NORMAL);
         threeSale.setSucceedTime(java.lang.System.currentTimeMillis());
         threeSale.setCreateTime(java.lang.System.currentTimeMillis());
         threeSale.setUpdateTime(java.lang.System.currentTimeMillis());
         threeSaleMapper.insertSelective(threeSale);
      }
   }
}