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/v2/TaoLiJinControllerV2.java |  162 +++++++++++++++++++++++++++++------------------------
 1 files changed, 89 insertions(+), 73 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/TaoLiJinControllerV2.java b/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/TaoLiJinControllerV2.java
index fcd740e..2bf7a0c 100644
--- a/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/TaoLiJinControllerV2.java
+++ b/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/TaoLiJinControllerV2.java
@@ -39,6 +39,7 @@
 import com.yeshi.fanli.entity.taobao.TaoBaoGoodsBrief;
 import com.yeshi.fanli.entity.taobao.TaoBaoGoodsBriefExtra;
 import com.yeshi.fanli.exception.tlj.UserTaoLiJinOriginException;
+import com.yeshi.fanli.exception.tlj.UserTaoLiJinRecordException;
 import com.yeshi.fanli.service.inter.common.JumpDetailV2Service;
 import com.yeshi.fanli.service.inter.config.ConfigService;
 import com.yeshi.fanli.service.inter.goods.ShareGoodsService;
@@ -212,8 +213,8 @@
 			return;
 		}
 
-		// 杩囨湡
-		userTaoLiJinOriginService.overdueHongBao(uid);
+		// 杩囨湡 -鍙栨秷鏀跺洖
+		// userTaoLiJinOriginService.overdueHongBao(uid);
 
 		// 鎴戠殑娣樼ぜ閲�
 		BigDecimal tlj = null;
@@ -239,7 +240,7 @@
 		if (todayUse == null || todayUse.compareTo(zero) > 0) {
 			todayUse = zero;
 		}
-		
+
 		BigDecimal yesterdayUse = userTaoLiJinDetailService.countUseMoneyByDate(uid, 2);
 		if (yesterdayUse == null || yesterdayUse.compareTo(zero) > 0) {
 			yesterdayUse = zero;
@@ -251,15 +252,16 @@
 		BigDecimal lastMonthUse = userTaoLiJinDetailService.countUseMoneyByDate(uid, 4);
 		if (lastMonthUse == null || lastMonthUse.compareTo(zero) > 0) {
 			lastMonthUse = zero;
-		}
-		
+		}
+		
+		String giveMin = configTaoLiJinService.getValueByKey("give_min_amount");
 
-		// 闂彿閾炬帴
-		String helpLink = configTaoLiJinService.getValueByKey("hongbao_help_link");
-
+
 		JSONObject data = new JSONObject();
 		data.put("tlj", tlj.setScale(2).toString());
-		data.put("helpLink", helpLink);
+		data.put("giveMin", giveMin);
+		data.put("giveTip", "娉�:璧犻�佹帹骞跨孩鍖呴噾棰濊嚦灏�"+ giveMin +"鍏�");
+		data.put("helpLink", configTaoLiJinService.getValueByKey("hongbao_help_link"));
 		data.put("countShare", countShare);
 		data.put("todayWin", todayWin.setScale(2).toString());
 		data.put("yesterdayWin", yesterdayWin.setScale(2).toString());
