From 591b4fc369befea2b0a290cb848d48c71064573c Mon Sep 17 00:00:00 2001
From: yujian <yujian>
Date: 星期二, 29 一月 2019 10:24:22 +0800
Subject: [PATCH] 已存在邀请码验证

---
 fanli/src/main/java/com/yeshi/fanli/controller/client/UserInfoController.java |  187 +++++++++++++++++++++++++++++-----------------
 1 files changed, 119 insertions(+), 68 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/client/UserInfoController.java b/fanli/src/main/java/com/yeshi/fanli/controller/client/UserInfoController.java
index 5b2d0c0..cb81a1d 100644
--- a/fanli/src/main/java/com/yeshi/fanli/controller/client/UserInfoController.java
+++ b/fanli/src/main/java/com/yeshi/fanli/controller/client/UserInfoController.java
@@ -35,6 +35,7 @@
 import com.google.gson.JsonSerializationContext;
 import com.google.gson.JsonSerializer;
 import com.yeshi.fanli.dto.HongBaoDTO;
+import com.yeshi.fanli.entity.AppVersionInfo;
 import com.yeshi.fanli.entity.accept.AcceptData;
 import com.yeshi.fanli.entity.bus.user.AccountDetails;
 import com.yeshi.fanli.entity.bus.user.AccountMessage;
@@ -71,6 +72,7 @@
 import com.yeshi.fanli.exception.user.UserInfoExtraException;
 import com.yeshi.fanli.log.LogHelper;
 import com.yeshi.fanli.service.AdminUserService;
+import com.yeshi.fanli.service.inter.config.AppVersionService;
 import com.yeshi.fanli.service.inter.config.ConfigService;
 import com.yeshi.fanli.service.inter.config.SystemService;
 import com.yeshi.fanli.service.inter.goods.CollectionGoodsV2Service;
@@ -209,13 +211,15 @@
 
 	@Resource
 	private UserShareGoodsRecordService userShareGoodsRecordService;
-	
+
 	@Resource
 	private UserCustomSettingsService userCustomSettingsService;
-	
+
 	@Resource
 	private UserInfoExtraService userInfoExtraService;
-	
+
+	@Resource
+	private AppVersionService appVersionService;
 
 	private static final String PASSWORD_MAX_ERROR = "password_max_error";
 	private static final String EXTRACT_MIN_MONEY = "extract_min_money";
@@ -505,15 +509,38 @@
 		BigDecimal fanliHB = user.getTotalHongBao();
 		user.setTotalHongBao(fanliHB);
 
+		UserInfo filterForClientUser = UserUtil.filterForClientUser(user);
+
+		// 1.5.0 鐗堟湰涔嬪悗杩斿洖鏂扮殑绛夌骇
+		String version = acceptData.getVersion();
+		if (version != null && version.trim().length() > 0) {
+			int versionCode = Integer.parseInt(version);
+			String platform = acceptData.getPlatform();
+
+			AppVersionInfo versionInfo = appVersionService.getByPlatformAndVersion(platform, "1.5.0");
+			if (versionInfo != null) {
+				int versionCode150 = versionInfo.getVersionCode();
+				if (versionCode >= versionCode150) {
+					UserInfoExtraVO userInfoExtra = userInfoExtraService.getInfoExtraVOByUid(user.getId());
+					if (userInfoExtra != null && userInfoExtra.getUserRank() != null) {
+						String picture = userInfoExtra.getUserRank().getPicture();
+						String icon = userInfoExtra.getUserRank().getIcon();
+						filterForClientUser.setRankNamePicture(picture);
+						filterForClientUser.setRankIcon(icon);
+					}
+				}
+			}
+		}
+
 		GsonBuilder gsonBuilder = new GsonBuilder().excludeFieldsWithoutExposeAnnotation();
 
 		JSONObject data = new JSONObject();
-		data.put("user", JsonUtil.getConvertBigDecimalToStringBuilder(gsonBuilder).create()
-				.toJson(UserUtil.filterForClientUser(user)));
+		data.put("user",
+				JsonUtil.getConvertBigDecimalToStringBuilder(gsonBuilder).create().toJson(filterForClientUser));
 		data.put("first", 0);
 		int spreadImgCount = spreadUserImgService.countUserSpreadImg(user.getId());
 		long shareCount = userShareGoodsRecordService.countShareRecordByUid(user.getId());
-		
+
 		int showTiCheng = 1; // 涓嶆樉绀�
 		if ("ios".equalsIgnoreCase(acceptData.getPlatform())
 				&& configService.iosOnLining(Integer.parseInt(acceptData.getVersion())))
@@ -531,16 +558,16 @@
 					Constant.systemCommonConfig.getProjectHost(), Constant.systemCommonConfig.getProjectName()));
 		else
 			data.put("inviteList", configService.get("team_list"));
-	
+
 		// 鐣岄潰鐘舵��
