From d344e2b6d98c9942bdb9febf5d36886f6acadb0c Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Tue, 07 Jul 2020 10:04:22 +0800
Subject: [PATCH] modify closing newprice

---
 src/main/java/com/xcong/excoin/modules/member/service/impl/MemberServiceImpl.java |  124 ++++++++++++++++++++++++++++++++---------
 1 files changed, 97 insertions(+), 27 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 23f767f..8cba44e 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
@@ -122,17 +122,23 @@
         member.setPassword(SecureUtil.md5(registerDto.getPassword()));
 
         // 判断账号类型
-        if (MemberEntity.ACCOUNT_TYPE_PHONE == registerDto.getType()) {
+        if (MemberEntity.ACCOUNT_TYPE_PHONE.equals(registerDto.getType())) {
             member.setPhone(registerDto.getAccount());
-        } else if (MemberEntity.ACCOUNT_TYPE_EMAIL == registerDto.getType()) {
+        } else if (MemberEntity.ACCOUNT_TYPE_EMAIL.equals(registerDto.getType())) {
             member.setEmail(registerDto.getAccount());
         } else {
             return Result.fail("账号类型错误");
         }
 
         // 判断是否拥有推荐人,若为空则默认系统
-        if (StrUtil.isBlank(registerDto.getRefererId())) {
-            registerDto.setRefererId(AppContants.SYSTEM_REFERER);
+//        if (StrUtil.isBlank(registerDto.getRefererId())) {
+//            registerDto.setRefererId(AppContants.SYSTEM_REFERER);
+//        }
+        if (!registerDto.getRefererId().equals(AppContants.SYSTEM_REFERER)) {
+            MemberEntity isExist = memberDao.selectMemberInfoByInviteId(registerDto.getRefererId());
+            if (isExist == null) {
+                return Result.fail("推荐人不存在");
+            }
         }
 
         member.setRefererId(registerDto.getRefererId());
@@ -142,6 +148,7 @@
         member.setCertifyStatus(MemberEntity.CERTIFY_STATUS_UN_SUBMIT);
         member.setIsForce(0);
         member.setIsProfit(0);
+        member.setSpread(BigDecimal.ZERO);
         memberDao.insert(member);
 
         String inviteId = ShareCodeUtil.toSerialCode(member.getId());
@@ -316,8 +323,13 @@
         //获取用户ID
         Long memberId = LoginUserUtils.getAppLoginUser().getId();
         MemberEntity member = memberDao.selectById(memberId);
+		if(MemberEntity.CERTIFY_STATUS_ING.equals(member.getCertifyStatus())) {
+			return Result.fail(MessageSourceUtils.getString("member_service_4000"));
+		}
         if (ObjectUtil.isNotEmpty(member)) {
-            MemberAuthenticationEntity memberAuthenticationEntity = new MemberAuthenticationEntity();
+        	
+        	MemberAuthenticationEntity memberAuthenticationEntity = new MemberAuthenticationEntity();
+			
             if (MemberEntity.CERTIFY_STATUS_Y == member.getCertifyStatus()) {
                 return Result.fail(MessageSourceUtils.getString("member_service_0055"));
             }
@@ -340,16 +352,19 @@
                 return Result.fail(MessageSourceUtils.getString("member_service_0059"));
             }
             memberAuthenticationEntity.setSecondName(memberAuthenticationDto.getSecondName());
-
+            
+            String type = memberAuthenticationDto.getType();
+            memberAuthenticationEntity.setType(type);
+            
             String idCardNo = memberAuthenticationDto.getIdCardNo();
             if (StrUtil.isBlank(idCardNo)) {
-                return Result.fail(MessageSourceUtils.getString("member_service_0060"));
+            	return Result.fail(MessageSourceUtils.getString("member_service_0060"));
             }
             memberAuthenticationEntity.setIdcardNo(idCardNo);
             //同一个身份证号码不能重复实名认证
             int count = memberAuthenticationDao.findMemberbyIdCardNoCount(idCardNo);
             if (count > 0) {
-                return Result.fail(MessageSourceUtils.getString("member_service_0060"));
+            	return Result.fail(MessageSourceUtils.getString("member_service_0060"));
             }
             if (StrUtil.isBlank(memberAuthenticationDto.getIdCardFront())
                     || StrUtil.isBlank(memberAuthenticationDto.getIdCardReverse())
@@ -359,7 +374,16 @@
             memberAuthenticationEntity.setIdcardImageFront(memberAuthenticationDto.getIdCardFront());
             memberAuthenticationEntity.setIdcardImageBack(memberAuthenticationDto.getIdCardReverse());
             memberAuthenticationEntity.setIdcardImageInHand(memberAuthenticationDto.getIdCardImage());
-            memberAuthenticationDao.insert(memberAuthenticationEntity);
+            
+            Map<String, Object> columnMap = new HashMap<>();
+        	columnMap.put("member_id", memberId);
+        	List<MemberAuthenticationEntity> selectByMap = memberAuthenticationDao.selectByMap(columnMap);
+        	if(CollUtil.isEmpty(selectByMap)) {
+        		memberAuthenticationDao.insert(memberAuthenticationEntity);
+        	}else {
+        		memberAuthenticationEntity.setId(selectByMap.get(0).getId());
+        		memberAuthenticationDao.updateById(memberAuthenticationEntity);
+        	}
 
             member.setCertifyStatus(MemberEntity.CERTIFY_STATUS_ING);
             member.setIdcardNo(idCardNo);
@@ -459,6 +483,17 @@
         if (!MemberEntity.CERTIFY_STATUS_Y.equals(member.getCertifyStatus())) {
             return Result.fail(MessageSourceUtils.getString("member_service_0077"));
         }
+        
+        Map<String, Object> columnMap = new HashMap<>();
+        columnMap.put("member_id", memberId);
+		List<MemberPaymentMethodEntity> selectByMap = memberPaymentMethodDao.selectByMap(columnMap);
+		if(CollUtil.isNotEmpty(selectByMap)) {
+			for(MemberPaymentMethodEntity memberPaymentMethodEntity : selectByMap) {
+				if(memberPaymethodDto.getAccount().equals(memberPaymentMethodEntity.getAccount())) {
+					return Result.fail(MessageSourceUtils.getString("member_service_0097"));
+				}
+			}
+		}
         String account = memberPaymethodDto.getAccount();
         String bank = memberPaymethodDto.getBank();
         String name = memberPaymethodDto.getName();
@@ -539,7 +574,7 @@
     @Override
     @Transactional
     public Result memberBindPhone(@Valid MemberBindPhoneDto memberBindPhoneDto) {
-        //获取用户ID
+    	//获取用户ID
         Long memberId = LoginUserUtils.getAppLoginUser().getId();
         String phone = memberBindPhoneDto.getPhone();
         String code = memberBindPhoneDto.getCode();
@@ -550,9 +585,16 @@
             if (!commonservice.verifyCode(phone, code)) {
                 return Result.fail(MessageSourceUtils.getString("member_service_0013"));
             }
-            member.setPhone(phone);
-            memberDao.updateById(member);
-            return Result.ok(MessageSourceUtils.getString("member_service_0014"));
+            Map<String, Object> columnMap = new HashMap<>();
+            columnMap.put("phone", phone);
+			List<MemberEntity> selectByMap = memberDao.selectByMap(columnMap );
+            if(CollUtil.isEmpty(selectByMap)) {
+            	member.setPhone(phone);
+            	memberDao.updateById(member);
+            	return Result.ok(MessageSourceUtils.getString("member_service_0014"));
+            }else {
+            	return Result.fail(MessageSourceUtils.getString("member_service_1400"));
+            }
         }
 
         return Result.fail(MessageSourceUtils.getString("member_service_0015"));
@@ -562,7 +604,7 @@
     @Transactional
     public Result memberBindEmail(@Valid MemberBindEmailDto memberBindEmailDto) {
 
-        //获取用户ID
+    	//获取用户ID
         Long memberId = LoginUserUtils.getAppLoginUser().getId();
         String email = memberBindEmailDto.getEmail();
         String code = memberBindEmailDto.getCode();
@@ -571,9 +613,16 @@
         boolean flag = commonservice.verifyCode(email, code);
         if (ObjectUtil.isNotEmpty(member)) {
             if (flag) {
-                member.setEmail(email);
-                memberDao.updateById(member);
-                return Result.ok(MessageSourceUtils.getString("member_service_0018"));
+            	Map<String, Object> columnMap = new HashMap<>();
+                columnMap.put("email", email);
+    			List<MemberEntity> selectByMap = memberDao.selectByMap(columnMap );
+                if(CollUtil.isEmpty(selectByMap)) {
+                	member.setEmail(email);
+                    memberDao.updateById(member);
+                    return Result.ok(MessageSourceUtils.getString("member_service_0018"));
+                }else {
+                	return Result.fail(MessageSourceUtils.getString("member_service_1400"));
+                }
             }
         }
         return Result.fail(MessageSourceUtils.getString("member_service_0019"));
@@ -688,6 +737,7 @@
                 memberAuthnticationInfoVo.setSecondName(memberAuthenticationEntity.getSecondName());
                 memberAuthnticationInfoVo.setNation(memberAuthenticationEntity.getNation());
                 memberAuthnticationInfoVo.setIdCardNo(memberAuthenticationEntity.getIdcardNo());
+                memberAuthnticationInfoVo.setType(memberAuthenticationEntity.getType());
             }
         }
         return Result.ok(memberAuthnticationInfoVo);
@@ -700,6 +750,19 @@
         MemberEntity member = memberDao.selectById(memberId);
 
         MemberPersonCenterInfoVo memberPersonCenterInfoVo = new MemberPersonCenterInfoVo();
+        
+        Integer certifyStatus = member.getCertifyStatus();
+        memberPersonCenterInfoVo.setCertifyStatus(certifyStatus);
+        
+        Map<String, Object> columnMap = new HashMap<>();
+        columnMap.put("member_id", memberId);
+        List<MemberPaymentMethodEntity> selectByMap = memberPaymentMethodDao.selectByMap(columnMap);
+        if(CollUtil.isEmpty(selectByMap)) {
+        	memberPersonCenterInfoVo.setMemberPaymentMethod(0);
+        }else {
+        	memberPersonCenterInfoVo.setMemberPaymentMethod(1);
+        }
+        
         if (StrUtil.isNotEmpty(member.getPhone())) {
             memberPersonCenterInfoVo.setPhone(1);
         } else {
@@ -755,15 +818,22 @@
             return Result.fail(MessageSourceUtils.getString("member_service_0087"));
         }
 
-        MemberAvivableCoinInfoVo memberAvivableCoinInfoVo = new MemberAvivableCoinInfoVo();
-        memberAvivableCoinInfoVo.setAvailableBalance(walletCoin.getAvailableBalance());
-
-        PlatformFeeSettingEntity feeSetting = platformFeeSettingDao.getFeeSettingByTypeAndSymbol(2, symbol);
-        if (ObjectUtil.isEmpty(feeSetting)) {
+        List<MemberAvivableCoinInfoVo> arrayList = new ArrayList<>();
+        
+        
+		List<PlatformFeeSettingEntity> feeSettingByTypeAndSymbolLable = platformFeeSettingDao.getFeeSettingsByTypeAndSymbol(2, symbol);
+        if (CollUtil.isEmpty(feeSettingByTypeAndSymbolLable)) {
             return Result.fail(MessageSourceUtils.getString("member_service_0087"));
         }
-        memberAvivableCoinInfoVo.setFee(feeSetting.getFeePrice());
-        return Result.ok(memberAvivableCoinInfoVo);
+        for(PlatformFeeSettingEntity platformFeeSettingEntity : feeSettingByTypeAndSymbolLable) {
+        	MemberAvivableCoinInfoVo memberAvivableCoinInfoVo = new MemberAvivableCoinInfoVo();
+        	memberAvivableCoinInfoVo.setAvailableBalance(walletCoin.getAvailableBalance());
+        	memberAvivableCoinInfoVo.setFee(platformFeeSettingEntity.getFeePrice());
+        	memberAvivableCoinInfoVo.setLable(platformFeeSettingEntity.getLable());
+        	arrayList.add(memberAvivableCoinInfoVo);
+        }
+        
+        return Result.ok(arrayList);
     }
 
     @Override
@@ -814,7 +884,7 @@
         if (flag) {
             MemberWalletCoinEntity walletCoin = memberWalletCoinDao.selectWalletCoinBymIdAndCode(memberId, memberSubmitCoinApplyDto.getSymbol());
             BigDecimal availableBalance = walletCoin.getAvailableBalance();
-            BigDecimal coinNumber = memberSubmitCoinApplyDto.getCoinNumber().add(memberSubmitCoinApplyDto.getFeeAmount());
+            BigDecimal coinNumber = memberSubmitCoinApplyDto.getCoinNumber();
             if (availableBalance.compareTo(BigDecimal.ZERO) > 0
                     && availableBalance.compareTo(coinNumber) > 0) {
                 //新增提币记录
@@ -845,7 +915,7 @@
                 MemberAccountMoneyChange accountRecord = new MemberAccountMoneyChange();
                 accountRecord.setContent("提币");
                 accountRecord.setMemberId(memberId);
-                accountRecord.setAmount(memberSubmitCoinApplyDto.getCoinNumber());
+                accountRecord.setAmount(coinNumber);
                 accountRecord.setStatus(MemberAccountMoneyChange.STATUS_WAIT_INTEGER);
                 accountRecord.setSymbol(memberSubmitCoinApplyDto.getSymbol());
                 accountRecord.setType(MemberAccountMoneyChange.TYPE_WALLET_COIN);
@@ -860,7 +930,7 @@
                  */
                 return Result.ok(MessageSourceUtils.getString("member_service_0086"));
             } else {
-                return Result.fail(MessageSourceUtils.getString("order_service_0040"));
+                return Result.fail(MessageSourceUtils.getString("member_service_0005"));
             }
 
         } else {

--
Gitblit v1.9.1