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/util/factory/UserMoneyDetailFactory.java |  109 +++++++++++++++++++++++++++++++++++++++++++++++-------
 1 files changed, 94 insertions(+), 15 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/util/factory/UserMoneyDetailFactory.java b/fanli/src/main/java/com/yeshi/fanli/util/factory/UserMoneyDetailFactory.java
index 277a7a4..4649c6e 100644
--- a/fanli/src/main/java/com/yeshi/fanli/util/factory/UserMoneyDetailFactory.java
+++ b/fanli/src/main/java/com/yeshi/fanli/util/factory/UserMoneyDetailFactory.java
@@ -12,8 +12,10 @@
 import com.yeshi.fanli.entity.money.UserMoneyDetail.UserMoneyDetailTypeEnum;
 import com.yeshi.fanli.entity.taobao.TaoBaoWeiQuanDrawBack;
 import com.yeshi.fanli.exception.money.UserMoneyDetailException;
+import com.yeshi.fanli.util.Constant;
 import com.yeshi.fanli.util.StringUtil;
 import com.yeshi.fanli.util.TimeUtil;
+import com.yeshi.fanli.util.account.UserUtil;
 
 public class UserMoneyDetailFactory {
 
@@ -23,7 +25,7 @@
 	 * @param hongBaoList
 	 * @return
 	 */
-	public static UserMoneyDetail createFanLi(Long uid, String orderId, int orderType, Long hbId, BigDecimal money)
+	public static UserMoneyDetail createFanLi(Long uid, String orderId, int orderType, String hbIds, BigDecimal money)
 			throws UserMoneyDetailException {
 
 		if (StringUtil.isNullOrEmpty(orderId))
@@ -38,13 +40,14 @@
 		UserMoneyDetail detail = new UserMoneyDetail();
 		detail.setCreateTime(new Date());
 		detail.setIdentifyCode(StringUtil
-				.Md5(UserMoneyDetailTypeEnum.fanli.name() + "-" + uid + "-" + orderType + "-" + orderId + "-" + hbId));
+				.Md5(UserMoneyDetailTypeEnum.fanli.name() + "-" + uid + "-" + orderType + "-" + orderId + "-" + hbIds));
 		detail.setMoney(money);
 		detail.setTitle(UserMoneyDetailTypeEnum.fanli.getDesc());
 		detail.setType(UserMoneyDetailTypeEnum.fanli);
 		detail.setDescInfo("璁㈠崟鍙凤細" + orderId);
 		detail.setUpdateTime(new Date());
 		detail.setUserInfo(new UserInfo(uid));
+		detail.setOrderType(orderType);
 		return detail;
 	}
 
@@ -60,8 +63,8 @@
 	 * @return
 	 * @throws UserMoneyDetailException
 	 */
