From d8359ddb48dab5cc797a9d552e11fde571f4920c Mon Sep 17 00:00:00 2001
From: yujian <yujian@123.com>
Date: 星期二, 27 八月 2019 12:32:46 +0800
Subject: [PATCH] Merge branch 'div' of ssh://193.112.35.168:29418/fanli-server into div

---
 fanli/src/main/java/com/yeshi/fanli/controller/client/v1/UserInfoController.java |  274 +++++++++++++++++++++++++++---------------------------
 1 files changed, 136 insertions(+), 138 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/client/v1/UserInfoController.java b/fanli/src/main/java/com/yeshi/fanli/controller/client/v1/UserInfoController.java
index 6e6247d..d228ffa 100644
--- a/fanli/src/main/java/com/yeshi/fanli/controller/client/v1/UserInfoController.java
+++ b/fanli/src/main/java/com/yeshi/fanli/controller/client/v1/UserInfoController.java
@@ -40,7 +40,6 @@
 import com.yeshi.fanli.dto.HongBaoDTO;
 import com.yeshi.fanli.dto.money.AccountDetails;
 import com.yeshi.fanli.dto.order.OrderItem;
-import com.yeshi.fanli.dto.pdd.PDDGoodsDetail;
 import com.yeshi.fanli.entity.AppVersionInfo;
 import com.yeshi.fanli.entity.accept.AcceptData;
 import com.yeshi.fanli.entity.bus.user.AccountMessage;
@@ -55,11 +54,11 @@
 import com.yeshi.fanli.entity.bus.user.UserInfo;
 import com.yeshi.fanli.entity.bus.user.UserInfoExtra;
 import com.yeshi.fanli.entity.bus.user.WeiXinUser;
+import com.yeshi.fanli.entity.bus.user.UserInfoModifyRecord.ModifyTypeEnum;
 import com.yeshi.fanli.entity.common.AdminUser;
 import com.yeshi.fanli.entity.common.Config;
 import com.yeshi.fanli.entity.goods.CollectionGoodsV2;
 import com.yeshi.fanli.entity.goods.CommonGoods;
-import com.yeshi.fanli.entity.jd.JDGoods;
 import com.yeshi.fanli.entity.money.UserMoneyDetail;
 import com.yeshi.fanli.entity.order.HongBaoOrder;
 import com.yeshi.fanli.entity.system.BusinessSystem;
@@ -98,6 +97,7 @@
 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.UserInfoModifyRecordService;
 import com.yeshi.fanli.service.inter.user.UserInfoService;
 import com.yeshi.fanli.service.inter.user.UserMoneyDetailService;
 import com.yeshi.fanli.service.inter.user.UserShareGoodsRecordService;
@@ -110,14 +110,13 @@
 import com.yeshi.fanli.util.ThreadUtil;
 import com.yeshi.fanli.util.TimeUtil;
 import com.yeshi.fanli.util.Utils;
+import com.yeshi.fanli.util.VersionUtil;
 import com.yeshi.fanli.util.account.UserUtil;
 import com.yeshi.fanli.util.annotation.RequestSerializableByKey;
 import com.yeshi.fanli.util.email.MailSenderUtil;
 import com.yeshi.fanli.util.factory.AccountDetailsFactory;
 import com.yeshi.fanli.util.factory.HongBaoFactory;
 import com.yeshi.fanli.util.factory.OrderItemFactory;
-import com.yeshi.fanli.util.jd.JDApiUtil;
-import com.yeshi.fanli.util.pinduoduo.PinDuoDuoApiUtil;
 import com.yeshi.fanli.util.taobao.TaoBaoUtil;
 import com.yeshi.fanli.util.taobao.TaoKeApiUtil;
 import com.yeshi.fanli.util.wx.WXLoginUtil;
@@ -211,12 +210,15 @@
 
 	@Resource
 	private AccountMessageService accountMessageService;
-	
+
 	@Resource
 	private MaskKeyService maskKeyService;
-	
+
 	@Resource
 	private UserTaoLiJinDetailService userTaoLiJinDetailService;
