From 88b54772dbcf5ecab1e2316e4e4626ac901b8908 Mon Sep 17 00:00:00 2001
From: yujian <yujian>
Date: 星期二, 22 一月 2019 15:58:24 +0800
Subject: [PATCH] 邀请码添加返回状态

---
 fanli/src/main/java/com/yeshi/fanli/controller/client/UserInfoController.java |  180 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 180 insertions(+), 0 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 8692ec8..5b2d0c0 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
@@ -10,6 +10,7 @@
 import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.Date;
+import java.util.Iterator;
 import java.util.List;
 import java.util.UUID;
 
@@ -66,6 +67,8 @@
 import com.yeshi.fanli.exception.goods.CollectionGoodsException;
 import com.yeshi.fanli.exception.taobao.TaoKeApiException;
 import com.yeshi.fanli.exception.taobao.TaobaoGoodsDownException;
+import com.yeshi.fanli.exception.user.UserCustomSettingsException;
+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.ConfigService;
@@ -87,10 +90,14 @@
 import com.yeshi.fanli.service.inter.user.MoneyRecordService;
 import com.yeshi.fanli.service.inter.user.PassWordErrorRecordService;
 import com.yeshi.fanli.service.inter.user.ShamUserService;
+import com.yeshi.fanli.service.inter.user.SpreadUserImgService;
 import com.yeshi.fanli.service.inter.user.UserAccountService;
 import com.yeshi.fanli.service.inter.user.UserActiveLogService;
+import com.yeshi.fanli.service.inter.user.UserCustomSettingsService;
+import com.yeshi.fanli.service.inter.user.UserInfoExtraService;
 import com.yeshi.fanli.service.inter.user.UserInfoService;
 import com.yeshi.fanli.service.inter.user.UserMoneyDetailService;
+import com.yeshi.fanli.service.inter.user.UserShareGoodsRecordService;
 import com.yeshi.fanli.service.inter.user.WxDownService;
 import com.yeshi.fanli.util.AESUtil;
 import com.yeshi.fanli.util.Constant;
@@ -109,6 +116,8 @@
 import com.yeshi.fanli.util.taobao.TaoBaoUtil;
 import com.yeshi.fanli.util.taobao.TaoKeApiUtil;
 import com.yeshi.fanli.util.wx.WXLoginUtil;
+import com.yeshi.fanli.vo.user.UserInfoExtraVO;
+import com.yeshi.fanli.vo.user.UserSettingsVO;
 
 import net.sf.json.JSONArray;
 import net.sf.json.JSONObject;
@@ -194,6 +203,19 @@
 
 	@Resource
 	private HongBaoV2Service hongBaoV2Service;
+
+	@Resource
+	private SpreadUserImgService spreadUserImgService;
+
+	@Resource
+	private UserShareGoodsRecordService userShareGoodsRecordService;
+	
+	@Resource
+	private UserCustomSettingsService userCustomSettingsService;
+	
+	@Resource
+	private UserInfoExtraService userInfoExtraService;
+	
 
 	private static final String PASSWORD_MAX_ERROR = "password_max_error";
 	private static final String EXTRACT_MIN_MONEY = "extract_min_money";
@@ -489,12 +511,54 @@
 		data.put("user", JsonUtil.getConvertBigDecimalToStringBuilder(gsonBuilder).create()
 				.toJson(UserUtil.filterForClientUser(user)));
 		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())))
+			data.put("showTiCheng", false);
+		else {
+			data.put("showTiCheng", spreadImgCount + shareCount > 0);
+			if (spreadImgCount + shareCount > 0) {
+				showTiCheng = 0;
+			}
+		}
+
 		if ("ios".equalsIgnoreCase(acceptData.getPlatform())
 				&& configService.iosOnLining(Integer.parseInt(acceptData.getVersion())))
 			data.put("inviteList", String.format("http://%s/%s/client/share/friends_new_online.html",
 					Constant.systemCommonConfig.getProjectHost(), Constant.systemCommonConfig.getProjectName()));
 		else
 			data.put("inviteList", configService.get("team_list"));
