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 | 291 ++++++++++++++++++++++------------------------------------ 1 files changed, 110 insertions(+), 181 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 d1d763f..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 @@ -4,17 +4,18 @@ import java.util.Calendar; import java.util.Date; -import com.yeshi.fanli.entity.bus.user.AccountDetails; +import com.yeshi.fanli.dto.HongBao; 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.Constant; import com.yeshi.fanli.util.StringUtil; import com.yeshi.fanli.util.TimeUtil; +import com.yeshi.fanli.util.account.UserUtil; public class UserMoneyDetailFactory { @@ -24,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,54 +39,15 @@ UserMoneyDetail detail = new UserMoneyDetail(); detail.setCreateTime(new Date()); - detail.setIdentifyCode( - StringUtil.Md5(UserMoneyDetailTypeEnum.fanli.name() + "-" + uid + "-" + orderType + "-" + orderId+"-"+hbId)); + detail.setIdentifyCode(StringUtil + .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)); - 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)); + detail.setOrderType(orderType); return detail; } @@ -101,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, "杩斿埄閲戦涓虹┖"); @@ -116,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()); @@ -127,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; } @@ -142,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, "杩斿埄閲戦涓虹┖"); @@ -157,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()); @@ -169,46 +132,7 @@ 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()); + detail.setOrderType(orderType); return detail; } @@ -248,6 +172,7 @@ detail.setDescInfo("璁㈠崟鍙凤細" + drawBack.getOrderId()); detail.setUpdateTime(new Date()); detail.setUserInfo(new UserInfo(uid)); + detail.setOrderType(Constant.SOURCE_TYPE_TAOBAO); return detail; } @@ -284,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; } @@ -323,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; } @@ -408,6 +335,7 @@ detail.setIdentifyCode(StringUtil.Md5(UserMoneyDetailTypeEnum.extractReject.name() + ":" + extract.getId())); detail.setMoney(extract.getMoney()); detail.setSourceIdentifyId(extract.getId()); + detail.setSubTitle("鍘熻矾閫�鍥�"); detail.setTitle(UserMoneyDetailTypeEnum.extractReject.getDesc()); detail.setType(UserMoneyDetailTypeEnum.extractReject); detail.setUpdateTime(new Date()); @@ -487,105 +415,106 @@ } /** - * 鑰佺増鏈殑鏂颁汉绾㈠寘閫�娆� + * 杩斿埄濂栧姳 * - * @param hb + * @param orderId + * @param money + * @param user * @return * @throws UserMoneyDetailException */ - public static UserMoneyDetail createOldNewerHongBaoDeduct(AccountDetails accountDetails) + public static UserMoneyDetail createOrderReward(String orderId, int orderType, BigDecimal money, UserInfo user) 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) + if (StringUtil.isNullOrEmpty(orderId)) + throw new UserMoneyDetailException(1, "璁㈠崟鍙蜂笉鑳戒负绌�"); + if (user == null) throw new UserMoneyDetailException(1, "UID涓嶈兘涓虹┖"); - if (accountDetails.getMoney() == null) + if (money == 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.setIdentifyCode(StringUtil.Md5(UserMoneyDetailTypeEnum.hongbao.name() + "-" + "鑰佺増鏈�" + "-" + orderId)); + detail.setMoney(money); + detail.setTitle(UserMoneyDetailTypeEnum.orderReward.getDesc()); + detail.setType(UserMoneyDetailTypeEnum.orderReward); detail.setUpdateTime(new Date()); - detail.setUserInfo(accountDetails.getUserInfo()); - detail.setId(accountDetails.getId()); + detail.setUserInfo(user); + 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