KKSU
2024-03-15 b87c5549fe471167882192944db3f2d6b729476c
src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallMemberServiceImpl.java
@@ -12,6 +12,7 @@
import cc.mrbird.febs.mall.entity.MallNewsInfo;
import cc.mrbird.febs.mall.mapper.*;
import cc.mrbird.febs.mall.service.IAdminMallMemberService;
import cc.mrbird.febs.mall.service.IApiMallMemberService;
import cc.mrbird.febs.mall.service.IApiMallMemberWalletService;
import cc.mrbird.febs.mall.service.IMallMoneyFlowService;
import cc.mrbird.febs.mall.vo.*;
@@ -56,6 +57,8 @@
    private final MallMoneyFlowMapper mallMoneyFlowMapper;
    private final IMallMoneyFlowService mallMemberService;
    private final IApiMallMemberService iApiMallMemberService;
    private final IApiMallMemberService apiMallMemberService;
    private final MallMemberPaymentMapper mallMemberPaymentMapper;
@@ -177,31 +180,30 @@
            return new FebsResponse().fail().message("当前状态不是提现中");
        }
        Long wtihdrawTypeId = mallMemberWithdraw.getWtihdrawTypeId();
        MallMemberBank mallMemberBank = mallMemberBankMapper.selectById(wtihdrawTypeId);
        String bankName = mallMemberBank.getBankName();
        NBYHResponse nbyhResponse = new NBYHResponse();
        if("宁波银行".equals(bankName)){
            nbyhResponse = nbyhService.tradeSinge(mallMemberWithdraw.getId());
        mallMemberWithdraw.setStatus(2);
        mallMemberWithdrawMapper.updateById(mallMemberWithdraw);
        QueryWrapper<MallMoneyFlow> objectQueryWrapper = new QueryWrapper<>();
        objectQueryWrapper.eq("order_no",mallMemberWithdraw.getWithdrawNo());
        objectQueryWrapper.eq("type",MoneyFlowTypeNewEnum.RANK_BONUS.getValue());
        MallMoneyFlow mallMoneyFlow = mallMoneyFlowMapper.selectOne(objectQueryWrapper);
        if(ObjectUtil.isNotEmpty(mallMoneyFlow)){
            mallMoneyFlow.setStatus(3);
            mallMoneyFlowMapper.updateById(mallMoneyFlow);
        }else{
            nbyhResponse = nbyhService.tradeSingeOuterTransfer(mallMemberWithdraw.getId());
            //用户佣金增加对应的余额
            iApiMallMemberWalletService.add(mallMemberWithdraw.getAmount(),mallMemberWithdraw.getMemberId(),"balance");
            iApiMallMemberService.addMoneyFlow(
                    mallMemberWithdraw.getMemberId(),
                    mallMemberWithdraw.getAmount(),
                    MoneyFlowTypeNewEnum.AGENT_BONUS.getValue(),
                    mallMemberWithdraw.getWithdrawNo(),
                    MoneyFlowTypeNewEnum.AGENT_BONUS.getDescription(),
                    null,
                    null,
                    3,
                    FlowTypeEnum.BALANCE.getValue());
        }
        if(nbyhResponse.isFlag()){
            mallMemberWithdraw.setStatus(2);
            mallMemberWithdrawMapper.updateById(mallMemberWithdraw);
            QueryWrapper<MallMoneyFlow> flowQueryWrapper = new QueryWrapper<>();
            flowQueryWrapper.eq("order_no",mallMemberWithdraw.getWithdrawNo());
            flowQueryWrapper.eq("type",MoneyFlowTypeEnum.WITHDRAWAL.getValue());
            MallMoneyFlow mallMoneyFlow = mallMoneyFlowMapper.selectOne(flowQueryWrapper);
            if(ObjectUtil.isNotEmpty(mallMoneyFlow)){
                mallMoneyFlow.setStatus(2);
                mallMoneyFlowMapper.updateById(mallMoneyFlow);
            }
            return new FebsResponse().success().message(nbyhResponse.getMsg());
        }else{
            return new FebsResponse().fail().message(nbyhResponse.getMsg());
        }
        return new FebsResponse().success().message("操作成功");
    }
    @Override
