KKSU
2024-08-19 706b7f3bc2af111defad3a1e3827c6e405d4528f
src/main/java/cc/mrbird/febs/mall/controller/AdminMallMemberController.java
@@ -4,6 +4,7 @@
import cc.mrbird.febs.common.controller.BaseController;
import cc.mrbird.febs.common.entity.FebsResponse;
import cc.mrbird.febs.common.entity.QueryRequest;
import cc.mrbird.febs.common.enumerates.DataDictionaryEnum;
import cc.mrbird.febs.common.enumerates.FlowTypeNewEnum;
import cc.mrbird.febs.common.enumerates.MoneyFlowTypeNewEnum;
import cc.mrbird.febs.common.enumerates.ProductEnum;
@@ -36,6 +37,7 @@
import javax.validation.constraints.NotNull;
import java.io.IOException;
import java.io.OutputStream;
import java.math.BigDecimal;
import java.net.URLEncoder;
import java.text.DecimalFormat;
import java.util.ArrayList;
@@ -58,6 +60,7 @@
    private final MallMemberChargeMapper mallMemberChargeMapper;
    private final IMallMoneyFlowService mallMoneyFlowService;
    private final MallMemberWithdrawMapper mallMemberWithdrawMapper;
    private final DataDictionaryCustomMapper dataDictionaryCustomMapper;
    @GetMapping("confirmOrder")
@@ -71,8 +74,15 @@
            if(1 != mallMemberCharge.getState()){
                continue;
            }
            DataDictionaryCustom fcmPriceDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(
                    DataDictionaryEnum.FCM_PRICE.getType(),
                    DataDictionaryEnum.FCM_PRICE.getCode());
            BigDecimal price = ObjectUtil.isEmpty(fcmPriceDic) ? new BigDecimal(8) : new BigDecimal(fcmPriceDic.getValue());
            BigDecimal divide = mallMemberCharge.getAmount().divide(price, 2, BigDecimal.ROUND_DOWN);
            MallMemberAmount mallMemberAmount = mallMemberAmountMapper.selectByMemberId(mallMemberCharge.getMemberId());
            mallMemberAmount.setFcmCntAva(mallMemberAmount.getFcmCntAva().add(mallMemberCharge.getAmount()));
            mallMemberAmount.setFcmCntAva(mallMemberAmount.getFcmCntAva().add(divide));
            mallMemberAmountMapper.updateFcmCntAvaById(mallMemberAmount);
            mallMemberCharge.setState(2);
@@ -81,7 +91,7 @@
            String orderNo = MallUtils.getOrderNum("BF");
            mallMoneyFlowService.addMoneyFlow(
                    mallMemberCharge.getMemberId(),
                    mallMemberCharge.getAmount(),
                    divide,
                    MoneyFlowTypeNewEnum.FCM_INSIDE_IN.getValue(),
                    orderNo,
                    mallMemberCharge.getMemberId(),
@@ -124,7 +134,7 @@
            mallMemberWithdrawMapper.updateById(mallMemberWithdraw);
            MallMemberAmount mallMemberAmount = mallMemberAmountMapper.selectByMemberId(mallMemberWithdraw.getMemberId());
            mallMemberAmount.setFcmCntAva(mallMemberAmount.getFcmCntAva().add(mallMemberWithdraw.getAmount()));
            mallMemberAmount.setFcmCntAva(mallMemberAmount.getFcmCntAva().subtract(mallMemberWithdraw.getAmount()));
            mallMemberAmountMapper.updateFcmCntAvaById(mallMemberAmount);
        }
        return new FebsResponse().success();