@@ -398,7 +400,7 @@
 				// 宸查鍙�
 				money = deviceRecord.getMoney();
 			} else {
-				String value = configTaoLiJinService.getValueByKey("hongbao_newbies");
+				String value = configTaoLiJinService.getValueByKey("hongbao_newbies", null);
 				if (StringUtil.isNullOrEmpty(value)) {
 					out.print(JsonUtil.loadFalseResult(1, "绯荤粺绾㈠寘涓嶅瓨鍦�"));
 					return;
@@ -408,7 +410,7 @@
 			}
 
 			JSONObject data = new JSONObject();
-			data.put("icon", configTaoLiJinService.getValueByKey("taolijin_system_icon"));
+			data.put("icon", configTaoLiJinService.getValueByKey("taolijin_system_icon", null));
 			data.put("title", "鏂颁汉绾㈠寘");
 			data.put("content", "鑷喘鐩存帴鎶电幇锛屼紭鎯犵湡瀹炲彲瑙侊紒");
 			data.put("type", 1);
@@ -416,8 +418,8 @@
 			data.put("usage", "棰嗗彇鎴愬姛锛屽凡瀛樺叆鈥滄垜鐨�-鎺ㄥ箍绾㈠寘鈥�");
 			data.put("jumpName", "鍘讳娇鐢�");
 			data.put("jumpDetail", jumpDetailV2Service.getByTypeCache("share_goods_hot"));
-			data.put("tip", configTaoLiJinService.getValueByKey("hongbao_newbies_tip"));
-			data.put("rules", configTaoLiJinService.getValueByKey("newbies_rules_link"));
+			data.put("tip", configTaoLiJinService.getValueByKey("hongbao_newbies_tip", null));
+			data.put("rules", configTaoLiJinService.getValueByKey("newbies_rules_link", null));
 
 			out.print(JsonUtil.loadTrueResult(data));
 			return;
@@ -426,7 +428,7 @@
 		// 鐧诲綍鐢ㄦ埛
 		boolean isReceive = false;
 		JSONObject data = new JSONObject();
-		data.put("icon", configTaoLiJinService.getValueByKey("taolijin_system_icon"));
+		data.put("icon", configTaoLiJinService.getValueByKey("taolijin_system_icon", null));
 
 		if (type.equals(TaoLiJinOriginEnum.newbiesWin.name())) {
 			BigDecimal hasMoney = null;
@@ -450,8 +452,8 @@
 			data.put("usage", "棰嗗彇鎴愬姛锛屽凡瀛樺叆鈥滄垜鐨�-鎺ㄥ箍绾㈠寘鈥�");
 			data.put("jumpName", "鍘讳娇鐢�");
 			data.put("jumpDetail", jumpDetailV2Service.getByTypeCache("share_goods_hot"));
-			data.put("tip", configTaoLiJinService.getValueByKey("hongbao_newbies_tip"));
-			data.put("rules", configTaoLiJinService.getValueByKey("newbies_rules_link"));
+			data.put("tip", configTaoLiJinService.getValueByKey("hongbao_newbies_tip", null));
+			data.put("rules", configTaoLiJinService.getValueByKey("newbies_rules_link", null));
 
 		} else if (type.equals(TaoLiJinOriginEnum.rankWin.name())) {
 			boolean isRank = false;
@@ -487,8 +489,8 @@
 				data.put("money", "鏈湀璐︽埛绛夌骇鏈揪鍒癨r\n缁х画鍔犳补");
 				data.put("jumpName", "鍘绘煡鐪�");
 				data.put("jumpDetail", jumpDetailV2Service.getByTypeCache("user_rank"));
-				data.put("tip", configTaoLiJinService.getValueByKey("hongbao_rank_not_enough_tip"));
-				data.put("rules", configTaoLiJinService.getValueByKey("rank_rules_link"));
+				data.put("tip", configTaoLiJinService.getValueByKey("hongbao_rank_not_enough_tip", null));
+				data.put("rules", configTaoLiJinService.getValueByKey("rank_rules_link", null));
 				out.print(JsonUtil.loadTrueResult(data));
 				return;
 			} else {
@@ -503,8 +505,8 @@
 				}
 				data.put("jumpName", "鍘讳娇鐢�");
 				data.put("jumpDetail", jumpDetailV2Service.getByTypeCache("share_goods_hot"));
-				data.put("tip", configTaoLiJinService.getValueByKey("hongbao_rank_tip"));
-				data.put("rules", configTaoLiJinService.getValueByKey("rank_rules_link"));
+				data.put("tip", configTaoLiJinService.getValueByKey("hongbao_rank_tip", null));
+				data.put("rules", configTaoLiJinService.getValueByKey("rank_rules_link", null));
 			}
 
 		} else {
@@ -548,7 +550,7 @@
 			}
 		}
 
-		BigDecimal proportion = hongBaoManageService.getFanLiRate();
+		BigDecimal proportion = hongBaoManageService.getTLJShareRate(System.currentTimeMillis());
 		for (ShareHotGoods hotGoods : listHot) {
 			TaoBaoGoodsBrief taoBaoGoodsBrief = hotGoods.getGoods();
 			if (taoBaoGoodsBrief == null) {
@@ -556,7 +558,7 @@
 			}
 
 			// 璁$畻鎺ㄥ箍绾㈠寘
-			String warningRate = configTaoLiJinService.getValueByKey("warning_value");
+			String warningRate = configTaoLiJinService.getValueByKey("warning_value", new Date());
 			BigDecimal spreadMoney = TaoLiJinUtil.getSpreadMoney(warningRate, taoBaoGoodsBrief);
 
 			// 鎺ㄥ箍绾㈠寘 涓嶈兘灏忎簬1
@@ -580,23 +582,22 @@
 			array.add(gson.toJson(extra));
 		}
 
