From 954196d1c02545a35d25020cf08fc54a64426310 Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Fri, 21 Oct 2022 20:05:46 +0800
Subject: [PATCH] 20221021

---
 src/main/java/cc/mrbird/febs/dapp/service/impl/DappMemberServiceImpl.java |  145 +++++++++++++++++++++++++++++++++++++++++------
 1 files changed, 125 insertions(+), 20 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 074481e..27cfbc5 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
@@ -64,7 +64,9 @@
     private final DataDictionaryCustomMapper dataDictionaryCustomMapper;
     private final PlatformBannerMapper platformBannerMapper;
     private final DappAccountMoneyChangeDao dappAccountMoneyChangeDao;
-    private final DappMemberService dappMemberService;
+    private final DappBankDao dappBankDao;
+//    private final DappMemberService dappMemberService;
+    private final DappMemberAddressDao dappMemberAddressDao;
 
     private final RedisTemplate<String, Object> redisTemplate;
 
@@ -416,6 +418,8 @@
         member.setPassword(SecureUtil.md5(registerDto.getPassword()));
         member.setIdentity(DataDictionaryEnum.LEVEL_MB.getCode());
         member.setRefererId(registerDto.getRefererId());
+        member.setIsOnHook(2);
+        member.setIsProfit(1);
         dappMemberDao.insert(member);
 
         //更新用户信息
@@ -512,6 +516,8 @@
             dappMemberEntity = new DappMemberEntity();
             dappMemberEntity.setTouristMark(touristMark);
             dappMemberEntity.setIdentity(DataDictionaryEnum.LEVEL_TM.getCode());
+            dappMemberEntity.setIsOnHook(2);
+            dappMemberEntity.setIsProfit(1);
             dappMemberDao.insert(dappMemberEntity);
 
             //初始化账户信息
@@ -592,18 +598,35 @@
         }else{
             memberInfoVo.setIsSetTransferCode(2);
         }
+        if(ObjectUtil.isNotEmpty(dappMemberEntity.getRealname())){
+            memberInfoVo.setRealname(dappMemberEntity.getRealname());
+        }
         int isOnHook = dappMemberEntity.getIsOnHook() == null ? 2 : dappMemberEntity.getIsOnHook();
         memberInfoVo.setIsOnHook(isOnHook);
 
         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));
+                memberInfoVo.setTotalAmount(totalAmount.setScale(4,BigDecimal.ROUND_DOWN));
+            }
+            if(BigDecimal.ZERO.compareTo(frozenAmount) > 0){
+                memberInfoVo.setFrozenAmount(AppContants.INIT_MONEY);
+            }else{
+                memberInfoVo.setFrozenAmount(frozenAmount.setScale(4,BigDecimal.ROUND_DOWN));
+            }
+            if(BigDecimal.ZERO.compareTo(availableAmount) > 0){
+                memberInfoVo.setAvailableAmount(AppContants.INIT_MONEY);
+            }else{
+                memberInfoVo.setAvailableAmount(availableAmount.setScale(4,BigDecimal.ROUND_DOWN));
             }
         }
         return memberInfoVo;
@@ -681,7 +704,7 @@
     }
 
     @Override
-    public List<ApiAmountChangeListVo> findAmountInPage(ApiAmountChangeDto apiAmountChangeDto) {
+    public IPage<ApiAmountChangeListVo> findAmountInPage(ApiAmountChangeDto apiAmountChangeDto) {
         Page<ApiAmountChangeListVo> page = new Page<>(apiAmountChangeDto.getPageNum(), apiAmountChangeDto.getPageSize());
 
         DappMemberEntity member = LoginUserUtil.getAppUser();
@@ -697,7 +720,7 @@
         }
         dappAccountMoneyChangeEntity.setMemberId(member.getId());
         IPage<ApiAmountChangeListVo> records = dappAccountMoneyChangeDao.selectChangeListInPage(page, dappAccountMoneyChangeEntity);
-        return records.getRecords();
+        return records;
     }
 
     @Override
@@ -732,18 +755,18 @@
         if (ObjectUtil.isEmpty(refererMember)) {
             return new FebsResponse().fail().message(MessageSourceUtils.getString("register_err_005"));
         }
-        member = new DappMemberEntity();
-        member.setUsername(apiAddTeammateDto.getAccount());
-        member.setPassword(SecureUtil.md5(apiAddTeammateDto.getPassword()));
-        member.setIdentity(DataDictionaryEnum.LEVEL_MB.getCode());
-        member.setRefererId(member.getInviteId());
-        dappMemberDao.insert(member);
+        DappMemberEntity memberadd = new DappMemberEntity();
+        memberadd.setUsername(apiAddTeammateDto.getAccount());
+        memberadd.setPassword(SecureUtil.md5(apiAddTeammateDto.getPassword()));
+        memberadd.setIdentity(DataDictionaryEnum.LEVEL_MB.getCode());
+        memberadd.setRefererId(member.getInviteId());
+        dappMemberDao.insert(memberadd);
 
         //更新用户信息
