From 98b1a0affd69bbe63223c21fdd2c404e8bedfccb Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期三, 20 五月 2020 17:25:08 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/div' into 2.1.2 --- fanli/src/main/java/com/yeshi/fanli/util/factory/UserMoneyDetailFactory.java | 265 +++++++++++++++++++++++++++++++++++++++++++++++------ 1 files changed, 235 insertions(+), 30 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 d4c24bc..50ee543 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 @@ -42,12 +42,47 @@ 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.setTitle(UserMoneyDetailTypeEnum.fanliNew.getDesc()); + detail.setType(UserMoneyDetailTypeEnum.fanliNew); + detail.setDescInfo(Constant.getSourceName(orderType) + "锛�" + orderId); detail.setUpdateTime(new Date()); detail.setUserInfo(new UserInfo(uid)); detail.setOrderType(orderType); + return detail; + } + + /** + * 楗夸簡涔堣繑鍒� + * + * @param uid + * @param orderId + * @param hbId + * @param money + * @return + * @throws UserMoneyDetailException + */ + public static UserMoneyDetail createElmeFanLi(Long uid, String orderId, 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.elmeFanli.name() + "-" + hbId)); + detail.setMoney(money); + detail.setTitle(UserMoneyDetailTypeEnum.elmeFanli.getDesc()); + detail.setType(UserMoneyDetailTypeEnum.elmeFanli); + detail.setDescInfo("璁㈠崟鍙凤細" + orderId); + detail.setUpdateTime(new Date()); + detail.setUserInfo(new UserInfo(uid)); + detail.setOrderType(Constant.SOURCE_TYPE_ELME); return detail; } @@ -63,8 +98,8 @@ * @return * @throws UserMoneyDetailException */ - public static UserMoneyDetail createShare(Long uid, int orderType, int validCount, int weiQuanCount, - BigDecimal money, Date time) throws UserMoneyDetailException { + public static UserMoneyDetail createShare(Long uid, int orderType, BigDecimal money, Date time) + throws UserMoneyDetailException { if (money == null) throw new UserMoneyDetailException(1, "杩斿埄閲戦涓虹┖"); @@ -78,15 +113,16 @@ ca.setTime(time); ca.add(Calendar.MONTH, -1); - String timeF = TimeUtil.getGernalTime(ca.getTimeInMillis(), "yyyy.M"); + String timeF = TimeUtil.getGernalTime(ca.getTimeInMillis(), "yyyy骞碝鏈�"); UserMoneyDetail detail = new UserMoneyDetail(); detail.setCreateTime(new Date()); - detail.setIdentifyCode(StringUtil.Md5(UserMoneyDetailTypeEnum.share.name() + "-" + uid + "-" + timeF)); + detail.setIdentifyCode( + StringUtil.Md5(UserMoneyDetailTypeEnum.share.name() + "-" + orderType + "-" + uid + "-" + timeF)); detail.setMoney(money); - detail.setTitle(timeF + UserMoneyDetailTypeEnum.share.getDesc()); - detail.setType(UserMoneyDetailTypeEnum.share); - detail.setDescInfo(String.format("鏈夋晥璁㈠崟:%s绗� 缁存潈璁㈠崟:%s绗�", validCount, weiQuanCount)); + detail.setTitle(UserMoneyDetailTypeEnum.shareNew.getDesc()); + detail.setType(UserMoneyDetailTypeEnum.shareNew); + detail.setDescInfo(Constant.getSourceName(orderType) + "锛�" + timeF); detail.setUpdateTime(new Date()); detail.setUserInfo(new UserInfo(uid)); detail.setOrderType(orderType); @@ -124,7 +160,8 @@ UserMoneyDetail detail = new UserMoneyDetail(); detail.setCreateTime(new Date()); - detail.setIdentifyCode(StringUtil.Md5(UserMoneyDetailTypeEnum.invite.name() + "-" + uid + "-" + timeF)); + detail.setIdentifyCode( + StringUtil.Md5(UserMoneyDetailTypeEnum.invite.name() + "-" + orderType + "-" + uid + "-" + timeF)); detail.setMoney(money); detail.setTitle(timeF + UserMoneyDetailTypeEnum.invite.getDesc()); detail.setType(UserMoneyDetailTypeEnum.invite); @@ -165,11 +202,11 @@ 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.setTitle(UserMoneyDetailTypeEnum.fanliWeiQuanNew.getDesc()); + detail.setType(UserMoneyDetailTypeEnum.fanliWeiQuanNew); detail.setSourceIdentifyId(drawBack.getId()); - detail.setDescInfo("璁㈠崟鍙凤細" + drawBack.getOrderId()); + detail.setDescInfo( + Constant.getSourceName(Constant.SOURCE_TYPE_TAOBAO) + "锛�" + drawBack.getOrderId() + "-閮ㄥ垎鍟嗗搧鍞悗"); detail.setUpdateTime(new Date()); detail.setUserInfo(new UserInfo(uid)); detail.setOrderType(Constant.SOURCE_TYPE_TAOBAO); @@ -206,10 +243,10 @@ .Md5(UserMoneyDetailTypeEnum.shareWeiQuan.name() + "-" + uid + "-" + drawBack.getOrderItemId())); detail.setMoney(new BigDecimal("0").subtract(money)); detail.setTitle(UserMoneyDetailTypeEnum.shareWeiQuan.getDesc()); - detail.setSubTitle("璁㈠崟缁存潈"); + detail.setSubTitle("璁㈠崟鍞悗"); detail.setType(UserMoneyDetailTypeEnum.shareWeiQuan); detail.setSourceIdentifyId(drawBack.getId()); - detail.setDescInfo("璁㈠崟鍙凤細" + UserUtil.filterOrderId(drawBack.getOrderId())); + detail.setDescInfo("璁㈠崟鍙凤細" + drawBack.getOrderId()); detail.setUpdateTime(new Date()); detail.setUserInfo(new UserInfo(uid)); detail.setOrderType(Constant.SOURCE_TYPE_TAOBAO); @@ -246,7 +283,7 @@ .Md5(UserMoneyDetailTypeEnum.inviteWeiQuan.name() + "-" + uid + "-" + drawBack.getOrderItemId())); detail.setMoney(new BigDecimal("0").subtract(money)); detail.setTitle(UserMoneyDetailTypeEnum.inviteWeiQuan.getDesc()); - detail.setSubTitle("璁㈠崟缁存潈"); + detail.setSubTitle("璁㈠崟鍞悗"); detail.setType(UserMoneyDetailTypeEnum.inviteWeiQuan); detail.setSourceIdentifyId(drawBack.getId()); detail.setDescInfo("璁㈠崟鍙凤細" + UserUtil.filterOrderId(drawBack.getOrderId())); @@ -262,7 +299,7 @@ * @param extract * @return */ - public static UserMoneyDetail createExtract(Extract extract) throws UserMoneyDetailException { + public static UserMoneyDetail createExtract(Extract extract, String alipayNo) throws UserMoneyDetailException { if (extract == null) throw new UserMoneyDetailException(1, "鎻愮幇璁板綍涓嶈兘涓虹┖"); if (extract.getId() == null) @@ -272,15 +309,20 @@ if (extract.getUserInfo() == null || extract.getUserInfo().getId() == null) throw new UserMoneyDetailException(1, "鎻愮幇鐢ㄦ埛涓嶈兘涓虹┖"); + if (alipayNo != null && alipayNo.length() > 10) + alipayNo = "*" + alipayNo.substring(alipayNo.length() - 10, alipayNo.length()); + UserMoneyDetail detail = new UserMoneyDetail(); detail.setCreateTime(new Date()); detail.setIdentifyCode(StringUtil.Md5(UserMoneyDetailTypeEnum.extract.name() + ":" + extract.getId())); detail.setMoney(new BigDecimal("0").subtract(extract.getMoney())); detail.setSourceIdentifyId(extract.getId()); - detail.setTitle(UserMoneyDetailTypeEnum.extract.getDesc()); - detail.setType(UserMoneyDetailTypeEnum.extract); + detail.setTitle(UserMoneyDetailTypeEnum.extractNew.getDesc()); + detail.setType(UserMoneyDetailTypeEnum.extractNew); detail.setUpdateTime(new Date()); + detail.setDescInfo("鏀粯瀹濊鍗曞彿锛�" + alipayNo); detail.setUserInfo(extract.getUserInfo()); + detail.setShow(false); return detail; } @@ -306,10 +348,44 @@ 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.setTitle(UserMoneyDetailTypeEnum.extractVerifyNew.getDesc()); + detail.setType(UserMoneyDetailTypeEnum.extractVerifyNew); detail.setUpdateTime(new Date()); detail.setUserInfo(new UserInfo(aa.getUid())); + detail.setDescInfo(String.format("鏀粯瀹濓細%s -濮撳悕-%s", UserUtil.filterAlipayAccount(aa.getAccount()), + UserUtil.filterAlipayName(aa.getName()))); + return detail; + } + + /** + * 绯荤粺鎵i櫎 + * @Title: createSystemTakeOff + * @Description: + * @param uid + * @param money + * @param desc + * @return + * @throws UserMoneyDetailException + * UserMoneyDetail 杩斿洖绫诲瀷 + * @throws + */ + public static UserMoneyDetail createSystemTakeOff(Long uid, BigDecimal money, String desc) + throws UserMoneyDetailException { + if (uid == 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(uid + "-" + UserMoneyDetailTypeEnum.systemTakeOff.name() + System.currentTimeMillis())); + detail.setMoney(new BigDecimal("0").subtract(money)); + detail.setTitle(UserMoneyDetailTypeEnum.systemTakeOff.getDesc()); + detail.setType(UserMoneyDetailTypeEnum.systemTakeOff); + detail.setUpdateTime(new Date()); + detail.setUserInfo(new UserInfo(uid)); + detail.setDescInfo(desc); return detail; } @@ -340,6 +416,7 @@ detail.setType(UserMoneyDetailTypeEnum.extractReject); detail.setUpdateTime(new Date()); detail.setUserInfo(extract.getUserInfo()); + detail.setShow(false);// 闅愯棌鎻愮幇澶辫触璁板綍 return detail; } @@ -423,8 +500,8 @@ * @return * @throws UserMoneyDetailException */ - public static UserMoneyDetail createOrderReward(String orderId, int orderType, BigDecimal money, UserInfo user) - throws UserMoneyDetailException { + public static UserMoneyDetail createOrderReward(String orderId, int orderType, BigDecimal money, + BigDecimal originalMoney, UserInfo user) throws UserMoneyDetailException { if (StringUtil.isNullOrEmpty(orderId)) throw new UserMoneyDetailException(1, "璁㈠崟鍙蜂笉鑳戒负绌�"); if (user == null) @@ -436,12 +513,12 @@ detail.setCreateTime(new Date()); detail.setIdentifyCode(StringUtil.Md5(UserMoneyDetailTypeEnum.hongbao.name() + "-" + "鑰佺増鏈�" + "-" + orderId)); detail.setMoney(money); - detail.setTitle(UserMoneyDetailTypeEnum.orderReward.getDesc()); - detail.setType(UserMoneyDetailTypeEnum.orderReward); + detail.setTitle(UserMoneyDetailTypeEnum.orderRewardNew.getDesc()); + detail.setType(UserMoneyDetailTypeEnum.orderRewardNew); detail.setUpdateTime(new Date()); detail.setUserInfo(user); detail.setOrderType(orderType); - detail.setDescInfo("璁㈠崟鍙�:" + orderId); + detail.setDescInfo(Constant.getSourceName(orderType) + ":" + orderId + "-鍘熻繑鍒╋細" + originalMoney); return detail; } @@ -489,8 +566,8 @@ detail.setIdentifyCode(StringUtil.Md5( UserMoneyDetailTypeEnum.systemEqualize.name() + "-" + System.currentTimeMillis() + "-" + user.getId())); detail.setMoney(money); - detail.setTitle(UserMoneyDetailTypeEnum.systemEqualize.getDesc()); - detail.setType(UserMoneyDetailTypeEnum.systemEqualize); + detail.setTitle(UserMoneyDetailTypeEnum.systemEqualizeNew.getDesc()); + detail.setType(UserMoneyDetailTypeEnum.systemEqualizeNew); detail.setUpdateTime(new Date()); detail.setUserInfo(user); if (!StringUtil.isNullOrEmpty(desc)) { @@ -518,4 +595,132 @@ return detail; } + /** + * 閭�璇峰閲戝埌璐� + * + * @param uid + * @param validCount + * @param weiQuanCount + * @param invalidCount + * @param money + * @param time + * @return + * @throws UserMoneyDetailException + */ + public static UserMoneyDetail createInviteSubsidy(Long uid, int orderType, 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.subsidy.name() + "-" + orderType + "-" + uid + "-" + timeF)); + detail.setMoney(money); + detail.setTitle( + timeF + UserMoneyDetailTypeEnum.subsidy.getDesc() + "銆�" + Constant.getSourceName(orderType) + "銆�"); + detail.setType(UserMoneyDetailTypeEnum.subsidy); + detail.setDescInfo("閭�璇疯鍗曡ˉ璐�"); + detail.setUpdateTime(new Date()); + detail.setUserInfo(new UserInfo(uid)); + detail.setOrderType(orderType); + return detail; + } + + /** + * 鍥㈤槦鏀剁泭 + * @Title: createTeamReward + * @Description: + * @param uid + * @param money + * @param time + * @return + * @throws UserMoneyDetailException + * UserMoneyDetail 杩斿洖绫诲瀷 + * @throws + */ + + public static UserMoneyDetail createTeamReward(Long uid, 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骞碝鏈�"); + + UserMoneyDetail detail = new UserMoneyDetail(); + detail.setCreateTime(new Date()); + detail.setIdentifyCode(StringUtil.Md5(UserMoneyDetailTypeEnum.teamReward.name() + "-" + uid + "-" + timeF)); + detail.setMoney(money); + detail.setTitle(UserMoneyDetailTypeEnum.teamReward.getDesc()); + detail.setType(UserMoneyDetailTypeEnum.teamReward); + detail.setDescInfo(timeF); + detail.setUpdateTime(new Date()); + detail.setUserInfo(new UserInfo(uid)); + return detail; + } + + + /** + * 鍥㈤槦鍒嗙孩 + * @Title: createTeamDividents + * @Description: + * @param uid + * @param money + * @param time + * @return + * @throws UserMoneyDetailException + * UserMoneyDetail 杩斿洖绫诲瀷 + * @throws + */ + public static UserMoneyDetail createTeamDividents(Long uid, 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骞碝鏈�"); + + UserMoneyDetail detail = new UserMoneyDetail(); + detail.setCreateTime(new Date()); + detail.setIdentifyCode(StringUtil.Md5(UserMoneyDetailTypeEnum.teamDividents.name() + "-" + uid + "-" + timeF)); + detail.setMoney(money); + detail.setTitle(UserMoneyDetailTypeEnum.teamDividents.getDesc()); + detail.setType(UserMoneyDetailTypeEnum.teamDividents); + detail.setDescInfo(timeF); + detail.setUpdateTime(new Date()); + detail.setUserInfo(new UserInfo(uid)); + return detail; + } + } -- Gitblit v1.8.0