-		executor.execute(new Runnable() {
-			@Override
-			public void run() {
-				// 杩囨湡
-				userTaoLiJinOriginService.overdueHongBao(uid);
-			}
-		});
+		/*
+		 * // 杩囨湡 -鍙栨秷鏀跺洖 executor.execute(new Runnable() {
+		 * 
+		 * @Override public void run() {
+		 * userTaoLiJinOriginService.overdueHongBao(uid); } });
+		 */
 
 		JSONObject data = new JSONObject();
 		data.put("count", array.size());
 		data.put("list", array);
 		out.print(JsonUtil.loadTrueResult(data));
 	}
-	
-	
+
 	/**
 	 * 鍒嗕韩鐖嗘鍟嗗搧-闄愪簬娣樼ぜ閲�
+	 * 
 	 * @param acceptData
 	 * @param uid
 	 * @param out
@@ -607,19 +608,19 @@
 			out.print(JsonUtil.loadFalseResult(1, "鐢ㄦ埛鏈櫥褰�"));
 			return;
 		}
-		
+
 		String day = TimeUtil.getGernalTime(java.lang.System.currentTimeMillis());
 		List<ShareHotGoods> listHot = shareHotGoodsService.listByDay(day);
 		if (listHot == null) {
-			listHot = new ArrayList<ShareHotGoods>(); 
+			listHot = new ArrayList<ShareHotGoods>();
 		}
-		
-		
+
 		JSONArray array = new JSONArray();
 		Gson gson = JsonUtil.getConvertBigDecimalToStringSubZeroBuilder(new GsonBuilder())
 				.excludeFieldsWithoutExposeAnnotation().setDateFormat("yyyy-MM-dd").create();
-		
-		boolean isNewUser = userInfoExtraService.isNewUser(uid);
+
+		// 鍙栨秷鏂颁汉鑷喘
+		boolean isNewUser = false;// userInfoExtraService.isNewUser(uid);
 		if (isNewUser) {
 			// 鍒ゅ畾涓鸿�佺敤鎴凤細 鏂颁汉鍙浣跨敤浜嗘柊浜虹孩鍖咃紝涔熷氨鏄偅1鍧楅挶锛岄偅涔堬紝浠栫湅鍒扮殑鍒嗕韩鐖嗘涓殑鍟嗗搧-灏卞彧鑳藉垎浜��
 			long countRecord = userTaoLiJinRecordService.countRecordByUid(uid);
@@ -627,33 +628,32 @@
 				isNewUser = false;
 			}
 		}
-		
-		
-		BigDecimal fanLiRate = hongBaoManageService.getFanLiRate();
-		BigDecimal shareRate = hongBaoManageService.getShareRate();
+
+		BigDecimal fanLiRate = hongBaoManageService.getTLJShareRate(System.currentTimeMillis());
+		BigDecimal shareRate = hongBaoManageService.getTLJShareRate(System.currentTimeMillis());
 		for (ShareHotGoods hotGoods : listHot) {
 			TaoBaoGoodsBrief taoBaoGoodsBrief = hotGoods.getGoods();
 			if (taoBaoGoodsBrief == null) {
 				continue;
 			}
-			
+
 			// 璁$畻鎺ㄥ箍绾㈠寘
-			String warningRate = configTaoLiJinService.getValueByKey("warning_value");
+			String warningRate = configTaoLiJinService.getValueByKey("warning_value", new Date());
 			BigDecimal spreadMoney = TaoLiJinUtil.getSpreadMoney(warningRate, taoBaoGoodsBrief);
-			
+
 			// 鎺ㄥ箍绾㈠寘 涓嶈兘灏忎簬1
 			if (spreadMoney.compareTo(new BigDecimal(1.1)) < 0) {
 				continue;
 			}
-			
+
 			GoodsDetailVO detailVO = GoodsDetailVOFactory.convertTaoBao(taoBaoGoodsBrief, null, fanLiRate, shareRate);
 			// 鍘绘帀鏍囩
 			detailVO.setLabels(null);
-						
+
 			MoneyInfoVO moneyInfo = detailVO.getMoneyInfo();
 			OtherInfo otherInfo = new OtherInfo();
 			SpreadHongBao spreadHongBao = new SpreadHongBao();
-			
+
 			// 鏄剧ず绫诲瀷
 			if (isNewUser) {
 				moneyInfo.setMoneyType(1);
@@ -667,26 +667,23 @@
 			detailVO.setMoneyInfo(moneyInfo);
 			otherInfo.setSpreadHongBao(spreadHongBao);
 			detailVO.setOtherInfo(otherInfo);
-			
+
 			array.add(gson.toJson(detailVO));
 		}
-		
-		executor.execute(new Runnable() {
-			@Override
-			public void run() {
-				// 杩囨湡
-				userTaoLiJinOriginService.overdueHongBao(uid);
-			}
-		});
-		
+
+		/*
+		 * executor.execute(new Runnable() {
+		 * 
+		 * @Override public void run() { // 杩囨湡
+		 * userTaoLiJinOriginService.overdueHongBao(uid); } });
+		 */
+
 		JSONObject data = new JSONObject();
 		data.put("count", array.size());
 		data.put("list", array);
 		out.print(JsonUtil.loadTrueResult(data));
 	}
 
