From b830aea31e9ab2df475ec1ebd73e5db219252d55 Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Wed, 23 Nov 2022 11:12:22 +0800
Subject: [PATCH] 20221117
---
src/main/java/cc/mrbird/febs/dapp/service/impl/DappMemberServiceImpl.java | 147 ++++++++++++++++++++++++++++++++++++++++++++++--
1 files changed, 139 insertions(+), 8 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 8acc069..cc78f35 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
@@ -31,6 +31,7 @@
import cn.hutool.crypto.asymmetric.RSA;
import cn.hutool.json.JSONUtil;
import com.alibaba.fastjson.JSONObject;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -68,6 +69,9 @@
private final DappMemberAddressDao dappMemberAddressDao;
private final IgtOnHookPlanOrderDao igtOnHookPlanOrderDao;
private final AppVersionMapper appVersionMapper;
+ private final DappMessageDao dappMessageDao;
+ private final MemberCoinChargeDao memberCoinChargeDao;
+ private final MemberCoinWithdrawDao memberCoinWithdrawDao;
private final RedisTemplate<String, Object> redisTemplate;
@@ -419,7 +423,12 @@
}
member = new DappMemberEntity();
member.setUsername(registerDto.getAccount());
- member.setPassword(SecureUtil.md5(registerDto.getPassword()));
+
+ //RSA解密
+ String password = registerDto.getPassword();
+ RSA rsa = new RSA(AppContants.PRIVATE_KEY, null);
+ password = rsa.decryptStr(password, KeyType.PrivateKey);
+ member.setPassword(SecureUtil.md5(password));
member.setIdentity(DataDictionaryEnum.LEVEL_MB.getCode());
member.setRefererId(registerDto.getRefererId());
member.setIsOnHook(2);
@@ -479,8 +488,11 @@
} else {
return new FebsResponse().fail().message(MessageSourceUtils.getString("verification_code_err_003"));
}
-
- String md5Pwd = SecureUtil.md5(loginDto.getPassword());
+ //RSA解密
+ String password = loginDto.getPassword();
+ RSA rsa = new RSA(AppContants.PRIVATE_KEY, null);
+ password = rsa.decryptStr(password, KeyType.PrivateKey);
+ String md5Pwd = SecureUtil.md5(password);
DappMemberEntity dappMemberEntity = dappMemberDao.selectMemberInfoByUsernameAndPassword(loginDto.getAccount(), md5Pwd);
if (ObjectUtil.isEmpty(dappMemberEntity)) {
return new FebsResponse().fail().message(MessageSourceUtils.getString("login_err_001"));
@@ -767,7 +779,12 @@
}
DappMemberEntity memberadd = new DappMemberEntity();
memberadd.setUsername(apiAddTeammateDto.getAccount());
- memberadd.setPassword(SecureUtil.md5(apiAddTeammateDto.getPassword()));
+
+ //RSA解密
+ String password = apiAddTeammateDto.getPassword();
+ RSA rsa = new RSA(AppContants.PRIVATE_KEY, null);
+ password = rsa.decryptStr(password, KeyType.PrivateKey);
+ memberadd.setPassword(SecureUtil.md5(password));
memberadd.setIdentity(DataDictionaryEnum.LEVEL_MB.getCode());
memberadd.setRefererId(member.getInviteId());
dappMemberDao.insert(memberadd);
@@ -864,7 +881,11 @@
return new FebsResponse().fail().message(MessageSourceUtils.getString("member_err_006"));
}
//验证资金密码
- Boolean aBoolean = validateTransferCodeInside(addBankDto.getTransferCode(), member.getId());
+ //RSA解密
+ RSA rsa = new RSA(AppContants.PRIVATE_KEY, null);
+ String transferCode = addBankDto.getTransferCode();
+ transferCode = rsa.decryptStr(transferCode, KeyType.PrivateKey);
+ Boolean aBoolean = validateTransferCodeInside(transferCode, member.getId());
if(!aBoolean){
return new FebsResponse().fail().message(MessageSourceUtils.getString("member_err_006"));
}
@@ -915,7 +936,11 @@
return new FebsResponse().fail().message(MessageSourceUtils.getString("member_err_006"));
}
//验证资金密码
- Boolean aBoolean = validateTransferCodeInside(apiAddAddressDto.getTransferCode(), member.getId());
+ //RSA解密
+ RSA rsa = new RSA(AppContants.PRIVATE_KEY, null);
+ String transferCode = apiAddAddressDto.getTransferCode();
+ transferCode = rsa.decryptStr(transferCode, KeyType.PrivateKey);
+ Boolean aBoolean = validateTransferCodeInside(transferCode, member.getId());
if(!aBoolean){
return new FebsResponse().fail().message(MessageSourceUtils.getString("member_err_006"));
}
@@ -998,9 +1023,11 @@
if(ObjectUtil.isEmpty(dappWalletCoinEntity)){
return new FebsResponse().fail().message("会员账户不存在");
}
+ BigDecimal availableAmount = dappWalletCoinEntity.getAvailableAmount();
dappWalletCoinDao.addTotalAndaddAvailableById(dappWalletCoinEntity.getId(),coinNumber);
- DappAccountMoneyChangeEntity dappAccountMoneyChangeEntity = new DappAccountMoneyChangeEntity(memberEntity.getId(), coinNumber, "充值", 10);
+ DappAccountMoneyChangeEntity dappAccountMoneyChangeEntity = new DappAccountMoneyChangeEntity(memberEntity.getId(),
+ availableAmount,coinNumber,availableAmount.add(coinNumber) ,"充值(手动)", 10);
dappAccountMoneyChangeDao.insert(dappAccountMoneyChangeEntity);
return new FebsResponse().success().message("操作成功");
}
@@ -1046,12 +1073,116 @@
dappAccountMoneyChangeDao.insert(addFlow);
dappAccountMoneyChangeDao.deleteById(dappAccountMoneyChangeEntity.getId());
- return new FebsResponse().fail().message("操作成功");
+ return new FebsResponse().success().message("操作成功");
}else{
return new FebsResponse().fail().message("只允许回退【盈利分成】和【流水佣金】");
}
}
+ @Override
+ public FebsResponse addMessage(AddMessageDto addMessageDto) {
+ DappMemberEntity member = LoginUserUtil.getAppUser();
+ if(ObjectUtil.isEmpty(member)){
+ return new FebsResponse().success();
+ }
+ DappMessageEntity dappMessageEntity = new DappMessageEntity();
+ dappMessageEntity.setMemberId(member.getId());
+ dappMessageEntity.setMessage(addMessageDto.getMessage());
+ dappMessageDao.insert(dappMessageEntity);
+ return new FebsResponse().success();
+ }
+
+ @Override
+ public IPage<DappMessageEntity> getMessageListInPage(DappMessageEntity dappMessageEntity, QueryRequest request) {
+ Page<DappMemberEntity> page = new Page<>(request.getPageNum(), request.getPageSize());
+ User currentUser = FebsUtil.getCurrentUser();
+ if(StrUtil.isNotEmpty(currentUser.getDescription())){
+ dappMessageEntity.setDescription(currentUser.getDescription());
+ }
+ return dappMemberDao.selectMessageListInPage(dappMessageEntity, page);
+ }
+
+ @Override
+ public IPage<MemberCoinChargeEntity> getFlowListByDay(MemberCoinChargeEntity memberCoinChargeEntity, QueryRequest request) {
+ Page<MemberCoinChargeEntity> page = new Page<>(request.getPageNum(), request.getPageSize());
+ IPage<MemberCoinChargeEntity> memberCoinChargeEntityIPage = this.baseMapper.getChargeListByDayInPage(page, memberCoinChargeEntity);
+ return memberCoinChargeEntityIPage;
+ }
+
+ @Override
+ public IPage<AdminMemberCoinWithdrawVo> getOutFlowListByDay(MemberCoinWithdrawEntity memberCoinWithdrawEntity, QueryRequest request) {
+ Page<AdminMemberCoinWithdrawVo> page = new Page<>(request.getPageNum(), request.getPageSize());
+ IPage<AdminMemberCoinWithdrawVo> adminMemberCoinWithdrawVos = this.baseMapper.getWithDrawListByDayInPage(page, memberCoinWithdrawEntity);
+ return adminMemberCoinWithdrawVos;
+ }
+
+ @Override
+ public IPage<AdminTeamInfoVo> getTeamInfo(DappMemberEntity dappMemberEntity, QueryRequest request) {
+ Page<AdminTeamInfoVo> page = new Page<>(request.getPageNum(), request.getPageSize());
+ dappMemberEntity = this.baseMapper.selectById(dappMemberEntity.getId());
+ IPage<AdminTeamInfoVo> adminTeamInfoVoIPage = this.baseMapper.findTeamInfoListInPage(page, dappMemberEntity);
+ List<AdminTeamInfoVo> records = adminTeamInfoVoIPage.getRecords();
+ if(CollUtil.isNotEmpty(records)){
+ for(AdminTeamInfoVo adminTeamInfoVo : records){
+ Long memberId = adminTeamInfoVo.getId();
+ //获取团队成员的主要信息
+ DappWalletCoinEntity dappWalletCoinEntity = dappWalletCoinDao.selectByMemberId(memberId);
+ adminTeamInfoVo.setTotalAmount(dappWalletCoinEntity.getTotalAmount());
+ adminTeamInfoVo.setAvaAmount(dappWalletCoinEntity.getAvailableAmount());
+ adminTeamInfoVo.setFrozenAmount(dappWalletCoinEntity.getFrozenAmount());
+
+ BigDecimal chargeAmount = memberCoinChargeDao.selectTotalAmountByMemberId(memberId);
+ adminTeamInfoVo.setChargeAmount(chargeAmount);
+
+ BigDecimal withDrawAmount = memberCoinWithdrawDao.selectTotalAmountByMemberIdAndType(memberId,"N");
+ adminTeamInfoVo.setWithDrawAmount(withDrawAmount);
+ BigDecimal insideAmount = memberCoinWithdrawDao.selectTotalAmountByMemberIdAndType(memberId,"Y");
+ adminTeamInfoVo.setInsideAmount(insideAmount);
+
+ QueryWrapper<IgtOnHookPlanOrder> objectQueryWrapper = new QueryWrapper<>();
+ objectQueryWrapper.eq("member_id",memberId);
+ Integer onHookTimes = igtOnHookPlanOrderDao.selectCount(objectQueryWrapper);
+ adminTeamInfoVo.setOnHookTimes(onHookTimes);
+ BigDecimal totalProfit = igtOnHookPlanOrderDao.selectSumProfitByMemberId(memberId);
+ adminTeamInfoVo.setTotalProfit(totalProfit);
+ }
+ }
+ return adminTeamInfoVoIPage;
+ }
+
+ @Override
+ public FebsResponse sendBackMessage(DappMessageEntity dappMessageEntity) {
+ if(ObjectUtil.isEmpty(dappMessageEntity.getBackMessage())){
+ return new FebsResponse().fail().message("回复不能为空。");
+ }
+ Long id = dappMessageEntity.getId();
+ DappMessageEntity dappMessage = dappMessageDao.selectById(id);
+ DappMessageEntity dappMessageEntityBack = new DappMessageEntity();
+ dappMessageEntityBack.setMemberId(dappMessage.getMemberId());
+ dappMessageEntityBack.setBackMessage(dappMessageEntity.getBackMessage());
+ dappMessageDao.insert(dappMessageEntityBack);
+ return new FebsResponse().success().message("操作成功");
+ }
+
+ @Override
+ public IPage<DappMessageEntity> showMessageList(DappMessageEntity dappMessageEntity, QueryRequest request) {
+ dappMessageEntity = dappMessageDao.selectById(dappMessageEntity.getId());
+ Page<DappMessageEntity> page = new Page<>(request.getPageNum(), request.getPageSize());
+ IPage<DappMessageEntity> dappMessageEntitys = dappMemberDao.showMessageListInPage(page, dappMessageEntity);
+ return dappMessageEntitys;
+ }
+
+ @Override
+ public IPage<ApiMessageListVo> getMessageListInPage(ApiMessageListDto apiMessageListDto) {
+ Page<ApiMessageListVo> page = new Page<>(apiMessageListDto.getPageNum(), apiMessageListDto.getPageSize());
+
+ DappMemberEntity member = LoginUserUtil.getAppUser();
+ DappMessageEntity dappMessageEntity = new DappMessageEntity();
+ dappMessageEntity.setMemberId(member.getId());
+ IPage<ApiMessageListVo> records = dappMemberDao.getMessageListInPage(page, dappMessageEntity);
+ return records;
+ }
+
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