From 7ae23e17d8e90dc634f3f86e2eee209cbacaace3 Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Mon, 30 Nov 2020 17:15:53 +0800
Subject: [PATCH] 20201130

---
 src/main/java/com/xcong/excoin/modules/member/service/impl/MemberServiceImpl.java |   51 ++++++++++++++++++++++++++++++++++++++-------------
 1 files changed, 38 insertions(+), 13 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 97fddff..3a1d2c5 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
@@ -42,7 +42,6 @@
 import com.xcong.excoin.modules.member.parameter.dto.MemberSubmitCoinApplyDto;
 import com.xcong.excoin.modules.member.parameter.dto.MemberTradersPwdOutcenterDto;
 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.dto.MemberUpdateTradersPwdTimeDto;
 import com.xcong.excoin.modules.member.parameter.vo.*;
 import com.xcong.excoin.modules.member.service.MemberService;
@@ -456,15 +455,14 @@
         MemberEntity memberEntity = memberDao.selectById(memberId);
 
         String password = memberTradersPwdOutcenterDto.getPassword();
-        List<String> mnemonicWordList = memberTradersPwdOutcenterDto.getMnemonicWordList();
+        String mnemonicWordList = memberTradersPwdOutcenterDto.getMnemonicWordList();
         /**
 		 * 判断钱包是否存在
 		 */
-        if(CollectionUtils.isEmpty(mnemonicWordList)){
+        if(StringUtils.isEmpty(mnemonicWordList)){
         	return Result.fail(MessageSourceUtils.getString("login_recovery_001"));
         }
-        String mnemonicWords = ToolUtil.listToString(mnemonicWordList, ",");
-        WtWallet wtWallet = wtWalletDao.selectByMnemonicWords(mnemonicWords);
+        WtWallet wtWallet = wtWalletDao.selectByMnemonicWords(mnemonicWordList);
         if(wtWallet==null){
         	return Result.fail(MessageSourceUtils.getString("login_recovery_002"));
         }
@@ -474,6 +472,8 @@
         if (flag) {
             memberEntity.setTradePassword(SecureUtil.md5(password));
             memberDao.updateById(memberEntity);
+            wtWallet.setPassword(SecureUtil.md5(password));
+            wtWalletDao.updateByModel(wtWallet);
             LoginUserUtils.resetAppLoginUser(memberEntity);
             return Result.ok(MessageSourceUtils.getString("member_service_0051"));
         }
@@ -504,15 +504,14 @@
         MemberEntity memberEntity = memberDao.selectById(memberId);
 
         String password = memberTradersPwdOutcenterDto.getPassword();
-        List<String> mnemonicWordList = memberTradersPwdOutcenterDto.getMnemonicWordList();
+        String mnemonicWordList = memberTradersPwdOutcenterDto.getMnemonicWordList();
         /**
 		 * 判断钱包是否存在
 		 */
-        if(CollectionUtils.isEmpty(mnemonicWordList)){
+        if(StringUtils.isEmpty(mnemonicWordList)){
         	return Result.fail(MessageSourceUtils.getString("login_recovery_001"));
         }
-        String mnemonicWords = ToolUtil.listToString(mnemonicWordList, ",");
-        WtWallet wtWallet = wtWalletDao.selectByMnemonicWords(mnemonicWords);
+        WtWallet wtWallet = wtWalletDao.selectByMnemonicWords(mnemonicWordList);
         if(wtWallet==null){
         	return Result.fail(MessageSourceUtils.getString("login_recovery_002"));
         }
@@ -931,6 +930,7 @@
         return Result.ok("success");
     }
 
+    @Transactional
     @Override
     public Result memberSubmitCoinApply(@Valid MemberSubmitCoinApplyDto memberSubmitCoinApplyDto) {
         //获取用户ID
@@ -1294,14 +1294,22 @@
 		/**
 		 * 判断钱包是否存在
 		 */
-        List<String> mnemonicWordList = wtWalletDto.getMnemonicWordList();
-        if(CollectionUtils.isEmpty(mnemonicWordList)){
+		String mnemonicWordList = wtWalletDto.getMnemonicWordList();
+        if(StringUtils.isEmpty(mnemonicWordList)){
         	return Result.fail(MessageSourceUtils.getString("login_recovery_001"));
         }
-        String mnemonicWords = ToolUtil.listToString(mnemonicWordList, ",");
-        WtWallet wtWallet = wtWalletDao.selectByMnemonicWords(mnemonicWords);
+        WtWallet wtWallet = wtWalletDao.selectByMnemonicWords(mnemonicWordList);
         if(wtWallet==null){
         	return Result.fail(MessageSourceUtils.getString("login_recovery_002"));
+        }
+        /**
+         * 资金密码验证
+         */
+        String pssword = wtWalletDto.getPassword();
+        String passwordToMD5 = MD5Util.strToMD5(pssword);
+        String passwordWallet = wtWallet.getPassword(); 
+        if(!passwordToMD5.equals(passwordWallet)) {
+        	return Result.fail(MessageSourceUtils.getString("login_recovery_004"));
         }
         
         /**
@@ -1313,6 +1321,7 @@
         loginVo.setAddressMd(strToMD5);
         Wrapper<MemberEntity> queryWrapperOrepool = new QueryWrapper<>();
         ((QueryWrapper<MemberEntity>) queryWrapperOrepool).eq("address", address);
+        ((QueryWrapper<MemberEntity>) queryWrapperOrepool).eq("trade_password", passwordToMD5);
         MemberEntity memberEntity = memberDao.selectOne(queryWrapperOrepool);
         if(ObjectUtil.isEmpty(memberEntity)) {
         	log.info("用户初始化");
@@ -1413,6 +1422,22 @@
         }
         return Result.ok(list);
 	}
+
+	@Override
+	public Result getMemberTradeCode(String tradeCode) {
+		//获取用户ID
+        Long memberId = LoginUserUtils.getAppLoginUser().getId();
+        MemberEntity memberEntity = memberDao.selectById(memberId);
+        String tradePassword = memberEntity.getTradePassword();
+        if(StrUtil.isEmpty(tradePassword)) {
+        	return Result.fail(MessageSourceUtils.getString("member_controller_0002"));
+        }
+        if(!SecureUtil.md5(tradeCode).equals(tradePassword)) {
+        	return Result.fail(MessageSourceUtils.getString("member_controller_0004"));
+        }
+        
+        return Result.ok("");
+	}
 }
 
 

--
Gitblit v1.9.1