-	
-	
 	/**
 	 * 鍒嗕韩鐖嗘鍟嗗搧-闄愪簬娣樼ぜ閲�
 	 * 
@@ -750,18 +747,17 @@
 		data.put("list", array);
 		if (page == 1) {
 			List<SwiperPicture> bannerList = swiperPictureService.getByBannerCard("zigoulijian_banner");
-			
+
 			if (bannerList != null && bannerList.size() > 0)
 				data.put("topPicture", bannerList.get(0).getSrc());
 			else
 				data.put("topPicture", "");
-			
+
 			data.put("ruleUrl", configService.get("zigoulijian_rule"));
 		}
 		out.print(JsonUtil.loadTrueResult(data));
 	}
-	
-	
+
 	/**
 	 * 鍒嗕韩鐖嗘鍟嗗搧-闄愪簬娣樼ぜ閲�
 	 * 
@@ -797,29 +793,26 @@
 				continue;
 			}
 
-
 			GoodsDetailVO detailVO = GoodsDetailVOFactory.convertTaoBao(taoBaoGoodsBrief, null, proportion, proportion);
 			// 鍘绘帀鏍囩
 			detailVO.setLabels(null);
-			
-			
 
 			MoneyInfoVO moneyInfo = detailVO.getMoneyInfo();
 			moneyInfo.setMoneyType(2);
 			detailVO.setMoneyInfo(moneyInfo);
-			
+
 			String hongBao = spreadMoney.toString();
 			ReduceHongBao vo = new ReduceHongBao();
 			vo.setLeft(hotGoods.getLeftHongBaoCount());
-			vo.setMoney(hongBao);
-			vo.setName("浠樻绔嬪噺  楼" + hongBao);
+			vo.setMoney(" 楼" + hongBao);
+			vo.setName("浠樻绔嬪噺 ");
 			vo.setTip("");
 			vo.setTotal(hotGoods.getTotalHongBaoCount());
-			
+
 			OtherInfo otherInfo = new OtherInfo();
 			otherInfo.setReduceHongBao(vo);
 			detailVO.setOtherInfo(otherInfo);
-			
+
 			array.add(gson.toJson(detailVO));
 		}
 
@@ -831,15 +824,38 @@
 		data.put("list", array);
 		if (page == 1) {
 			List<SwiperPicture> bannerList = swiperPictureService.getByBannerCard("zigoulijian_banner");
-			
+
 			if (bannerList != null && bannerList.size() > 0)
 				data.put("topPicture", bannerList.get(0).getSrc());
 			else
 				data.put("topPicture", "");
-			
+
 			data.put("ruleUrl", configService.get("zigoulijian_rule"));
 		}
 		out.print(JsonUtil.loadTrueResult(data));
 	}
+	
+	
+	/**
+	 * 璧犻�佹窐绀奸噾
+	 * @param acceptData
+	 * @param uid
+	 * @param amount
+	 * @param out
+	 */
+	@RequestMapping(value = "giveTLJ", method = RequestMethod.POST)
+	public void giveTLJ(AcceptData acceptData, Long uid, BigDecimal amount, PrintWriter out) {
+		if (uid == null || uid <= 0) {
+			out.print(JsonUtil.loadFalseResult(1, "鐢ㄦ埛鏈櫥褰�"));
+			return;
+		}
+		
+		try {
+			String tips = userTaoLiJinRecordService.giveTaolijin(uid, amount);
+			out.print(JsonUtil.loadTrueResult(tips));
+		} catch (UserTaoLiJinRecordException e) {
+			out.print(JsonUtil.loadFalseResult(1, e.getMsg()));
+		}
+	}
 
 }

--
Gitblit v1.8.0