-	public static UserMoneyDetail createShare(Long uid, int validCount, int weiQuanCount, int invalidCount,
-			BigDecimal money, Date time) throws UserMoneyDetailException {
+	public static UserMoneyDetail createShare(Long uid, int orderType, int validCount, int weiQuanCount,
+			int invalidCount, BigDecimal money, Date time) throws UserMoneyDetailException {
 		if (money == null)
 			throw new UserMoneyDetailException(1, "杩斿埄閲戦涓虹┖");
 
@@ -75,7 +78,7 @@
 		ca.setTime(time);
 		ca.add(Calendar.MONTH, -1);
 
-		String timeF = TimeUtil.getGernalTime(ca.getTimeInMillis(), "yyyy骞碝M鏈�");
+		String timeF = TimeUtil.getGernalTime(ca.getTimeInMillis(), "yyyy.M");
 
 		UserMoneyDetail detail = new UserMoneyDetail();
 		detail.setCreateTime(new Date());
@@ -86,6 +89,7 @@
 		detail.setDescInfo(String.format("鏈夋晥璁㈠崟:%s绗�  缁存潈璁㈠崟:%s绗�  澶辨晥璁㈠崟:%s绗�", validCount, weiQuanCount, invalidCount));
 		detail.setUpdateTime(new Date());
 		detail.setUserInfo(new UserInfo(uid));
+		detail.setOrderType(orderType);
 		return detail;
 	}
 
@@ -101,8 +105,8 @@
 	 * @return
 	 * @throws UserMoneyDetailException
 	 */
-	public static UserMoneyDetail createInvite(Long uid, int validCount, int weiQuanCount, int invalidCount,
-			BigDecimal money, Date time) throws UserMoneyDetailException {
+	public static UserMoneyDetail createInvite(Long uid, int orderType, int validCount, int weiQuanCount,
+			int invalidCount, BigDecimal money, Date time) throws UserMoneyDetailException {
 		if (money == null)
 			throw new UserMoneyDetailException(1, "杩斿埄閲戦涓虹┖");
 
@@ -116,7 +120,7 @@
 		ca.setTime(time);
 		ca.add(Calendar.MONTH, -1);
 
-		String timeF = TimeUtil.getGernalTime(ca.getTimeInMillis(), "yyyy骞碝M鏈�");
+		String timeF = TimeUtil.getGernalTime(ca.getTimeInMillis(), "yyyy.M");
 
 		UserMoneyDetail detail = new UserMoneyDetail();
 		detail.setCreateTime(new Date());
@@ -128,9 +132,9 @@
 			detail.setDescInfo(String.format("鏈夋晥璁㈠崟:%s绗�   缁存潈璁㈠崟:%s绗�   澶辨晥璁㈠崟:%s绗�", validCount, weiQuanCount, invalidCount));
 		detail.setUpdateTime(new Date());
 		detail.setUserInfo(new UserInfo(uid));
+		detail.setOrderType(orderType);
 		return detail;
 	}
-
 
 	/**
 	 * 杩斿埄缁存潈
@@ -168,6 +172,7 @@
 		detail.setDescInfo("璁㈠崟鍙凤細" + drawBack.getOrderId());
 		detail.setUpdateTime(new Date());
 		detail.setUserInfo(new UserInfo(uid));
+		detail.setOrderType(Constant.SOURCE_TYPE_TAOBAO);
 		return detail;
 	}
 
@@ -204,9 +209,10 @@
 		detail.setSubTitle("璁㈠崟缁存潈");
 		detail.setType(UserMoneyDetailTypeEnum.shareWeiQuan);
 		detail.setSourceIdentifyId(drawBack.getId());
-		detail.setDescInfo("璁㈠崟鍙凤細" + drawBack.getOrderId());
+		detail.setDescInfo("璁㈠崟鍙凤細" + UserUtil.filterOrderId(drawBack.getOrderId()));
 		detail.setUpdateTime(new Date());
 		detail.setUserInfo(new UserInfo(uid));
+		detail.setOrderType(Constant.SOURCE_TYPE_TAOBAO);
 		return detail;
 	}
 
@@ -243,9 +249,10 @@
 		detail.setSubTitle("璁㈠崟缁存潈");
 		detail.setType(UserMoneyDetailTypeEnum.inviteWeiQuan);
 		detail.setSourceIdentifyId(drawBack.getId());
-		detail.setDescInfo("璁㈠崟鍙凤細" + drawBack.getOrderId());
+		detail.setDescInfo("璁㈠崟鍙凤細" + UserUtil.filterOrderId(drawBack.getOrderId()));
 		detail.setUpdateTime(new Date());
 		detail.setUserInfo(new UserInfo(uid));
+		detail.setOrderType(Constant.SOURCE_TYPE_TAOBAO);
 		return detail;
 	}
 
@@ -407,8 +414,6 @@
 		return createHongBaoDeduct(hb, "鏂颁汉绾㈠寘鎵i櫎");
 	}
 
-
-
 	/**
 	 * 杩斿埄濂栧姳
 	 * 
@@ -418,7 +423,7 @@
 	 * @return
 	 * @throws UserMoneyDetailException
 	 */
-	public static UserMoneyDetail createOrderReward(String orderId, BigDecimal money, UserInfo user)
+	public static UserMoneyDetail createOrderReward(String orderId, int orderType, BigDecimal money, UserInfo user)
 			throws UserMoneyDetailException {
 		if (StringUtil.isNullOrEmpty(orderId))
 			throw new UserMoneyDetailException(1, "璁㈠崟鍙蜂笉鑳戒负绌�");
@@ -435,7 +440,81 @@
 		detail.setType(UserMoneyDetailTypeEnum.orderReward);
 		detail.setUpdateTime(new Date());
 		detail.setUserInfo(user);
-//		detail.setDescInfo("璁㈠崟鍙�:" + orderId);
+		detail.setOrderType(orderType);
+		// detail.setDescInfo("璁㈠崟鍙�:" + orderId);
+		return detail;
+	}
+
+	/**
+	 * 璁㈠崟閲嶅缁熻閫�娆�
+	 * 
+	 * @param orderId
+	 * @param money
+	 * @param user
+	 * @return
+	 * @throws UserMoneyDetailException
+	 */
+	public static UserMoneyDetail createRepeatStatistic(String orderId, int orderType, BigDecimal money, UserInfo user)
+			throws UserMoneyDetailException {
+		if (StringUtil.isNullOrEmpty(orderId))
+			throw new UserMoneyDetailException(1, "璁㈠崟鍙蜂笉鑳戒负绌�");
+		if (user == null)
+			throw new UserMoneyDetailException(1, "UID涓嶈兘涓虹┖");
+		if (money == null)
+			throw new UserMoneyDetailException(1, "閲戦涓嶈兘涓虹┖");
+
+		UserMoneyDetail detail = new UserMoneyDetail();
+		detail.setCreateTime(new Date());
+		detail.setIdentifyCode(
+				StringUtil.Md5(UserMoneyDetailTypeEnum.repeatStatistic.name() + "-" + orderId + "-" + user.getId()));
+		detail.setMoney(money);
+		detail.setTitle(UserMoneyDetailTypeEnum.repeatStatistic.getDesc());
+		detail.setType(UserMoneyDetailTypeEnum.repeatStatistic);
+		detail.setUpdateTime(new Date());
+		detail.setUserInfo(user);
+		detail.setDescInfo("璁㈠崟鍙�:" + orderId);
+		detail.setOrderType(orderType);
+		return detail;
+	}
+
+	public static UserMoneyDetail createSystemEqualize(String desc, BigDecimal money, UserInfo user)
+			throws UserMoneyDetailException {
+		if (user == null)
+			throw new UserMoneyDetailException(1, "UID涓嶈兘涓虹┖");
+		if (money == null)
+			throw new UserMoneyDetailException(1, "閲戦涓嶈兘涓虹┖");
+
+		UserMoneyDetail detail = new UserMoneyDetail();
+		detail.setCreateTime(new Date());
+		detail.setIdentifyCode(StringUtil.Md5(
+				UserMoneyDetailTypeEnum.systemEqualize.name() + "-" + System.currentTimeMillis() + "-" + user.getId()));
+		detail.setMoney(money);
+		detail.setTitle(UserMoneyDetailTypeEnum.systemEqualize.getDesc());
+		detail.setType(UserMoneyDetailTypeEnum.systemEqualize);
+		detail.setUpdateTime(new Date());
+		detail.setUserInfo(user);
+		if (!StringUtil.isNullOrEmpty(desc)) {
+			detail.setDescInfo(desc);
+		}
+		return detail;
+	}
+
+	public static UserMoneyDetail createScoreConvert(BigDecimal money, UserInfo user) throws UserMoneyDetailException {
+		if (user == null)
+			throw new UserMoneyDetailException(1, "UID涓嶈兘涓虹┖");
+		if (money == null)
+			throw new UserMoneyDetailException(1, "閲戦涓嶈兘涓虹┖");
+
+		UserMoneyDetail detail = new UserMoneyDetail();
+		detail.setCreateTime(new Date());
+		detail.setIdentifyCode(StringUtil.Md5(
+				UserMoneyDetailTypeEnum.scoreConvert.name() + "-" + System.currentTimeMillis() + "-" + user.getId()));
+		detail.setMoney(money);
+		detail.setTitle(UserMoneyDetailTypeEnum.scoreConvert.getDesc());
+		detail.setType(UserMoneyDetailTypeEnum.scoreConvert);
+		detail.setUpdateTime(new Date());
+		detail.setUserInfo(user);
+
 		return detail;
 	}
 

--
Gitblit v1.8.0