From 1e53e5f28c55ece70b28c752fa318e2fd951e643 Mon Sep 17 00:00:00 2001 From: yujian <yujian> Date: 星期三, 20 三月 2019 16:33:51 +0800 Subject: [PATCH] taobao 下dao改造以及删除dao --- fanli/src/main/java/com/yeshi/fanli/service/impl/user/ExtractServiceImpl.java | 151 ++++++++++++++++++++----------------------------- 1 files changed, 62 insertions(+), 89 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..7d75d63 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 @@ -1,6 +1,5 @@ package com.yeshi.fanli.service.impl.user; -import java.io.Serializable; import java.math.BigDecimal; import java.util.Date; import java.util.List; @@ -18,45 +17,35 @@ import com.alipay.api.request.AlipayFundTransToaccountTransferRequest; import com.alipay.api.response.AlipayFundTransToaccountTransferResponse; import com.google.gson.Gson; -import com.yeshi.fanli.dao.mybatis.AccountDetailsMapper; import com.yeshi.fanli.dao.mybatis.AccountMessageMapper; import com.yeshi.fanli.dao.mybatis.AlipayAccountValidNormalHistoryMapper; 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.MoneyRecordMapper; +import com.yeshi.fanli.dao.mybatis.HongBaoV2Mapper; 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.user.AccountDetailsDao; -import com.yeshi.fanli.dao.user.AccountMessageDao; -import com.yeshi.fanli.dao.user.ExtractDao; -import com.yeshi.fanli.dao.user.ExtractRecordDao; -import com.yeshi.fanli.dao.user.MoneyRecordDao; -import com.yeshi.fanli.entity.bus.user.AccountDetails; +import com.yeshi.fanli.dao.mybatis.money.UserMoneyDetailMapper; +import com.yeshi.fanli.dto.HongBao; import com.yeshi.fanli.entity.bus.user.AlipayTransferResultInfo; import com.yeshi.fanli.entity.bus.user.Extract; import com.yeshi.fanli.entity.bus.user.ExtractAuditRecord; import com.yeshi.fanli.entity.bus.user.ExtractRecord; -import com.yeshi.fanli.entity.bus.user.HongBao; -import com.yeshi.fanli.entity.bus.user.MoneyRecord; 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; import com.yeshi.fanli.service.inter.user.ExtractRecordService; import com.yeshi.fanli.service.inter.user.ExtractService; -import com.yeshi.fanli.service.inter.user.MoneyRecordService; import com.yeshi.fanli.service.inter.user.UserInfoService; import com.yeshi.fanli.service.inter.user.UserNotificationService; import com.yeshi.fanli.util.CMQManager; @@ -64,7 +53,7 @@ import com.yeshi.fanli.util.GsonUtil; 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; @@ -72,13 +61,7 @@ public class ExtractServiceImpl implements ExtractService { @Resource - private ExtractDao extractDao; - - @Resource private UserInfoService userInfoService; - - @Resource - private MoneyRecordService moneyRecordService; @Resource private ConfigService configService; @@ -90,12 +73,6 @@ private SystemConfigService systemConfigService; @Resource - private AccountDetailsService accountDetailsService; - - @Resource - private AccountMessageService accountMessageService; - - @Resource private ExtractMapper extractMapper; @Resource @@ -105,25 +82,7 @@ private UserInfoMapper userInfoMapper; @Resource - private ExtractRecordDao extractRecordDao; - - @Resource - private MoneyRecordDao moneyRecordDao; - - @Resource - private AccountDetailsDao accountDetailsDao; - - @Resource - private AccountMessageDao accountMessageDao; - - @Resource private PayInfoMapper payInfoMapper; - - @Resource - private AccountDetailsMapper accountDetailsMapper; - - @Resource - private MoneyRecordMapper moneyRecordMapper; @Resource private AccountMessageMapper accountMessageMapper; @@ -132,10 +91,7 @@ private ExtractRecordMapper extractRecordMapper; @Resource - private SystemMapper systemMapper; - - @Resource - private HongBaoMapper hongBaoMapper; + private HongBaoV2Mapper hongBaoV2Mapper; @Resource private PushService pushService; @@ -144,26 +100,18 @@ private UserNotificationService userNotificationService; @Resource - private AlipayAccountValidNormalHistoryMapper alipayAccountValidNormalHistoryMapper; + private UserMoneyDetailMapper userMoneyDetailMapper; - public List<Extract> getExtractInfoByUid(long uid) { - return extractDao.list("from Extract e where e.userInfo.id=? and e.state != 2", new Serializable[] { uid }); - } + @Resource + private UserMoneyMsgNotificationService userMoneyMsgNotificationService; + + @Resource + private AlipayAccountValidNormalHistoryMapper alipayAccountValidNormalHistoryMapper; @Transactional public Integer addExtract(Extract extract) { Integer integer = extract(extract); return integer; - } - - public List<Extract> getExtractList(int index) { - int start = index * Constant.PAGE_SIZE; - return extractDao.list("from Extract e order by e.id desc", start, Constant.PAGE_SIZE, new Serializable[] {}); - } - - public int getCount() { - Long lcount = extractDao.getCount("select count(e.id) from Extract e"); - return lcount.intValue(); } @Transactional @@ -187,9 +135,9 @@ } @Transactional - public synchronized void rejectExtract(long id, String reason, long extractTime, AdminUser admin) + public synchronized void rejectExtract(long id, String reason, AdminUser admin) throws ObjectStateException, NotExistObjectException { - Extract find = extractDao.find(Extract.class, id); + Extract find = extractMapper.selectByPrimaryKey(id); if (find == null) { throw new NotExistObjectException("涓嶅瓨鍦ㄨ瀵硅薄"); @@ -202,9 +150,6 @@ UserInfo user = find.getUserInfo(); userInfoMapper.addHongBaoByUid(user.getId(), find.getMoney()); - - // 鍒犻櫎鎻愮幇璁板綍 - moneyRecordMapper.deleteMoneyRecordByExtractId(id); // 鏇存柊鍘熸潵鐨勭姸鎬� Extract updateExtract = new Extract(); @@ -241,16 +186,27 @@ // 鏇存柊鎻愮幇璁板綍瀹℃牳琛� extractAuditRecordMapper.updateByPrimaryKeySelective(auditRecord); + // 鏂扮増璧勯噾璇︽儏 + try { + UserMoneyDetail userMoneyDetail = UserMoneyDetailFactory.createExtractReject(find); + userMoneyDetailMapper.insert(userMoneyDetail); + } catch (UserMoneyDetailException e2) { + try { + LogHelper.errorDetailInfo(e2); + } catch (Exception e3) { + e3.printStackTrace(); + } + } - AccountDetails ad = AccountDetailsFactory.create("+" + find.getMoney(), AccountDetailsFactory.HUIKUAN, null, - find, find.getUserInfo()); - accountDetailsMapper.insertSelective(ad); try { userNotificationService.extractWrong(user.getId(), find, TimeUtil.getGernalTime(find.getExtractTime(), "yyyy-MM-dd HH:mm")); } catch (Exception e) { e.printStackTrace(); } + + // 鏂扮増閫氱煡 + userMoneyMsgNotificationService.extractFail(find, reason); } /** @@ -285,16 +241,21 @@ // 鍑忓幓璐︽埛璧勯噾 userInfoMapper.subHongBaoByUid(extract.getUserInfo().getId(), extract.getMoney()); - MoneyRecord moneyRecord = new MoneyRecord(user, null, extract.getMoney(), "鎻愮幇", "", extract.getExtractTime(), - 2); - moneyRecord.setExtract(extract); - moneyRecordMapper.insertSelective(moneyRecord); - - AccountDetails ad = AccountDetailsFactory.create("-" + extract.getMoney(), AccountDetailsFactory.TIXIAN, null, - extract, user); - accountDetailsMapper.insertSelective(ad); + // 鏂扮増璧勯噾璇︽儏 + try { + UserMoneyDetail userMoneyDetail = UserMoneyDetailFactory.createExtract(extract); + 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() + ",鎻愪氦杞处鐢宠!"); @@ -442,9 +403,17 @@ userInfoMapper.addHongBaoByUid(user.getId(), extract.getMoney()); - AccountDetails ad = AccountDetailsFactory.create("+" + extract.getMoney(), AccountDetailsFactory.HUIKUAN, - null, extract, extract.getUserInfo()); - accountDetailsMapper.insertSelective(ad); + // 鏂扮増璧勯噾璇︽儏 + try { + UserMoneyDetail userMoneyDetail = UserMoneyDetailFactory.createExtractReject(extract); + userMoneyDetailMapper.insert(userMoneyDetail); + } catch (UserMoneyDetailException e2) { + try { + LogHelper.errorDetailInfo(e2); + } catch (Exception e1) { + e1.printStackTrace(); + } + } try { @@ -458,6 +427,8 @@ e.printStackTrace(); } + // 鏂扮増鎻愮幇 + userMoneyMsgNotificationService.extractFail(extract, null); } } @@ -481,6 +452,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 +465,8 @@ } catch (Exception e) { e.printStackTrace(); } - + // 鏂扮増閫氱煡 + userMoneyMsgNotificationService.extractSuccess(extract); } /** @@ -501,13 +474,13 @@ */ @Override public Extract getExtractById(long id) { - return extractDao.find(Extract.class, id); + return extractMapper.selectByPrimaryKey(id); } @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