+	
+		// 鐣岄潰鐘舵��
+		UserSettingsVO mySettings = null; 
+		try {
+			mySettings = userCustomSettingsService.getMySettings(user.getId());
+		} catch (UserCustomSettingsException e) {
+			mySettings = new UserSettingsVO();
+			e.printStackTrace();
+		}
+		
+		if (mySettings.getCancelNotice() == null) {
+			mySettings.setCancelNotice(0);
+		}
+		if (mySettings.getNoBonusCount() == null) {
+			mySettings.setNoBonusCount(showTiCheng); // 鏍规嵁showTiCheng鏉ュ垽鏂�
+		}
+		if (mySettings.getNoNewsRedDot() == null) {
+			mySettings.setNoNewsRedDot(0);
+		}
+		if (mySettings.getNoShareRecordAndStorage() == null) {
+			mySettings.setNoShareRecordAndStorage(showTiCheng); // 鏍规嵁showTiCheng鏉ュ垽鏂�
+		}
+		if (mySettings.getNoInvitationBonus() == null) {
+			mySettings.setNoInvitationBonus(0);
+		}
+		
+		data.put("moduleState", mySettings);
+		
 		out.print(JsonUtil.loadTrueResult(data));
 		final UserInfo uuser = user;
 		ThreadUtil.run(new Runnable() {
@@ -1918,7 +1982,123 @@
 			out.print(JsonUtil.loadFalseResult("鍒犻櫎澶辫触"));
 			e.printStackTrace();
 		}
+	}
+	
+	
+	/**
+	 *  璁剧疆鐣岄潰寮�鍏崇姸鎬�
+	 * @param acceptData
+	 * @param uid
+	 * @param params
+	 * @param out
+	 */
+	@RequestMapping(value = "setModuleState", method = RequestMethod.POST)
+	public void setModuleState(AcceptData acceptData, Long uid, String params, PrintWriter out) {
 
+		if (uid == null) {
+			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);
+			}
+			out.print(JsonUtil.loadTrueResult("璁剧疆鎴愬姛"));
+			
+		} catch (UserCustomSettingsException e) {
+			out.print(JsonUtil.loadFalseResult(e.getMsg()));
+		} catch (Exception e) {
+			out.print(JsonUtil.loadFalseResult("璁剧疆澶辫触"));
+			e.printStackTrace();
+		}
 	}
 
+	
+	/**
+	 *  鑾峰彇绛夌骇淇℃伅
+	 * @param acceptData
+	 * @param uid
+	 * @param out
+	 */
+	@RequestMapping(value = "getRankInfo", method = RequestMethod.POST)
+	public void getRankInfo(AcceptData acceptData, Long uid, PrintWriter out) {
+
+		if (uid == null) {
+			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) {
+			out.print(JsonUtil.loadFalseResult("鑾峰彇澶辫触"));
+			e.printStackTrace();
+		}
+	}
+
+	
+	/**
+	 *  鑾峰彇绛夌骇淇℃伅
+	 * @param acceptData
+	 * @param uid
+	 * @param out
+	 */
+	@RequestMapping(value = "getUserConfig", method = RequestMethod.POST)
+	public void getUserConfig(AcceptData acceptData, Long uid, PrintWriter out) {
+
+		if (uid == null) {
+			out.print(JsonUtil.loadFalseResult("鐢ㄦ埛鏈櫥褰�"));
+			return;
+		}
+		
+		try {
+			
+			String inviteCode = userInfoExtraService.getUserInviteCode(uid);
+			
+			JSONObject inviteData = new JSONObject();
+			if (inviteCode == null || inviteCode.trim().length() == 0) {
+				// 鏃犻個璇风爜
+				inviteData.put("content", "閭�璇锋縺娲�");
+				inviteData.put("link", configService.get("invite_activation_url"));
+			} else {
+				// 宸叉湁閭�璇风爜
+				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) {
+			out.print(JsonUtil.loadFalseResult("鑾峰彇澶辫触"));
+			e.printStackTrace();
+		}
+	}
 }

--
Gitblit v1.8.0