From d8359ddb48dab5cc797a9d552e11fde571f4920c Mon Sep 17 00:00:00 2001 From: yujian <yujian@123.com> Date: 星期二, 27 八月 2019 12:32:46 +0800 Subject: [PATCH] Merge branch 'div' of ssh://193.112.35.168:29418/fanli-server into div --- fanli/src/main/java/com/yeshi/fanli/util/factory/UserMoneyDetailFactory.java | 109 +++++++++++++++++++++++++++++++++++++++++++++++------- 1 files changed, 94 insertions(+), 15 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 277a7a4..4649c6e 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 @@ -12,8 +12,10 @@ 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.Constant; import com.yeshi.fanli.util.StringUtil; import com.yeshi.fanli.util.TimeUtil; +import com.yeshi.fanli.util.account.UserUtil; public class UserMoneyDetailFactory { @@ -23,7 +25,7 @@ * @param hongBaoList * @return */ - public static UserMoneyDetail createFanLi(Long uid, String orderId, int orderType, Long hbId, BigDecimal money) + public static UserMoneyDetail createFanLi(Long uid, String orderId, int orderType, String hbIds, BigDecimal money) throws UserMoneyDetailException { if (StringUtil.isNullOrEmpty(orderId)) @@ -38,13 +40,14 @@ UserMoneyDetail detail = new UserMoneyDetail(); detail.setCreateTime(new Date()); detail.setIdentifyCode(StringUtil - .Md5(UserMoneyDetailTypeEnum.fanli.name() + "-" + uid + "-" + orderType + "-" + orderId + "-" + hbId)); + .Md5(UserMoneyDetailTypeEnum.fanli.name() + "-" + uid + "-" + orderType + "-" + orderId + "-" + hbIds)); detail.setMoney(money); detail.setTitle(UserMoneyDetailTypeEnum.fanli.getDesc()); detail.setType(UserMoneyDetailTypeEnum.fanli); detail.setDescInfo("璁㈠崟鍙凤細" + orderId); detail.setUpdateTime(new Date()); detail.setUserInfo(new UserInfo(uid)); + detail.setOrderType(orderType); return detail; } @@ -60,8 +63,8 @@ * @return * @throws UserMoneyDetailException */ - public static UserMoneyDetail createShare(Long uid, int validCount, int weiQuanCount, int invalidCount, - BigDecimal money, Date time) throws UserMoneyDetailException { + public static UserMoneyDetail createShare(Long uid, int orderType, int validCount, int weiQuanCount, + int invalidCount, BigDecimal money, Date time) throws UserMoneyDetailException { if (money == null) throw new UserMoneyDetailException(1, "杩斿埄閲戦涓虹┖"); @@ -75,7 +78,7 @@ ca.setTime(time); ca.add(Calendar.MONTH, -1); - String timeF = TimeUtil.getGernalTime(ca.getTimeInMillis(), "yyyy骞碝M鏈�"); + String timeF = TimeUtil.getGernalTime(ca.getTimeInMillis(), "yyyy.M"); UserMoneyDetail detail = new UserMoneyDetail(); detail.setCreateTime(new Date()); @@ -86,6 +89,7 @@ detail.setDescInfo(String.format("鏈夋晥璁㈠崟:%s绗� 缁存潈璁㈠崟:%s绗� 澶辨晥璁㈠崟:%s绗�", validCount, weiQuanCount, invalidCount)); detail.setUpdateTime(new Date()); detail.setUserInfo(new UserInfo(uid)); + detail.setOrderType(orderType); return detail; } @@ -101,8 +105,8 @@ * @return * @throws UserMoneyDetailException */ - public static UserMoneyDetail createInvite(Long uid, int validCount, int weiQuanCount, int invalidCount, - BigDecimal money, Date time) throws UserMoneyDetailException { + public static UserMoneyDetail createInvite(Long uid, int orderType, int validCount, int weiQuanCount, + int invalidCount, BigDecimal money, Date time) throws UserMoneyDetailException { if (money == null) throw new UserMoneyDetailException(1, "杩斿埄閲戦涓虹┖"); @@ -116,7 +120,7 @@ ca.setTime(time); ca.add(Calendar.MONTH, -1); - String timeF = TimeUtil.getGernalTime(ca.getTimeInMillis(), "yyyy骞碝M鏈�"); + String timeF = TimeUtil.getGernalTime(ca.getTimeInMillis(), "yyyy.M"); UserMoneyDetail detail = new UserMoneyDetail(); detail.setCreateTime(new Date()); @@ -128,9 +132,9 @@ detail.setDescInfo(String.format("鏈夋晥璁㈠崟:%s绗� 缁存潈璁㈠崟:%s绗� 澶辨晥璁㈠崟:%s绗�", validCount, weiQuanCount, invalidCount)); detail.setUpdateTime(new Date()); detail.setUserInfo(new UserInfo(uid)); + detail.setOrderType(orderType); return detail; } - /** * 杩斿埄缁存潈 @@ -168,6 +172,7 @@ detail.setDescInfo("璁㈠崟鍙凤細" + drawBack.getOrderId()); detail.setUpdateTime(new Date()); detail.setUserInfo(new UserInfo(uid)); + detail.setOrderType(Constant.SOURCE_TYPE_TAOBAO); return detail; } @@ -204,9 +209,10 @@ detail.setSubTitle("璁㈠崟缁存潈"); detail.setType(UserMoneyDetailTypeEnum.shareWeiQuan); detail.setSourceIdentifyId(drawBack.getId()); - detail.setDescInfo("璁㈠崟鍙凤細" + drawBack.getOrderId()); + detail.setDescInfo("璁㈠崟鍙凤細" + UserUtil.filterOrderId(drawBack.getOrderId())); detail.setUpdateTime(new Date()); detail.setUserInfo(new UserInfo(uid)); + detail.setOrderType(Constant.SOURCE_TYPE_TAOBAO); return detail; } @@ -243,9 +249,10 @@ detail.setSubTitle("璁㈠崟缁存潈"); detail.setType(UserMoneyDetailTypeEnum.inviteWeiQuan); detail.setSourceIdentifyId(drawBack.getId()); - detail.setDescInfo("璁㈠崟鍙凤細" + drawBack.getOrderId()); + detail.setDescInfo("璁㈠崟鍙凤細" + UserUtil.filterOrderId(drawBack.getOrderId())); detail.setUpdateTime(new Date()); detail.setUserInfo(new UserInfo(uid)); + detail.setOrderType(Constant.SOURCE_TYPE_TAOBAO); return detail; } @@ -407,8 +414,6 @@ return createHongBaoDeduct(hb, "鏂颁汉绾㈠寘鎵i櫎"); } - - /** * 杩斿埄濂栧姳 * @@ -418,7 +423,7 @@ * @return * @throws UserMoneyDetailException */ - public static UserMoneyDetail createOrderReward(String orderId, BigDecimal money, UserInfo user) + public static UserMoneyDetail createOrderReward(String orderId, int orderType, BigDecimal money, UserInfo user) throws UserMoneyDetailException { if (StringUtil.isNullOrEmpty(orderId)) throw new UserMoneyDetailException(1, "璁㈠崟鍙蜂笉鑳戒负绌�"); @@ -435,7 +440,81 @@ detail.setType(UserMoneyDetailTypeEnum.orderReward); detail.setUpdateTime(new Date()); detail.setUserInfo(user); -// detail.setDescInfo("璁㈠崟鍙�:" + orderId); + detail.setOrderType(orderType); + // detail.setDescInfo("璁㈠崟鍙�:" + orderId); + return detail; + } + + /** + * 璁㈠崟閲嶅缁熻閫�娆� + * + * @param orderId + * @param money + * @param user + * @return + * @throws UserMoneyDetailException + */ + public static UserMoneyDetail createRepeatStatistic(String orderId, int orderType, BigDecimal money, UserInfo user) + throws UserMoneyDetailException { + if (StringUtil.isNullOrEmpty(orderId)) + throw new UserMoneyDetailException(1, "璁㈠崟鍙蜂笉鑳戒负绌�"); + if (user == 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.repeatStatistic.name() + "-" + orderId + "-" + user.getId())); + detail.setMoney(money); + detail.setTitle(UserMoneyDetailTypeEnum.repeatStatistic.getDesc()); + detail.setType(UserMoneyDetailTypeEnum.repeatStatistic); + detail.setUpdateTime(new Date()); + detail.setUserInfo(user); + detail.setDescInfo("璁㈠崟鍙�:" + orderId); + detail.setOrderType(orderType); + return detail; + } + + public static UserMoneyDetail createSystemEqualize(String desc, BigDecimal money, UserInfo user) + throws UserMoneyDetailException { + if (user == 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.systemEqualize.name() + "-" + System.currentTimeMillis() + "-" + user.getId())); + detail.setMoney(money); + detail.setTitle(UserMoneyDetailTypeEnum.systemEqualize.getDesc()); + detail.setType(UserMoneyDetailTypeEnum.systemEqualize); + detail.setUpdateTime(new Date()); + detail.setUserInfo(user); + if (!StringUtil.isNullOrEmpty(desc)) { + detail.setDescInfo(desc); + } + return detail; + } + + public static UserMoneyDetail createScoreConvert(BigDecimal money, UserInfo user) throws UserMoneyDetailException { + if (user == 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.scoreConvert.name() + "-" + System.currentTimeMillis() + "-" + user.getId())); + detail.setMoney(money); + detail.setTitle(UserMoneyDetailTypeEnum.scoreConvert.getDesc()); + detail.setType(UserMoneyDetailTypeEnum.scoreConvert); + detail.setUpdateTime(new Date()); + detail.setUserInfo(user); + return detail; } -- Gitblit v1.8.0