From a04db7a0622fa8ce524e15657a03b4a2b94fc47a Mon Sep 17 00:00:00 2001 From: yujian <yujian@123.com> Date: 星期四, 30 五月 2019 16:15:27 +0800 Subject: [PATCH] 商品更新 更改 直接更新goodBrief --- fanli/src/main/java/com/yeshi/fanli/service/impl/user/ExtractServiceImpl.java | 52 ++++++++++++++++++++++++++++------------------------ 1 files changed, 28 insertions(+), 24 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 658d29b..8bdc6d1 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 @@ -55,6 +55,7 @@ import com.yeshi.fanli.service.inter.user.UserAccountBindingHistoryService; import com.yeshi.fanli.service.inter.user.UserInfoService; import com.yeshi.fanli.service.inter.user.UserMoneyDetailService; +import com.yeshi.fanli.service.inter.user.UserMoneyService; import com.yeshi.fanli.service.inter.user.UserNotificationService; import com.yeshi.fanli.util.CMQManager; import com.yeshi.fanli.util.Constant; @@ -128,6 +129,9 @@ @Resource private UserMoneyDebtService userMoneyDebtService; + @Resource + private UserMoneyService userMoneyService; + @Transactional public Integer addExtract(Extract extract) { Integer integer = extract(extract); @@ -169,8 +173,15 @@ UserInfo user = find.getUserInfo(); - userInfoMapper.addHongBaoByUid(user.getId(), find.getMoney()); + UserMoneyDetail userMoneyDetail = null; + try { + userMoneyDetail = UserMoneyDetailFactory.createExtractReject(find); + } catch (UserMoneyDetailException e1) { + e1.printStackTrace(); + } + // 澧炲姞璧勯噾 + userMoneyService.addUserMoney(user.getId(), find.getMoney(), userMoneyDetail); // 鏇存柊鍘熸潵鐨勭姸鎬� Extract updateExtract = new Extract(); updateExtract.setId(id); @@ -207,16 +218,6 @@ // 鏇存柊鎻愮幇璁板綍瀹℃牳琛� extractAuditRecordMapper.updateByPrimaryKeySelective(auditRecord); // 鏂扮増璧勯噾璇︽儏 - try { - UserMoneyDetail userMoneyDetail = UserMoneyDetailFactory.createExtractReject(find); - userMoneyDetailMapper.insert(userMoneyDetail); - } catch (UserMoneyDetailException e2) { - try { - LogHelper.errorDetailInfo(e2); - } catch (Exception e3) { - e3.printStackTrace(); - } - } try { userNotificationService.extractWrong(user.getId(), find, @@ -272,13 +273,12 @@ auditRecord.setExtract(extract); extractAuditRecordMapper.insertSelective(auditRecord); - // 鍑忓幓璐︽埛璧勯噾 - userInfoMapper.subHongBaoByUid(extract.getUserInfo().getId(), extract.getMoney()); + // 鏂扮増璧勯噾璇︽儏 + UserMoneyDetail userMoneyDetail = null; try { - UserMoneyDetail userMoneyDetail = UserMoneyDetailFactory.createExtract(extract); - userMoneyDetailMapper.insert(userMoneyDetail); + userMoneyDetail = UserMoneyDetailFactory.createExtract(extract); } catch (UserMoneyDetailException e2) { try { LogHelper.errorDetailInfo(e2); @@ -286,6 +286,9 @@ e1.printStackTrace(); } } + + // 鍑忓幓璐︽埛璧勯噾 + userMoneyService.subUserMoney(extract.getUserInfo().getId(), extract.getMoney(), userMoneyDetail); userNotificationService.extractApply(extract.getUserInfo().getId()); // 娣诲姞鏂扮増閫氱煡 @@ -436,12 +439,10 @@ updateExtract.setReason(msg); extractMapper.updateByPrimaryKeySelective(updateExtract); - userInfoMapper.addHongBaoByUid(user.getId(), extract.getMoney()); - + UserMoneyDetail userMoneyDetail = null; // 鏂扮増璧勯噾璇︽儏 try { - UserMoneyDetail userMoneyDetail = UserMoneyDetailFactory.createExtractReject(extract); - userMoneyDetailMapper.insert(userMoneyDetail); + userMoneyDetail = UserMoneyDetailFactory.createExtractReject(extract); } catch (UserMoneyDetailException e2) { try { LogHelper.errorDetailInfo(e2); @@ -449,6 +450,8 @@ e1.printStackTrace(); } } + // 澧炲姞璧勯噾 + userMoneyService.addUserMoney(user.getId(), extract.getMoney(), userMoneyDetail); try { @@ -515,9 +518,14 @@ @Transactional @Override public void checkExtract(Long uid) throws ExtractException { + BigDecimal compensateMoney = extractMapper.computeCompensateByUid(uid); + if (compensateMoney == null) + compensateMoney = new BigDecimal(0); + // 涓嶅垽瀹氬埌璐︾孩鍖呴棶棰� Long count = hongBaoV2Mapper.countByUidAndState(uid, HongBao.STATE_YILINGQU); - if (count == null || count == 0) + if ((count == null || count == 0) && compensateMoney.compareTo(new BigDecimal(0)) == 0) { throw new ExtractException(1, "娌℃湁宸插埌璐︾殑绾㈠寘"); + } // 鏌ヨ鏄惁鏈夋瑺璐� boolean isDebt = userMoneyDebtService.isHaveDebtToRepay(uid); if (isDebt) @@ -546,10 +554,6 @@ weiqaunMoney = weiqaunMoney.abs(); BigDecimal balance = userInfoService.selectByPKey(uid).getMyHongBao(); - - BigDecimal compensateMoney = extractMapper.computeCompensateByUid(uid); - if (compensateMoney == null) - compensateMoney = new BigDecimal(0); BigDecimal after = hongBaoMoney.subtract(extractMoney.add(weiqaunMoney).add(balance).add(compensateMoney)); -- Gitblit v1.8.0