+	
+	@Resource
+	private UserInfoModifyRecordService userInfoModifyRecordService;
 	
 
 	private static final String PASSWORD_MAX_ERROR = "password_max_error";
@@ -774,8 +776,8 @@
 		data.put("canExtract", canExtract);
 		data.put("extractErrorMsg", errorMsg);
 
-		data.put("minMoney", minMoney);//鍗曠瑪鏈�浣�
-		data.put("maxMoney", maxMoney);//鍗曠瑪鏈�楂�
+		data.put("minMoney", minMoney);// 鍗曠瑪鏈�浣�
+		data.put("maxMoney", maxMoney);// 鍗曠瑪鏈�楂�
 		data.put("maxDayCount", maxDayCount);
 		data.put("bindingAccountList", gson.toJson(filterBindingAccount(bindingAccountList)));
 
@@ -1082,7 +1084,7 @@
 	 * @param type
 	 * @param out
 	 */
-	@RequestSerializableByKey(key="uid")
+	@RequestSerializableByKey(key = "#uid")
 	@RequestMapping(value = "extractmoneynew", method = RequestMethod.POST)
 	public void extractMoneyNew(AcceptData acceptData, long uid, BigDecimal money, String vcode,
 			HttpServletRequest request, int type, PrintWriter out) {
@@ -1199,7 +1201,7 @@
 		} else if (etype == 111) {
 			out.print(JsonUtil.loadFalseResult("鏇存崲浜嗘墜鏈哄彿鍚�7澶╁唴涓嶅厑璁告彁鐜�"));
 		} else if (etype == 110) {
-			out.print(JsonUtil.loadFalseResult(Constant.znxConfig.getExtractWrongMsg()));
+			out.print(JsonUtil.loadFalseResult("鏈夌淮鏉冭鍗曞皻鏈墸娆�"));
 		}
 
 	}
@@ -1347,7 +1349,7 @@
 		// count>0 鏈夋秷鎭�
 		int count = accountMessageService.getCanOpenCount(uid);
 		out.print(JsonUtil.loadTrueResult(count));