-		UserSettingsVO mySettings = null; 
+		UserSettingsVO mySettings = null;
 		try {
 			mySettings = userCustomSettingsService.getMySettings(user.getId());
 		} catch (UserCustomSettingsException e) {
 			mySettings = new UserSettingsVO();
 			e.printStackTrace();
 		}
-		
+
 		if (mySettings.getCancelNotice() == null) {
 			mySettings.setCancelNotice(0);
 		}
@@ -556,9 +583,9 @@
 		if (mySettings.getNoInvitationBonus() == null) {
 			mySettings.setNoInvitationBonus(0);
 		}
-		
+
 		data.put("moduleState", mySettings);
-		
+
 		out.print(JsonUtil.loadTrueResult(data));
 		final UserInfo uuser = user;
 		ThreadUtil.run(new Runnable() {
@@ -568,6 +595,13 @@
 				uuser.setLastLoginTime(java.lang.System.currentTimeMillis());
 				userInfoService.updateLoginInfo(uuser);
 				wxDownService.save(device);
+				// 鏇存柊鐢ㄦ埛闄勫姞淇℃伅锛岃�佺敤鎴蜂笉瀛樺湪鐨勯渶瑕佹坊鍔�
+				try {
+					userInfoExtraService.updateUserRankByUid(uuser.getId());
+				} catch (UserInfoExtraException e) {
+					e.printStackTrace();
+				}
+
 			}
 		});
 	}
