package cc.mrbird.febs.dapp.service.impl;
|
|
import cc.mrbird.febs.common.entity.QueryRequest;
|
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.dapp.entity.DappMemberEntity;
|
import cc.mrbird.febs.dapp.entity.DappUserMemberRelateEntity;
|
import cc.mrbird.febs.dapp.mapper.DappMemberDao;
|
import cc.mrbird.febs.dapp.mapper.DappUserMemberRelateDao;
|
import cc.mrbird.febs.dapp.service.DappMemberService;
|
import cc.mrbird.febs.dapp.service.DappUserService;
|
import cc.mrbird.febs.system.entity.User;
|
import cc.mrbird.febs.system.entity.UserRole;
|
import cc.mrbird.febs.system.mapper.UserMapper;
|
import cc.mrbird.febs.system.mapper.UserRoleMapper;
|
import cn.hutool.core.util.StrUtil;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import lombok.RequiredArgsConstructor;
|
import lombok.extern.slf4j.Slf4j;
|
import org.springframework.stereotype.Service;
|
import org.springframework.transaction.annotation.Transactional;
|
|
import java.util.Date;
|
import java.util.List;
|
|
/**
|
* @author wzy
|
* @date 2022-03-24
|
**/
|
@Slf4j
|
@Service
|
@RequiredArgsConstructor
|
public class DappUserServiceImpl implements DappUserService {
|
|
private final DappMemberDao dappMemberDao;
|
private final DappUserMemberRelateDao dappUserMemberRelateDao;
|
private final UserMapper userMapper;
|
private final UserRoleMapper userRoleMapper;
|
|
@Override
|
public IPage<User> findInPage(User user, QueryRequest request) {
|
Page<User> page = new Page<>(request.getPageNum(), request.getPageSize());
|
return userMapper.selectDappUserInPage(user, page);
|
}
|
|
@Override
|
@Transactional(rollbackFor = Exception.class)
|
public void add(User user) {
|
DappMemberEntity member = dappMemberDao.selectMemberInfoByInviteId(user.getInviteId());
|
if(member == null) {
|
throw new FebsException("邀请码错误");
|
}
|
|
user.setCreateTime(new Date());
|
user.setStatus(User.STATUS_VALID);
|
user.setAvatar(User.DEFAULT_AVATAR);
|
user.setTheme(User.THEME_BLACK);
|
user.setIsTab(User.TAB_OPEN);
|
user.setPassword(Md5Util.encrypt(user.getUsername(), User.DEFAULT_PASSWORD));
|
userMapper.insert(user);
|
|
UserRole userRole = new UserRole();
|
userRole.setRoleId(81L);
|
userRole.setUserId(user.getUserId());
|
userRoleMapper.insert(userRole);
|
|
User currentUser = FebsUtil.getCurrentUser();
|
DappUserMemberRelateEntity relate = new DappUserMemberRelateEntity();
|
relate.setMemberId(member.getId());
|
relate.setUserId(user.getUserId());
|
relate.setInviteId(user.getInviteId());
|
relate.setCreateUser(currentUser.getUserId());
|
dappUserMemberRelateDao.insert(relate);
|
}
|
|
@Override
|
@Transactional(rollbackFor = Exception.class)
|
public void delete(String ids) {
|
List<String> idsList = StrUtil.split(ids, ',');
|
userMapper.deleteBatchIds(idsList);
|
dappUserMemberRelateDao.deleteByUserIds(idsList);
|
}
|
}
|