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