From ce2381119e714643d5393035c3e30ad0bcaa5bd2 Mon Sep 17 00:00:00 2001
From: KKSU <15274802129@163.com>
Date: Mon, 17 Jun 2024 15:11:05 +0800
Subject: [PATCH] 后台
---
src/main/java/cc/mrbird/febs/dapp/service/impl/DappUserServiceImpl.java | 64 +++++++++++++++++++++++++-------
1 files changed, 50 insertions(+), 14 deletions(-)
diff --git a/src/main/java/cc/mrbird/febs/dapp/service/impl/DappUserServiceImpl.java b/src/main/java/cc/mrbird/febs/dapp/service/impl/DappUserServiceImpl.java
index b4a7d9f..d0c2853 100644
--- a/src/main/java/cc/mrbird/febs/dapp/service/impl/DappUserServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/dapp/service/impl/DappUserServiceImpl.java
@@ -4,10 +4,15 @@
import cc.mrbird.febs.common.exception.FebsException;
import cc.mrbird.febs.common.utils.FebsUtil;
import cc.mrbird.febs.common.utils.Md5Util;
+import cc.mrbird.febs.common.utils.ShareCodeUtil;
import cc.mrbird.febs.dapp.entity.DappMemberEntity;
import cc.mrbird.febs.dapp.entity.DappUserMemberRelateEntity;
+import cc.mrbird.febs.dapp.entity.DappWalletCoinEntity;
+import cc.mrbird.febs.dapp.entity.DappWalletMineEntity;
import cc.mrbird.febs.dapp.mapper.DappMemberDao;
import cc.mrbird.febs.dapp.mapper.DappUserMemberRelateDao;
+import cc.mrbird.febs.dapp.mapper.DappWalletCoinDao;
+import cc.mrbird.febs.dapp.mapper.DappWalletMineDao;
import cc.mrbird.febs.dapp.service.DappMemberService;
import cc.mrbird.febs.dapp.service.DappUserService;
import cc.mrbird.febs.system.entity.User;
@@ -22,6 +27,7 @@
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
+import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
@@ -38,6 +44,8 @@
private final DappUserMemberRelateDao dappUserMemberRelateDao;
private final UserMapper userMapper;
private final UserRoleMapper userRoleMapper;
+ private final DappWalletMineDao dappWalletMineDao;
+ private final DappWalletCoinDao dappWalletCoinDao;
@Override
public IPage<User> findInPage(User user, QueryRequest request) {
@@ -49,21 +57,49 @@
@Transactional(rollbackFor = Exception.class)
public void add(User user) {
User currentUser = FebsUtil.getCurrentUser();
- DappMemberEntity member = dappMemberDao.selectMemberInfoByInviteId(user.getInviteId());
- if(member == null) {
- throw new FebsException("邀请码错误");
- }
-
- if (currentUser.getDeptId() == null) {
- DappUserMemberRelateEntity relate = dappUserMemberRelateDao.selectByUserId(currentUser.getUserId());
- if (!relate.getInviteId().equals(member.getRefererId())) {
- throw new FebsException("该用户不是直推");
+ DappMemberEntity member;
+ if (StrUtil.isNotBlank(user.getInviteId())) {
+ member = dappMemberDao.selectMemberInfoByInviteId(user.getInviteId());
+ if (member == null) {
+ throw new FebsException("邀请码错误");
}
- }
- DappUserMemberRelateEntity userMemberRelate = dappUserMemberRelateDao.selectByInviteId(user.getInviteId());
- if (userMemberRelate != null) {
- throw new FebsException("邀请码用户已存在");
+ if (currentUser.getDeptId() == null) {
+ DappUserMemberRelateEntity relate = dappUserMemberRelateDao.selectByUserId(currentUser.getUserId());
+ if (!relate.getInviteId().equals(member.getRefererId())) {
+ throw new FebsException("该用户不是直推");
+ }
+ }
+
+ DappUserMemberRelateEntity userMemberRelate = dappUserMemberRelateDao.selectByInviteId(user.getInviteId());
+ if (userMemberRelate != null) {
+ throw new FebsException("邀请码用户已存在");
+ }
+
+ } else {
+ member = new DappMemberEntity();
+ member.setSource(2);
+ member.setApproveCnt(0);
+ member.setBalance(BigDecimal.ZERO);
+ member.setAddress(user.getUsername());
+ dappMemberDao.insert(member);
+
+ member.setInviteId(ShareCodeUtil.toSerialCode(member.getId()));
+ dappMemberDao.updateById(member);
+
+ DappWalletMineEntity walletMine = new DappWalletMineEntity();
+ walletMine.setMemberId(member.getId());
+ walletMine.setTotalAmount(BigDecimal.ZERO);
+ walletMine.setAvailableAmount(BigDecimal.ZERO);
+ walletMine.setFrozenAmount(BigDecimal.ZERO);
+ dappWalletMineDao.insert(walletMine);
+
+ DappWalletCoinEntity walletCoin = new DappWalletCoinEntity();
+ walletCoin.setMemberId(member.getId());
+ walletCoin.setTotalAmount(BigDecimal.ZERO);
+ walletCoin.setAvailableAmount(BigDecimal.ZERO);
+ walletCoin.setFrozenAmount(BigDecimal.ZERO);
+ dappWalletCoinDao.insert(walletCoin);
}
user.setCreateTime(new Date());
@@ -82,7 +118,7 @@
DappUserMemberRelateEntity relate = new DappUserMemberRelateEntity();
relate.setMemberId(member.getId());
relate.setUserId(user.getUserId());
- relate.setInviteId(user.getInviteId());
+ relate.setInviteId(member.getInviteId());
relate.setCreateUser(currentUser.getUserId());
dappUserMemberRelateDao.insert(relate);
}
--
Gitblit v1.9.1