From cdee95fda5bc96b5b52794b75b4906f378c30f52 Mon Sep 17 00:00:00 2001 From: KKSU <15274802129@163.com> Date: Wed, 24 Jan 2024 11:56:46 +0800 Subject: [PATCH] 发票 --- src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallMemberServiceImpl.java | 72 ++++++++++++++++++++++++++++++------ 1 files changed, 60 insertions(+), 12 deletions(-) diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallMemberServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallMemberServiceImpl.java index 53c42b4..f7524b3 100644 --- a/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallMemberServiceImpl.java +++ b/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; @@ -64,6 +66,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) { @@ -152,15 +156,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(); } @@ -175,6 +191,7 @@ if(1 != mallMemberWithdraw.getStatus()){ return new FebsResponse().fail().message("当前状态不是提现中"); } + mallMemberWithdraw.setStatus(3); mallMemberWithdrawMapper.updateById(mallMemberWithdraw); @@ -185,8 +202,8 @@ mallMoneyFlow.setStatus(3); mallMoneyFlowMapper.updateById(mallMoneyFlow); - //用户钱包增加对应的余额 - iApiMallMemberWalletService.addBalance(mallMoneyFlow.getAmount().negate(),mallMoneyFlow.getMemberId()); + //用户佣金增加对应的余额 + iApiMallMemberWalletService.add(mallMemberWithdraw.getAmount(),mallMemberWithdraw.getMemberId(),"commission"); return new FebsResponse().success(); } @@ -551,11 +568,28 @@ @Override @Transactional(rollbackFor = Exception.class) public void modifyReferer(MallMember member) { - MallMember referer = this.baseMapper.selectInfoByInviteId(member.getReferrerId()); + String referrerId = member.getReferrerId();//新的推荐人邀请码 + //获取新推荐人信息 + MallMember referer = this.baseMapper.selectInfoByInviteId(referrerId); if (referer == null) { throw new FebsException("推荐人不存在"); } - String refererId = member.getReferrerId(); + member = this.baseMapper.selectById(member.getId());//修改的用户 + + if(member.getInviteId().equals(referrerId)){ + throw new FebsException("自己不能推荐自己"); + } + String refererId = referer.getInviteId();//新推荐人的邀请码 + if(StrUtil.isNotEmpty(referer.getReferrerIds())){ + if (referer.getReferrerIds().contains(member.getInviteId())) { + throw new FebsException("修改的推荐关系不符合规则"); + } + } +// MallMember referer = this.baseMapper.selectInfoByInviteId(member.getReferrerId()); +// if (referer == null) { +// throw new FebsException("推荐人不存在"); +// } +// String refererId = member.getReferrerId(); member = this.baseMapper.selectById(member.getId()); @@ -588,6 +622,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)) { -- Gitblit v1.9.1