From f4a0f2acc63d7785eab108419a4e16f5f688cb95 Mon Sep 17 00:00:00 2001
From: yujian <yujian@163.com>
Date: 星期六, 18 一月 2020 12:06:27 +0800
Subject: [PATCH] 用户注册信息

---
 fanli/src/main/java/com/yeshi/fanli/util/factory/RedPackDetailFactory.java |   93 +++++++++++++++++++++++++++++++++++-----------
 1 files changed, 71 insertions(+), 22 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 29291de..e97dc28 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;
@@ -25,7 +27,7 @@
 
 		RedPackDetail detail = new RedPackDetail();
 		detail.setDisplay(false);
-		detail.setDescInfo( "绛夊緟浜哄伐瀹℃牳");
+		detail.setDescInfo("绛夊緟浜哄伐瀹℃牳");
 		detail.setUid(exchange.getUid());
 		detail.setMoney(new BigDecimal("-" + exchange.getMoney()));
 		detail.setType(RedPackDetailTypeEnum.redExchange);
@@ -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;
+	}
 	/**
 	 * 璧犻�佸ソ鍙嬫槑缁�
 	 * 
@@ -169,6 +217,7 @@
 	}
 
 	/**
+	 * 鏉挎牀鍟嗗煄浣跨敤
 	 * 
 	 * @param giveRecord
 	 * @return
@@ -183,7 +232,7 @@
 		RedPackDetail detail = new RedPackDetail();
 		detail.setDisplay(false);
 		detail.setUid(uid);
-		detail.setMoney(money);
+		detail.setMoney(new BigDecimal(0).subtract(money));
 		detail.setType(RedPackDetailTypeEnum.useByShopOrder);
 		detail.setTitle(title);
 		detail.setIdentifyCode(StringUtil.Md5(RedPackDetailTypeEnum.useByShopOrder.name() + "-" + orderId));
@@ -191,33 +240,33 @@
 		detail.setDescInfo(setName);
 		return detail;
 	}
-	
-	
+
 	/**
-	 *  鏂颁汉濂栧姳
+	 * 鏂颁汉濂栧姳
+	 * 
 	 * @param winInvite
 	 * @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;
 	}
-	
+
 	/**
 	 * 绔嬪緱鐜伴噾
+	 * 
 	 * @param winInvite
 	 * @return
 	 * @throws RedPackDetailException
@@ -225,7 +274,7 @@
 	public static RedPackDetail createInvite(RedPackWinInvite winInvite) throws RedPackDetailException {
 		if (winInvite == null)
 			throw new RedPackDetailException(1, "鑾峰緱璁板綍涓嶈兘涓虹┖");
-		
+
 		// 绾㈠寘鏄庣粏- 閫�鍥炵孩鍖�
 		RedPackDetail detail = new RedPackDetail();
 		detail.setDisplay(true);
@@ -238,9 +287,10 @@
 		detail.setCreateTime(new Date());
 		return detail;
 	}
-	
+
 	/**
 	 * 閫掑濂栧姳 + 濂藉弸瀹屾垚鍒嗕韩璁㈠崟
+	 * 
 	 * @param winInvite
 	 * @return
 	 * @throws RedPackDetailException
@@ -248,7 +298,7 @@
 	public static RedPackDetail createIncreaseReward(RedPackWinInvite winInvite) throws RedPackDetailException {
 		if (winInvite == null)
 			throw new RedPackDetailException(1, "鑾峰緱璁板綍涓嶈兘涓虹┖");
-		
+
 		// 绾㈠寘鏄庣粏- 閫�鍥炵孩鍖�
 		RedPackDetail detail = new RedPackDetail();
 		detail.setDisplay(true);
@@ -261,10 +311,10 @@
 		detail.setCreateTime(new Date());
 		return detail;
 	}
-	
-	
+
 	/**
 	 * 杩炵画濂栧姳 + 濂藉弸瀹屾垚鍒嗕韩璁㈠崟
+	 * 
 	 * @param winInvite
 	 * @return
 	 * @throws RedPackDetailException
@@ -272,7 +322,7 @@
 	public static RedPackDetail createSeriesReward(RedPackWinInvite winInvite) throws RedPackDetailException {
 		if (winInvite == null)
 			throw new RedPackDetailException(1, "鑾峰緱璁板綍涓嶈兘涓虹┖");
-		
+
 		// 绾㈠寘鏄庣粏- 閫�鍥炵孩鍖�
 		RedPackDetail detail = new RedPackDetail();
 		detail.setDisplay(true);
@@ -285,8 +335,7 @@
 		detail.setCreateTime(new Date());
 		return detail;
 	}
-	
-	
+
 	public static RedPackDetail createShopOrderDrawBack(Long orderId, Long uid, String title, String setName,
 			BigDecimal money) throws RedPackDetailException {
 		if (orderId == null)

--
Gitblit v1.8.0