@@ -1855,41 +1889,60 @@
 	 */
 	@RequestMapping(value = "countMyTeam", method = RequestMethod.POST)
 	public void countMyTeam(AcceptData acceptData, long uid, PrintWriter out) {
+		try {
+			long firstTeam = threeSaleSerivce.countFirstTeam(uid, 1);
+			long firstTeamTotal = threeSaleSerivce.countFirstTeam(uid, null);
 
-		long firstTeam = threeSaleSerivce.countFirstTeam(uid, 1);
-		long firstTeamTotal = threeSaleSerivce.countFirstTeam(uid, null);
+			long secondTeam = threeSaleSerivce.countSecondTeam(uid, 1);
+			long secondTeamTotal = threeSaleSerivce.countSecondTeam(uid, null);
+			JSONObject bossData = new JSONObject();
+			ThreeSale threeSale = threeSaleSerivce.getMyBoss(uid);
+			if (threeSale != null) {
+				UserInfo boss = threeSale.getBoss();
+				if (boss != null) {
+					bossData.put("nickName", boss.getNickName());
+					bossData.put("portrait", boss.getPortrait());
+				}
 
-		long secondTeam = threeSaleSerivce.countSecondTeam(uid, 1);
-		long secondTeamTotal = threeSaleSerivce.countSecondTeam(uid, null);
-		JSONObject bossData = new JSONObject();
-		ThreeSale threeSale = threeSaleSerivce.getMyBoss(uid);
-		if (threeSale != null) {
-			UserInfo boss = threeSale.getBoss();
-			if (boss != null) {
-				bossData.put("nickName", boss.getNickName());
-				bossData.put("portrait", boss.getPortrait());
+				SimpleDateFormat sdf = new SimpleDateFormat("yyyy.MM.dd");
+				Long createTime = threeSale.getCreateTime();
+				Date inviteTime = new Date(createTime);
+				bossData.put("inviteTime", "閭�璇锋椂闂�: " + sdf.format(inviteTime));
 			}
 
-			SimpleDateFormat sdf = new SimpleDateFormat("yyyy.MM.dd");
-			Long createTime = threeSale.getCreateTime();
-			Date inviteTime = new Date(createTime);
-			bossData.put("inviteTime", "閭�璇锋椂闂�: " + sdf.format(inviteTime));
+			JSONObject resultData = new JSONObject();
+
+			String helpLink = configService.get("team_help_url");
+			if (helpLink == null) {
+				helpLink = "";
+			}
+			resultData.put("helpLink", helpLink);
+			resultData.put("firstTeam", firstTeam);
+			resultData.put("firstTeamTotal", firstTeamTotal);
+			resultData.put("secondTeam", secondTeam);
+			resultData.put("secondTeamTotal", secondTeamTotal);
+			resultData.put("boss", bossData);
+			
+			
+			boolean hasCode = false;
+			String inviteCode = userInfoExtraService.getUserInviteCode(uid);
+			if (inviteCode != null && inviteCode.trim().length() > 0) {
+				hasCode = true;	// 宸叉湁閭�璇风爜
+			} else {
+				// 閭�璇锋縺娲婚摼鎺�
+				resultData.put("activationlink", configService.get("invite_activation_url"));
+			}
+			resultData.put("hasCode", hasCode);
+
+			out.print(JsonUtil.loadTrueResult(resultData));
+			
+		} catch (UserInfoExtraException e) {
+			out.print(JsonUtil.loadFalseResult(e.getMsg()));
+		} catch (Exception e) {
+			out.print(JsonUtil.loadFalseResult("缁熻澶辫触"));
+			e.printStackTrace();
 		}
-
-		JSONObject resultData = new JSONObject();
-
-		String helpLink = configService.get("team_help_url");
-		if (helpLink == null) {
-			helpLink = "";
-		}
-		resultData.put("helpLink", helpLink);
-		resultData.put("firstTeam", firstTeam);
-		resultData.put("firstTeamTotal", firstTeamTotal);
-		resultData.put("secondTeam", secondTeam);
-		resultData.put("secondTeamTotal", secondTeamTotal);
-		resultData.put("boss", bossData);
-
-		out.print(JsonUtil.loadTrueResult(resultData));
+		
 	}
 
 	/**
@@ -1983,10 +2036,10 @@
 			e.printStackTrace();
 		}
 	}
-	
-	
+
 	/**
-	 *  璁剧疆鐣岄潰寮�鍏崇姸鎬�
+	 * 璁剧疆鐣岄潰寮�鍏崇姸鎬�
+	 * 
 	 * @param acceptData
 	 * @param uid
 	 * @param params
@@ -1999,22 +2052,22 @@
 			out.print(JsonUtil.loadFalseResult("鐢ㄦ埛鏈櫥褰�"));
 			return;
 		}
-		
+
 		try {
 			if (params == null || params.trim().length() == 0) {
 				out.print(JsonUtil.loadFalseResult("浼犻�掑弬鏁颁负绌�"));
 				return;
 			}
-			
+
 			JSONObject json = JSONObject.fromObject(params);
-	        Iterator<String> iterator = json.keys();
-			while(iterator.hasNext()){
-		         String type = (String) iterator.next();
-		         int state = json.getInt(type);
-		         userCustomSettingsService.saveModuleState(uid, type, state);
+			Iterator<String> iterator = json.keys();
+			while (iterator.hasNext()) {
+				String type = (String) iterator.next();
+				int state = json.getInt(type);
+				userCustomSettingsService.saveModuleState(uid, type, state);
 			}
 			out.print(JsonUtil.loadTrueResult("璁剧疆鎴愬姛"));
-			
+
 		} catch (UserCustomSettingsException e) {
 			out.print(JsonUtil.loadFalseResult(e.getMsg()));
 		} catch (Exception e) {
@@ -2023,9 +2076,9 @@
 		}
 	}
 
-	
 	/**
-	 *  鑾峰彇绛夌骇淇℃伅
+	 * 鑾峰彇绛夌骇淇℃伅
+	 * 
 	 * @param acceptData
 	 * @param uid
 	 * @param out
@@ -2037,20 +2090,18 @@
 			out.print(JsonUtil.loadFalseResult("鐢ㄦ埛鏈櫥褰�"));
 			return;
 		}
-		
+
 		try {
-			
 			UserInfoExtraVO rankInfo = userInfoExtraService.getRankInfo(uid);
-			
 			GsonBuilder gsonBuilder = JsonUtil.getConvertBigDecimalToStringSubZeroBuilder(new GsonBuilder());
 			gsonBuilder.excludeFieldsWithoutExposeAnnotation();
 			Gson gson = gsonBuilder.setDateFormat("yyyy.MM.dd").create();
-			
+
 			JSONObject resultData = new JSONObject();
 			resultData.put("rankInfo", gson.toJson(rankInfo));
-			
+
 			out.print(JsonUtil.loadTrueResult(resultData));
-			
+
 		} catch (UserInfoExtraException e) {
 			out.print(JsonUtil.loadFalseResult(e.getMsg()));
 		} catch (Exception e) {
@@ -2059,9 +2110,9 @@
 		}
 	}
 
-	
 	/**
-	 *  鑾峰彇绛夌骇淇℃伅
+	 * 鑾峰彇绛夌骇淇℃伅
+	 * 
 	 * @param acceptData
 	 * @param uid
 	 * @param out
@@ -2073,11 +2124,11 @@
 			out.print(JsonUtil.loadFalseResult("鐢ㄦ埛鏈櫥褰�"));
 			return;
 		}
-		
+
 		try {
-			
+
 			String inviteCode = userInfoExtraService.getUserInviteCode(uid);
-			
+
 			JSONObject inviteData = new JSONObject();
 			if (inviteCode == null || inviteCode.trim().length() == 0) {
 				// 鏃犻個璇风爜
@@ -2088,12 +2139,12 @@
 				inviteData.put("content", "閭�璇风爜");
 				inviteData.put("link", configService.get("invite_activation_success_url"));
 			}
-			
+
 			JSONObject data = new JSONObject();
 			data.put("invite", inviteData);
-			
+
 			out.print(JsonUtil.loadTrueResult(data));
-			
+
 		} catch (UserInfoExtraException e) {
 			out.print(JsonUtil.loadFalseResult(e.getMsg()));
 		} catch (Exception e) {

--
Gitblit v1.8.0