From 4cb15e222cd7d099d533ccbeb7f9a8cd99bf180c Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期二, 25 十二月 2018 16:35:18 +0800 Subject: [PATCH] 替换原来老的资金详情 --- fanli/src/main/java/com/yeshi/fanli/util/factory/UserMoneyDetailFactory.java | 562 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 561 insertions(+), 1 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 d2a6d67..d1d763f 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 @@ -1,14 +1,333 @@ package com.yeshi.fanli.util.factory; import java.math.BigDecimal; +import java.util.Calendar; import java.util.Date; +import com.yeshi.fanli.entity.bus.user.AccountDetails; +import com.yeshi.fanli.entity.bus.user.AlipayAccountValidNormalHistory; import com.yeshi.fanli.entity.bus.user.Extract; +import com.yeshi.fanli.entity.bus.user.HongBao; +import com.yeshi.fanli.entity.bus.user.UserInfo; import com.yeshi.fanli.entity.money.UserMoneyDetail; 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.StringUtil; +import com.yeshi.fanli.util.TimeUtil; public class UserMoneyDetailFactory { + + /** + * 杩斿埄璧勯噾璁板綍 + * + * @param hongBaoList + * @return + */ + public static UserMoneyDetail createFanLi(Long uid, String orderId, int orderType,Long hbId, BigDecimal money) + throws UserMoneyDetailException { + + if (StringUtil.isNullOrEmpty(orderId)) + throw new UserMoneyDetailException(1, "璁㈠崟鍙蜂负绌�"); + + if (money == null) + throw new UserMoneyDetailException(1, "杩斿埄閲戦涓虹┖"); + + if (uid == null) + throw new UserMoneyDetailException(1, "UID涓虹┖"); + + UserMoneyDetail detail = new UserMoneyDetail(); + detail.setCreateTime(new Date()); + detail.setIdentifyCode( + StringUtil.Md5(UserMoneyDetailTypeEnum.fanli.name() + "-" + uid + "-" + orderType + "-" + orderId+"-"+hbId)); + detail.setMoney(money); + detail.setTitle(UserMoneyDetailTypeEnum.fanli.getDesc()); + detail.setType(UserMoneyDetailTypeEnum.fanli); + detail.setDescInfo("璁㈠崟鍙凤細" + orderId); + detail.setUpdateTime(new Date()); + detail.setUserInfo(new UserInfo(uid)); + return detail; + } + + /** + * 鍘熸湁杩斿埄鏁版嵁鍚屾 + * + * @param uid + * @param orderId + * @param orderType + * @param money + * @return + * @throws UserMoneyDetailException + */ + public static UserMoneyDetail createOldFanLi(Long uid, AccountDetails accountDetails, BigDecimal money) + throws UserMoneyDetailException { + int orderType = 1; + String orderId = null; + if (accountDetails.getOrderItem() == null) + orderId = accountDetails.getId() + ""; + else + orderId = accountDetails.getId() + "-" + accountDetails.getOrderItem().getOrderId(); + + if (money == null) + throw new UserMoneyDetailException(1, "杩斿埄閲戦涓虹┖"); + + if (uid == null) + throw new UserMoneyDetailException(1, "UID涓虹┖"); + + UserMoneyDetail detail = new UserMoneyDetail(); + detail.setCreateTime( + new Date(TimeUtil.convertToTimeTemp(accountDetails.getCreateTime(), "yyyy-MM-dd HH:mm:ss"))); + detail.setIdentifyCode( + StringUtil.Md5(UserMoneyDetailTypeEnum.fanli.name() + "-" + uid + "-" + orderType + "-" + orderId)); + detail.setMoney(money); + detail.setTitle(UserMoneyDetailTypeEnum.fanli.getDesc()); + detail.setType(UserMoneyDetailTypeEnum.fanli); + if (accountDetails.getOrderItem() != null) + detail.setDescInfo("璁㈠崟鍙凤細" + accountDetails.getOrderItem().getOrderId()); + detail.setUpdateTime(new Date()); + detail.setUserInfo(new UserInfo(uid)); + return detail; + } + + /** + * 鍒嗕韩濂栭噾鍒拌处 + * + * @param uid + * @param validCount + * @param weiQuanCount + * @param invalidCount + * @param money + * @param time + * @return + * @throws UserMoneyDetailException + */ + public static UserMoneyDetail createShare(Long uid, int validCount, int weiQuanCount, int invalidCount, + BigDecimal money, Date time) throws UserMoneyDetailException { + if (money == null) + throw new UserMoneyDetailException(1, "杩斿埄閲戦涓虹┖"); + + if (uid == null) + throw new UserMoneyDetailException(1, "UID涓虹┖"); + + if (time == null) + throw new UserMoneyDetailException(1, "鍙戠敓鏃堕棿涓虹┖"); + + Calendar ca = Calendar.getInstance(); + ca.setTime(time); + ca.add(Calendar.MONTH, -1); + + String timeF = TimeUtil.getGernalTime(ca.getTimeInMillis(), "yyyy骞碝M鏈�"); + + UserMoneyDetail detail = new UserMoneyDetail(); + detail.setCreateTime(new Date()); + detail.setIdentifyCode(StringUtil.Md5(UserMoneyDetailTypeEnum.share.name() + "-" + uid + "-" + timeF)); + detail.setMoney(money); + detail.setTitle(timeF + UserMoneyDetailTypeEnum.share.getDesc()); + detail.setType(UserMoneyDetailTypeEnum.share); + detail.setDescInfo(String.format("鏈夋晥璁㈠崟:%s绗� 缁存潈璁㈠崟:%s绗� 澶辨晥璁㈠崟:%s绗�", validCount, weiQuanCount, invalidCount)); + detail.setUpdateTime(new Date()); + detail.setUserInfo(new UserInfo(uid)); + return detail; + } + + /** + * 閭�璇峰閲戝埌璐� + * + * @param uid + * @param validCount + * @param weiQuanCount + * @param invalidCount + * @param money + * @param time + * @return + * @throws UserMoneyDetailException + */ + public static UserMoneyDetail createInvite(Long uid, int validCount, int weiQuanCount, int invalidCount, + BigDecimal money, Date time) throws UserMoneyDetailException { + if (money == null) + throw new UserMoneyDetailException(1, "杩斿埄閲戦涓虹┖"); + + if (uid == null) + throw new UserMoneyDetailException(1, "UID涓虹┖"); + + if (time == null) + throw new UserMoneyDetailException(1, "鍙戠敓鏃堕棿涓虹┖"); + + Calendar ca = Calendar.getInstance(); + ca.setTime(time); + ca.add(Calendar.MONTH, -1); + + String timeF = TimeUtil.getGernalTime(ca.getTimeInMillis(), "yyyy骞碝M鏈�"); + + UserMoneyDetail detail = new UserMoneyDetail(); + detail.setCreateTime(new Date()); + detail.setIdentifyCode(StringUtil.Md5(UserMoneyDetailTypeEnum.invite.name() + "-" + uid + "-" + timeF)); + detail.setMoney(money); + detail.setTitle(timeF + UserMoneyDetailTypeEnum.invite.getDesc()); + detail.setType(UserMoneyDetailTypeEnum.invite); + if (validCount != 0 || weiQuanCount != 0 || invalidCount != 0) + detail.setDescInfo(String.format("鏈夋晥璁㈠崟:%s绗� 缁存潈璁㈠崟:%s绗� 澶辨晥璁㈠崟:%s绗�", validCount, weiQuanCount, invalidCount)); + detail.setUpdateTime(new Date()); + detail.setUserInfo(new UserInfo(uid)); + return detail; + } + + /** + * 鑰佺増鏈殑鍒嗕韩鍜岄個璇疯禋鍒拌处璁板綍 + * + * @param uid + * @param money + * @param time + * @return + * @throws UserMoneyDetailException + */ + public static UserMoneyDetail createShareAndInvite(AccountDetails accountDetail) throws UserMoneyDetailException { + if (accountDetail.getMoney() == null) + throw new UserMoneyDetailException(1, "杩斿埄閲戦涓虹┖"); + + if (accountDetail.getUserInfo() == null) + throw new UserMoneyDetailException(1, "UID涓虹┖"); + + if (accountDetail.getCreateTime() == null) + throw new UserMoneyDetailException(1, "鍙戠敓鏃堕棿涓虹┖"); + + Date time = new Date(TimeUtil.convertToTimeTemp(accountDetail.getCreateTime(), "yyyy-MM-dd HH:mm:ss")); + + Calendar ca = Calendar.getInstance(); + ca.setTime(time); + ca.add(Calendar.MONTH, -1); + + String timeF = TimeUtil.getGernalTime(ca.getTimeInMillis(), "yyyy骞碝M鏈�"); + + UserMoneyDetail detail = new UserMoneyDetail(); + detail.setCreateTime( + new Date(TimeUtil.convertToTimeTemp(accountDetail.getCreateTime(), "yyyy-MM-dd HH:mm:ss"))); + detail.setIdentifyCode(StringUtil.Md5(UserMoneyDetailTypeEnum.inviteAndShare.name() + "-" + + accountDetail.getUserInfo().getId() + "-" + accountDetail.getId())); + detail.setMoney(new BigDecimal(accountDetail.getMoney())); + detail.setTitle(timeF + UserMoneyDetailTypeEnum.inviteAndShare.getDesc()); + detail.setType(UserMoneyDetailTypeEnum.inviteAndShare); + detail.setUpdateTime(new Date()); + detail.setUserInfo(accountDetail.getUserInfo()); + return detail; + } + + /** + * 杩斿埄缁存潈 + * + * @param uid + * @param drawBack + * @param money + * @return + * @throws UserMoneyDetailException + */ + public static UserMoneyDetail createFanLiWeiQuan(Long uid, TaoBaoWeiQuanDrawBack drawBack, BigDecimal money) + throws UserMoneyDetailException { + if (drawBack == null) + throw new UserMoneyDetailException(1, "閫�娆句负绌�"); + if (drawBack.getId() == null) + throw new UserMoneyDetailException(1, "閫�娆綢D涓虹┖"); + if (StringUtil.isNullOrEmpty(drawBack.getOrderId())) + throw new UserMoneyDetailException(1, "璁㈠崟鍙蜂负绌�"); + if (StringUtil.isNullOrEmpty(drawBack.getOrderItemId())) + throw new UserMoneyDetailException(1, "瀛愯鍗曞彿涓虹┖"); + if (money == null) + throw new UserMoneyDetailException(1, "閫�娆鹃噾棰濅负绌�"); + if (uid == null) + throw new UserMoneyDetailException(1, "UID涓虹┖"); + + UserMoneyDetail detail = new UserMoneyDetail(); + detail.setCreateTime(new Date()); + detail.setIdentifyCode(StringUtil + .Md5(UserMoneyDetailTypeEnum.fanliWeiQuan.name() + "-" + uid + "-" + drawBack.getOrderItemId())); + detail.setMoney(new BigDecimal("0").subtract(money)); + detail.setTitle(UserMoneyDetailTypeEnum.fanliWeiQuan.getDesc()); + detail.setSubTitle("璁㈠崟缁存潈"); + detail.setType(UserMoneyDetailTypeEnum.fanliWeiQuan); + detail.setSourceIdentifyId(drawBack.getId()); + detail.setDescInfo("璁㈠崟鍙凤細" + drawBack.getOrderId()); + detail.setUpdateTime(new Date()); + detail.setUserInfo(new UserInfo(uid)); + return detail; + } + + /** + * 鍒嗕韩璧氱淮鏉� + * + * @param uid + * @param drawBack + * @param money + * @return + * @throws UserMoneyDetailException + */ + public static UserMoneyDetail createShareWeiQuan(Long uid, TaoBaoWeiQuanDrawBack drawBack, BigDecimal money) + throws UserMoneyDetailException { + if (drawBack == null) + throw new UserMoneyDetailException(1, "閫�娆句负绌�"); + if (drawBack.getId() == null) + throw new UserMoneyDetailException(1, "閫�娆綢D涓虹┖"); + if (StringUtil.isNullOrEmpty(drawBack.getOrderId())) + throw new UserMoneyDetailException(1, "璁㈠崟鍙蜂负绌�"); + if (StringUtil.isNullOrEmpty(drawBack.getOrderItemId())) + throw new UserMoneyDetailException(1, "瀛愯鍗曞彿涓虹┖"); + if (money == null) + throw new UserMoneyDetailException(1, "閫�娆鹃噾棰濅负绌�"); + if (uid == null) + throw new UserMoneyDetailException(1, "UID涓虹┖"); + + UserMoneyDetail detail = new UserMoneyDetail(); + detail.setCreateTime(new Date()); + detail.setIdentifyCode(StringUtil + .Md5(UserMoneyDetailTypeEnum.shareWeiQuan.name() + "-" + uid + "-" + drawBack.getOrderItemId())); + detail.setMoney(new BigDecimal("0").subtract(money)); + detail.setTitle(UserMoneyDetailTypeEnum.shareWeiQuan.getDesc()); + detail.setSubTitle("璁㈠崟缁存潈"); + detail.setType(UserMoneyDetailTypeEnum.shareWeiQuan); + detail.setSourceIdentifyId(drawBack.getId()); + detail.setDescInfo("璁㈠崟鍙凤細" + drawBack.getOrderId()); + detail.setUpdateTime(new Date()); + detail.setUserInfo(new UserInfo(uid)); + return detail; + } + + /** + * 閭�璇疯禋缁存潈 + * + * @param uid + * @param drawBack + * @param money + * @return + * @throws UserMoneyDetailException + */ + public static UserMoneyDetail createInviteWeiQuan(Long uid, TaoBaoWeiQuanDrawBack drawBack, BigDecimal money) + throws UserMoneyDetailException { + if (drawBack == null) + throw new UserMoneyDetailException(1, "閫�娆句负绌�"); + if (drawBack.getId() == null) + throw new UserMoneyDetailException(1, "閫�娆綢D涓虹┖"); + if (StringUtil.isNullOrEmpty(drawBack.getOrderId())) + throw new UserMoneyDetailException(1, "璁㈠崟鍙蜂负绌�"); + if (StringUtil.isNullOrEmpty(drawBack.getOrderItemId())) + throw new UserMoneyDetailException(1, "瀛愯鍗曞彿涓虹┖"); + if (money == null) + throw new UserMoneyDetailException(1, "閫�娆鹃噾棰濅负绌�"); + if (uid == null) + throw new UserMoneyDetailException(1, "UID涓虹┖"); + + UserMoneyDetail detail = new UserMoneyDetail(); + detail.setCreateTime(new Date()); + detail.setIdentifyCode(StringUtil + .Md5(UserMoneyDetailTypeEnum.inviteWeiQuan.name() + "-" + uid + "-" + drawBack.getOrderItemId())); + detail.setMoney(new BigDecimal("0").subtract(money)); + detail.setTitle(UserMoneyDetailTypeEnum.inviteWeiQuan.getDesc()); + detail.setSubTitle("璁㈠崟缁存潈"); + detail.setType(UserMoneyDetailTypeEnum.inviteWeiQuan); + detail.setSourceIdentifyId(drawBack.getId()); + detail.setDescInfo("璁㈠崟鍙凤細" + drawBack.getOrderId()); + detail.setUpdateTime(new Date()); + detail.setUserInfo(new UserInfo(uid)); + return detail; + } /** * 鎻愮幇璧勯噾璁板綍 @@ -16,7 +335,16 @@ * @param extract * @return */ - public static UserMoneyDetail create(Extract extract) { + public static UserMoneyDetail createExtract(Extract extract) throws UserMoneyDetailException { + if (extract == null) + throw new UserMoneyDetailException(1, "鎻愮幇璁板綍涓嶈兘涓虹┖"); + if (extract.getId() == null) + throw new UserMoneyDetailException(1, "鎻愮幇璁板綍涓婚敭涓嶈兘涓虹┖"); + if (extract.getMoney() == null) + throw new UserMoneyDetailException(1, "鎻愮幇閲戦涓嶈兘涓虹┖"); + if (extract.getUserInfo() == null || extract.getUserInfo().getId() == null) + throw new UserMoneyDetailException(1, "鎻愮幇鐢ㄦ埛涓嶈兘涓虹┖"); + UserMoneyDetail detail = new UserMoneyDetail(); detail.setCreateTime(new Date()); detail.setIdentifyCode(StringUtil.Md5(UserMoneyDetailTypeEnum.extract.name() + ":" + extract.getId())); @@ -29,4 +357,236 @@ return detail; } + /** + * 鎻愮幇璐﹀彿楠岃瘉璁板綍 + * + * @param aa + * @param money + * @return + * @throws UserMoneyDetailException + */ + public static UserMoneyDetail createExtractAccountValid(AlipayAccountValidNormalHistory aa, BigDecimal money) + throws UserMoneyDetailException { + if (aa == null) + throw new UserMoneyDetailException(1, "楠岃瘉璁板綍涓嶈兘涓虹┖"); + if (aa.getUid() == 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.extractVerify.name() + ":" + aa.getId())); + detail.setMoney(new BigDecimal("0").subtract(money)); + detail.setSourceIdentifyId(aa.getId()); + detail.setTitle(UserMoneyDetailTypeEnum.extractVerify.getDesc()); + detail.setType(UserMoneyDetailTypeEnum.extractVerify); + detail.setUpdateTime(new Date()); + detail.setUserInfo(new UserInfo(aa.getUid())); + return detail; + } + + /** + * 鎻愮幇鎷掔粷 + * + * @param extract + * @return + * @throws UserMoneyDetailException + */ + public static UserMoneyDetail createExtractReject(Extract extract) throws UserMoneyDetailException { + if (extract == null) + throw new UserMoneyDetailException(1, "鎻愮幇璁板綍涓嶈兘涓虹┖"); + if (extract.getId() == null) + throw new UserMoneyDetailException(1, "鎻愮幇璁板綍涓婚敭涓嶈兘涓虹┖"); + if (extract.getMoney() == null) + throw new UserMoneyDetailException(1, "鎻愮幇閲戦涓嶈兘涓虹┖"); + if (extract.getUserInfo() == null || extract.getUserInfo().getId() == null) + throw new UserMoneyDetailException(1, "鎻愮幇鐢ㄦ埛涓嶈兘涓虹┖"); + + UserMoneyDetail detail = new UserMoneyDetail(); + detail.setCreateTime(new Date()); + detail.setIdentifyCode(StringUtil.Md5(UserMoneyDetailTypeEnum.extractReject.name() + ":" + extract.getId())); + detail.setMoney(extract.getMoney()); + detail.setSourceIdentifyId(extract.getId()); + detail.setTitle(UserMoneyDetailTypeEnum.extractReject.getDesc()); + detail.setType(UserMoneyDetailTypeEnum.extractReject); + detail.setUpdateTime(new Date()); + detail.setUserInfo(extract.getUserInfo()); + return detail; + } + + /** + * 绯荤粺绾㈠寘 + * + * @param hb + * @return + * @throws UserMoneyDetailException + */ + + private static UserMoneyDetail createHongBao(HongBao hb, String subTitle) throws UserMoneyDetailException { + if (hb == null) + throw new UserMoneyDetailException(1, "绾㈠寘涓嶈兘涓虹┖"); + if (hb.getUserInfo() == null) + throw new UserMoneyDetailException(1, "鐢ㄦ埛涓嶈兘涓虹┖"); + + UserMoneyDetail detail = new UserMoneyDetail(); + detail.setCreateTime(new Date()); + detail.setIdentifyCode( + StringUtil.Md5(UserMoneyDetailTypeEnum.hongbao.name() + "-" + subTitle + "-" + hb.getId())); + detail.setMoney(hb.getMoney()); + detail.setSourceIdentifyId(hb.getId()); + detail.setTitle(UserMoneyDetailTypeEnum.hongbao.getDesc()); + detail.setSubTitle(subTitle); + detail.setType(UserMoneyDetailTypeEnum.hongbao); + detail.setUpdateTime(new Date()); + detail.setUserInfo(hb.getUserInfo()); + return detail; + } + + private static UserMoneyDetail createHongBaoDeduct(HongBao hb, String subTitle) throws UserMoneyDetailException { + if (hb == null) + throw new UserMoneyDetailException(1, "绾㈠寘涓嶈兘涓虹┖"); + if (hb.getUserInfo() == null) + throw new UserMoneyDetailException(1, "鐢ㄦ埛涓嶈兘涓虹┖"); + + UserMoneyDetail detail = new UserMoneyDetail(); + detail.setCreateTime(new Date()); + detail.setIdentifyCode(StringUtil.Md5(UserMoneyDetailTypeEnum.hongbaoDeduct.name() + "-" + subTitle + "-" + + hb.getBeizhu() + "-" + hb.getId())); + detail.setMoney(hb.getMoney()); + detail.setSourceIdentifyId(hb.getId()); + detail.setTitle(UserMoneyDetailTypeEnum.hongbaoDeduct.getDesc()); + detail.setSubTitle(subTitle); + detail.setType(UserMoneyDetailTypeEnum.hongbaoDeduct); + detail.setUpdateTime(new Date()); + detail.setUserInfo(hb.getUserInfo()); + return detail; + } + + /** + * 鏂颁汉绾㈠寘 + * + * @param hb + * @return + * @throws UserMoneyDetailException + */ + public static UserMoneyDetail createNewerHongBao(HongBao hb) throws UserMoneyDetailException { + return createHongBao(hb, "鏂颁汉绾㈠寘"); + } + + /** + * 鏂颁汉绾㈠寘鎵i櫎 + * + * @param hb + * @return + * @throws UserMoneyDetailException + */ + + public static UserMoneyDetail createNewerHongBaoDeduct(HongBao hb) throws UserMoneyDetailException { + return createHongBaoDeduct(hb, "鏂颁汉绾㈠寘鎵i櫎"); + } + + /** + * 鑰佺増鏈殑鏂颁汉绾㈠寘閫�娆� + * + * @param hb + * @return + * @throws UserMoneyDetailException + */ + public static UserMoneyDetail createOldNewerHongBaoDeduct(AccountDetails accountDetails) + throws UserMoneyDetailException { + HongBao hb = new HongBao(); + hb.setId(accountDetails.getId()); + hb.setBeizhu("鑰佺増鏈�"); + hb.setMoney(new BigDecimal(accountDetails.getMoney())); + hb.setUserInfo(accountDetails.getUserInfo()); + UserMoneyDetail userMoneyDetail = createHongBaoDeduct(hb, "鏂颁汉绾㈠寘鎵i櫎"); + userMoneyDetail.setId(accountDetails.getId()); + return userMoneyDetail; + } + + /** + * 鑰佺増鏈敭鍚庤鍗曟墸娆� + * + * @param accountDetails + * @return + * @throws UserMoneyDetailException + */ + public static UserMoneyDetail createOldWeiQuan(AccountDetails accountDetails) throws UserMoneyDetailException { + if (accountDetails == null) + throw new UserMoneyDetailException(1, "璇︽儏涓嶈兘涓虹┖"); + if (accountDetails.getUserInfo() == null) + throw new UserMoneyDetailException(1, "鐢ㄦ埛涓嶈兘涓虹┖"); + + UserMoneyDetail detail = new UserMoneyDetail(); + detail.setCreateTime(new Date()); + detail.setIdentifyCode(StringUtil.Md5(UserMoneyDetailTypeEnum.weiQuan.name() + "-" + accountDetails.getId())); + detail.setMoney(new BigDecimal(accountDetails.getMoney())); + detail.setTitle(UserMoneyDetailTypeEnum.weiQuan.getDesc()); + detail.setType(UserMoneyDetailTypeEnum.weiQuan); + detail.setUpdateTime(new Date()); + detail.setUserInfo(accountDetails.getUserInfo()); + detail.setId(accountDetails.getId()); + return detail; + } + + /** + * 鏂颁汉绾㈠寘 + * + * @param accountDetails + * @return + * @throws UserMoneyDetailException + */ + + public static UserMoneyDetail createOldNewerHongBao(AccountDetails accountDetails) throws UserMoneyDetailException { + + if (accountDetails == null) + throw new UserMoneyDetailException(1, "璇︽儏涓嶈兘涓虹┖"); + if (accountDetails.getUserInfo() == null) + throw new UserMoneyDetailException(1, "鐢ㄦ埛涓嶈兘涓虹┖"); + + UserMoneyDetail detail = new UserMoneyDetail(); + detail.setCreateTime(new Date()); + detail.setIdentifyCode(StringUtil + .Md5(UserMoneyDetailTypeEnum.hongbao.name() + "-" + "鑰佺増鏈柊浜虹孩鍖�" + "-" + accountDetails.getId())); + detail.setMoney(new BigDecimal(accountDetails.getMoney())); + detail.setTitle(UserMoneyDetailTypeEnum.hongbao.getDesc()); + detail.setSubTitle("鏂颁汉绾㈠寘"); + detail.setType(UserMoneyDetailTypeEnum.hongbao); + detail.setUpdateTime(new Date()); + detail.setUserInfo(accountDetails.getUserInfo()); + detail.setId(accountDetails.getId()); + return detail; + } + + /** + * 鑰佺増鏈彁鐜拌处鍙烽獙璇� + * + * @param accountDetails + * @return + * @throws UserMoneyDetailException + */ + public static UserMoneyDetail createOldExtractAccountValid(AccountDetails accountDetails) + throws UserMoneyDetailException { + + if (accountDetails == null) + throw new UserMoneyDetailException(1, "楠岃瘉璁板綍涓嶈兘涓虹┖"); + if (accountDetails.getUserInfo() == null) + throw new UserMoneyDetailException(1, "UID涓嶈兘涓虹┖"); + if (accountDetails.getMoney() == null) + throw new UserMoneyDetailException(1, "閲戦涓嶈兘涓虹┖"); + + UserMoneyDetail detail = new UserMoneyDetail(); + detail.setCreateTime(new Date()); + detail.setIdentifyCode(StringUtil + .Md5(UserMoneyDetailTypeEnum.extractVerify.name() + "-" + "鑰佺増鏈�" + "-" + accountDetails.getId())); + detail.setMoney(new BigDecimal(accountDetails.getMoney())); + detail.setTitle(UserMoneyDetailTypeEnum.extractVerify.getDesc()); + detail.setType(UserMoneyDetailTypeEnum.extractVerify); + detail.setUpdateTime(new Date()); + detail.setUserInfo(accountDetails.getUserInfo()); + detail.setId(accountDetails.getId()); + return detail; + } + } -- Gitblit v1.8.0