From 18aab7d6156b93d65c1b18809d924cbb214d737a Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Fri, 26 Feb 2021 16:04:03 +0800
Subject: [PATCH] Merge branch 'whole_new' of http://120.27.238.55:7000/r/exchange into whole_new
---
src/main/java/com/xcong/excoin/modules/member/service/impl/MemberServiceImpl.java | 205 +++++++++++++++++++++++++++++++++++++++++++++-----
1 files changed, 182 insertions(+), 23 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 ec15f5e..c6b3e0f 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,10 @@
import com.xcong.excoin.common.system.service.CommonService;
import com.xcong.excoin.modules.coin.dao.MemberAccountMoneyChangeDao;
import com.xcong.excoin.modules.coin.entity.MemberAccountMoneyChange;
+import com.xcong.excoin.modules.contract.entity.ContractEntrustOrderEntity;
import com.xcong.excoin.modules.member.dao.*;
import com.xcong.excoin.modules.member.entity.*;
-import com.xcong.excoin.modules.member.parameter.dto.MemberAddCoinAddressDto;
-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.MemberDelCoinAddressDto;
-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.MemberSubmitCoinApplyDto;
-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.dto.*;
import com.xcong.excoin.modules.member.parameter.vo.*;
import com.xcong.excoin.modules.member.service.MemberService;
import com.xcong.excoin.modules.platform.dao.PlatformFeeSettingDao;
@@ -97,6 +87,9 @@
@Resource
MemberCoinAddressDao memberCoinAddressDao;
+
+ @Resource
+ MemberCoinAddressInDao memberCoinAddressInDao;
@Resource
private CommonService commonservice;
@@ -156,6 +149,7 @@
member.setCertifyStatus(MemberEntity.CERTIFY_STATUS_UN_SUBMIT);
member.setIsForce(1);
member.setIsProfit(0);
+ member.setContractPositionType(ContractEntrustOrderEntity.POSITION_TYPE_ALL);
memberDao.insert(member);
MemberSettingEntity memberSettingEntity = new MemberSettingEntity();
@@ -185,6 +179,15 @@
member.setRefererIds(ids);
memberDao.updateById(member);
+ MemberWalletContractSimulateEntity walletContractSimulate = new MemberWalletContractSimulateEntity();
+ walletContractSimulate.setMemberId(member.getId());
+ walletContractSimulate.setAvailableBalance(new BigDecimal(AppContants.INIT_SIMULATE_MONEY));
+ walletContractSimulate.setTotalBalance(new BigDecimal(AppContants.INIT_SIMULATE_MONEY));
+ walletContractSimulate.setFrozenBalance(AppContants.INIT_MONEY);
+ walletContractSimulate.setBorrowedFund(AppContants.INIT_MONEY);
+ walletContractSimulate.setWalletCode(CoinTypeEnum.USDT.name());
+ memberWalletContractSimulateDao.insert(walletContractSimulate);
+
//初始化合约钱包
MemberWalletContractEntity walletContract = new MemberWalletContractEntity();
walletContract.setMemberId(member.getId());
@@ -195,18 +198,8 @@
walletContract.setWalletCode(CoinTypeEnum.USDT.name());
memberWalletContractDao.insert(walletContract);
- MemberWalletContractSimulateEntity walletContractSimulate = new MemberWalletContractSimulateEntity();
- walletContractSimulate.setMemberId(member.getId());
- walletContractSimulate.setAvailableBalance(new BigDecimal(AppContants.INIT_SIMULATE_MONEY));
- walletContractSimulate.setTotalBalance(new BigDecimal(AppContants.INIT_SIMULATE_MONEY));
- walletContractSimulate.setFrozenBalance(AppContants.INIT_MONEY);
- walletContractSimulate.setBorrowedFund(AppContants.INIT_MONEY);
- walletContractSimulate.setWalletCode(CoinTypeEnum.USDT.name());
- memberWalletContractSimulateDao.insert(walletContractSimulate);
-
-
- // 初始化币币钱包
for (CoinTypeEnum coinTypeEnum : CoinTypeEnum.values()) {
+ // 初始化币币钱包
MemberWalletCoinEntity walletCoin = new MemberWalletCoinEntity();
walletCoin.setWalletCode(coinTypeEnum.name());
walletCoin.setMemberId(member.getId());
@@ -797,6 +790,9 @@
memberPersonCenterInfoVo.setTradeAgingSetting(MemberPersonCenterInfoVo.PWD_NEED_NO);
}
+ Integer fingerprintState = member.getFingerprintState();
+ memberPersonCenterInfoVo.setFingerprintState(fingerprintState);
+
return Result.ok(memberPersonCenterInfoVo);
}
@@ -903,6 +899,7 @@
memberCoinWithdrawEntity.setFeeAmount(memberSubmitCoinApplyDto.getFeeAmount());
memberCoinWithdrawEntity.setSymbol(memberSubmitCoinApplyDto.getSymbol());
memberCoinWithdrawEntity.setMemberId(memberId);
+ memberCoinWithdrawEntity.setLabel(memberSubmitCoinApplyDto.getLable());
memberCoinWithdrawEntity.setStatus(MemberCoinWithdrawEntity.STATUS_DOING);
Map<String, Object> columnMap = new HashMap<>();
@@ -1001,6 +998,168 @@
}
return Result.ok(arrayList);
}
+
+ @Override
+ public Result memberSubmitCoinApplyIn(@Valid MemberSubmitCoinApplyInDto memberSubmitCoinApplyInDto) {
+ //获取用户ID
+ Long memberId = LoginUserUtils.getAppLoginUser().getId();
+ MemberEntity member = memberDao.selectById(memberId);
+ if (member.getCertifyStatus() != MemberEntity.CERTIFY_STATUS_Y) {
+ return Result.fail(MessageSourceUtils.getString("member_service_0077"));
+ }
+ if (StrUtil.isEmpty(member.getTradePassword())) {
+ return Result.fail(MessageSourceUtils.getString("member_service_0081"));
+ }
+ if (member.getTradePassword() == null) {
+ return Result.fail(MessageSourceUtils.getString("member_service_0082"));
+ }
+ if (!member.getTradePassword().equals(SecureUtil.md5(memberSubmitCoinApplyInDto.getTradePassword()))) {
+ return Result.fail(MessageSourceUtils.getString("member_service_0082"));
+ }
+
+ boolean flag = commonservice.verifyCode(memberSubmitCoinApplyInDto.getAccount(), memberSubmitCoinApplyInDto.getCode());
+ if (flag) {
+ //获取到账地址
+ String address = memberSubmitCoinApplyInDto.getAddress();
+ //根据账号获取会员信息
+ MemberEntity selectMemberInfoByAccount = memberDao.selectMemberInfoByAccount(address);
+ if(ObjectUtil.isEmpty(selectMemberInfoByAccount)) {
+ return Result.fail(MessageSourceUtils.getString("member_service_0087"));
+ }
+ Long memberInfoId = selectMemberInfoByAccount.getId();
+ String symbol = memberSubmitCoinApplyInDto.getSymbol();
+
+ Map<String, Object> columnMapAddress = new HashMap<>();
+ columnMapAddress.put("member_id", memberInfoId);
+ columnMapAddress.put("symbol", symbol);
+ List<MemberCoinAddressEntity> selectByMap2 = memberCoinAddressDao.selectByMap(columnMapAddress );
+ if(CollUtil.isEmpty(selectByMap2)) {
+ return Result.fail(MessageSourceUtils.getString("member_service_0087"));
+ }
+ MemberCoinAddressEntity memberCoinAddressEntity = selectByMap2.get(0);
+ String addressIn = memberCoinAddressEntity.getAddress();
+
+ MemberWalletCoinEntity walletCoin = memberWalletCoinDao.selectWalletCoinBymIdAndCode(memberId, memberSubmitCoinApplyInDto.getSymbol());
+ BigDecimal availableBalance = walletCoin.getAvailableBalance();
+ BigDecimal coinNumber = memberSubmitCoinApplyInDto.getCoinNumber();
+ if (availableBalance.compareTo(BigDecimal.ZERO) > 0
+ && availableBalance.compareTo(coinNumber) >= 0) {
+ //新增提币记录
+ MemberCoinWithdrawEntity memberCoinWithdrawEntity = new MemberCoinWithdrawEntity();
+ memberCoinWithdrawEntity.setAddress(addressIn);
+ memberCoinWithdrawEntity.setAmount(coinNumber);
+ memberCoinWithdrawEntity.setFeeAmount(BigDecimal.ZERO);
+ memberCoinWithdrawEntity.setSymbol(memberSubmitCoinApplyInDto.getSymbol());
+ memberCoinWithdrawEntity.setMemberId(memberId);
+ memberCoinWithdrawEntity.setStatus(MemberCoinWithdrawEntity.STATUS_DOING);
+ memberCoinWithdrawEntity.setIsInside(MemberCoinWithdrawEntity.ISINSIDE_YES);
+ memberCoinWithdrawEntity.setLabel(memberSubmitCoinApplyInDto.getLable());
+ memberCoinWithdrawDao.insert(memberCoinWithdrawEntity);
+ BigDecimal subtract = walletCoin.getAvailableBalance().subtract(coinNumber);
+ walletCoin.setAvailableBalance(subtract);
+ BigDecimal add = walletCoin.getFrozenBalance().add(coinNumber);
+ walletCoin.setFrozenBalance(add);
+ memberWalletCoinDao.updateById(walletCoin);
+
+ MemberAccountMoneyChange accountRecord = new MemberAccountMoneyChange();
+ accountRecord.setContent("提币");
+ accountRecord.setMemberId(memberId);
+ accountRecord.setAmount(coinNumber);
+ accountRecord.setWithdrawId(memberCoinWithdrawEntity.getId());
+ accountRecord.setStatus(MemberAccountMoneyChange.STATUS_WAIT_INTEGER);
+ accountRecord.setSymbol(memberSubmitCoinApplyInDto.getSymbol());
+ accountRecord.setType(MemberAccountMoneyChange.TYPE_WALLET_COIN);
+ memberAccountMoneyChangeDao.insert(accountRecord);
+
+ ThreadPoolUtils.sendDingTalk(3);
+ return Result.ok(MessageSourceUtils.getString("member_service_0086"));
+ } else {
+ return Result.fail(MessageSourceUtils.getString("member_service_0005"));
+ }
+
+ } else {
+ return Result.fail(MessageSourceUtils.getString("member_service_0039"));
+ }
+ }
+
+ @Override
+ public Result memberAddCoinAddressIn(@Valid MemberAddCoinAddressInDto memberAddCoinAddressDto) {
+
+ //获取用户ID
+ Long memberId = LoginUserUtils.getAppLoginUser().getId();
+ String address = memberAddCoinAddressDto.getAddress();
+ String remark = memberAddCoinAddressDto.getRemark();
+
+ MemberCoinAddressInEntity memberCoinAddressInEntity = new MemberCoinAddressInEntity();
+ memberCoinAddressInEntity.setAccount(address);
+ memberCoinAddressInEntity.setMemberId(memberId);
+ memberCoinAddressInEntity.setContent(remark);
+ memberCoinAddressInDao.insert(memberCoinAddressInEntity);
+ return Result.ok(MessageSourceUtils.getString("member_service_0024"));
+ }
+
+ @Override
+ public Result memberDelCoinAddressIn(@Valid MemberDelCoinAddressDto memberDelCoinAddressDto) {
+ //获取用户ID
+ Long memberId = LoginUserUtils.getAppLoginUser().getId();
+ MemberEntity member = memberDao.selectById(memberId);
+ if (ObjectUtil.isNotEmpty(member)) {
+ Long id = memberDelCoinAddressDto.getId();
+ memberCoinAddressInDao.deleteById(id);
+ }
+ return Result.ok("success");
+ }
+
+ @Override
+ public Result memberCoinAddressInList() {
+ //获取用户ID
+ Long memberId = LoginUserUtils.getAppLoginUser().getId();
+
+ Map<String, Object> columnMap = new HashMap<>();
+ columnMap.put("member_id", memberId);
+ List<MemberCoinAddressInEntity> selectByMap = memberCoinAddressInDao.selectByMap(columnMap );
+ List<MemberCoinAddressInListVo> arrayList = new ArrayList<>();
+ if (CollUtil.isNotEmpty(selectByMap)) {
+ for (MemberCoinAddressInEntity memberCoinAddressInEntity : selectByMap) {
+ MemberCoinAddressInListVo memberCoinAddressInListVo = new MemberCoinAddressInListVo();
+ memberCoinAddressInListVo.setId(memberCoinAddressInEntity.getId());
+ memberCoinAddressInListVo.setAccount(memberCoinAddressInEntity.getAccount());
+ memberCoinAddressInListVo.setContent(memberCoinAddressInEntity.getContent());
+ arrayList.add(memberCoinAddressInListVo);
+ }
+ }
+ return Result.ok(arrayList);
+ }
+
+ @Override
+ public Result memberFingerprintState(@Valid MemberFingerprintStateDto memberFingerprintStateDto) {
+ //获取用户ID
+ Long memberId = LoginUserUtils.getAppLoginUser().getId();
+
+ String password = memberFingerprintStateDto.getPassword();
+ MemberEntity member = memberDao.selectById(memberId);
+ if(!password.equals(member.getPassword())){
+ return Result.fail(MessageSourceUtils.getString("home_service_0005"));
+ }
+
+ Integer fingerprintState = memberFingerprintStateDto.getFingerprintState();
+ MemberEntity memberEntity = memberDao.selectById(memberId);
+ memberEntity.setFingerprintState(fingerprintState);
+ memberDao.updateById(memberEntity);
+ return Result.ok(MessageSourceUtils.getString("member_service_0024"));
+ }
+
+ @Override
+ public Result memberMessageReminder() {
+ //获取用户ID
+ Long memberId = LoginUserUtils.getAppLoginUser().getId();
+ MemberSettingEntity selectById = memberSettingDao.selectById(memberId);
+ MemberMessageReminderVo memberMessageReminderVo = new MemberMessageReminderVo();
+ memberMessageReminderVo.setMessageReminder(selectById.getMessageReminder());
+ return Result.ok(memberMessageReminderVo);
+ }
+
+
}
--
Gitblit v1.9.1