From fddac98328f53ea47922377a7fd9649981996740 Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Tue, 28 Sep 2021 16:03:33 +0800
Subject: [PATCH] fix

---
 src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java |   33 ++++++++++++++++++++++++++++++++-
 1 files changed, 32 insertions(+), 1 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 ff266cd..0c0a8de 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
@@ -1,6 +1,7 @@
 package cc.mrbird.febs.mall.service.impl;
 
 import cc.mrbird.febs.common.entity.FebsResponse;
+import cc.mrbird.febs.common.enumerates.AgentLevelEnum;
 import cc.mrbird.febs.common.enumerates.MoneyFlowTypeEnum;
 import cc.mrbird.febs.common.exception.FebsException;
 import cc.mrbird.febs.common.utils.*;
@@ -53,6 +54,7 @@
     private final MallMoneyFlowMapper mallMoneyFlowMapper;
     private final IApiMallMemberWalletService walletService;
     private final MallMemberPaymentMapper mallMemberPaymentMapper;
+    private final DataDictionaryCustomMapper dataDictionaryCustomMapper;
 
     @Value("${spring.profiles.active}")
     private String active;
@@ -95,7 +97,7 @@
         mallMember.setName(registerDto.getAccount());
         mallMember.setAccountStatus(MallMember.ACCOUNT_STATUS_ENABLE);
         mallMember.setAccountType(MallMember.ACCOUNT_TYPE_NORMAL);
-        mallMember.setLevel("1");
+        mallMember.setLevel(AgentLevelEnum.ZERO_LEVEL.name());
         mallMember.setSex("男");
 
         this.baseMapper.insert(mallMember);
@@ -106,6 +108,9 @@
         //推荐人和推荐人链
         boolean flag = false;
         String parentId = mallMember.getReferrerId();
+        if (StrUtil.isBlank(parentId)) {
+            flag = true;
+        }
         String ids = "";
         while (!flag) {
             if (StrUtil.isBlank(ids)) {
@@ -220,6 +225,10 @@
             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());
         return new FebsResponse().success().data(mallMemberVo);
@@ -338,6 +347,10 @@
 
         Long memberId = LoginUserUtil.getLoginUser().getId();
         MallMember loginMember = this.baseMapper.selectById(memberId);
+        if (StrUtil.isBlank(loginMember.getTradePassword())) {
+            throw new FebsException("未设置支付密码");
+        }
+
         if (!loginMember.getTradePassword().equals(SecureUtil.md5(transferDto.getTradePwd()))) {
             throw new FebsException("支付密码错误");
         }
@@ -354,6 +367,10 @@
     public void withdrawal(WithdrawalDto withdrawalDto) {
         Long memberId = LoginUserUtil.getLoginUser().getId();
         MallMember mallMember = this.baseMapper.selectById(memberId);
+        if (StrUtil.isBlank(mallMember.getTradePassword())) {
+            throw new FebsException("未设置支付密码");
+        }
+
         if (!mallMember.getTradePassword().equals(SecureUtil.md5(withdrawalDto.getTradePwd()))) {
             throw new FebsException("支付密码错误");
         }
@@ -391,4 +408,18 @@
         MallMember member = LoginUserUtil.getLoginUser();
         return mallMemberPaymentMapper.selectByMemberId(member.getId());
     }
+
+    @Override
+    public void bindPhone(AccountAndCodeDto accountAndCodeDto) {
+        boolean b = commonService.verifyCode(accountAndCodeDto.getAccount(), accountAndCodeDto.getCode());
+        if (!b) {
+            throw new FebsException("验证码错误");
+        }
+
+        Long id = LoginUserUtil.getLoginUser().getId();
+        MallMember member = this.baseMapper.selectById(id);
+
+        member.setBindPhone(accountAndCodeDto.getAccount());
+        this.baseMapper.updateById(member);
+    }
 }

--
Gitblit v1.9.1