From 1fd8f11537bb74c1f7e611e35a766cbbd34eff05 Mon Sep 17 00:00:00 2001
From: yujian <yujian@163.com>
Date: 星期六, 07 十二月 2019 18:14:43 +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/UserAccountControllerV2.java |   47 ++++++++++++++++++++++++++++++++---------------
 1 files changed, 32 insertions(+), 15 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/UserAccountControllerV2.java b/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/UserAccountControllerV2.java
index bf5bda6..6d23e88 100644
--- a/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/UserAccountControllerV2.java
+++ b/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/UserAccountControllerV2.java
@@ -1,6 +1,7 @@
 package com.yeshi.fanli.controller.client.v2;
 
 import java.io.PrintWriter;
+import java.lang.reflect.Type;
 import java.math.BigDecimal;
 import java.text.ParseException;
 import java.text.SimpleDateFormat;
@@ -16,6 +17,12 @@
 import org.springframework.web.bind.annotation.RequestMethod;
 import org.yeshi.utils.JsonUtil;
 
+import com.google.gson.Gson;
+import com.google.gson.GsonBuilder;
+import com.google.gson.JsonElement;
+import com.google.gson.JsonPrimitive;
+import com.google.gson.JsonSerializationContext;
+import com.google.gson.JsonSerializer;
 import com.yeshi.fanli.entity.accept.AcceptData;
 import com.yeshi.fanli.entity.bus.user.SMSHistory;
 import com.yeshi.fanli.entity.bus.user.UserInfo;
@@ -363,10 +370,7 @@
 			return;
 		}
 		//
-		String inviteCode = "";
-		UserInfoExtra userInfoExtra = userInfoExtraService.getUserInfoExtra(uid);
-		if (userInfoExtra != null && !StringUtil.isNullOrEmpty(userInfoExtra.getInviteCode()))
-			inviteCode = userInfoExtra.getInviteCode();
+		String inviteCode = userInfoExtraService.getInviteCodeByUid(uid);
 
 		UserVipRateVO vo = new UserVipRateVO();
 		vo.setId(uid);
@@ -405,17 +409,15 @@
 		if (userVIPInfo != null && userVIPInfo.getState() != null
 				&& userVIPInfo.getState() == UserVIPInfo.STATE_SUCCESS) { // VIP
 			vo.setSuccessTime(TimeUtil.getGernalTime(userVIPInfo.getSuccessTime().getTime(), "yyyy.MM.dd"));
-			vo.setConserveMoney(finishMoney.setScale(2));
-			vo.setEarnMoney(MoneyBigDecimalUtil.add(rewardShare, rewardInvite).setScale(2));
+			vo.setConserveMoney(finishMoney);
+			vo.setEarnMoney(MoneyBigDecimalUtil.add(rewardShare, rewardInvite));
 		} else {
 			BigDecimal rate1 = new BigDecimal(5);
 			BigDecimal rate2 = new BigDecimal(12);
-			vo.setConserveMoney(
-					MoneyBigDecimalUtil.mul2(finishMoney, MoneyBigDecimalUtil.div(rate1, rate2)).setScale(2));
-			vo.setEarnMoney(MoneyBigDecimalUtil.mul2(rewardShare, MoneyBigDecimalUtil.div(rate1, rate2)).setScale(2));
+			vo.setConserveMoney(MoneyBigDecimalUtil.mul2(finishMoney, MoneyBigDecimalUtil.div(rate1, rate2)));
+			vo.setEarnMoney(MoneyBigDecimalUtil.mul2(rewardShare, MoneyBigDecimalUtil.div(rate1, rate2)));
 		}
-
-		vo.setFinishMoney(finishMoney.setScale(2));
+		vo.setFinishMoney(finishMoney);
 
 		// 浼氬憳瑙勫垯鎵ц鏃堕棿
 		String limtDate = userVipConfigService.getValueByKey("vip_execute_time");
@@ -430,7 +432,7 @@
 		list.add(BanLiShopOrder.STATE_SUCCESS);
 		BigDecimal payMoney = new BigDecimal(userVipConfigService.getValueByKey("require_order_pay"));
 
-		vo.setFinishGoldCoin(integralDetailService.getCumulativeMoney(uid));
+		vo.setFinishGoldCoin(Long.parseLong(integralDetailService.getCumulativeMoney(uid).setScale(0).toString()));
 		vo.setFinishTeam(hongBaoV2CountService.countValidOrderTeamUserByUid(uid, executeDate.getTime(), payMoney));
 		vo.setFinishHongBao(banLiShopOrderService.countByUidAndState(uid, list));
 
@@ -443,12 +445,27 @@
 		}
 		vo.setLimitHongBao(Long.parseLong(userVipConfigService.getValueByKey("require_shop_buy")));
 		vo.setLimitMoney(new BigDecimal(userVipConfigService.getValueByKey("require_fan_money")));
-		vo.setLimitgoldCoin(new BigDecimal(userVipConfigService.getValueByKey("require_gold_coin")));
+		vo.setLimitgoldCoin(Long.parseLong(userVipConfigService.getValueByKey("require_gold_coin")));
 
+		GsonBuilder gsonBuilder = new GsonBuilder();
+		gsonBuilder.registerTypeAdapter(BigDecimal.class, new JsonSerializer<BigDecimal>() {
+			@Override
+			public JsonElement serialize(BigDecimal value, Type theType, JsonSerializationContext context) {
+				if (value == null) {
+					return new JsonPrimitive("");
+				} else {
+					// 淇濈暀2浣嶅皬鏁�
+					value = value.setScale(2);
+					return new JsonPrimitive(value.toString());
+				}
+			}
+		});
+		Gson gson = gsonBuilder.create();
+		
 		if (!StringUtil.isNullOrEmpty(callback)) {
-			out.print(JsonUtil.loadJSONP(callback, JsonUtil.loadTrueResult(vo)));
+			out.print(JsonUtil.loadJSONP(callback, JsonUtil.loadTrueResult(gson.toJson(vo))));
 		} else {
-			out.print(JsonUtil.loadTrueResult(vo));
+			out.print(JsonUtil.loadTrueResult(gson.toJson(vo)));
 		}
 	}
 

--
Gitblit v1.8.0