fix
Helius
2022-06-17 38a7fc9d1a7a421741ef641303ac8d2a78d997f5
fix
3 files modified
21 ■■■■ changed files
src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallMemberServiceImpl.java 6 ●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallActServiceImpl.java 11 ●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberWalletServiceImpl.java 4 ●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallMemberServiceImpl.java
@@ -375,7 +375,11 @@
        }
        if (isReduce) {
            iApiMallMemberWalletService.reduce(mallSystemPayDto.getAddBalance().negate(), mallSystemPayDto.getId(), filedType);
            int i = iApiMallMemberWalletService.reduce(mallSystemPayDto.getAddBalance().negate(), mallSystemPayDto.getId(), filedType);
            if (i == 2) {
                throw new FebsException("剩余数量不足");
            }
        } else {
            iApiMallMemberWalletService.add(mallSystemPayDto.getAddBalance(), mallSystemPayDto.getId(), filedType);
        }
src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallActServiceImpl.java
@@ -549,11 +549,18 @@
//        wallet.setCommission(commission);
//        mallMemberWalletMapper.updateAmountWithVersion(wallet);
        // 消耗积分
        BigDecimal useScore = new BigDecimal(actScoreCnt);
        mallMemberWalletService.reduce(useScore, wallet.getMemberId(), "prizeScore");
        mallMemberWalletService.add(commission, wallet.getMemberId(), "commission");
        mallMoneyFlowService.addMoneyFlow(wallet.getMemberId(), useScore.negate(), MoneyFlowTypeEnum.PRIZE.getValue(), null, FlowTypeEnum.PRIZE_SCORE.getValue());
        mallMoneyFlowService.addMoneyFlow(wallet.getMemberId(), commission, MoneyFlowTypeEnum.PRIZE.getValue(), null, FlowTypeEnum.COMMISSION.getValue());
        if (apiMallAwardDetailsVo.getAwardType() == 1) {
            mallMemberWalletService.add(new BigDecimal(apiMallAwardDetailsVo.getAwardValue()), wallet.getMemberId(), "prizeScore");
            mallMoneyFlowService.addMoneyFlow(wallet.getMemberId(), commission, MoneyFlowTypeEnum.PRIZE.getValue(), null, FlowTypeEnum.PRIZE_SCORE.getValue());
        } else if (apiMallAwardDetailsVo.getAwardType() == 2) {
            mallMemberWalletService.add(new BigDecimal(apiMallAwardDetailsVo.getAwardValue()), wallet.getMemberId(), "commission");
            mallMoneyFlowService.addMoneyFlow(wallet.getMemberId(), commission, MoneyFlowTypeEnum.PRIZE.getValue(), null, FlowTypeEnum.COMMISSION.getValue());
        }
        return apiMallAwardDetailsVo;
    }
src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberWalletServiceImpl.java
@@ -196,6 +196,10 @@
                BigDecimal balance = (BigDecimal) declaredField.get(wallet);
                if (amount.compareTo(balance) > 0) {
                    if (map == null) {
                        return 2;
                    }
                    // 判断 赠送积分,如果剩下赠送积分不等于0且小于amount, 则扣除所有赠送积分
                    if ("score".equals(field)) {
                        if (balance.compareTo(BigDecimal.ZERO) == 0) {