From 54b0dd1b6f8230799b0b4490f8b39afdd53a4e4c Mon Sep 17 00:00:00 2001
From: yujian <yujian@123.com>
Date: 星期三, 21 八月 2019 09:30:57 +0800
Subject: [PATCH] 积分明细
---
fanli/src/main/java/com/yeshi/fanli/service/impl/user/BindingAccountServiceImpl.java | 50 +++++++++++++++++++++++++++++++++++++-------------
1 files changed, 37 insertions(+), 13 deletions(-)
diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/user/BindingAccountServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/user/BindingAccountServiceImpl.java
index 2f2d7ff..efff08f 100644
--- a/fanli/src/main/java/com/yeshi/fanli/service/impl/user/BindingAccountServiceImpl.java
+++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/user/BindingAccountServiceImpl.java
@@ -24,15 +24,20 @@
import com.yeshi.fanli.entity.bus.user.BindingAccount;
import com.yeshi.fanli.entity.bus.user.UserAccountBindingHistory;
import com.yeshi.fanli.entity.bus.user.UserInfo;
+import com.yeshi.fanli.entity.money.UserMoneyDebt;
+import com.yeshi.fanli.entity.money.UserMoneyDebt.UserMoneyDebtTypeEnum;
import com.yeshi.fanli.entity.money.UserMoneyDetail;
import com.yeshi.fanli.exception.AlipayAccountException;
import com.yeshi.fanli.exception.AlipayTransferException;
import com.yeshi.fanli.exception.BindingAccountException;
+import com.yeshi.fanli.exception.money.UserMoneyDebtException;
import com.yeshi.fanli.exception.money.UserMoneyDetailException;
import com.yeshi.fanli.log.LogHelper;
+import com.yeshi.fanli.service.inter.money.UserMoneyDebtService;
+import com.yeshi.fanli.service.inter.msg.UserMoneyMsgNotificationService;
import com.yeshi.fanli.service.inter.user.BindingAccountService;
import com.yeshi.fanli.service.inter.user.UserAccountBindingHistoryService;
-import com.yeshi.fanli.service.inter.user.UserNotificationService;
+import com.yeshi.fanli.service.inter.user.UserMoneyService;
import com.yeshi.fanli.util.Constant;
import com.yeshi.fanli.util.StringUtil;
import com.yeshi.fanli.util.factory.UserMoneyDetailFactory;
@@ -47,15 +52,16 @@
private AlipayAccountValidNormalHistoryMapper alipayAccountValidNormalHistoryMapper;
@Resource
private UserInfoMapper userInfoMapper;
-
- @Resource
- private UserNotificationService userNotificationService;
-
@Resource
private UserAccountBindingHistoryService userAccountBindingHistoryService;
-
@Resource
private UserMoneyDetailMapper userMoneyDetailMapper;
+ @Resource
+ private UserMoneyService userMoneyService;
+ @Resource
+ private UserMoneyMsgNotificationService userMoneyMsgNotificationService;
+ @Resource
+ private UserMoneyDebtService userMoneyDebtService;
public List<BindingAccount> getBindingAccountByUid(long uid) {
return bindingAccountMapper.selectByUid(uid);
@@ -140,13 +146,12 @@
UserInfo userInfo = userInfoMapper.selectByPrimaryKeyForUpdate(uid);
if (userInfo.getMyHongBao().compareTo(new BigDecimal("0")) <= 0)
- throw new AlipayAccountException(AlipayAccountException.CODE_NO_MONEY, "浣犵殑璐︽埛鐩墠娌℃湁浣欓锛屾棤闇�缁戝畾鎻愮幇甯愬彿銆�");
+ throw new AlipayAccountException(AlipayAccountException.CODE_NO_MONEY, "浣犵殑璐︽埛鏃犱綑棰濓紝鏃犻渶缁戝畾鎻愮幇甯愬彿銆�");
// 闇�瑕佽浆璐﹂獙璇�
BigDecimal money = new BigDecimal("0.1");
transferAlipayWithVerify(account, name);
- // 鎵f
- userInfoMapper.subHongBaoByUid(uid, money);
+
// 杞处鎴愬姛
// 鎻掑叆杞处鎴愬姛琛�
AlipayAccountValidNormalHistory history = new AlipayAccountValidNormalHistory();
@@ -155,10 +160,10 @@
history.setName(name);
history.setUid(uid);
alipayAccountValidNormalHistoryMapper.insertSelective(history);
+ UserMoneyDetail userMoneyDetail = null;
// 鏂扮増璧勯噾
try {
- UserMoneyDetail userMoneyDetail = UserMoneyDetailFactory.createExtractAccountValid(history, money);
- userMoneyDetailMapper.insert(userMoneyDetail);
+ userMoneyDetail = UserMoneyDetailFactory.createExtractAccountValid(history, money);
} catch (UserMoneyDetailException e) {
try {
LogHelper.errorDetailInfo(e);
@@ -167,7 +172,26 @@
}
}
- userNotificationService.alipayAccountValidRight(uid, money, account);
+ // 浣欓鍏呰冻
+ if (userInfo.getMyHongBao().compareTo(money) >= 0) {
+ // 鎵f
+ userMoneyService.subUserMoney(uid, money, userMoneyDetail);
+ userMoneyMsgNotificationService.alipayAccountValid(history);
+ } else {// 浣欓涓嶈冻锛屾殏鏃朵笉鎵f锛屽姞鍏ュ�熻捶鍏崇郴
+ UserMoneyDebt debt = new UserMoneyDebt();
+ debt.setCreateTime(new Date());
+ debt.setLeftMoney(money);
+ debt.setOriginMoney(money);
+ debt.setSourceId(history.getId());
+ debt.setType(UserMoneyDebtTypeEnum.extractVerify);
+ debt.setUid(uid);
+ try {
+ userMoneyDebtService.addUserMoneyDebt(debt);
+ } catch (UserMoneyDebtException e) {
+ LogHelper.errorDetailInfo(e, "楠岃瘉ID锛�" + history.getId(), "");
+ }
+
+ }
}
@@ -211,7 +235,7 @@
UserAccountBindingHistory.TYPE_PHONE);
// 鎵嬫満鍙锋洿鎹㈢粦瀹氱殑7澶╁唴涓嶈兘鎻愮幇
if (history != null && !history.getFirst()
- && (System.currentTimeMillis() - history.getCreateTime().getTime()) > 1000 * 60 * 60 * 24 * 7L) {
+ && (System.currentTimeMillis() - history.getCreateTime().getTime()) < 1000 * 60 * 60 * 24 * 7L) {
throw new AlipayAccountException(111, "淇敼鎵嬫満鍙�7澶╁唴涓嶅厑璁镐慨鏀规敮浠樺疂璐﹀彿");
}
}
--
Gitblit v1.8.0