From 1afddff1f453dfe72e75d73917c69305cac0d58d Mon Sep 17 00:00:00 2001
From: yujian <yujian@163.com>
Date: 星期一, 18 五月 2020 14:13:30 +0800
Subject: [PATCH] 成长类型调整

---
 fanli/src/main/java/com/yeshi/fanli/controller/client/v2/UserMoneyControllerV2.java |   61 ++++++++++++++++++++++++++----
 1 files changed, 52 insertions(+), 9 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/UserMoneyControllerV2.java b/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/UserMoneyControllerV2.java
index 31039f3..5afc853 100644
--- a/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/UserMoneyControllerV2.java
+++ b/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/UserMoneyControllerV2.java
@@ -24,8 +24,11 @@
 import com.google.gson.JsonPrimitive;
 import com.google.gson.JsonSerializationContext;
 import com.google.gson.JsonSerializer;
+import com.google.gson.reflect.TypeToken;
 import com.yeshi.fanli.entity.accept.AcceptData;
 import com.yeshi.fanli.entity.bus.user.Extract;
+import com.yeshi.fanli.entity.bus.user.PreviewInfo;
+import com.yeshi.fanli.entity.bus.user.PreviewInfo.PreviewEnum;
 import com.yeshi.fanli.entity.bus.user.UserInfo;
 import com.yeshi.fanli.entity.money.TeamEincomeRecord;
 import com.yeshi.fanli.entity.money.UserMoneyDetail.UserMoneyDetailTypeEnum;
@@ -39,6 +42,7 @@
 import com.yeshi.fanli.service.inter.money.extract.ExtractService;
 import com.yeshi.fanli.service.inter.order.HongBaoV2Service;
 import com.yeshi.fanli.service.inter.order.OrderMoneyDailyCountService;
+import com.yeshi.fanli.service.inter.user.PreviewInfoService;
 import com.yeshi.fanli.service.inter.user.UserInfoExtraService;
 import com.yeshi.fanli.service.inter.user.UserInfoService;
 import com.yeshi.fanli.util.Constant;
@@ -90,6 +94,10 @@
 
 	@Resource
 	private TeamEincomeRecordService teamEincomeRecordService;
+	
+	@Resource
+	private PreviewInfoService previewInfoService;
+	
 
 	private Gson getGson() {
 		GsonBuilder builder = new GsonBuilder();
@@ -121,13 +129,36 @@
 			out.print(JsonUtil.loadFalseResult(1, "鐢ㄦ埛鏈櫥褰�"));
 			return;
 		}
+		
+		// VIP鏁版嵁棰勮
+		MoneyStatisticVO vo = null;
+		String redisContent = previewInfoService.getRedisContent(uid, PreviewEnum.moneyInfo);
+		if (!StringUtil.isNullOrEmpty(redisContent)) {
+			vo = new Gson().fromJson(redisContent, MoneyStatisticVO.class);
+			if (vo != null) {
+				vo.setLink(configService.get(ConfigKeyEnum.autoExtractHelpUrl.getKey()));
+				vo.setExtractDesc("鎻愮幇閲戦灏辨槸宸叉垚鍔熸彁鐜板埌鏀粯瀹濈殑璧勯噾");
+				vo.setMoneyArrivalDesc("璁㈠崟宸插埌璐﹀悗鎻愮幇鏃堕棿鍜岄噾棰濆潎涓嶅彈闄愬埗");
+			}
+		}
+		
+		if (vo == null) {
+			vo = createMoneyStatistic(uid);
+		}
+		
+		Gson gson = getGson();
+		out.print(JsonUtil.loadTrueResult(gson.toJson(vo)));
+	}
+	
+	
+	public MoneyStatisticVO createMoneyStatistic(Long uid) {
 		UserInfo user = userInfoService.getUserById(uid);
 
 		MoneyStatisticVO vo = new MoneyStatisticVO();
 		vo.setLink(configService.get(ConfigKeyEnum.autoExtractHelpUrl.getKey()));
 		vo.setBalanceMoney(user.getMyHongBao());
-		vo.setExtractDesc("鎻愮幇閲戦灏辨槸宸叉垚鍔熻浆璐﹀埌鎻愮幇鏀粯瀹濈殑璧勯噾銆�");
-		vo.setMoneyArrivalDesc("璧勯噾宸插埌璐﹀悗鎻愮幇鏃堕棿涓嶅彈闄愬埗銆侀噾棰濅笉鍙楅檺鍒躲��");
+		vo.setExtractDesc("鎻愮幇閲戦灏辨槸宸叉垚鍔熸彁鐜板埌鏀粯瀹濈殑璧勯噾");
+		vo.setMoneyArrivalDesc("璁㈠崟宸插埌璐﹀悗鎻愮幇鏃堕棿鍜岄噾棰濆潎涓嶅彈闄愬埗");
 
 		// 鑾峰彇鎻愮幇涓殑淇℃伅
 		BigDecimal extractingMoney = extractService.sumVerifyingMoney(uid);
@@ -234,10 +265,10 @@
 				.convertToTimeTemp(calendar.get(Calendar.YEAR) + "-" + (calendar.get(Calendar.MONTH) + 1), "yyyy-M"));
 		calendar.add(Calendar.MONTH, -1);
 		vo.setMonthPredict(cratePredictVO(orderMoneyDailyCountService.query(uid, minDate, maxDate)));
-
-		Gson gson = getGson();
-		out.print(JsonUtil.loadTrueResult(gson.toJson(vo)));
+		return vo;
 	}
+	
+	
 
 	@RequestMapping(value = "getUserMoneyInfo")
 	public void getUserMoneyInfo(AcceptData acceptData, Long uid, PrintWriter out) {
@@ -298,10 +329,22 @@
 			return;
 		}
 
-		List<Extract> list = extractService.getExtractSucceedRecord(page, Constant.PAGE_SIZE, uid);
-		if (list == null) {
-			list = new ArrayList<>();
+		List<Extract> list = null;
+		String redisContent = previewInfoService.getRedisContent(uid, PreviewEnum.extractRecord);
+		if (!StringUtil.isNullOrEmpty(redisContent)) {
+			Gson gson = new Gson();
+			list = gson.fromJson(redisContent, new TypeToken<ArrayList<Extract>>() {}.getType());
 		}
+		
+		// 鏌ヨ鐪熷疄
+		long count = 0;
+		if (list == null) {
+			list = extractService.getExtractSucceedRecord(page, Constant.PAGE_SIZE, uid);
+			count = extractService.countExtractSucceedRecord(uid);
+		}
+			
+		if (list == null)
+			list = new ArrayList<>();
 
 		JSONArray JSONArray = new JSONArray();
 		for (Extract extract : list) {
@@ -320,7 +363,7 @@
 		}
 
 		JSONObject json = new JSONObject();
-		json.put("count", extractService.countExtractSucceedRecord(uid));
+		json.put("count", count == 0 ? list.size() : 0);
 		json.put("list", JSONArray);
 		out.print(JsonUtil.loadTrueResult(json));
 	}

--
Gitblit v1.8.0