From b2901a0793cfe3a1eb04318c1f8786c988e83108 Mon Sep 17 00:00:00 2001 From: yujian <yujian@123.com> Date: 星期五, 16 八月 2019 14:28:14 +0800 Subject: [PATCH] 的 --- fanli/src/main/java/com/yeshi/fanli/service/impl/user/UserInfoExtraServiceImpl.java | 63 +++++++++++++++++++++++++++++++ 1 files changed, 63 insertions(+), 0 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/user/UserInfoExtraServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/user/UserInfoExtraServiceImpl.java index c9b0164..888c037 100644 --- a/fanli/src/main/java/com/yeshi/fanli/service/impl/user/UserInfoExtraServiceImpl.java +++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/user/UserInfoExtraServiceImpl.java @@ -650,4 +650,67 @@ } return inviter; } + + + + @Override + public String activateUser(Long uid, String inviteUid) throws UserInfoExtraException{ + if (uid == null || inviteUid == null) { + throw new UserInfoExtraException(1, "浼犻�抜d涓嶈兘涓虹┖"); + } + + // 琚個璇蜂汉淇℃伅 + UserInfo invitee = userInfoService.selectByPKey(uid); + if (invitee == null) { + throw new UserInfoExtraException(1, "鐢ㄦ埛涓嶅瓨鍦�"); + } + + UserInfoExtra extra = userInfoExtraMapper.getInfoExtraByUid(uid); + if (extra != null) { + String inviteCodeHas = extra.getInviteCode(); + if (inviteCodeHas != null && inviteCodeHas.trim().length() > 0) { + throw new UserInfoExtraException(1, "宸插瓨鍦ㄩ個璇风爜,璇峰埛鏂伴〉闈�"); + } + } + + // 閭�璇蜂汉淇℃伅 + UserInfo inviter = userInfoService.getInfoByPhoneOrInviteCode(inviteCode, inviteCode); + if (inviter == null) { + throw new UserInfoExtraException(1, "涓婄骇閭�璇风爜涓嶅瓨鍦�"); + } + + // 缁戝畾鍏崇郴 + try { + threeSaleSerivce.bindRelationshipByInviteCode(invitee, inviter); + } catch (ThreeSaleException e) { + try { + LogHelper.errorDetailInfo(e); + } catch (Exception e1) { + e1.printStackTrace(); + } + throw new UserInfoExtraException(1, "婵�娲诲け璐�"); + } + + + // 閭�璇风爜鏈夋晥銆佺敓鎴愰個璇风爜 + String code = UserUtil.getInviteCode(uid); + if (code == null || code.trim().length() == 0) { + throw new UserInfoExtraException(1, "婵�娲荤爜鐢熸垚澶辫触"); + } + + UserInfoExtra userInfoExtra = new UserInfoExtra(); + userInfoExtra.setUserInfo(invitee); + userInfoExtra.setInviteCode(code); + + // 淇濆瓨棰濆淇℃伅 + saveUserInfoExtra(userInfoExtra); + + + Long id = userInfoExtra.getId(); + if (id == null) { + throw new UserInfoExtraException(1, "婵�娲荤爜鐢熸垚澶辫触"); + } + + return code; + } } -- Gitblit v1.8.0