-        String inviteId = ShareCodeUtil.toSerialCode(member.getId());
-        member.setInviteId(inviteId);
+        String inviteId = ShareCodeUtil.toSerialCode(memberadd.getId());
+        memberadd.setInviteId(inviteId);
         boolean flag = false;
-        String parentId = member.getRefererId();
+        String parentId = memberadd.getRefererId();
         String ids = "";
         while (!flag) {
             ids += ("," + parentId);
@@ -756,11 +779,11 @@
                 flag = true;
             }
         }
-        member.setRefererIds(ids);
-        dappMemberDao.updateById(member);
+        memberadd.setRefererIds(ids);
+        dappMemberDao.updateById(memberadd);
         //初始化账户信息
         DappWalletCoinEntity dappWalletCoinEntity = new DappWalletCoinEntity();
-        dappWalletCoinEntity.setMemberId(member.getId());
+        dappWalletCoinEntity.setMemberId(memberadd.getId());
         dappWalletCoinEntity.setAvailableAmount(AppContants.INIT_MONEY);
         dappWalletCoinEntity.setFrozenAmount(AppContants.INIT_MONEY);
         dappWalletCoinEntity.setTotalAmount(AppContants.INIT_MONEY);
@@ -770,7 +793,7 @@
     }
 
     @Override
-    public FebsResponse myTeammateInfo(ApiMyTeammateInfoDto apiMyTeammateInfoDto) {
+    public IPage<ApiMyTeammateInfoListVo> myTeammateInfo(ApiMyTeammateInfoDto apiMyTeammateInfoDto) {
         DappMemberEntity member = LoginUserUtil.getAppUser();
         Page<ApiMyTeammateInfoListVo> page = new Page<>(apiMyTeammateInfoDto.getPageNum(), apiMyTeammateInfoDto.getPageSize());
         if(ObjectUtil.isEmpty(apiMyTeammateInfoDto.getInviteId())){
@@ -789,7 +812,7 @@
                 }
             }
         }
-        return new FebsResponse().success().data(apiMyTeammateInfoListVos);
+        return apiMyTeammateInfoListVos;
     }
 
     @Override
@@ -801,18 +824,100 @@
                 ApiAmountTypeVo apiAmountTypeVo = new ApiAmountTypeVo();
                 apiAmountTypeVo.setDescription(dataDictionaryCustom.getDescription());
                 apiAmountTypeVo.setCodeValue(dataDictionaryCustom.getValue());
+                apiAmountTypeVos.add(apiAmountTypeVo);
             }
         }
         return new FebsResponse().success().data(apiAmountTypeVos);
     }
 
     @Override
-    public FebsResponse findTeammateChangeListInPage(ApiAmountChangeDto apiAmountChangeDto) {
+    public IPage<ApiMyTeammateAmountChangeListVo> findTeammateChangeListInPage(ApiAmountChangeDto apiAmountChangeDto) {
         DappMemberEntity member = LoginUserUtil.getAppUser();
         Page<ApiMyTeammateAmountChangeListVo> page = new Page<>(apiAmountChangeDto.getPageNum(), apiAmountChangeDto.getPageSize());
         apiAmountChangeDto.setInviteId(member.getInviteId());
         IPage<ApiMyTeammateAmountChangeListVo> amountChangeList = dappAccountMoneyChangeDao.selectTeammateChangeListInPage(apiAmountChangeDto,page);
-        return new FebsResponse().success().data(amountChangeList);
+        return amountChangeList;
+    }
+
+    @Override
+    public FebsResponse getBankListInPage(ApiBankListDto apiBankListDto) {
+        DappMemberEntity member = LoginUserUtil.getAppUser();
+        List<ApiBankListVo> apiBankListVos = dappBankDao.selectBankListByMemberId(member.getId());
+        return new FebsResponse().success().data(apiBankListVos);
+    }
+
+    @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 = validateTransferCodeInside(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"));
+    }
+
+    private Boolean validateTransferCodeInside(String transferCode, Long memberId) {
+        boolean flag = false;
+        DappMemberEntity member = dappMemberDao.selectById(memberId);
+        if (ObjectUtil.isEmpty(member)) {
+            return flag;
+        }
+        String transferCodeMember = member.getTransferCode();
+        String transferCodeMd5Pwd = SecureUtil.md5(transferCode);
+        if(transferCodeMd5Pwd.equals(transferCodeMember)){
+            flag = true;
+        }else{
+            return flag;
+        }
+        return flag;
+    }
+
+    @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 = validateTransferCodeInside(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.setMemberId(member.getId());
+        dappMemberAddress.setAddress(apiAddAddressDto.getAddress());
+        dappMemberAddressDao.insert(dappMemberAddress);
+        return new FebsResponse().success().message(MessageSourceUtils.getString("Operation_001"));
     }
 
     public String generateAsaToken(String token) {

--
Gitblit v1.9.1