From 28cf328a098334b51a3e9d2d56f983fb8c862211 Mon Sep 17 00:00:00 2001
From: yujian <yujian@163.com>
Date: 星期六, 23 五月 2020 09:54:38 +0800
Subject: [PATCH] 足迹、收藏订单兼容新需求

---
 fanli/src/main/java/com/yeshi/fanli/util/factory/RedPackDetailFactory.java |   64 ++++++++++++++++++++++++++++----
 1 files changed, 56 insertions(+), 8 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/util/factory/RedPackDetailFactory.java b/fanli/src/main/java/com/yeshi/fanli/util/factory/RedPackDetailFactory.java
index 0966a61..57b53ce 100644
--- a/fanli/src/main/java/com/yeshi/fanli/util/factory/RedPackDetailFactory.java
+++ b/fanli/src/main/java/com/yeshi/fanli/util/factory/RedPackDetailFactory.java
@@ -1,11 +1,13 @@
 package com.yeshi.fanli.util.factory;
 
 import java.math.BigDecimal;
+import java.text.SimpleDateFormat;
 import java.util.Date;
 
 import com.yeshi.fanli.entity.redpack.RedPackDetail;
 import com.yeshi.fanli.entity.redpack.RedPackDetail.RedPackDetailTypeEnum;
 import com.yeshi.fanli.entity.redpack.RedPackExchange;
+import com.yeshi.fanli.entity.redpack.RedPackForbidRecord;
 import com.yeshi.fanli.entity.redpack.RedPackGiveRecord;
 import com.yeshi.fanli.entity.redpack.RedPackWinInvite;
 import com.yeshi.fanli.exception.redpack.RedPackDetailException;
@@ -80,7 +82,53 @@
 		detail.setCreateTime(new Date());
 		return detail;
 	}
+	
+	
+	/**
+	 * 绾㈠寘灏佺
+	 * 
+	 * @param extract
+	 * @return
+	 */
+	public static RedPackDetail createForbid(RedPackForbidRecord record) throws RedPackDetailException {
+		if (record == null)
+			throw new RedPackDetailException(1, "鎻愮幇璁板綍涓嶈兘涓虹┖");
 
+		RedPackDetail detail = new RedPackDetail();
+		detail.setDisplay(true);
+		detail.setUid(record.getUid());
+		detail.setDescInfo(record.getReason());
+		detail.setMoney(new BigDecimal("-" + record.getMoney()));
+		detail.setType(RedPackDetailTypeEnum.forbid);
+		detail.setTitle(RedPackDetailTypeEnum.forbid.getDesc());
+		detail.setIdentifyCode(StringUtil.Md5(RedPackDetailTypeEnum.forbid.name() + ":" + record.getId()));
+		detail.setCreateTime(new Date());
+		return detail;
+	}
+
+	
+	/**
+	 * 绾㈠寘鎵i櫎
+	 * 
+	 * @param extract
+	 * @return
+	 */
+	public static RedPackDetail createDeduct(RedPackForbidRecord record) throws RedPackDetailException {
+		if (record == null)
+			throw new RedPackDetailException(1, "鎻愮幇璁板綍涓嶈兘涓虹┖");
+
+		SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm");
+		RedPackDetail detail = new RedPackDetail();
+		detail.setDisplay(true);
+		detail.setUid(record.getUid());
+		detail.setDescInfo(record.getReason());
+		detail.setMoney(new BigDecimal("-" + record.getMoney()));
+		detail.setType(RedPackDetailTypeEnum.deduct);
+		detail.setTitle(RedPackDetailTypeEnum.deduct.getDesc());
+		detail.setIdentifyCode(StringUtil.Md5(RedPackDetailTypeEnum.deduct.name() + ":" + record.getUid() + format.format(new Date())));
+		detail.setCreateTime(new Date());
+		return detail;
+	}
 	/**
 	 * 璧犻�佸ソ鍙嬫槑缁�
 	 * 
@@ -117,6 +165,7 @@
 		RedPackDetail detail = new RedPackDetail();
 		detail.setId(id);
 		detail.setDisplay(true);
+		detail.setRemark("棰嗗彇浜篒D:" + giveRecord.getReceiveUid());
 		detail.setType(RedPackDetailTypeEnum.giveOthersSucceed);
 		detail.setTitle(RedPackDetailTypeEnum.giveOthersSucceed.getDesc());
 		detail.setIdentifyCode(
@@ -200,19 +249,18 @@
 	 * @return
 	 * @throws RedPackDetailException
 	 */
-	public static RedPackDetail createNewUserReward(RedPackWinInvite winInvite) throws RedPackDetailException {
-		if (winInvite == null)
+	public static RedPackDetail createNewUserReward(Long uid, Integer num, BigDecimal money) throws RedPackDetailException {
+		if (uid == null || num == null || money == null)
 			throw new RedPackDetailException(1, "鑾峰緱璁板綍涓嶈兘涓虹┖");
-
-		// 绾㈠寘鏄庣粏- 閫�鍥炵孩鍖�
+		// 绾㈠寘鏄庣粏- 閫�鍥炵孩鍖�
 		RedPackDetail detail = new RedPackDetail();
 		detail.setDisplay(true);
-		detail.setUid(winInvite.getUid());
-		detail.setMoney(winInvite.getMoney());
-		detail.setDescInfo("瀹屾垚棣栫瑪璁㈠崟");
+		detail.setUid(uid);
+		detail.setMoney(money);
+		detail.setDescInfo("绛惧埌绾㈠寘");
 		detail.setTitle(RedPackDetailTypeEnum.newUserReward.getDesc());
 		detail.setType(RedPackDetailTypeEnum.newUserReward);
-		detail.setIdentifyCode(StringUtil.Md5(RedPackDetailTypeEnum.newUserReward.name() + ":" + winInvite.getId()));
+		detail.setIdentifyCode(StringUtil.Md5(RedPackDetailTypeEnum.newUserReward.name() + ":" + uid +"_" + num));
 		detail.setCreateTime(new Date());
 		return detail;
 	}

--
Gitblit v1.8.0