From bb2d93ec0add746fff457c04e7995d75eb93f894 Mon Sep 17 00:00:00 2001 From: yujian <yujian@123.com> Date: 星期三, 26 六月 2019 14:17:35 +0800 Subject: [PATCH] 自购时 推广红包不足限制 --- fanli/src/main/java/com/yeshi/fanli/service/impl/tlj/UserTaoLiJinRecordServiceImpl.java | 27 ++++++++++++++++++++++----- 1 files changed, 22 insertions(+), 5 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/tlj/UserTaoLiJinRecordServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/tlj/UserTaoLiJinRecordServiceImpl.java index 07b8e9f..080f0d3 100644 --- a/fanli/src/main/java/com/yeshi/fanli/service/impl/tlj/UserTaoLiJinRecordServiceImpl.java +++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/tlj/UserTaoLiJinRecordServiceImpl.java @@ -224,12 +224,24 @@ // 杩囨湡 userTaoLiJinOriginService.overdueHongBao(uid); - - BigDecimal tlj = userMoneyExtra.getTlj(); + + // 鎬绘帹骞跨孩鍖� BigDecimal totalMoney = MoneyBigDecimalUtil.mul(perface, new BigDecimal(totalNum)); - if (totalMoney.compareTo(tlj) > 0) { + + // 鑷喘鏃剁殑绾㈠寘浣欓 + if (origin == 1) { + BigDecimal tljSelf = userMoneyExtra.getTljSelf(); + if (tljSelf == null || tljSelf.compareTo(totalMoney) < 0) { + throw new UserTaoLiJinRecordException(101, "绾㈠寘浣欓涓嶈冻"); + } + } + + // 鍒嗕韩鏃剁殑绾㈠寘浣欓 + BigDecimal tlj = userMoneyExtra.getTlj(); + if (tlj == null || tlj.compareTo(totalMoney) < 0) { throw new UserTaoLiJinRecordException(101, "绾㈠寘浣欓涓嶈冻"); } + // 鍒涘缓娣樼ぜ閲戠孩鍖� TaoLiJinDTO taoLiJinDTO = TaoKeApiUtil.createTaoLiJin(auctionId, name, perface, totalNum, sendStartTime, @@ -254,10 +266,15 @@ record.setCreateTime(new Date()); userTaoLiJinRecordMapper.insertSelective(record); - // 鍓╀綑娣樼ぜ閲� - BigDecimal surplusTlj = MoneyBigDecimalUtil.sub(tlj, totalMoney); + UserMoneyExtra updateExtra = new UserMoneyExtra(); updateExtra.setUid(uid); + if (origin == 1) { // 鍓╀綑娣樼ぜ閲�-- 鑷喘 + updateExtra.setTljSelf(MoneyBigDecimalUtil.sub(userMoneyExtra.getTljSelf(), totalMoney)); + } + + // 鍓╀綑娣樼ぜ閲� + BigDecimal surplusTlj = MoneyBigDecimalUtil.sub(tlj, totalMoney); updateExtra.setTlj(surplusTlj); updateExtra.setUpdateTime(new Date()); userMoneyExtraService.updateByPrimaryKeySelective(updateExtra); -- Gitblit v1.8.0