-		
+
 		ThreadUtil.run(new Runnable() {
 			@Override
 			public void run() {
@@ -1362,73 +1364,37 @@
 	}
 
 	@RequestMapping("collectionGoods")
-	public void collectionGoods(AcceptData acceptData, long uid, long auctionId, int type, Integer goodsType, PrintWriter out) {
-		if (goodsType ==  null) {
-			goodsType = Constant.SOURCE_TYPE_TAOBAO;
-		}
-		CollectionGoodsV2 find = collectionGoodsV2Service.findByUidAndAuctionId(uid, auctionId, goodsType);
-		if (type == 1) {
-			if (find != null) {
-				out.print(JsonUtil.loadFalseResult(""));
-				return;
-			}
-			
-			if (goodsType == Constant.SOURCE_TYPE_JD) {
-				JDGoods jdGoods = JDApiUtil.queryGoodsDetail(auctionId);
-				if (jdGoods == null) {
-					jdGoods = JDApiUtil.getGoodsDetail(auctionId);
-				}
-				
-				if (jdGoods == null) {
-					out.print(JsonUtil.loadFalseResult(1, "鍟嗗搧宸蹭笅鏋�"));
-				} else {
-					try {
-						collectionGoodsV2Service.addJDCollection(uid, jdGoods);
-						out.print(JsonUtil.loadTrueResult("鏀惰棌鎴愬姛"));
-					} catch (CollectionGoodsException e) {
-						out.print(JsonUtil.loadFalseResult(e.getCode(), e.getMsg()));
-					}
-				}
-			} else if (goodsType == Constant.SOURCE_TYPE_PDD) {
-				PDDGoodsDetail pddGoods = PinDuoDuoApiUtil.getGoodsDetail(auctionId);
-				if (pddGoods == null) {
-					out.print(JsonUtil.loadFalseResult(1, "鍟嗗搧宸蹭笅鏋�"));
+	public void collectionGoods(AcceptData acceptData, long uid, long auctionId, int type, PrintWriter out) {
+		try {
+			CollectionGoodsV2 find = collectionGoodsV2Service.findByUidAndAuctionId(uid, auctionId,
+					Constant.SOURCE_TYPE_TAOBAO);
+			if (type == 1) {
+				if (find != null) {
+					out.print(JsonUtil.loadFalseResult(""));
 					return;
-				} 
-				try {
-					collectionGoodsV2Service.addPDDCollection(uid, pddGoods);
-					out.print(JsonUtil.loadTrueResult("鏀惰棌鎴愬姛"));
-				} catch (CollectionGoodsException e) {
-					out.print(JsonUtil.loadFalseResult(e.getCode(), e.getMsg()));
 				}
-				
-			} else {
 				try {
 					TaoBaoGoodsBrief taoBaoGoodsBrief = redisManager.getTaoBaoGoodsBrief(auctionId);
 					collectionGoodsV2Service.addCollection(uid, taoBaoGoodsBrief);
 					out.print(JsonUtil.loadTrueResult("鏀惰棌鎴愬姛"));
 				} catch (TaobaoGoodsDownException e) {
 					out.print(JsonUtil.loadFalseResult(1, "鍟嗗搧宸蹭笅鏋�"));
-				} catch (CollectionGoodsException e1) {
-					out.print(JsonUtil.loadFalseResult(e1.getCode(), e1.getMsg()));
 				}
-			}
-		} else {
-			if (find == null) {
-				out.print(JsonUtil.loadTrueResult("鍙栨秷鏀惰棌鎴愬姛"));
-				return;
 			} else {
-				try {
-					collectionGoodsV2Service.cancelCollectionByAuctionId(uid, auctionId, goodsType);
+				if (find == null) {
 					out.print(JsonUtil.loadTrueResult("鍙栨秷鏀惰棌鎴愬姛"));
-				} catch (CollectionGoodsException e) {
-					out.print(JsonUtil.loadFalseResult(e.getCode(), e.getMsg()));
+					return;
+				} else {
+					collectionGoodsV2Service.cancelCollectionByAuctionId(uid, auctionId, Constant.SOURCE_TYPE_TAOBAO);
+					out.print(JsonUtil.loadTrueResult("鍙栨秷鏀惰棌鎴愬姛"));
 				}
 			}
+		} catch (CollectionGoodsException e1) {
+			out.print(JsonUtil.loadFalseResult(e1.getCode(), e1.getMsg()));
 		}
-
 	}
 
+	
 	/**
 	 * h5鏀惰棌
 	 * 
@@ -1439,14 +1405,15 @@
 	 * @param out
 	 */
 	@RequestMapping("collectionGoodsJp")
-	public void collectionGoodsJp(String callback, AcceptData acceptData, Long uid, Long auctionId, Integer goodsType, PrintWriter out) {
+	public void collectionGoodsJp(String callback, AcceptData acceptData, Long uid, Long auctionId, Integer goodsType,
+			PrintWriter out) {
 
 		if (uid == null || auctionId == null) {
 			JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult(""));
 			return;
 		}
-		
-		if (goodsType ==  null) {
+
+		if (goodsType == null) {
 			goodsType = Constant.SOURCE_TYPE_TAOBAO;
 		}
 
@@ -1454,9 +1421,9 @@
 
 		if (find == null) {
 			if (goodsType == Constant.SOURCE_TYPE_JD) {
-				
+
 			} else if (goodsType == Constant.SOURCE_TYPE_PDD) {
-				
+
 			} else {
 				try {
 					TaoBaoGoodsBrief taoBaoGoodsBrief = redisManager.getTaoBaoGoodsBrief(auctionId);
@@ -1565,14 +1532,16 @@
 	}
 
 	@RequestMapping("deleteCollectionGoods")
-	public void deleteCollectionGoods(AcceptData acceptData, String ids, Integer type, long uid, Integer goodsType, PrintWriter out) {
+	public void deleteCollectionGoods(AcceptData acceptData, String ids, Integer type, long uid, Integer goodsType,
+			PrintWriter out) {
 		if (type != null && type == 1) {
 			clearConllectionGoods(acceptData, uid, out);
 		} else {
 			if (!StringUtil.isNullOrEmpty(ids)) {
 				Arrays.asList(ids.split(",")).parallelStream().forEach(auctionIdStr -> {
 					try {
-						collectionGoodsV2Service.cancelCollectionByAuctionId(uid, Long.parseLong(auctionIdStr), goodsType);
+						collectionGoodsV2Service.cancelCollectionByAuctionId(uid, Long.parseLong(auctionIdStr),
+								goodsType);
 					} catch (Exception e) {
 						e.printStackTrace();
 					}
@@ -1732,6 +1701,7 @@
 
 	}
 
+
 	/**
 	 * 鐢ㄦ埛闃熷憳鍒楄〃鏌ヨ 1.5.3鏌ヨ鏈夋晥闃熷憳
 	 * 
@@ -1865,8 +1835,8 @@
 			out.print(JsonUtil.loadFalseResult("缁熻澶辫触"));
 			e.printStackTrace();
 		}
-
 	}
+	
 
 	/**
 	 * 鐢ㄦ埛闃熷憳淇℃伅淇濆瓨 1.4.1
@@ -1880,48 +1850,35 @@
 	 */
 	@RequestMapping(value = "setextrainfo", method = RequestMethod.POST)
 	public void setExtraInfo(AcceptData acceptData, long uid, long inviteId, String memoName, PrintWriter out) {
-
-		try {
-			List<ThreeSale> listThreeSale = threeSaleSerivce.listbyIdAndBossId(inviteId, uid, null);
-			if (listThreeSale == null || listThreeSale.size() == 0) {
-				out.print(JsonUtil.loadFalseResult("璇ヨ褰曚笉瀛樺湪"));
-				return;
-			}
-
-			UserInfo worker = listThreeSale.get(0).getWorker();
-			if (worker == null) {
-				out.print(JsonUtil.loadFalseResult("璇ヨ褰曚笉瀛樺湪"));
-				return;
-			}
-
-			List<ThreeSaleExtraInfo> list = threeSaleExtraInfoSerivce.listbyBossIdAndWorkerId(uid, worker.getId());
-			if (list == null || list.size() == 0) {
-
-				ThreeSaleExtraInfo extraInfo = new ThreeSaleExtraInfo();
-				extraInfo.setWorker(worker);
-				extraInfo.setNickname(memoName);
-				extraInfo.setCreateTime(new Date());
-				extraInfo.setUpdateTime(new Date());
-
-				UserInfo boss = new UserInfo(uid);
-				extraInfo.setBoss(boss);
-
-				threeSaleExtraInfoSerivce.insert(extraInfo);
-
-			} else {
-				ThreeSaleExtraInfo extraInfo = list.get(0);
-				extraInfo.setNickname(memoName);
-				extraInfo.setUpdateTime(new Date());
-				threeSaleExtraInfoSerivce.updateByPrimaryKey(extraInfo);
-			}
-
-			out.print(JsonUtil.loadTrueResult("淇濆瓨鎴愬姛"));
-
-		} catch (Exception e) {
-			out.print(JsonUtil.loadFalseResult("淇濆瓨澶辫触"));
-			e.printStackTrace();
+		List<ThreeSale> listThreeSale = threeSaleSerivce.listbyIdAndBossId(inviteId, uid, null);
+		if (listThreeSale == null || listThreeSale.size() == 0) {
+			out.print(JsonUtil.loadFalseResult("璇ヨ褰曚笉瀛樺湪"));
+			return;
 		}
 
+		UserInfo worker = listThreeSale.get(0).getWorker();
+		if (worker == null) {
+			out.print(JsonUtil.loadFalseResult("璇ヨ褰曚笉瀛樺湪"));
+			return;
+		}
+
+		ThreeSaleExtraInfo extraInfo = threeSaleExtraInfoSerivce.getbyBossIdAndWorkerId(uid, worker.getId());
+		if (extraInfo == null) {
+			extraInfo = new ThreeSaleExtraInfo();
+			extraInfo.setWorker(worker);
+			extraInfo.setNickname(memoName);
+			extraInfo.setCreateTime(new Date());
+			extraInfo.setUpdateTime(new Date());
+			extraInfo.setBoss(new UserInfo(uid));
+			threeSaleExtraInfoSerivce.insertSelective(extraInfo);
+		} else {
+			ThreeSaleExtraInfo updateInfo = new ThreeSaleExtraInfo();
+			updateInfo.setId(extraInfo.getId());
+			updateInfo.setNickname(memoName);
+			updateInfo.setUpdateTime(new Date());
+			threeSaleExtraInfoSerivce.updateByPrimaryKeySelective(updateInfo);
+		}
+		out.print(JsonUtil.loadTrueResult("淇濆瓨鎴愬姛"));
 	}
 
 	/**
@@ -2116,8 +2073,6 @@
 
 			GsonBuilder gsonBuilder = new GsonBuilder().excludeFieldsWithoutExposeAnnotation();
 			JSONObject data = new JSONObject();
-			data.put("user", JsonUtil.getConvertBigDecimalToStringBuilder(gsonBuilder).create().toJson(userInfo));
-
 			// 鐣岄潰鐘舵��
 			UserSettingsVO mySettings = null;
 			try {
@@ -2142,18 +2097,15 @@
 			if (mySettings.getNoInvitationBonus() == null) {
 				mySettings.setNoInvitationBonus(0);
 			}
-			
+
 			if (mySettings.getOpenSpreadHongBao() == null) {
-				if(userTaoLiJinDetailService.countDetail(uid) > 0) {
+				if (userTaoLiJinDetailService.countDetail(uid) > 0) {
 					mySettings.setOpenSpreadHongBao(1);
 				} else {
 					mySettings.setOpenSpreadHongBao(0);
 				}
 			}
 			data.put("moduleState", mySettings);
-			
-			
-			
 
 			int welfareCenterNews = 0;
 			String invitCode = null;
@@ -2176,8 +2128,21 @@
 					userInfo.setRankNamePicture(null);
 					userInfo.setRankIcon(null);
 				}
+				
+				// 1.6.5 涔嬪悗杩斿洖鎬у埆銆佸井淇″彿
+				if(VersionUtil.greaterThan_1_6_5(acceptData.getPlatform(), acceptData.getVersion())) {
+					if(userInfoExtra.getSex() != null)
+						userInfo.setSex(userInfoExtra.getSex());
+					
+					if(!StringUtil.isNullOrEmpty(userInfoExtra.getWeiXin()))
+						userInfo.setWeiXin(userInfoExtra.getWeiXin());
+				}
 			}
-
+			// 1.6.5 涔嬪悗杩斿洖 寰俊鍙锋彁绀�
+			if(VersionUtil.greaterThan_1_6_5(acceptData.getPlatform(), acceptData.getVersion()))
+				userInfo.setWeiXinTip("娣诲姞寰俊鍙峰悗锛屼綘鐨勯個璇蜂汉鍜屼竴绾ч槦鍛樺彲浠ラ�氳繃寰俊涓庝綘寤虹珛鑱旂郴銆�");
+			
+			data.put("user", JsonUtil.getConvertBigDecimalToStringBuilder(gsonBuilder).create().toJson(userInfo));
 			data.put("invitCode", invitCode); // 閭�璇风爜
 			data.put("welfareCenterNews", welfareCenterNews);// 绂忓埄涓績娑堟伅
 			out.print(JsonUtil.loadTrueResult(data));
@@ -2235,9 +2200,9 @@
 		}
 	}
 
-	
 	/**
 	 * 鐢ㄦ埛鏇存崲澶村儚
+	 * 
 	 * @param acceptData
 	 * @param fileList
 	 * @param uid
@@ -2245,20 +2210,21 @@
 	 * @param out
 	 */
 	@RequestMapping(value = "uploadPortrait")
-	public void uploadPortrait(AcceptData acceptData, MultipartFile file, Long uid, HttpServletRequest request, PrintWriter out) {
+	public void uploadPortrait(AcceptData acceptData, MultipartFile file, Long uid, HttpServletRequest request,
+			PrintWriter out) {
 		try {
 			if (uid == null) {
 				out.print(JsonUtil.loadFalseResult("鐢ㄦ埛鏈櫥褰�"));
 				return;
 			}
-			
+
 			if (file == null) {
 				out.print(JsonUtil.loadFalseResult("涓婁紶鏂囦欢涓嶈兘涓虹┖"));
 				return;
 			}
-			
+
 			userInfoService.uploadPortrait(file, uid);
-			
+
 			out.print(JsonUtil.loadTrueResult("淇濆瓨鎴愬姛"));
 			
 		} catch (UserInfoException e) {
@@ -2284,37 +2250,69 @@
 			}
 		}
 	}
-	
+
 	/**
-	 * 鏇存崲鏄电О
+	 * 鏇存崲鍩虹淇℃伅
+	 * 
 	 * @param acceptData
 	 * @param nickName
 	 * @param uid
 	 * @param out
 	 */
 	@RequestMapping(value = "saveInfo")
-	public void saveInfo(AcceptData acceptData, String nickName, Long uid, PrintWriter out) {
+	public void saveInfo(AcceptData acceptData, String nickName, String weiXin, Integer sex, Long uid, PrintWriter out) {
 		try {
 			if (uid == null) {
 				out.print(JsonUtil.loadFalseResult("鐢ㄦ埛鏈櫥褰�"));
 				return;
 			}
-			if (StringUtil.isNullOrEmpty(nickName)) {
-				out.print(JsonUtil.loadFalseResult("鏄电О涓嶈兘涓虹┖"));
-				return;
-			}
-			if (nickName.length() > 200) {
-				out.print(JsonUtil.loadFalseResult("鏄电О杩囬暱"));
-				return;
+
+			// 淇敼鏄电О
+			if (!StringUtil.isNullOrEmpty(nickName)) {
+				if (nickName.length() > 200) {
+					out.print(JsonUtil.loadFalseResult("鏄电О杩囬暱"));
+					return;
+				}
+				
+				if (maskKeyService.examineContent(nickName)) {
+					out.print(JsonUtil.loadFalseResult("涓嶈兘鍖呭惈鏁忔劅璇嶆眹"));
+					return;
+				}
+				userInfoService.saveUserInfo(nickName, uid);
+				
+				userInfoModifyRecordService.addModifyRecord(uid, ModifyTypeEnum.nickName, nickName);
 			}
 			
-			if(maskKeyService.examineContent(nickName)) {
-				out.print(JsonUtil.loadFalseResult("涓嶈兘鍖呭惈鏁忔劅璇嶆眹"));
-				return;
+			// 淇敼寰俊鍙�
+			if (!StringUtil.isNullOrEmpty(weiXin)) {
+				if (weiXin.length() > 32) {
+					out.print(JsonUtil.loadFalseResult("寰俊鍙疯繃闀�"));
+					return;
+				}
+				
+				UserInfoExtra userInfoExtra = userInfoExtraService.getUserInfoExtra(uid);
+				if (userInfoExtra != null) {
+					UserInfoExtra extra = new UserInfoExtra();
+					extra.setId(userInfoExtra.getId());
+					extra.setWeiXin(weiXin);
+					userInfoExtraService.saveUserInfoExtra(extra);
+					
+					userInfoModifyRecordService.addModifyRecord(uid, ModifyTypeEnum.setWeiXinNum, weiXin);
+				}
 			}
 			
-			userInfoService.saveUserInfo(nickName, uid);
-			
+			// 淇敼鎬у埆
+			if (sex != null && sex > 0 && sex < 3) {
+				UserInfoExtra userInfoExtra = userInfoExtraService.getUserInfoExtra(uid);
+				if (userInfoExtra != null) {
+					UserInfoExtra extra = new UserInfoExtra();
+					extra.setId(userInfoExtra.getId());
+					extra.setSex(sex);
+					userInfoExtraService.saveUserInfoExtra(extra);
+					
+					userInfoModifyRecordService.addModifyRecord(uid, ModifyTypeEnum.gender, sex + "");
+				}
+			}
 			out.print(JsonUtil.loadTrueResult("淇濆瓨鎴愬姛"));
 		} catch (UserInfoException e) {
 			out.print(JsonUtil.loadFalseResult(e.getMsg()));

--
Gitblit v1.8.0