From 30d8e227e8d823b6c38c3b9c90ac2df03b63befe Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期二, 25 二月 2025 16:41:22 +0800 Subject: [PATCH] 淘宝转链接口更新 --- fanli/src/main/java/com/yeshi/fanli/util/factory/RedPackDetailFactory.java | 691 +++++++++++++++++++++++++++++++------------------------- 1 files changed, 381 insertions(+), 310 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..71454cf 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,310 +1,381 @@ -package com.yeshi.fanli.util.factory; - -import java.math.BigDecimal; -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.RedPackGiveRecord; -import com.yeshi.fanli.entity.redpack.RedPackWinInvite; -import com.yeshi.fanli.exception.redpack.RedPackDetailException; -import com.yeshi.fanli.util.StringUtil; - -public class RedPackDetailFactory { - - /** - * 绾㈠寘鎻愮幇 - * - * @param extract - * @return - */ - public static RedPackDetail createExchange(RedPackExchange exchange) throws RedPackDetailException { - if (exchange == null) - throw new RedPackDetailException(1, "鎻愮幇璁板綍涓嶈兘涓虹┖"); - - RedPackDetail detail = new RedPackDetail(); - detail.setDisplay(false); - detail.setDescInfo("绛夊緟浜哄伐瀹℃牳"); - detail.setUid(exchange.getUid()); - detail.setMoney(new BigDecimal("-" + exchange.getMoney())); - detail.setType(RedPackDetailTypeEnum.redExchange); - detail.setTitle(RedPackDetailTypeEnum.redExchange.getDesc()); - detail.setIdentifyCode(StringUtil.Md5(RedPackDetailTypeEnum.redExchange.name() + ":" + exchange.getId())); - detail.setCreateTime(new Date()); - return detail; - } - - /** - * 绾㈠寘鎻愮幇閫氳繃 - * - * @param extract - * @return - */ - public static RedPackDetail updateExchangePass(Long id, RedPackExchange exchange) throws RedPackDetailException { - if (id == null) - throw new RedPackDetailException(1, "鏄庣粏ID涓嶈兘涓虹┖"); - - if (exchange == null) - throw new RedPackDetailException(1, "鎻愮幇璁板綍涓嶈兘涓虹┖"); - - RedPackDetail detail = new RedPackDetail(); - detail.setId(id); - detail.setDisplay(true); - detail.setDescInfo("璇峰埌璐︽埛浣欓涓煡鐪�"); - detail.setType(RedPackDetailTypeEnum.redExchangePass); - detail.setTitle(RedPackDetailTypeEnum.redExchangePass.getDesc()); - detail.setIdentifyCode(StringUtil.Md5(RedPackDetailTypeEnum.redExchangePass.name() + ":" + exchange.getId())); - return detail; - } - - /** - * 绾㈠寘鎻愮幇鎷掔粷 - * - * @param extract - * @return - */ - public static RedPackDetail createExchangeReject(RedPackExchange exchange) throws RedPackDetailException { - if (exchange == null) - throw new RedPackDetailException(1, "鎻愮幇璁板綍涓嶈兘涓虹┖"); - - // 绾㈠寘鏄庣粏- 閫�鍥炵孩鍖� - RedPackDetail detail = new RedPackDetail(); - detail.setDisplay(false); - detail.setUid(exchange.getUid()); - detail.setMoney(exchange.getMoney()); - 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 giveRecord - * @return - * @throws RedPackDetailException - */ - public static RedPackDetail createGiveOthers(RedPackGiveRecord giveRecord) throws RedPackDetailException { - if (giveRecord == null) - throw new RedPackDetailException(1, "璧犻�佽褰曚笉鑳戒负绌�"); - RedPackDetail detail = new RedPackDetail(); - detail.setDisplay(true); - detail.setUid(giveRecord.getGiveUid()); - detail.setMoney(new BigDecimal("-" + giveRecord.getAmount())); - detail.setType(RedPackDetailTypeEnum.giveOthers); - detail.setTitle(RedPackDetailTypeEnum.giveOthers.getDesc()); - detail.setIdentifyCode(StringUtil.Md5(RedPackDetailTypeEnum.giveOthers.name() + ":" + giveRecord.getId())); - detail.setCreateTime(new Date()); - return detail; - } - - /** - * 璧犻�佹垚鍔� - * - * @param id - * @param giveRecord - * @return - * @throws RedPackDetailException - */ - public static RedPackDetail createGiveOthersSucceed(Long id, RedPackGiveRecord giveRecord) - throws RedPackDetailException { - if (giveRecord == null) - throw new RedPackDetailException(1, "璧犻�佽褰曚笉鑳戒负绌�"); - RedPackDetail detail = new RedPackDetail(); - detail.setId(id); - detail.setDisplay(true); - detail.setType(RedPackDetailTypeEnum.giveOthersSucceed); - detail.setTitle(RedPackDetailTypeEnum.giveOthersSucceed.getDesc()); - detail.setIdentifyCode( - StringUtil.Md5(RedPackDetailTypeEnum.giveOthersSucceed.name() + ":" + giveRecord.getId())); - detail.setCreateTime(new Date()); - return detail; - } - - /** - * 璧犻�佸け璐� - * - * @param giveRecord - * @return - * @throws RedPackDetailException - */ - public static RedPackDetail createGiveOthersFail(RedPackGiveRecord giveRecord) throws RedPackDetailException { - if (giveRecord == null) - throw new RedPackDetailException(1, "璧犻�佽褰曚笉鑳戒负绌�"); - RedPackDetail detail = new RedPackDetail(); - detail.setDisplay(true); - detail.setUid(giveRecord.getGiveUid()); - detail.setMoney(giveRecord.getAmount()); - detail.setType(RedPackDetailTypeEnum.giveOthersFail); - detail.setTitle(RedPackDetailTypeEnum.giveOthersFail.getDesc()); - detail.setIdentifyCode(StringUtil.Md5(RedPackDetailTypeEnum.giveOthersFail.name() + ":" + giveRecord.getId())); - detail.setCreateTime(new Date()); - return detail; - } - - /** - * 璧犻�佸け璐� - * - * @param giveRecord - * @return - * @throws RedPackDetailException - */ - public static RedPackDetail createGiveOthersReceive(RedPackGiveRecord giveRecord) throws RedPackDetailException { - if (giveRecord == null) - throw new RedPackDetailException(1, "璧犻�佽褰曚笉鑳戒负绌�"); - RedPackDetail detail = new RedPackDetail(); - detail.setDisplay(true); - detail.setUid(giveRecord.getReceiveUid()); - detail.setMoney(giveRecord.getAmount()); - detail.setType(RedPackDetailTypeEnum.giveOthersReceive); - detail.setTitle(RedPackDetailTypeEnum.giveOthersReceive.getDesc()); - detail.setIdentifyCode( - StringUtil.Md5(RedPackDetailTypeEnum.giveOthersReceive.name() + ":" + giveRecord.getId())); - detail.setCreateTime(new Date()); - return detail; - } - - /** - * 鏉挎牀鍟嗗煄浣跨敤 - * - * @param giveRecord - * @return - * @throws RedPackDetailException - */ - public static RedPackDetail createUseByShopOrder(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(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.setDescInfo(setName); - return detail; - } - - /** - * 鏂颁汉濂栧姳 - * - * @param winInvite - * @return - * @throws RedPackDetailException - */ - public static RedPackDetail createNewUserReward(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.newUserReward.getDesc()); - detail.setType(RedPackDetailTypeEnum.newUserReward); - detail.setIdentifyCode(StringUtil.Md5(RedPackDetailTypeEnum.newUserReward.name() + ":" + winInvite.getId())); - 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; - } - -} +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; + +public class RedPackDetailFactory { + + /** + * 绾㈠寘鎻愮幇 + * + * @param extract + * @return + */ + public static RedPackDetail createExchange(RedPackExchange exchange) throws RedPackDetailException { + if (exchange == null) + throw new RedPackDetailException(1, "鎻愮幇璁板綍涓嶈兘涓虹┖"); + + RedPackDetail detail = new RedPackDetail(); + detail.setDisplay(false); + detail.setDescInfo("绛夊緟浜哄伐瀹℃牳"); + detail.setUid(exchange.getUid()); + detail.setMoney(new BigDecimal("-" + exchange.getMoney())); + detail.setType(RedPackDetailTypeEnum.redExchange); + detail.setTitle(RedPackDetailTypeEnum.redExchange.getDesc()); + detail.setIdentifyCode(StringUtil.Md5(RedPackDetailTypeEnum.redExchange.name() + ":" + exchange.getId())); + detail.setCreateTime(new Date()); + return detail; + } + + /** + * 绾㈠寘鎻愮幇閫氳繃 + * + * @param extract + * @return + */ + public static RedPackDetail updateExchangePass(Long id, RedPackExchange exchange) throws RedPackDetailException { + if (id == null) + throw new RedPackDetailException(1, "鏄庣粏ID涓嶈兘涓虹┖"); + + if (exchange == null) + throw new RedPackDetailException(1, "鎻愮幇璁板綍涓嶈兘涓虹┖"); + + RedPackDetail detail = new RedPackDetail(); + detail.setId(id); + detail.setDisplay(true); + detail.setDescInfo("璇峰埌璐︽埛浣欓涓煡鐪�"); + detail.setType(RedPackDetailTypeEnum.redExchangePass); + detail.setTitle(RedPackDetailTypeEnum.redExchangePass.getDesc()); + detail.setIdentifyCode(StringUtil.Md5(RedPackDetailTypeEnum.redExchangePass.name() + ":" + exchange.getId())); + return detail; + } + + /** + * 绾㈠寘鎻愮幇鎷掔粷 + * + * @param extract + * @return + */ + public static RedPackDetail createExchangeReject(RedPackExchange exchange) throws RedPackDetailException { + if (exchange == null) + throw new RedPackDetailException(1, "鎻愮幇璁板綍涓嶈兘涓虹┖"); + + // 绾㈠寘鏄庣粏- 閫�鍥炵孩鍖� + RedPackDetail detail = new RedPackDetail(); + detail.setDisplay(false); + detail.setUid(exchange.getUid()); + detail.setMoney(exchange.getMoney()); + 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; + } + /** + * 璧犻�佸ソ鍙嬫槑缁� + * + * @param giveRecord + * @return + * @throws RedPackDetailException + */ + public static RedPackDetail createGiveOthers(RedPackGiveRecord giveRecord) throws RedPackDetailException { + if (giveRecord == null) + throw new RedPackDetailException(1, "璧犻�佽褰曚笉鑳戒负绌�"); + RedPackDetail detail = new RedPackDetail(); + detail.setDisplay(true); + detail.setUid(giveRecord.getGiveUid()); + detail.setMoney(new BigDecimal("-" + giveRecord.getAmount())); + detail.setType(RedPackDetailTypeEnum.giveOthers); + detail.setTitle(RedPackDetailTypeEnum.giveOthers.getDesc()); + detail.setIdentifyCode(StringUtil.Md5(RedPackDetailTypeEnum.giveOthers.name() + ":" + giveRecord.getId())); + detail.setCreateTime(new Date()); + return detail; + } + + /** + * 璧犻�佹垚鍔� + * + * @param id + * @param giveRecord + * @return + * @throws RedPackDetailException + */ + public static RedPackDetail createGiveOthersSucceed(Long id, RedPackGiveRecord giveRecord) + throws RedPackDetailException { + if (giveRecord == null) + throw new RedPackDetailException(1, "璧犻�佽褰曚笉鑳戒负绌�"); + 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( + StringUtil.Md5(RedPackDetailTypeEnum.giveOthersSucceed.name() + ":" + giveRecord.getId())); + detail.setCreateTime(new Date()); + return detail; + } + + /** + * 璧犻�佸け璐� + * + * @param giveRecord + * @return + * @throws RedPackDetailException + */ + public static RedPackDetail createGiveOthersFail(RedPackGiveRecord giveRecord) throws RedPackDetailException { + if (giveRecord == null) + throw new RedPackDetailException(1, "璧犻�佽褰曚笉鑳戒负绌�"); + RedPackDetail detail = new RedPackDetail(); + detail.setDisplay(true); + detail.setUid(giveRecord.getGiveUid()); + detail.setMoney(giveRecord.getAmount()); + detail.setType(RedPackDetailTypeEnum.giveOthersFail); + detail.setTitle(RedPackDetailTypeEnum.giveOthersFail.getDesc()); + detail.setIdentifyCode(StringUtil.Md5(RedPackDetailTypeEnum.giveOthersFail.name() + ":" + giveRecord.getId())); + detail.setCreateTime(new Date()); + return detail; + } + + /** + * 璧犻�佸け璐� + * + * @param giveRecord + * @return + * @throws RedPackDetailException + */ + public static RedPackDetail createGiveOthersReceive(RedPackGiveRecord giveRecord) throws RedPackDetailException { + if (giveRecord == null) + throw new RedPackDetailException(1, "璧犻�佽褰曚笉鑳戒负绌�"); + RedPackDetail detail = new RedPackDetail(); + detail.setDisplay(true); + detail.setUid(giveRecord.getReceiveUid()); + detail.setMoney(giveRecord.getAmount()); + detail.setType(RedPackDetailTypeEnum.giveOthersReceive); + detail.setTitle(RedPackDetailTypeEnum.giveOthersReceive.getDesc()); + detail.setIdentifyCode( + StringUtil.Md5(RedPackDetailTypeEnum.giveOthersReceive.name() + ":" + giveRecord.getId())); + detail.setCreateTime(new Date()); + return detail; + } + + /** + * 鏉挎牀鍟嗗煄浣跨敤 + * + * @param giveRecord + * @return + * @throws RedPackDetailException + */ + public static RedPackDetail createUseByShopOrder(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(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.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; + } + + /** + * + * @param uid + * @param money + * @param date + * @return + * @throws RedPackDetailException + */ + public static RedPackDetail createByMonth(Long uid, BigDecimal money, Date date) throws RedPackDetailException { + SimpleDateFormat sdf = new SimpleDateFormat("yyyy.MM.dd"); + String time = sdf.format(date); + + String title = sdf.format(date) + "閭�璇风孩鍖�"; + RedPackDetail detail = new RedPackDetail(); + detail.setDisplay(true); + detail.setUid(uid); + detail.setMoney(money); + detail.setTitle(title); + detail.setType(RedPackDetailTypeEnum.redMonthly); + detail.setIdentifyCode(StringUtil.Md5(RedPackDetailTypeEnum.redMonthly.name() + ":" + time)); + detail.setCreateTime(new Date()); + return detail; + } +} -- Gitblit v1.8.0