支付修改
This commit is contained in:
@ -15,6 +15,7 @@ import cn.iocoder.yudao.framework.pay.core.client.dto.refund.PayRefundRespDTO;
|
||||
import cn.iocoder.yudao.framework.pay.core.client.dto.refund.PayRefundUnifiedReqDTO;
|
||||
import cn.iocoder.yudao.framework.pay.core.enums.divide.PayDivideRefundStatusRespEnum;
|
||||
import cn.iocoder.yudao.framework.pay.core.enums.divide.PayDivideStatusRespEnum;
|
||||
import cn.iocoder.yudao.module.member.api.card.CardApi;
|
||||
import cn.iocoder.yudao.module.pay.controller.admin.divide.vo.DividePageReqVO;
|
||||
import cn.iocoder.yudao.module.pay.controller.admin.divide.vo.DivideSaveReqVO;
|
||||
import cn.iocoder.yudao.module.pay.controller.app.divide.vo.DrawMoneyVO;
|
||||
@ -93,6 +94,9 @@ public class DivideServiceImpl implements DivideService {
|
||||
@Resource
|
||||
private StringRedisTemplate divideRedisTemplate;
|
||||
|
||||
@Resource
|
||||
private CardApi cardApi;
|
||||
|
||||
|
||||
@Override
|
||||
public Long createDivide(DivideSaveReqVO createReqVO) {
|
||||
@ -740,27 +744,7 @@ public class DivideServiceImpl implements DivideService {
|
||||
|
||||
@Override
|
||||
public void subtractWx(Integer amount, Long userId) {
|
||||
DivideCardDO lastCardDO = divideCardMapper.selectOne(Wrappers.<DivideCardDO>lambdaQuery()
|
||||
.eq(DivideCardDO::getUserId, userId)
|
||||
.orderByDesc(DivideCardDO::getCreateTime)
|
||||
.orderByDesc(DivideCardDO::getId)
|
||||
.last("limit 1"));
|
||||
|
||||
BigDecimal changeMoney = new BigDecimal(amount).divide(new BigDecimal("100"));
|
||||
//获取最新余额
|
||||
DivideCardDO cardDO = new DivideCardDO();
|
||||
cardDO.setUserId(userId);
|
||||
cardDO.setFlag(DivideCardDO.MINUS);
|
||||
cardDO.setChangeMoney(changeMoney);
|
||||
cardDO.setType("7");
|
||||
BigDecimal oldMoney = lastCardDO.getMoney();
|
||||
BigDecimal wxOldMoney = lastCardDO.getWxAmount();
|
||||
|
||||
cardDO.setMoney(oldMoney.subtract(changeMoney).setScale(2, BigDecimal.ROUND_HALF_UP));
|
||||
cardDO.setWxAmount(wxOldMoney.subtract(changeMoney).setScale(2, BigDecimal.ROUND_HALF_UP));
|
||||
cardDO.setGiftAmount(lastCardDO.getGiftAmount());
|
||||
cardDO.setCashAmount(lastCardDO.getCashAmount());
|
||||
divideCardMapper.insert(cardDO);
|
||||
cardApi.wxDraw(amount, userId);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
Reference in New Issue
Block a user