@@ -220,63 +222,26 @@
        QueryWrapper<MallMoneyFlow> objectQueryWrapper = new QueryWrapper<>();
        objectQueryWrapper.eq("order_no",mallMemberWithdraw.getWithdrawNo());
        objectQueryWrapper.eq("type",MoneyFlowTypeEnum.WITHDRAWAL.getValue());
        objectQueryWrapper.eq("type",MoneyFlowTypeNewEnum.RANK_BONUS.getValue());
        MallMoneyFlow mallMoneyFlow = mallMoneyFlowMapper.selectOne(objectQueryWrapper);
        mallMoneyFlow.setStatus(3);
        mallMoneyFlowMapper.updateById(mallMoneyFlow);
        if(AppContants.MEMBER_WITHDRAW_NORMAL.equals(mallMemberWithdraw.getRemark())){
        if(ObjectUtil.isNotEmpty(mallMoneyFlow)){
            mallMoneyFlow.setStatus(3);
            mallMoneyFlowMapper.updateById(mallMoneyFlow);
            //用户佣金增加对应的余额
            iApiMallMemberWalletService.add(mallMemberWithdraw.getAmount(),mallMemberWithdraw.getMemberId(),"balance");
            mallMemberService.addMoneyFlow(mallMemberWithdraw.getMemberId(),
                    mallMemberWithdraw.getAmount(),
                    MoneyFlowTypeEnum.WITHDRAWAL.getValue(),
                    mallMemberWithdraw.getWithdrawNo(),
                    null,
                    null,
        }else{
            iApiMallMemberService.addMoneyFlow(
                    mallMemberWithdraw.getMemberId(),
                    2,
                    FlowTypeEnum.BALANCE.getValue(),
                    1);
                    mallMemberWithdraw.getAmount(),
                    MoneyFlowTypeNewEnum.AGENT_BONUS.getValue(),
                    mallMemberWithdraw.getWithdrawNo(),
                    MoneyFlowTypeNewEnum.AGENT_BONUS.getDescription(),
                    null,
                    null,
                    3,
                    FlowTypeEnum.BALANCE.getValue());
        }
        if(AppContants.MEMBER_WITHDRAW_VOUCHER.equals(mallMemberWithdraw.getRemark())){
            iApiMallMemberWalletService.add(mallMemberWithdraw.getAmount(),mallMemberWithdraw.getMemberId(),"balance");
            mallMemberService.addMoneyFlow(mallMemberWithdraw.getMemberId(),
                    mallMemberWithdraw.getAmount(),
                    MoneyFlowTypeEnum.WITHDRAWAL.getValue(),
                    mallMemberWithdraw.getWithdrawNo(),
                    null,
                    null,
                    mallMemberWithdraw.getMemberId(),
                    2,
                    FlowTypeEnum.BALANCE.getValue(),
                    1);
            iApiMallMemberWalletService.add(mallMemberWithdraw.getAmountFee(),mallMemberWithdraw.getMemberId(),"voucherFireCnt");
            mallMemberService.addMoneyFlow(mallMemberWithdraw.getMemberId(),
                    mallMemberWithdraw.getAmountFee(),
                    MoneyFlowTypeEnum.WITHDRAWAL.getValue(),
                    mallMemberWithdraw.getWithdrawNo(),
                    null,
                    null,
                    mallMemberWithdraw.getMemberId(),
                    2,
                    FlowTypeEnum.COMMISSION.getValue(),
                    1);
        }
        if(AppContants.MEMBER_WITHDRAW_VOUCHER_AMOUNT.equals(mallMemberWithdraw.getRemark())){
            iApiMallMemberWalletService.add(mallMemberWithdraw.getAmount(),mallMemberWithdraw.getMemberId(),"voucherAmount");
            mallMemberService.addMoneyFlow(mallMemberWithdraw.getMemberId(),
                    mallMemberWithdraw.getAmount(),
                    MoneyFlowTypeEnum.WITHDRAWAL.getValue(),
                    mallMemberWithdraw.getWithdrawNo(),
                    null,
                    null,
                    mallMemberWithdraw.getMemberId(),
                    2,
                    FlowTypeEnum.VOUCHER_AMOUNT.getValue(),
                    1);
        }
        return new FebsResponse().success();
    }
@@ -473,7 +438,17 @@
        } else {
            iApiMallMemberWalletService.add(mallSystemPayDto.getAddBalance(), mallSystemPayDto.getId(), filedType);
        }
        mallMoneyFlowService.addMoneyFlow(memberId, bigDecimal, MoneyFlowTypeNewEnum.AGENT_BONUS.getValue(), null, type);
        String orderNo = MallUtils.getOrderNum("C");
        apiMallMemberService.addMoneyFlow(
                memberId,
                bigDecimal,
                MoneyFlowTypeNewEnum.AGENT_BONUS.getValue(),
                orderNo,
                MoneyFlowTypeNewEnum.AGENT_BONUS.getDescription(),
                null,
                null,
                2,
                FlowTypeEnum.BALANCE.getValue());
        return new FebsResponse().success();
    }
