From 70c9043f312a52a922cb15490d90a172b3515060 Mon Sep 17 00:00:00 2001
From: yujian <yujian>
Date: 星期四, 28 二月 2019 14:07:00 +0800
Subject: [PATCH] 奖励详情跳转地址调整

---
 fanli/src/main/java/com/yeshi/fanli/service/impl/user/ExtractServiceImpl.java |   72 +++++++++++++++++++++++++++++++++--
 1 files changed, 67 insertions(+), 5 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/user/ExtractServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/user/ExtractServiceImpl.java
index 90e7d4f..6438b10 100644
--- a/fanli/src/main/java/com/yeshi/fanli/service/impl/user/ExtractServiceImpl.java
+++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/user/ExtractServiceImpl.java
@@ -24,11 +24,13 @@
 import com.yeshi.fanli.dao.mybatis.ExtractAuditRecordMapper;
 import com.yeshi.fanli.dao.mybatis.ExtractMapper;
 import com.yeshi.fanli.dao.mybatis.ExtractRecordMapper;
+import com.yeshi.fanli.dao.mybatis.HongBaoV2Mapper;
 import com.yeshi.fanli.dao.mybatis.MoneyRecordMapper;
 import com.yeshi.fanli.dao.mybatis.PayInfoMapper;
 import com.yeshi.fanli.dao.mybatis.SystemMapper;
 import com.yeshi.fanli.dao.mybatis.UserInfoMapper;
 import com.yeshi.fanli.dao.mybatis.hongbao.HongBaoMapper;
+import com.yeshi.fanli.dao.mybatis.money.UserMoneyDetailMapper;
 import com.yeshi.fanli.dao.user.AccountDetailsDao;
 import com.yeshi.fanli.dao.user.AccountMessageDao;
 import com.yeshi.fanli.dao.user.ExtractDao;
@@ -44,13 +46,15 @@
 import com.yeshi.fanli.entity.bus.user.PayInfo;
 import com.yeshi.fanli.entity.bus.user.UserInfo;
 import com.yeshi.fanli.entity.common.AdminUser;
+import com.yeshi.fanli.entity.money.UserMoneyDetail;
 import com.yeshi.fanli.exception.ExtractException;
 import com.yeshi.fanli.exception.NotExistObjectException;
 import com.yeshi.fanli.exception.ObjectStateException;
+import com.yeshi.fanli.exception.money.UserMoneyDetailException;
 import com.yeshi.fanli.log.LogHelper;
 import com.yeshi.fanli.service.inter.config.ConfigService;
 import com.yeshi.fanli.service.inter.config.SystemConfigService;
-import com.yeshi.fanli.service.inter.hongbao.HongBaoService;
+import com.yeshi.fanli.service.inter.msg.UserMoneyMsgNotificationService;
 import com.yeshi.fanli.service.inter.push.PushService;
 import com.yeshi.fanli.service.inter.user.AccountDetailsService;
 import com.yeshi.fanli.service.inter.user.AccountMessageService;
@@ -65,6 +69,7 @@
 import com.yeshi.fanli.util.MoneyBigDecimalUtil;
 import com.yeshi.fanli.util.TimeUtil;
 import com.yeshi.fanli.util.factory.AccountDetailsFactory;
+import com.yeshi.fanli.util.factory.UserMoneyDetailFactory;
 
 import net.sf.json.JSONObject;
 
@@ -138,10 +143,19 @@
 	private HongBaoMapper hongBaoMapper;
 
 	@Resource
+	private HongBaoV2Mapper hongBaoV2Mapper;
+
+	@Resource
 	private PushService pushService;
 
 	@Resource
 	private UserNotificationService userNotificationService;
+
+	@Resource
+	private UserMoneyDetailMapper userMoneyDetailMapper;
+
+	@Resource
+	private UserMoneyMsgNotificationService userMoneyMsgNotificationService;
 
 	@Resource
 	private AlipayAccountValidNormalHistoryMapper alipayAccountValidNormalHistoryMapper;
