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 |  173 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 168 insertions(+), 5 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 d3d7268..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,12 +1,15 @@
 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;
 import com.yeshi.fanli.util.StringUtil;
 
@@ -24,7 +27,7 @@
 
 		RedPackDetail detail = new RedPackDetail();
 		detail.setDisplay(false);
-		detail.setDesc("绛夊緟浜哄伐瀹℃牳");
+		detail.setDescInfo("绛夊緟浜哄伐瀹℃牳");
 		detail.setUid(exchange.getUid());
 		detail.setMoney(new BigDecimal("-" + exchange.getMoney()));
 		detail.setType(RedPackDetailTypeEnum.redExchange);
@@ -50,7 +53,7 @@
 		RedPackDetail detail = new RedPackDetail();
 		detail.setId(id);
 		detail.setDisplay(true);
-		detail.setDesc("璇峰埌璐︽埛浣欓涓煡鐪�");
+		detail.setDescInfo("璇峰埌璐︽埛浣欓涓煡鐪�");
 		detail.setType(RedPackDetailTypeEnum.redExchangePass);
 		detail.setTitle(RedPackDetailTypeEnum.redExchangePass.getDesc());
 		detail.setIdentifyCode(StringUtil.Md5(RedPackDetailTypeEnum.redExchangePass.name() + ":" + exchange.getId()));
@@ -72,14 +75,60 @@
 		detail.setDisplay(false);
 		detail.setUid(exchange.getUid());
 		detail.setMoney(exchange.getMoney());
-		detail.setDesc("绾㈠寘浜х敓杩囩▼涓秹瀚岃繚瑙�");
+		detail.setDescInfo("绾㈠寘浜х敓杩囩▼涓秹瀚岃繚瑙�");
 		detail.setTitle(RedPackDetailTypeEnum.redExchangeReject.getDesc());
 		detail.setType(RedPackDetailTypeEnum.redExchangeReject);
 		detail.setIdentifyCode(StringUtil.Md5(RedPackDetailTypeEnum.redExchangeReject.name() + ":" + exchange.getId()));
 		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;
+	}
 	/**
 	 * 璧犻�佸ソ鍙嬫槑缁�
 	 * 
@@ -168,6 +217,7 @@
 	}
 
 	/**
+	 * 鏉挎牀鍟嗗煄浣跨敤
 	 * 
 	 * @param giveRecord
 	 * @return
@@ -182,12 +232,125 @@
 		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));
 		detail.setCreateTime(new Date());
-		detail.setDesc(setName);
+		detail.setDescInfo(setName);
+		return detail;
+	}
+
+	/**
+	 * 鏂颁汉濂栧姳
+	 * 
+	 * @param winInvite
+	 * @return
+	 * @throws RedPackDetailException
+	 */
+	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(uid);
+		detail.setMoney(money);
+		detail.setDescInfo("绛惧埌绾㈠寘");
+		detail.setTitle(RedPackDetailTypeEnum.newUserReward.getDesc());
+		detail.setType(RedPackDetailTypeEnum.newUserReward);
+		detail.setIdentifyCode(StringUtil.Md5(RedPackDetailTypeEnum.newUserReward.name() + ":" + uid +"_" + num));
+		detail.setCreateTime(new Date());
+		return detail;
+	}
+
+	/**
+	 * 绔嬪緱鐜伴噾
+	 * 
+	 * @param winInvite
+	 * @return
+	 * @throws RedPackDetailException
+	 */
+	public static RedPackDetail createInvite(RedPackWinInvite winInvite) throws RedPackDetailException {
+		if (winInvite == null)
+			throw new RedPackDetailException(1, "鑾峰緱璁板綍涓嶈兘涓虹┖");
+
+		// 绾㈠寘鏄庣粏- 閫�鍥炵孩鍖�
+		RedPackDetail detail = new RedPackDetail();
+		detail.setDisplay(true);
+		detail.setUid(winInvite.getUid());
+		detail.setMoney(winInvite.getMoney());
+		detail.setDescInfo("鎴愬姛閭�璇峰ソ鍙�");
+		detail.setTitle(RedPackDetailTypeEnum.invite.getDesc());
+		detail.setType(RedPackDetailTypeEnum.invite);
+		detail.setIdentifyCode(StringUtil.Md5(RedPackDetailTypeEnum.invite.name() + ":" + winInvite.getId()));
+		detail.setCreateTime(new Date());
+		return detail;
+	}
+
+	/**
+	 * 閫掑濂栧姳 + 濂藉弸瀹屾垚鍒嗕韩璁㈠崟
+	 * 
+	 * @param winInvite
+	 * @return
+	 * @throws RedPackDetailException
+	 */
+	public static RedPackDetail createIncreaseReward(RedPackWinInvite winInvite) throws RedPackDetailException {
+		if (winInvite == null)
+			throw new RedPackDetailException(1, "鑾峰緱璁板綍涓嶈兘涓虹┖");
+
+		// 绾㈠寘鏄庣粏- 閫�鍥炵孩鍖�
+		RedPackDetail detail = new RedPackDetail();
+		detail.setDisplay(true);
+		detail.setUid(winInvite.getUid());
+		detail.setMoney(winInvite.getMoney());
+		detail.setDescInfo("濂藉弸瀹屾垚璁㈠崟");
+		detail.setTitle(RedPackDetailTypeEnum.increaseReward.getDesc());
+		detail.setType(RedPackDetailTypeEnum.increaseReward);
+		detail.setIdentifyCode(StringUtil.Md5(RedPackDetailTypeEnum.increaseReward.name() + ":" + winInvite.getId()));
+		detail.setCreateTime(new Date());
+		return detail;
+	}
+
+	/**
+	 * 杩炵画濂栧姳 + 濂藉弸瀹屾垚鍒嗕韩璁㈠崟
+	 * 
+	 * @param winInvite
+	 * @return
+	 * @throws RedPackDetailException
+	 */
+	public static RedPackDetail createSeriesReward(RedPackWinInvite winInvite) throws RedPackDetailException {
+		if (winInvite == null)
+			throw new RedPackDetailException(1, "鑾峰緱璁板綍涓嶈兘涓虹┖");
+
+		// 绾㈠寘鏄庣粏- 閫�鍥炵孩鍖�
+		RedPackDetail detail = new RedPackDetail();
+		detail.setDisplay(true);
+		detail.setUid(winInvite.getUid());
+		detail.setMoney(winInvite.getMoney());
+		detail.setDescInfo("濂藉弸瀹屾垚璁㈠崟");
+		detail.setTitle(RedPackDetailTypeEnum.seriesReward.getDesc());
+		detail.setType(RedPackDetailTypeEnum.seriesReward);
+		detail.setIdentifyCode(StringUtil.Md5(RedPackDetailTypeEnum.seriesReward.name() + ":" + winInvite.getId()));
+		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)
+			throw new RedPackDetailException(1, "璁㈠崟ID涓嶈兘涓虹┖");
+		if (uid == null)
+			throw new RedPackDetailException(1, "鐢ㄦ埛ID涓嶈兘涓虹┖");
+		RedPackDetail detail = new RedPackDetail();
+		detail.setDisplay(false);
+		detail.setUid(uid);
+		detail.setMoney(money);
+		detail.setType(RedPackDetailTypeEnum.shopOrderDrawBack);
+		detail.setTitle(title);
+		detail.setIdentifyCode(StringUtil.Md5(RedPackDetailTypeEnum.shopOrderDrawBack.name() + "-" + orderId));
+		detail.setCreateTime(new Date());
+		detail.setDescInfo(setName);
 		return detail;
 	}
 

--
Gitblit v1.8.0