From 53c8f70cf23b06c2f6fdf3d1800bb445f1bad46a Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Thu, 20 Oct 2022 16:54:50 +0800
Subject: [PATCH] 20221020

---
 src/main/java/cc/mrbird/febs/dapp/service/impl/DappMemberServiceImpl.java |   73 ++++++++++++++++++++++++++++++++++++
 1 files changed, 73 insertions(+), 0 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/dapp/service/impl/DappMemberServiceImpl.java b/src/main/java/cc/mrbird/febs/dapp/service/impl/DappMemberServiceImpl.java
index 813b090..89677d0 100644
--- a/src/main/java/cc/mrbird/febs/dapp/service/impl/DappMemberServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/dapp/service/impl/DappMemberServiceImpl.java
@@ -65,6 +65,8 @@
     private final PlatformBannerMapper platformBannerMapper;
     private final DappAccountMoneyChangeDao dappAccountMoneyChangeDao;
     private final DappBankDao dappBankDao;
+    private final DappMemberService dappMemberService;
+    private final DappMemberAddressDao dappMemberAddressDao;
 
     private final RedisTemplate<String, Object> redisTemplate;
 
@@ -598,12 +600,26 @@
         DappWalletCoinEntity dappWalletCoinEntity = dappWalletCoinDao.selectByMemberId(memberId);
         if(ObjectUtil.isEmpty(dappMemberEntity)){
             memberInfoVo.setTotalAmount(AppContants.INIT_MONEY);
+            memberInfoVo.setAvailableAmount(AppContants.INIT_MONEY);
+            memberInfoVo.setFrozenAmount(AppContants.INIT_MONEY);
         }else{
             BigDecimal totalAmount = dappWalletCoinEntity.getTotalAmount();
+            BigDecimal frozenAmount = dappWalletCoinEntity.getFrozenAmount();
+            BigDecimal availableAmount = dappWalletCoinEntity.getAvailableAmount();
             if(BigDecimal.ZERO.compareTo(totalAmount) > 0){
                 memberInfoVo.setTotalAmount(AppContants.INIT_MONEY);
             }else{
                 memberInfoVo.setTotalAmount(totalAmount.setScale(2,BigDecimal.ROUND_DOWN));
+            }
+            if(BigDecimal.ZERO.compareTo(frozenAmount) > 0){
+                memberInfoVo.setFrozenAmount(AppContants.INIT_MONEY);
+            }else{
+                memberInfoVo.setFrozenAmount(frozenAmount.setScale(2,BigDecimal.ROUND_DOWN));
+            }
+            if(BigDecimal.ZERO.compareTo(availableAmount) > 0){
+                memberInfoVo.setAvailableAmount(AppContants.INIT_MONEY);
+            }else{
+                memberInfoVo.setAvailableAmount(availableAmount.setScale(2,BigDecimal.ROUND_DOWN));
             }
         }
         return memberInfoVo;
@@ -824,6 +840,63 @@
         return apiBankListVoIPage;
     }
 
+    @Override
+    public FebsResponse addBank(ApiAddBankDto addBankDto) {
+        DappMemberEntity member = LoginUserUtil.getAppUser();
+        if(ObjectUtil.isEmpty(addBankDto.getTransferCode())){
+            return new FebsResponse().fail().message(MessageSourceUtils.getString("member_err_006"));
+        }
+        //验证资金密码
+        Boolean aBoolean = dappMemberService.validateTransferCode(addBankDto.getTransferCode(), member.getId());
+        if(!aBoolean){
+            return new FebsResponse().fail().message(MessageSourceUtils.getString("member_err_006"));
+        }
+        DappBank dappBank = new DappBank();
+        dappBank.setMemberId(member.getId());
+        dappBank.setType(addBankDto.getType());
+        dappBank.setMemberName(addBankDto.getMemberName());
+        dappBank.setCardCode(addBankDto.getCardCode());
+        dappBank.setBankName(addBankDto.getBankName());
+        dappBank.setBankOtherName(addBankDto.getBankOtherName());
+        dappBank.setCountry(addBankDto.getCountry());
+        dappBank.setProvince(addBankDto.getProvince());
+        dappBank.setAddress(addBankDto.getAddress());
+        dappBank.setIdentifyCode(addBankDto.getIdentifyCode());
+        dappBank.setSwiftBicCode(addBankDto.getSwiftBicCode());
+        dappBank.setIbanCode(addBankDto.getIbanCode());
+        dappBankDao.insert(dappBank);
+        return new FebsResponse().success().message(MessageSourceUtils.getString("Operation_001"));
+    }
+
+    @Override
+    public FebsResponse getBankListInPage() {
+        DappMemberEntity member = LoginUserUtil.getAppUser();
+        ApiAddressInfoVo apiAddressInfoVo = dappMemberAddressDao.selectByMemberId(member.getId());
+        return new FebsResponse().success().data(apiAddressInfoVo);
+    }
+
+    @Override
+    public FebsResponse addAddress(ApiAddAddressDto apiAddAddressDto) {
+        DappMemberEntity member = LoginUserUtil.getAppUser();
+        if(ObjectUtil.isEmpty(apiAddAddressDto.getTransferCode())){
+            return new FebsResponse().fail().message(MessageSourceUtils.getString("member_err_006"));
+        }
+        //验证资金密码
+        Boolean aBoolean = dappMemberService.validateTransferCode(apiAddAddressDto.getTransferCode(), member.getId());
+        if(!aBoolean){
+            return new FebsResponse().fail().message(MessageSourceUtils.getString("member_err_006"));
+        }
+        ApiAddressInfoVo apiAddressInfoVo = dappMemberAddressDao.selectByMemberId(member.getId());
+        if(ObjectUtil.isNotEmpty(apiAddressInfoVo)){
+            return new FebsResponse().success().message(MessageSourceUtils.getString("Operation_002"));
+        }
+        DappMemberAddress dappMemberAddress = new DappMemberAddress();
+        dappMemberAddress.setType(apiAddAddressDto.getType());
+        dappMemberAddress.setAddress(apiAddAddressDto.getAddress());
+        dappMemberAddressDao.insert(dappMemberAddress);
+        return new FebsResponse().success().message(MessageSourceUtils.getString("Operation_001"));
+    }
+
     public String generateAsaToken(String token) {
         RSA rsa = new RSA(null, AppContants.PUBLIC_KEY);
         return rsa.encryptBase64(token + "_" + System.currentTimeMillis(), KeyType.PublicKey);

--
Gitblit v1.9.1