From c82d277f7686b0d259523bb9733f5b15a4d4a097 Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Fri, 29 May 2020 19:30:39 +0800
Subject: [PATCH] finish entrust order some interface

---
 src/main/java/com/xcong/excoin/modules/member/service/impl/MemberServiceImpl.java |   73 ++++++++++++++++++++++++++++++++++++
 1 files changed, 73 insertions(+), 0 deletions(-)

diff --git a/src/main/java/com/xcong/excoin/modules/member/service/impl/MemberServiceImpl.java b/src/main/java/com/xcong/excoin/modules/member/service/impl/MemberServiceImpl.java
index a3a428e..2a159e7 100644
--- a/src/main/java/com/xcong/excoin/modules/member/service/impl/MemberServiceImpl.java
+++ b/src/main/java/com/xcong/excoin/modules/member/service/impl/MemberServiceImpl.java
@@ -15,20 +15,26 @@
 import com.xcong.excoin.modules.member.dao.*;
 import com.xcong.excoin.modules.member.entity.*;
 import com.xcong.excoin.modules.member.parameter.dto.MemberAuthenticationDto;
+import com.xcong.excoin.modules.member.parameter.dto.MemberBindEmailDto;
+import com.xcong.excoin.modules.member.parameter.dto.MemberBindPhoneDto;
 import com.xcong.excoin.modules.member.parameter.dto.MemberDelPaymethodDto;
 import com.xcong.excoin.modules.member.parameter.dto.MemberForgetPwdDto;
 import com.xcong.excoin.modules.member.parameter.dto.MemberPaymethodDto;
 import com.xcong.excoin.modules.member.parameter.dto.MemberUpdatePwdDto;
 import com.xcong.excoin.modules.member.parameter.dto.MemberUpdateTradePwdDto;
+import com.xcong.excoin.modules.member.parameter.vo.MemberCoinAddressCountListVo;
+import com.xcong.excoin.modules.member.parameter.vo.MemberCoinAddressCountVo;
 import com.xcong.excoin.modules.member.parameter.vo.MemberInfoVo;
 import com.xcong.excoin.modules.member.parameter.vo.MemberPaymethodDetailListVo;
 import com.xcong.excoin.modules.member.parameter.vo.MemberPaymethodDetailVo;
 import com.xcong.excoin.modules.member.service.MemberService;
+import com.xcong.excoin.modules.platform.dao.PlatformSymbolsCoinDao;
 import com.xcong.excoin.utils.MessageSourceUtils;
 import com.xcong.excoin.utils.RedisUtils;
 import com.xcong.excoin.utils.ShareCodeUtil;
 import lombok.extern.slf4j.Slf4j;
 
+import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
@@ -72,6 +78,9 @@
     
     @Resource
     MemberPaymentMethodDao memberPaymentMethodDao;
+    
+    @Resource
+    PlatformSymbolsCoinDao platformSymbolsCoinDao;
 
     @Transactional()
     @Override
@@ -499,4 +508,68 @@
 		return Result.ok(memberPaymethodDetailListVo);
 	}
 
+	@Override
+	public Result memberBindPhone(@Valid MemberBindPhoneDto memberBindPhoneDto) {
+		//获取用户ID
+		Long memberId = LoginUserUtils.getAppLoginUser().getId();
+		String phone = memberBindPhoneDto.getPhone();
+		String code = memberBindPhoneDto.getCode();
+		
+		MemberEntity member = memberDao.selectById(memberId);
+		String smsCode = redisUtils.get("SMS_" + phone) + "";
+		
+		if (ObjectUtil.isNotEmpty(member)) {
+            if (StrUtil.isEmpty(smsCode)) {
+                return Result.fail(MessageSourceUtils.getString("member_service_0038"));
+            }
+            if (!smsCode.equals(code)) {
+                return Result.fail(MessageSourceUtils.getString("member_service_0013"));
+            }
+            member.setPhone(phone);
+            memberDao.updateById(member);
+            redisUtils.del("SMS_" + member.getPhone());
+            return Result.ok(MessageSourceUtils.getString("member_service_0014"));
+        }
+		
+        return Result.fail(MessageSourceUtils.getString("member_service_0015"));
+    }
+
+	@Override
+	public Result memberBindEmail(@Valid MemberBindEmailDto memberBindEmailDto) {
+		
+		//获取用户ID
+		Long memberId = LoginUserUtils.getAppLoginUser().getId();
+		String email = memberBindEmailDto.getEmail();
+		String code = memberBindEmailDto.getCode();
+				
+		MemberEntity member = memberDao.selectById(memberId);
+		String verifyCode = (String)redisUtils.get("EMAIL_" + email);
+		if (ObjectUtil.isNotEmpty(member)) {
+			if (StringUtils.isBlank(verifyCode)) {
+		        return Result.fail(MessageSourceUtils.getString("member_service_0012"));
+		    }
+		    if (!code.equals(verifyCode)) {
+		        return Result.fail(MessageSourceUtils.getString("member_service_0039"));
+		    }
+            member.setEmail(email);
+            memberDao.updateById(member);
+            redisUtils.del("EMAIL_" + member.getPhone());
+            return Result.ok(MessageSourceUtils.getString("member_service_0018"));
+        }
+        return Result.fail(MessageSourceUtils.getString("member_service_0019"));
+    }
+
+	@Override
+	public Result memberCoinAddressCount() {
+		//获取用户ID
+		Long memberId = LoginUserUtils.getAppLoginUser().getId();
+		List<MemberCoinAddressCountVo> list = platformSymbolsCoinDao.selectCoinAddressCount(memberId);
+		MemberCoinAddressCountListVo memberCoinAddressCountListVo = new MemberCoinAddressCountListVo();
+		if(CollUtil.isNotEmpty(list)) {
+			memberCoinAddressCountListVo.setMemberCoinAddressCountVo(list);
+			return Result.ok(memberCoinAddressCountListVo);
+		}
+        return Result.fail(MessageSourceUtils.getString("member_service_0020"));
+    }
+
 }

--
Gitblit v1.9.1