yujian
2019-09-12 0622fc9c8a464a1260ebca4071a2cad9c83a5a9a
fanli/src/main/java/com/yeshi/fanli/service/impl/user/TokenRecordServiceImpl.java
@@ -13,6 +13,7 @@
import org.springframework.stereotype.Service;
import com.yeshi.fanli.dao.mybatis.user.TokenRecordMapper;
import com.yeshi.fanli.dto.msg.MsgInviteContentDTO;
import com.yeshi.fanli.dto.msg.MsgOtherGiveContentDTO;
import com.yeshi.fanli.entity.bus.tlj.UserTaoLiJinGiveRecord;
import com.yeshi.fanli.entity.bus.user.TokenRecord;
@@ -31,6 +32,7 @@
import com.yeshi.fanli.service.inter.config.SystemCouponService;
import com.yeshi.fanli.service.inter.hongbao.ThreeSaleSerivce;
import com.yeshi.fanli.service.inter.integral.IntegralGetService;
import com.yeshi.fanli.service.inter.msg.UserInviteMsgNotificationService;
import com.yeshi.fanli.service.inter.msg.UserOtherMsgNotificationService;
import com.yeshi.fanli.service.inter.tlj.UserTaoLiJinGiveRecordService;
import com.yeshi.fanli.service.inter.tlj.UserTaoLiJinOriginService;
@@ -88,6 +90,9 @@
   
   @Resource
   private SystemCouponService systemCouponService;
   @Resource
   private UserInviteMsgNotificationService userInviteMsgNotificationService;
   
   @Override
@@ -216,20 +221,22 @@
         }
      } else if (tokenType == TokenTypeEnum.taoLiJin) {
         type = 12;
         UserTaoLiJinGiveRecord giveRecord = userTaoLiJinGiveRecordService
               .selectByPrimaryKey(Long.parseLong(identify));
         if (giveRecord == null || giveRecord.getState() == UserTaoLiJinGiveRecord.STATE_OVERDUE) {
         UserTaoLiJinGiveRecord giveRecord = userTaoLiJinGiveRecordService.selectByPrimaryKey(Long.parseLong(identify));
         if (giveRecord == null)
            throw new TokenRecordException(1, "口令已失效");
         BigDecimal amount = giveRecord.getAmount();
         num = Integer.parseInt(amount.setScale(0).toString());
         if(giveRecord.getState() == UserTaoLiJinGiveRecord.STATE_OVERDUE) {
            tips.add("哎呀,推广红包已失效了!");
         } else if (giveRecord.getState() == UserTaoLiJinGiveRecord.STATE_RECEIVE) {
            tips.add("哎呀,推广红包已被领取了!");
         } else if (giveRecord.getState() == UserTaoLiJinGiveRecord.STATE_INIT) {
            if (uid == null || uid <= 0)
               throw new TokenRecordException(1001, "温馨提示,[推广红包]需要登录后领取");
            state = true;
            BigDecimal amount = giveRecord.getAmount();
            num = Integer.parseInt(amount.setScale(0).toString());
            UserInfoExtra userInfoExtra = userInfoExtraService.getUserInfoExtra(uid);
            if (userInfoExtra == null || StringUtil.isNullOrEmpty(userInfoExtra.getInviteCode())) {
               tips.add("确认领取后,你将成为赠送者的一级队员;");
@@ -258,7 +265,7 @@
      }
      if (StringUtil.isNullOrEmpty(nickName))
         nickName = Constant.systemCommonConfig.getDefaultNickName();
         nickName = Constant.systemCommonConfig.getDefaultNickName() + inviteId;
      if (StringUtil.isNullOrEmpty(portrait))
         portrait = Constant.systemCommonConfig.getDefaultPortrait();
@@ -397,6 +404,10 @@
               msgOther.setGiveTime(sd.format(giveRecord.getGiveTime()));
               msgOther.setReceiveTime(sd.format(new Date()));
               userOtherMsgNotificationService.tokenGiveMsg(giveUid, beiZhu, msgOther);
               // 激活邀请信息
               if (addTeam)
                   addInviteMsg(uid, giveUid, "免单券");
            }
         });
      } else if (tokenType == TokenTypeEnum.rebatePercentCoupon) {
@@ -487,6 +498,10 @@
               msgOther.setGiveTime(sd.format(giveRecord.getGiveTime()));
               msgOther.setReceiveTime(sd.format(new Date()));
               userOtherMsgNotificationService.tokenGiveMsg(giveUid, beiZhu, msgOther);
               // 激活邀请信息
               if (addTeam)
                   addInviteMsg(uid, giveUid, "返利奖励券");
            }
         });
      } else if (tokenType == TokenTypeEnum.taoLiJin) {
@@ -539,6 +554,10 @@
                  msgOther.setGiveTime(sd.format(giveRecord.getGiveTime()));
                  msgOther.setReceiveTime(sd.format(new Date()));
                  userOtherMsgNotificationService.tokenGiveMsg(giveUid, beiZhu, msgOther);
                  // 激活邀请信息
                  if (addTeam)
                      addInviteMsg(uid, giveUid, amount.setScale(2) + "元推广红包");
               }
            });
         } catch (UserTaoLiJinOriginException e) {
@@ -579,6 +598,22 @@
   }
   
   
   private void addInviteMsg(Long uid, Long giveUid, String giftName) {
      try {
         UserInfo user = userInfoService.selectByPKey(giveUid);
         UserInfoExtra userInfoExtra = userInfoExtraService.getUserInfoExtra(uid);
         MsgInviteContentDTO msgInvite = new MsgInviteContentDTO();
         msgInvite.setTitle("邀请消息");
         msgInvite.setState("成功激活邀请");
         msgInvite.setCode("你的邀请码:" + userInfoExtra.getInviteCode());
         msgInvite.setInviter("昵称:"+user.getNickName());
         msgInvite.setMode("成功领取邀请人的" + giftName);
         userInviteMsgNotificationService.receiveGift(uid, "邀请关系一旦确立无法更改 ", msgInvite);
      } catch (Exception e) {
         LogHelper.errorDetailInfo(e);
      }
   }
   @Override
   public List<TokenRecord> overdueList(int count) {
      return tokenRecordMapper.overdueList(count);