@@ -691,6 +666,9 @@
            adminMallMemberPaymentVo.setDigitalNo(mallMemberBank.getDigitalNo());
            adminMallMemberPaymentVo.setSubbranchName(mallMemberBank.getSubbranchName());
            adminMallMemberPaymentVo.setBank(mallMemberBank.getBankName());
            adminMallMemberPaymentVo.setIdCardNum(mallMemberBank.getIdCardNum());
            adminMallMemberPaymentVo.setPhone(mallMemberBank.getPhone());
            adminMallMemberPaymentVo.setName(mallMemberBank.getName());
        }
        return adminMallMemberPaymentVo;
    }
@@ -815,6 +793,7 @@
    }
    @Override
    @Transactional
    public FebsResponse chargeAgreeWithType(MallMemberWithdraw mallMemberWithdrawInfo) {
        MallMemberWithdraw mallMemberWithdraw = mallMemberWithdrawMapper.selectById(mallMemberWithdrawInfo.getId());
@@ -830,45 +809,32 @@
        if(ObjectUtil.isEmpty(mallMemberBank)){
            return new FebsResponse().fail().message("提现银行卡已删除");
        }
        String agreeType = mallMemberWithdrawInfo.getAgreeType();
        if("1".equals(agreeType)){
            mallMemberWithdraw.setStatus(2);
            mallMemberWithdrawMapper.updateById(mallMemberWithdraw);
        mallMemberWithdraw.setStatus(2);
        mallMemberWithdrawMapper.updateById(mallMemberWithdraw);
            QueryWrapper<MallMoneyFlow> flowQueryWrapper = new QueryWrapper<>();
            flowQueryWrapper.eq("order_no",mallMemberWithdraw.getWithdrawNo());
            flowQueryWrapper.eq("type",MoneyFlowTypeEnum.WITHDRAWAL.getValue());
            MallMoneyFlow mallMoneyFlow = mallMoneyFlowMapper.selectOne(flowQueryWrapper);
            if(ObjectUtil.isNotEmpty(mallMoneyFlow)){
                mallMoneyFlow.setStatus(2);
                mallMoneyFlowMapper.updateById(mallMoneyFlow);
            }
            return new FebsResponse().success();
        }else{
            String bankName = mallMemberBank.getBankName();
            NBYHResponse nbyhResponse = new NBYHResponse();
            if("宁波银行".equals(bankName)){
                nbyhResponse = nbyhService.tradeSinge(mallMemberWithdraw.getId());
            }else{
                nbyhResponse = nbyhService.tradeSingeOuterTransfer(mallMemberWithdraw.getId());
            }
            if(nbyhResponse.isFlag()){
                mallMemberWithdraw.setStatus(2);
                mallMemberWithdrawMapper.updateById(mallMemberWithdraw);
                QueryWrapper<MallMoneyFlow> flowQueryWrapper = new QueryWrapper<>();
                flowQueryWrapper.eq("order_no",mallMemberWithdraw.getWithdrawNo());
                flowQueryWrapper.eq("type",MoneyFlowTypeEnum.WITHDRAWAL.getValue());
                MallMoneyFlow mallMoneyFlow = mallMoneyFlowMapper.selectOne(flowQueryWrapper);
                if(ObjectUtil.isNotEmpty(mallMoneyFlow)){
                    mallMoneyFlow.setStatus(2);
                    mallMoneyFlowMapper.updateById(mallMoneyFlow);
                }
                return new FebsResponse().success().message(nbyhResponse.getMsg());
            }else{
                return new FebsResponse().fail().message(nbyhResponse.getMsg());
            }
        QueryWrapper<MallMoneyFlow> flowQueryWrapper = new QueryWrapper<>();
        flowQueryWrapper.eq("order_no",mallMemberWithdraw.getWithdrawNo());
        flowQueryWrapper.eq("type",MoneyFlowTypeEnum.WITHDRAWAL.getValue());
        MallMoneyFlow mallMoneyFlow = mallMoneyFlowMapper.selectOne(flowQueryWrapper);
        if(ObjectUtil.isNotEmpty(mallMoneyFlow)){
            mallMoneyFlow.setStatus(2);
            mallMoneyFlowMapper.updateById(mallMoneyFlow);
        }
        if(MoneyFlowTypeNewEnum.AGENT_BONUS.getDescription().equals(mallMemberWithdraw.getRemark())){
            //用户佣金增加对应的余额
            iApiMallMemberWalletService.add(mallMemberWithdraw.getAmount(),mallMemberWithdraw.getMemberId(),"balance");
            iApiMallMemberService.addMoneyFlow(
                    mallMemberWithdraw.getMemberId(),
                    mallMemberWithdraw.getAmount(),
                    MoneyFlowTypeNewEnum.AGENT_BONUS.getValue(),
                    mallMemberWithdraw.getWithdrawNo(),
                    MoneyFlowTypeNewEnum.AGENT_BONUS.getDescription(),
                    null,
                    null,
                    2,
                    FlowTypeEnum.BALANCE.getValue());
        }
        return new FebsResponse().success();
    }