xiaoyong931011
2023-03-30 836e019db92b9871cba9d440c8159b35f79e1726
src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallMemberServiceImpl.java
@@ -16,6 +16,8 @@
import cc.mrbird.febs.mall.service.IApiMallMemberWalletService;
import cc.mrbird.febs.mall.service.IMallMoneyFlowService;
import cc.mrbird.febs.mall.vo.*;
import cc.mrbird.febs.pay.model.SinglePayDto;
import cc.mrbird.febs.pay.service.UnipayService;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
@@ -34,6 +36,7 @@
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
import java.util.stream.Collectors;
/**
 * @author wzy
@@ -64,6 +67,8 @@
    private final MallShopApplyMapper mallShopApplyMapper;
    private final IMallMoneyFlowService mallMoneyFlowService;
    private final UnipayService unipayService;
    private final MallMemberBankMapper mallMemberBankMapper;
    @Override
    public IPage<MallMember> getMallMemberList(MallMember mallMember, QueryRequest request) {
@@ -106,6 +111,15 @@
        if (type == 1) {
            mallMember.setDirector(value);
        } else if (type == 2){
            /**
             * 线下服务商设置
             *  团队下没有线下服务商,才能成为线下服务商
             */
//            List<MallMember> mallMembers = mallMemberMapper.selectAllChildAgentListByInviteIdAndStoreMaster(mallMember.getInviteId(), 1);
//            if(CollUtil.isNotEmpty(mallMembers)){
//                List<String> phoneList = mallMembers.stream().map(MallMember::getPhone).collect(Collectors.toList());
//                throw new FebsException("团队存在线下服务中心,账号为【"+phoneList.toString()+"】");
//            }
            mallMember.setStoreMaster(value);
        } else {
            throw new FebsException("参数错误");
@@ -152,15 +166,27 @@
        if(1 != mallMemberWithdraw.getStatus()){
            return new FebsResponse().fail().message("当前状态不是提现中");
        }
        mallMemberWithdraw.setStatus(2);
        mallMemberWithdrawMapper.updateById(mallMemberWithdraw);
        QueryWrapper<MallMoneyFlow> objectQueryWrapper = new QueryWrapper<>();
        objectQueryWrapper.eq("order_no",mallMemberWithdraw.getWithdrawNo());
        objectQueryWrapper.eq("type",MoneyFlowTypeEnum.WITHDRAWAL.getValue());
        MallMoneyFlow mallMoneyFlow = mallMoneyFlowMapper.selectOne(objectQueryWrapper);
        mallMoneyFlow.setStatus(2);
        mallMoneyFlowMapper.updateById(mallMoneyFlow);
        Long wtihdrawTypeId = mallMemberWithdraw.getWtihdrawTypeId();
        MallMemberBank mallMemberBank = mallMemberBankMapper.selectById(wtihdrawTypeId);
        /**
         * 调用汇聚代付
         */
        SinglePayDto singlePayDto = new SinglePayDto();
        singlePayDto.setMerchantOrderNo(mallMemberWithdraw.getWithdrawNo());
        singlePayDto.setReceiverAccountNoEncBankNo(mallMemberBank.getBankNo());
        singlePayDto.setReceiverAccountNoEncName(mallMemberBank.getName());
        singlePayDto.setReceiverAccountType("201");
        BigDecimal paidAmount = mallMemberWithdraw.getAmount().subtract(mallMemberWithdraw.getAmountFee()).setScale(2, BigDecimal.ROUND_DOWN);
        singlePayDto.setPaidAmount(paidAmount);
        singlePayDto.setCurrency("201");
        singlePayDto.setIsChecked("202");
        singlePayDto.setPaidDesc("用户提现");
        singlePayDto.setPaidUse("202");
        String singlePayRep = unipayService.singlePay(singlePayDto);
        if(!mallMemberWithdraw.getWithdrawNo().equals(singlePayRep)){
            return new FebsResponse().fail().message("提现失败,请稍后查看错误信息一览");
        }
        return new FebsResponse().success();
    }
@@ -176,7 +202,6 @@
            return new FebsResponse().fail().message("当前状态不是提现中");
        }
        mallMemberWithdraw.setStatus(3);
        mallMemberWithdrawMapper.updateById(mallMemberWithdraw);
@@ -188,7 +213,7 @@
        mallMoneyFlowMapper.updateById(mallMoneyFlow);
        //用户佣金增加对应的余额
        iApiMallMemberWalletService.add(mallMemberWithdraw.getAmount().negate(),mallMemberWithdraw.getMemberId(),"commission");
        iApiMallMemberWalletService.add(mallMemberWithdraw.getAmount(),mallMemberWithdraw.getMemberId(),"balance");
        return new FebsResponse().success();
    }
@@ -344,7 +369,7 @@
        if(StrUtil.isEmpty(level) || !AgentLevelEnum.ZERO_LEVEL.name().equals(mallMember.getLevel())){
            return new FebsResponse().fail().message("该用户无法激活");
        }
        mallMember.setLevel(AgentLevelEnum.FIRST_LEVEL.name());
        mallMember.setLevel(AgentLevelEnum.SECOND_LEVEL.name());
        mallMemberMapper.updateById(mallMember);
        return new FebsResponse().success();
    }
@@ -435,7 +460,7 @@
            // 重置交易密码
            if (type == 1) {
                String payPwd = SecureUtil.md5("654321");
                String payPwd = SecureUtil.md5("123456");
                member.setTradePassword(payPwd);
                // 重置登录密码
            } else {
@@ -590,6 +615,20 @@
        mallShopApplyMapper.updateById(mallShopApply);
    }
    @Override
    public AdminMallMemberPaymentVo getMallBankInfoById(long id) {
        MallMemberWithdraw mallMemberWithdraw = mallMemberWithdrawMapper.selectById(id);
        Long wtihdrawTypeId = mallMemberWithdraw.getWtihdrawTypeId();
        MallMemberBank mallMemberBank = mallMemberBankMapper.selectById(wtihdrawTypeId);
        AdminMallMemberPaymentVo adminMallMemberPaymentVo = new AdminMallMemberPaymentVo();
        if(ObjectUtil.isNotEmpty(mallMemberBank)){
            adminMallMemberPaymentVo.setBankNo(mallMemberBank.getBankNo());
            adminMallMemberPaymentVo.setBankName(mallMemberBank.getName());
        }
        return adminMallMemberPaymentVo;
    }
    private String refererIds(String parentId) {
        boolean flag = false;
        if (StrUtil.isBlank(parentId)) {