From 28eb26d68f7a2a4e6b316c3ea9f511aa143db66e Mon Sep 17 00:00:00 2001
From: KKSU <15274802129@163.com>
Date: Mon, 30 Sep 2024 16:57:18 +0800
Subject: [PATCH] 55测试环境
---
src/main/java/com/xcong/excoin/modules/member/service/impl/MemberServiceImpl.java | 497 +++++++++++++++++++++++++++++++++++++++++++++---------
1 files changed, 413 insertions(+), 84 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 fc96eb1..3f043fa 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
@@ -5,6 +5,8 @@
import cn.hutool.core.util.StrUtil;
import cn.hutool.crypto.SecureUtil;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.xcong.excoin.common.LoginUserUtils;
import com.xcong.excoin.common.contants.AppContants;
@@ -14,23 +16,19 @@
import com.xcong.excoin.common.system.dto.RegisterDto;
import com.xcong.excoin.common.system.service.CommonService;
import com.xcong.excoin.modules.coin.dao.MemberAccountMoneyChangeDao;
+import com.xcong.excoin.modules.coin.dao.ZhiYaDao;
+import com.xcong.excoin.modules.coin.dao.ZhiYaRecordDao;
import com.xcong.excoin.modules.coin.entity.MemberAccountMoneyChange;
+import com.xcong.excoin.modules.coin.entity.ZhiYaEntity;
+import com.xcong.excoin.modules.coin.entity.ZhiYaRecordEntity;
+import com.xcong.excoin.modules.coin.entity.ZhiYaTeam;
+import com.xcong.excoin.modules.coin.parameter.vo.ZhiyaInfoVo;
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.member.vo.DefaultWayVo;
import com.xcong.excoin.modules.platform.dao.PlatformFeeSettingDao;
import com.xcong.excoin.modules.platform.dao.PlatformSymbolsCoinDao;
import com.xcong.excoin.modules.platform.entity.PlatformFeeSettingEntity;
@@ -41,9 +39,11 @@
import com.xcong.excoin.utils.ThreadPoolUtils;
import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.lang3.StringUtils;
import org.springframework.security.core.context.SecurityContextHolder;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
+import org.web3j.abi.datatypes.Int;
import java.math.BigDecimal;
import java.util.ArrayList;
@@ -66,6 +66,9 @@
private MemberDao memberDao;
@Resource
+ private ZhiYaRecordDao zhiYaRecordDao;
+
+ @Resource
private MemberWalletAgentDao memberWalletAgentDao;
@Resource
@@ -76,6 +79,12 @@
@Resource
private MemberWalletCoinDao memberWalletCoinDao;
+
+ @Resource
+ private MemberCoinAddressInDao memberCoinAddressInDao;
+
+ @Resource
+ private ZhiYaDao zhiYaDao;
@Resource
private MemberLevelRateDao memberLevelRateDao;
@@ -106,6 +115,8 @@
@Resource
AppVersionDao appVersionDao;
+ @Resource
+ private MemberSettingDao memberSettingDao;
@Resource
private MemberWalletContractSimulateDao memberWalletContractSimulateDao;
@@ -142,21 +153,28 @@
// }
if (!AppContants.SYSTEM_REFERER.equals(registerDto.getRefererId())) {
MemberEntity isExist = memberDao.selectMemberInfoByInviteId(registerDto.getRefererId());
+// if (isExist != null) {
+// member.setRefererId(registerDto.getRefererId());
+// }
if (isExist == null) {
return Result.fail("推荐人不存在");
}
}
-
- member.setRefererId(registerDto.getRefererId());
member.setAccountStatus(MemberEntity.ACCOUNT_STATUS_ENABLE);
member.setAccountType(MemberEntity.ACCOUNT_TYPE_NORMAL);
member.setAgentLevel(MemberEntity.ACCOUNT_AGENT_LEVEL);
member.setCertifyStatus(MemberEntity.CERTIFY_STATUS_UN_SUBMIT);
+ member.setRefererId(registerDto.getRefererId());
member.setIsForce(1);
member.setIsProfit(0);
- member.setSpread(BigDecimal.ONE);
- member.setClosingSpread(BigDecimal.ONE);
memberDao.insert(member);
+
+ MemberSettingEntity memberSettingEntity = new MemberSettingEntity();
+ memberSettingEntity.setSpread(BigDecimal.ONE);
+ memberSettingEntity.setClosingSpread(BigDecimal.valueOf(5));
+ memberSettingEntity.setForceParam(BigDecimal.valueOf(0.0030));
+ memberSettingEntity.setMemberId(member.getId());
+ memberSettingDao.insert(memberSettingEntity);
String inviteId = ShareCodeUtil.toSerialCode(member.getId());
member.setInviteId(inviteId);
@@ -164,13 +182,16 @@
boolean flag = false;
String parentId = member.getRefererId();
String ids = "";
- while (!flag) {
+ while (!flag && StringUtils.isNotBlank(parentId)) {
ids += ("," + parentId);
MemberEntity parentMember = memberDao.selectMemberInfoByInviteId(parentId);
if (parentMember == null) {
break;
}
parentId = parentMember.getRefererId();
+ if(StringUtils.isBlank(parentId)){
+ break;
+ }
if (parentMember.getRefererId().equals(parentMember.getInviteId())) {
flag = true;
}
@@ -209,6 +230,14 @@
walletCoin.setBorrowedFund(AppContants.INIT_MONEY);
memberWalletCoinDao.insert(walletCoin);
}
+
+ //初始化质押
+ ZhiYaEntity zhiYaEntity = new ZhiYaEntity();
+ zhiYaEntity.setMemberId(member.getId());
+ zhiYaEntity.setAvailableBalance(AppContants.INIT_MONEY);
+ zhiYaEntity.setFrozenBalance(AppContants.INIT_MONEY);
+ zhiYaEntity.setTotalBalance(AppContants.INIT_MONEY);
+ zhiYaDao.insert(zhiYaEntity);
// 初始化代理佣金钱包
MemberWalletAgentEntity walletAgent = new MemberWalletAgentEntity();
@@ -331,12 +360,12 @@
//获取用户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 (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"));
@@ -366,13 +395,18 @@
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"));
+ }
+ // 同一个人只能认证一次
+ int authenByMemberId = memberAuthenticationDao.findAuthenByMemberId(memberId);
+ if (authenByMemberId > 0) {
+ return Result.fail(MessageSourceUtils.getString("member_service_0055"));
}
if (StrUtil.isBlank(memberAuthenticationDto.getIdCardFront())
|| StrUtil.isBlank(memberAuthenticationDto.getIdCardReverse())
@@ -384,14 +418,14 @@
memberAuthenticationEntity.setIdcardImageInHand(memberAuthenticationDto.getIdCardImage());
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);
- }
+ 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);
@@ -455,7 +489,8 @@
@Transactional
public Result memberTradersPwd(@Valid MemberForgetPwdDto memberForgetPwdDto) {
//获取用户ID
- MemberEntity memberEntity = LoginUserUtils.getAppLoginUser();
+ Long memberId = LoginUserUtils.getAppLoginUser().getId();
+ MemberEntity memberEntity = memberDao.selectById(memberId);
String code = memberForgetPwdDto.getCode();
String password = memberForgetPwdDto.getPassword();
@@ -482,20 +517,30 @@
Long memberId = LoginUserUtils.getAppLoginUser().getId();
MemberEntity member = memberDao.selectById(memberId);
+// if (!MemberPaymentMethodEntity.PAYMENTTYPE_CARD.toString().equals(memberPaymethodDto.getPaymentType())) {
+// return Result.fail("只能绑定银行卡");
+// }
+
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"));
- }
- }
- }
+ 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 isDefault = "1";
+ MemberPaymentMethodEntity defaultMethod = memberPaymentMethodDao.selectDefualtMethod(memberId, null, "1");
+ if (defaultMethod != null) {
+ isDefault = "2";
+ }
String account = memberPaymethodDto.getAccount();
String bank = memberPaymethodDto.getBank();
String name = memberPaymethodDto.getName();
@@ -510,6 +555,7 @@
memberPaymentMethodEntity.setPaymentQrcode(paymentQrcode);
memberPaymentMethodEntity.setPaymentType(paymentType);
memberPaymentMethodEntity.setSubBank(subBank);
+ memberPaymentMethodEntity.setIsDefualt(isDefault);
memberPaymentMethodDao.insert(memberPaymentMethodEntity);
return Result.ok(MessageSourceUtils.getString("member_service_0024"));
}
@@ -564,6 +610,7 @@
memberPaymethodDetailVo.setPaymentQrcode(memberPaymentMethodEntity.getPaymentQrcode());
memberPaymethodDetailVo.setPaymentType(memberPaymentMethodEntity.getPaymentType());
memberPaymethodDetailVo.setSubBank(memberPaymentMethodEntity.getSubBank());
+ memberPaymethodDetailVo.setIsDefault(memberPaymentMethodEntity.getIsDefualt());
arrayList.add(memberPaymethodDetailVo);
}
}
@@ -574,9 +621,32 @@
}
@Override
+ public Result setDefaultPaymethod(Long id) {
+ MemberEntity member = LoginUserUtils.getAppLoginUser();
+ MemberPaymentMethodEntity defualtMethod = this.memberPaymentMethodDao.selectDefualtMethod(member.getId(), null, "1");
+
+ if (defualtMethod != null) {
+ if (id.equals(defualtMethod.getId())) {
+ return Result.fail("不能关闭默认收款方式");
+ }
+ }
+
+ MemberPaymentMethodEntity paymentMethodEntity = new MemberPaymentMethodEntity();
+ paymentMethodEntity.setId(id);
+ paymentMethodEntity.setIsDefualt("1");
+ this.memberPaymentMethodDao.updateById(paymentMethodEntity);
+
+ if (defualtMethod != null) {
+ defualtMethod.setIsDefualt("2");
+ this.memberPaymentMethodDao.updateById(defualtMethod);
+ }
+ return Result.ok("操作成功");
+ }
+
+ @Override
@Transactional
public Result memberBindPhone(@Valid MemberBindPhoneDto memberBindPhoneDto) {
- //获取用户ID
+ //获取用户ID
Long memberId = LoginUserUtils.getAppLoginUser().getId();
String phone = memberBindPhoneDto.getPhone();
String code = memberBindPhoneDto.getCode();
@@ -584,18 +654,22 @@
MemberEntity member = memberDao.selectById(memberId);
if (ObjectUtil.isNotEmpty(member)) {
- if (!commonservice.verifyCode(phone, code)) {
+ if (!commonservice.mutiVerifyCode(member.getEmail(), memberBindPhoneDto.getOtherCode(), phone, code)) {
return Result.fail(MessageSourceUtils.getString("member_service_0013"));
}
+ // 验证邮箱验证码
+// if (!commonservice.verifyCode(member.getEmail(), memberBindPhoneDto.getOtherCode())) {
+// return Result.fail("邮箱"+MessageSourceUtils.getString("member_service_0013"));
+// }
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"));
+ 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"));
}
}
@@ -606,24 +680,31 @@
@Transactional
public Result memberBindEmail(@Valid MemberBindEmailDto memberBindEmailDto) {
- //获取用户ID
+ //获取用户ID
Long memberId = LoginUserUtils.getAppLoginUser().getId();
String email = memberBindEmailDto.getEmail();
String code = memberBindEmailDto.getCode();
MemberEntity member = memberDao.selectById(memberId);
- boolean flag = commonservice.verifyCode(email, code);
+ boolean flag = commonservice.mutiVerifyCode(email, code, member.getPhone(), memberBindEmailDto.getOtherCode());
+// boolean flag2 = commonservice.verifyCode(member.getPhone(), memberBindEmailDto.getOtherCode());
+ if(!flag){
+ return Result.fail(MessageSourceUtils.getString("member_service_0013"));
+ }
+// if(!flag2){
+// return Result.fail("手机"+MessageSourceUtils.getString("member_service_0013"));
+// }
if (ObjectUtil.isNotEmpty(member)) {
if (flag) {
- Map<String, Object> columnMap = new HashMap<>();
+ Map<String, Object> columnMap = new HashMap<>();
columnMap.put("email", email);
- List<MemberEntity> selectByMap = memberDao.selectByMap(columnMap );
- if(CollUtil.isEmpty(selectByMap)) {
- member.setEmail(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"));
+ } else {
+ return Result.fail(MessageSourceUtils.getString("member_service_1400"));
}
}
}
@@ -759,10 +840,10 @@
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 (CollUtil.isEmpty(selectByMap)) {
+ memberPersonCenterInfoVo.setMemberPaymentMethod(0);
+ } else {
+ memberPersonCenterInfoVo.setMemberPaymentMethod(1);
}
if (StrUtil.isNotEmpty(member.getPhone())) {
@@ -790,6 +871,13 @@
memberPersonCenterInfoVo.setTradeAgingSetting(MemberPersonCenterInfoVo.PWD_NEED_NO);
}
+ if (StrUtil.isEmpty(member.getName())) {
+ memberPersonCenterInfoVo.setNickName(2);
+ } else {
+ memberPersonCenterInfoVo.setNickName(1);
+ }
+
+ memberPersonCenterInfoVo.setIsMb(member.getIsTrader());
return Result.ok(memberPersonCenterInfoVo);
}
@@ -823,16 +911,16 @@
List<MemberAvivableCoinInfoVo> arrayList = new ArrayList<>();
- List<PlatformFeeSettingEntity> feeSettingByTypeAndSymbolLable = platformFeeSettingDao.getFeeSettingsByTypeAndSymbol(2, symbol);
+ List<PlatformFeeSettingEntity> feeSettingByTypeAndSymbolLable = platformFeeSettingDao.getFeeSettingsByTypeAndSymbol(2, symbol);
if (CollUtil.isEmpty(feeSettingByTypeAndSymbolLable)) {
return Result.fail(MessageSourceUtils.getString("member_service_0087"));
}
- for(PlatformFeeSettingEntity platformFeeSettingEntity : feeSettingByTypeAndSymbolLable) {
- MemberAvivableCoinInfoVo memberAvivableCoinInfoVo = new MemberAvivableCoinInfoVo();
- memberAvivableCoinInfoVo.setAvailableBalance(walletCoin.getAvailableBalance());
- memberAvivableCoinInfoVo.setFee(platformFeeSettingEntity.getFeePrice());
- memberAvivableCoinInfoVo.setLable(platformFeeSettingEntity.getLable());
- arrayList.add(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);
@@ -869,6 +957,14 @@
//获取用户ID
Long memberId = LoginUserUtils.getAppLoginUser().getId();
MemberEntity member = memberDao.selectById(memberId);
+ String golden_limit_transfer = redisUtils.getString("GOLDEN_LIMIT_TRANSFER");
+ // 判断是否限制
+ if(StringUtils.isNotBlank(member.getPhone()) &&StringUtils.isNotBlank(golden_limit_transfer) && golden_limit_transfer.contains(member.getPhone())){
+ return Result.fail("此账号有财务问题,需联系客服");
+ }
+ if(StringUtils.isNotBlank(member.getEmail()) &&StringUtils.isNotBlank(golden_limit_transfer) && golden_limit_transfer.contains(member.getEmail())){
+ return Result.fail("此账号有财务问题,需联系客服");
+ }
if (member.getCertifyStatus() != MemberEntity.CERTIFY_STATUS_Y) {
return Result.fail(MessageSourceUtils.getString("member_service_0077"));
}
@@ -953,22 +1049,255 @@
return Result.ok("");
}
- @Override
- public Result getAppVersionInfo() {
- Map<String, Object> columnMap = new HashMap<>();
- List<AppVersionEntity> selectByMap = appVersionDao.selectByMap(columnMap);
- List<Object> arrayList = new ArrayList<>();
- if(CollUtil.isNotEmpty(selectByMap)) {
- for(AppVersionEntity appVersionEntity : selectByMap) {
- AppVersionVo appVersionVo = new AppVersionVo();
- appVersionVo.setAddress(appVersionEntity.getAddress());
- appVersionVo.setType(appVersionEntity.getType());
- appVersionVo.setVersion(appVersionEntity.getVersion());
- arrayList.add(appVersionVo);
- }
- }
- return Result.ok(arrayList);
- }
+ @Override
+ public Result getAppVersionInfo() {
+ Map<String, Object> columnMap = new HashMap<>();
+ List<AppVersionEntity> selectByMap = appVersionDao.selectByMap(columnMap);
+ List<Object> arrayList = new ArrayList<>();
+ if (CollUtil.isNotEmpty(selectByMap)) {
+ for (AppVersionEntity appVersionEntity : selectByMap) {
+ AppVersionVo appVersionVo = new AppVersionVo();
+ appVersionVo.setAddress(appVersionEntity.getAddress());
+ appVersionVo.setType(appVersionEntity.getType());
+ appVersionVo.setVersion(appVersionEntity.getVersion());
+ arrayList.add(appVersionVo);
+ }
+ }
+ return Result.ok(arrayList);
+ }
+
+ @Override
+ public Result getPcVersionInfo() {
+ Map<String, Object> columnMap = new HashMap<>();
+ List<AppVersionEntity> selectByMap = appVersionDao.selectByMap(columnMap);
+ List<Object> arrayList = new ArrayList<>();
+ if (CollUtil.isNotEmpty(selectByMap)) {
+ for (AppVersionEntity appVersionEntity : selectByMap) {
+ AppVersionVo appVersionVo = new AppVersionVo();
+ appVersionVo.setAddress(appVersionEntity.getAddress());
+ appVersionVo.setType(appVersionEntity.getType());
+ appVersionVo.setVersion(appVersionEntity.getVersion());
+ arrayList.add(appVersionVo);
+ }
+ }
+ return Result.ok(arrayList);
+ }
+
+ @Override
+ public Result memberTeam(MemberTeamRecordsPageDto memberTeamRecordsPageDto) {
+ //获取用户ID
+ Long memberId = LoginUserUtils.getAppLoginUser().getId();
+ MemberEntity member = memberDao.selectById(memberId);
+ MemberTeamVo memberTeamVo = memberDao.selectAllTeamByInviteIdInPage(memberId,member.getInviteId());
+ List<TeamVo> teamVos = new ArrayList<>();
+ //直属会员
+ List<MemberEntity> memberZhiShu = memberDao.selectMemberInfoByRefererId(member.getInviteId());
+ if(ObjectUtil.isEmpty(memberTeamVo)){
+ MemberTeamVo memberTeamVoNull = new MemberTeamVo();
+ Integer teamCnt = memberDao.selectMemberCountByInvitedId(member.getInviteId());
+ memberTeamVoNull.setTeamCnt(teamCnt);
+ memberTeamVoNull.setZhiyaCnt(BigDecimal.ZERO);
+ memberTeamVoNull.setRewardCnt(BigDecimal.ZERO);
+ //直属会员
+ if(CollUtil.isNotEmpty(memberZhiShu)){
+ for(MemberEntity zhishu : memberZhiShu){
+ TeamVo teamVo = new TeamVo();
+ String phone = zhishu.getPhone();
+ if(StrUtil.isNotEmpty(phone)){
+ String result = phone.substring(phone.length()-4,phone.length());
+ teamVo.setAccount(result);
+ }
+ int memberCnt = memberDao.selectMemberCountByInvitedId(zhishu.getInviteId());
+ teamVo.setTeamCnt(memberCnt);
+ teamVo.setZhiyaCnt(BigDecimal.ZERO);
+ teamVo.setRewardCnt(BigDecimal.ZERO);
+ teamVos.add(teamVo);
+ }
+ memberTeamVoNull.setTeamVo(teamVos);
+ }
+ return Result.ok(memberTeamVoNull);
+ }
+ if(CollUtil.isNotEmpty(memberZhiShu)){
+ for(MemberEntity zhishu : memberZhiShu){
+ Long zhiShuMemberId = zhishu.getId();
+ ZhiYaTeam zhiYaTeam = memberDao.selectZhiYaTeamRecordByMemberId(zhiShuMemberId);
+ TeamVo teamVo = new TeamVo();
+ String phone = zhishu.getPhone();
+ if(StrUtil.isNotEmpty(phone)){
+ String result = phone.substring(phone.length()-4,phone.length());
+ teamVo.setAccount(result);
+ }
+ int memberCnt = memberDao.selectMemberCountByInvitedId(zhishu.getInviteId());
+ teamVo.setTeamCnt(memberCnt);
+
+ Long aLong = zhiYaRecordDao.selectSumZhiyaCntByMemberIdAndOrderStatus(zhiShuMemberId, 1);
+ Long rLong = zhiYaRecordDao.selectSumRewardCntByMemberId(zhiShuMemberId);
+ teamVo.setZhiyaCnt(new BigDecimal(aLong));
+ teamVo.setRewardCnt(new BigDecimal(rLong));
+ if(ObjectUtil.isNotEmpty(zhiYaTeam)){
+ teamVo.setZhiyaCnt((zhiYaTeam.getZhiyaCnt() == null ? BigDecimal.ZERO : zhiYaTeam.getZhiyaCnt()).add(new BigDecimal(aLong)));
+ teamVo.setRewardCnt(zhiYaTeam.getRewardCnt() == null ?BigDecimal.ZERO : zhiYaTeam.getRewardCnt().add(new BigDecimal(rLong)));
+ }
+ teamVos.add(teamVo);
+ }
+ memberTeamVo.setTeamVo(teamVos);
+ }
+ return Result.ok(memberTeamVo);
+ }
+
+ @Override
+ public Result findDefaultWay() {
+ //获取用户ID
+ Long memberId = LoginUserUtils.getAppLoginUser().getId();
+
+ DefaultWayVo defaultWayVo = new DefaultWayVo();
+ MemberPaymentMethodEntity defualtMethod = this.memberPaymentMethodDao.selectDefualtMethod(memberId, null, "1");
+ if (ObjectUtil.isNotEmpty(defualtMethod)) {
+ String paymentType = defualtMethod.getPaymentType();
+ defaultWayVo.setPaymentType(paymentType);
+ }
+ return Result.ok(defaultWayVo);
+ }
+
+ 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
+ @Transactional
+ public Result memberAddCoinAddressIn(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
+ @Transactional
+ 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();
+
+ String addressIn = "";
+ 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"));
+ addressIn = address;
+ } else {
+ MemberCoinAddressEntity memberCoinAddressEntity = selectByMap2.get(0);
+ if(StrUtil.isEmpty(memberCoinAddressEntity.getAddress())){
+ addressIn = selectMemberInfoByAccount.getInviteId();
+ }else{
+ 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 memberDelCoinAddressIn(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");
+ }
}
--
Gitblit v1.9.1