From 7b0429b26473970a6829cfc84aaab4ce82b6227e Mon Sep 17 00:00:00 2001 From: xiaoyong931011 <15274802129@163.com> Date: Mon, 13 Feb 2023 13:43:02 +0800 Subject: [PATCH] 申请合伙人成功,返回充值金额数量 --- src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java | 71 +++++++++++++++++++++++------------ 1 files changed, 47 insertions(+), 24 deletions(-) diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java index fb65cc4..6404772 100644 --- a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java +++ b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java @@ -66,6 +66,7 @@ private final MallRegisterAppealMapper mallRegisterAppealMapper; private final MallTeamLeaderMapper mallTeamLeaderMapper; private final SpringContextHolder springContextHolder; + private final MallAgentRecordMapper mallAgentRecordMapper; @Value("${spring.profiles.active}") @@ -232,10 +233,11 @@ MallMember mallMember = this.baseMapper.selectById(id); MallMemberVo mallMemberVo = MallMemberConversion.INSTANCE.entityToVo(mallMember); - - MallMember referMember = this.baseMapper.selectInfoByInviteId(mallMember.getReferrerId()); - if (referMember != null) { - mallMemberVo.setReferrerName(referMember.getName()); + if(StrUtil.isNotEmpty(mallMember.getReferrerId())){ + MallMember referMember = this.baseMapper.selectInfoByInviteId(mallMember.getReferrerId()); + if (referMember != null) { + mallMemberVo.setReferrerName(referMember.getName()); + } } if (StrUtil.isNotBlank(mallMember.getTradePassword())) { @@ -247,23 +249,24 @@ mallMemberVo.setHasPayment(1); } -// DataDictionaryCustom dic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(AppContants.AGENT_LEVEL, mallMember.getLevel()); -// if (dic != null) { -// mallMemberVo.setLevelName(dic.getDescription()); -// } MallMemberWallet wallet = mallMemberWalletMapper.selectWalletByMemberId(mallMemberVo.getId()); mallMemberVo.setBalance(wallet.getBalance()); mallMemberVo.setScore(wallet.getScore()); mallMemberVo.setPrizeScore(wallet.getPrizeScore()); mallMemberVo.setTotalCost(mallOrderInfoMapper.selectTotalAmount(id)); - //用户是否是团长 - List<MallTeamLeader> mallTeamLeaders = mallTeamLeaderMapper.selectListByMemberIdAndState(mallMember.getId(), MallTeamLeader.STATE_YES); - if(CollUtil.isNotEmpty(mallTeamLeaders)){ - mallMemberVo.setIsTeamLeader(1); - }else{ - mallMemberVo.setIsTeamLeader(2); + //代理状态 + MallAgentRecord mallAgentRecordIng = mallAgentRecordMapper.selectByMemberIdAndState(id, MallAgentRecord.APPLY_ING); + MallAgentRecord mallAgentRecordAgree = mallAgentRecordMapper.selectByMemberIdAndState(id, MallAgentRecord.APPLY_AGREE); + MallAgentRecord mallAgentRecordDisagree = mallAgentRecordMapper.selectByMemberIdAndState(id, MallAgentRecord.APPLY_DISAGREE); + if(ObjectUtil.isNotEmpty(mallAgentRecordIng)){ + mallMemberVo.setIsAgent(1); + }else if(ObjectUtil.isNotEmpty(mallAgentRecordAgree)){ + mallMemberVo.setIsAgent(2); + }else if(ObjectUtil.isNotEmpty(mallAgentRecordDisagree)){ + mallMemberVo.setIsAgent(3); } + return new FebsResponse().success().data(mallMemberVo); } @@ -439,15 +442,7 @@ public BigDecimal canMoney() { Long memberId = LoginUserUtil.getLoginUser().getId(); MallMemberWallet wallet = mallMemberWalletMapper.selectWalletByMemberId(memberId); - BigDecimal profit = mallMoneyFlowMapper.selectProfitByDateAndMemberId(memberId); - - BigDecimal canMoney = wallet.getCommission(); - if (profit != null) { - if(canMoney.compareTo(BigDecimal.ZERO) > 0) { - canMoney = canMoney.subtract(profit); - } - } - return canMoney; + return wallet.getBalance().setScale(2,BigDecimal.ROUND_DOWN); } @Override @@ -725,6 +720,9 @@ Integer value = Integer.parseInt(rangeSize.getValue()) * 1000; //根据经纬度获取周围团长的距离 MallTeamLeader mallTeamLeader = mallTeamLeaderMapper.selectLeaderByLonAndLat(longitude, latitude); + if(ObjectUtil.isEmpty(mallTeamLeader)){ + return new FebsResponse().success().data(2); + } Double distance = mallTeamLeader.getDistance(); if(value <= distance){ return new FebsResponse().success().data(2); @@ -743,6 +741,18 @@ if(BigDecimal.ZERO.compareTo(amount)>0){ return new FebsResponse().fail().message("请输入正确的充值金额"); } + Integer type = apiRechargeWalletDto.getType(); + if(2 == type){ + //成为合伙人的充值金额 + DataDictionaryCustom agentPriceDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(DataDictionaryEnum.PRICE_AMOUNT.getType(), + DataDictionaryEnum.PRICE_AMOUNT.getCode()); + String agentPrice = agentPriceDic.getValue(); + BigDecimal price = new BigDecimal(agentPrice); + if(price.compareTo(amount) != 0){ + return new FebsResponse().fail().message("成为合伙人的金额为"+agentPrice); + } + } + apiRechargeWalletDto.setMemberId(memberId); BrandWCPayRequestData brandWCPayRequestData = null; try { @@ -752,7 +762,20 @@ } String wxResultStr = JSONUtil.toJsonStr(brandWCPayRequestData); String payResultStr = brandWCPayRequestData.getPrepay_id(); - return new FebsResponse().success().message("充值即将到账"); + Map<String, Object> map = new HashMap<>(); + map.put("orderInfo", payResultStr); + map.put("wxResultStr", wxResultStr); + return new FebsResponse().success().data(map).message("充值即将到账"); + } + + @Override + public void updateMemberAgent(Long memberId) { + mallAgentRecordMapper.updateStateByMemberId(memberId); + + //更新用户表中的LEVEL + MallMember mallMember = this.baseMapper.selectById(memberId); + mallMember.setLevel(AgentLevelEnum.FIRST_LEVEL.name()); + this.baseMapper.updateById(mallMember); } private String getXcxLoginUrl(String code) { -- Gitblit v1.9.1