@@ -189,7 +203,7 @@
 	@Transactional
 	public synchronized void rejectExtract(long id, String reason, long extractTime, AdminUser admin)
 			throws ObjectStateException, NotExistObjectException {
-		Extract find = extractDao.find(Extract.class, id);
+		Extract find = extractMapper.selectByPrimaryKey(id);
 
 		if (find == null) {
 			throw new NotExistObjectException("涓嶅瓨鍦ㄨ瀵硅薄");
@@ -245,12 +259,28 @@
 		AccountDetails ad = AccountDetailsFactory.create("+" + find.getMoney(), AccountDetailsFactory.HUIKUAN, null,
 				find, find.getUserInfo());
 		accountDetailsMapper.insertSelective(ad);
+		// 鏂扮増璧勯噾璇︽儏
+		try {
+			UserMoneyDetail userMoneyDetail = UserMoneyDetailFactory.createExtractReject(find);
+			userMoneyDetail.setId(ad.getId());
+			userMoneyDetailMapper.insert(userMoneyDetail);
+		} catch (UserMoneyDetailException e2) {
+			try {
+				LogHelper.errorDetailInfo(e2);
+			} catch (Exception e3) {
+				e3.printStackTrace();
+			}
+		}
+
 		try {
 			userNotificationService.extractWrong(user.getId(), find,
 					TimeUtil.getGernalTime(find.getExtractTime(), "yyyy-MM-dd HH:mm"));
 		} catch (Exception e) {
 			e.printStackTrace();
 		}
+
+		// 鏂扮増閫氱煡
+		userMoneyMsgNotificationService.extractFail(find, reason);
 	}
 
 	/**
@@ -294,7 +324,22 @@
 				extract, user);
 		accountDetailsMapper.insertSelective(ad);
 
+		// 鏂扮増璧勯噾璇︽儏
+		try {
+			UserMoneyDetail userMoneyDetail = UserMoneyDetailFactory.createExtract(extract);
+			userMoneyDetail.setId(ad.getId());
+			userMoneyDetailMapper.insert(userMoneyDetail);
+		} catch (UserMoneyDetailException e2) {
+			try {
+				LogHelper.errorDetailInfo(e2);
+			} catch (Exception e1) {
+				e1.printStackTrace();
+			}
+		}
+
 		userNotificationService.extractApply(extract.getUserInfo().getId());
+		// 娣诲姞鏂扮増閫氱煡
+		userMoneyMsgNotificationService.extractApplay(extract);
 
 		if ("鏄�".equals(autoExtract)) {
 			LogHelper.userInfo("uid=" + user.getId() + ",鎻愪氦杞处鐢宠!");
@@ -446,6 +491,19 @@
 					null, extract, extract.getUserInfo());
 			accountDetailsMapper.insertSelective(ad);
 
+			// 鏂扮増璧勯噾璇︽儏
+			try {
+				UserMoneyDetail userMoneyDetail = UserMoneyDetailFactory.createExtractReject(extract);
+				userMoneyDetail.setId(ad.getId());
+				userMoneyDetailMapper.insert(userMoneyDetail);
+			} catch (UserMoneyDetailException e2) {
+				try {
+					LogHelper.errorDetailInfo(e2);
+				} catch (Exception e1) {
+					e1.printStackTrace();
+				}
+			}
+
 			try {
 
 				userNotificationService.extractTransferFail(user.getId(),
@@ -458,6 +516,8 @@
 				e.printStackTrace();
 			}
 
+			// 鏂扮増鎻愮幇
+			userMoneyMsgNotificationService.extractFail(extract, null);
 		}
 	}
 
@@ -481,6 +541,7 @@
 		Extract updateExtract = new Extract();
 		updateExtract.setId(extract.getId());
 		updateExtract.setState(Constant.EXTRACT_PASS);
+		updateExtract.setReceiveTime(new Date());
 		updateExtract.setReason("鎻愮幇鎴愬姛");
 		extractMapper.updateByPrimaryKeySelective(updateExtract);
 
@@ -493,7 +554,8 @@
 		} catch (Exception e) {
 			e.printStackTrace();
 		}
-
+		// 鏂扮増閫氱煡
+		userMoneyMsgNotificationService.extractSuccess(extract);
 	}
 
 	/**
@@ -506,8 +568,8 @@
 
 	@Override
 	public void checkExtract(String uid) throws ExtractException {
-		int count = hongBaoMapper.getCountByUidAndState(Long.parseLong(uid), HongBao.STATE_YILINGQU);
-		if (count == 0)
+		Long count = hongBaoV2Mapper.countByUidAndState(Long.parseLong(uid), HongBao.STATE_YILINGQU);
+		if (count == null || count == 0)
 			throw new ExtractException(1, "娌℃湁宸插埌璐︾殑绾㈠寘");
 		List<Integer> list = extractMapper.checkExtract(uid);
 		if (list != null && list.size() > 0 && list.get(0) == 0)

--
Gitblit v1.8.0