xiaoyong931011
2022-08-31 24f3b972cf932fe4247948d0239218c57c1c595a
src/main/java/cc/mrbird/febs/pay/controller/XcxPayController.java
@@ -1,17 +1,18 @@
package cc.mrbird.febs.pay.controller;
import cc.mrbird.febs.common.entity.FebsResponse;
import cc.mrbird.febs.common.enumerates.DataDictionaryEnum;
import cc.mrbird.febs.common.enumerates.OrderDeliveryStateEnum;
import cc.mrbird.febs.common.enumerates.OrderStatusEnum;
import cc.mrbird.febs.common.properties.XcxProperties;
import cc.mrbird.febs.common.utils.RedisUtils;
import cc.mrbird.febs.common.utils.SpringContextHolder;
import cc.mrbird.febs.mall.dto.RechargeWalletMessageSendDto;
import cc.mrbird.febs.mall.entity.DataDictionaryCustom;
import cc.mrbird.febs.mall.entity.MallMemberWallet;
import cc.mrbird.febs.mall.entity.MallMoneyFlow;
import cc.mrbird.febs.mall.entity.MallOrderInfo;
import cc.mrbird.febs.mall.mapper.MallMemberWalletMapper;
import cc.mrbird.febs.mall.mapper.MallMoneyFlowMapper;
import cc.mrbird.febs.mall.mapper.MallOrderInfoMapper;
import cc.mrbird.febs.mall.mapper.*;
import cc.mrbird.febs.mall.service.IApiMallMemberWalletService;
import cc.mrbird.febs.pay.model.NotifyData;
import cc.mrbird.febs.pay.model.OrderStateDto;
@@ -23,6 +24,7 @@
import cc.mrbird.febs.pay.util.Signature;
import cc.mrbird.febs.pay.util.Util;
import cc.mrbird.febs.pay.util.WechatConfigure;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.json.JSONObject;
import cn.hutool.json.JSONUtil;
@@ -59,6 +61,10 @@
    MallMoneyFlowMapper mallMoneyFlowMapper;
    @Autowired
    MallMemberWalletMapper mallMemberWalletMapper;
    @Autowired
    MallMemberMapper mallMemberMapper;
    @Autowired
    DataDictionaryCustomMapper dataDictionaryCustomMapper;
    @Autowired
    RedisUtils redisUtils;
    @Autowired
@@ -125,11 +131,19 @@
                                RoundingMode.HALF_UP);
                        if (ObjectUtil.isNotEmpty(mallMoneyFlow)) {
                            log.debug("检查支付金额payMoney={},mallMoneyFlow.getPayMoney()={}", payMoney, mallMoneyFlow.getAmount());
                            MallMemberWallet mallMemberWallet = mallMemberWalletMapper.selectWalletByMemberId(memberId);
                            if(ObjectUtil.isNotEmpty(mallMemberWallet)){
                                log.debug("检查支付金额payMoney={},mallMoneyFlow.getPayMoney()={}", payMoney, mallMoneyFlow.getAmount());
                                memberWalletService.addBalance(payMoney,memberId);
                            }
                                RechargeWalletMessageSendDto rechargeWalletMessageSendDto = new RechargeWalletMessageSendDto();
                                rechargeWalletMessageSendDto.setRechargeNo(rechargeNo);
                                rechargeWalletMessageSendDto.setRechargeAmount(payMoney.toString());
                                MallMemberWallet mallMemberWallet = mallMemberWalletMapper.selectWalletByMemberId(memberId);
                                rechargeWalletMessageSendDto.setBalance(mallMemberWallet.getBalance().toString());
                                rechargeWalletMessageSendDto.setCreateTime(DateUtil.now());
                                rechargeWalletMessageSendDto.setOpenId(mallMemberMapper.selectById(memberId).getOpenId());
                                DataDictionaryCustom dataDictionaryCustom = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(DataDictionaryEnum.WX_TEMPLATE_ID_TWO.getType(), DataDictionaryEnum.WX_TEMPLATE_ID_TWO.getCode());
                                rechargeWalletMessageSendDto.setTemplateId(dataDictionaryCustom.getValue());
                                iXcxPayService.rechargeWalletMessageSend(rechargeWalletMessageSendDto);
                            threadResult.success().message("充值成功");
                        } else {
                            log.info("充值失败", attrStr);