123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165 |
- package com.jiayue.ssi.service.impl;
- import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
- import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
- import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
- import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
- import com.jiayue.ssi.entity.SysRole;
- import com.jiayue.ssi.entity.SysUser;
- import com.jiayue.ssi.entity.SysUserRole;
- import com.jiayue.ssi.mapper.SysUserMapper;
- import com.jiayue.ssi.mapper.SysUserRoleMapper;
- import com.jiayue.ssi.service.SysUserService;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.stereotype.Service;
- import org.springframework.transaction.annotation.Propagation;
- import org.springframework.transaction.annotation.Transactional;
- import java.util.ArrayList;
- import java.util.List;
- /**
- * 用户管理服务类
- * @author xsl
- * @date 2023/2/16
- */
- @Service
- public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> implements SysUserService {
- @Autowired
- SysUserMapper sysUserMapper;
- @Autowired
- SysUserRoleMapper sysUserRoleMapper;
- /**
- * 获取所有用户
- * @return List<SysUser>
- */
- @Override
- public List<SysUser> queryAllUsers(){
- return this.list();
- }
- /**
- * 保存用户
- * @param sysUser
- * @return boolean
- */
- @Override
- @Transactional(propagation= Propagation.REQUIRED, rollbackFor = Exception.class)
- public boolean saveUser(SysUser sysUser){
- return this.save(sysUser);
- }
- /**
- * 更新用户
- * @param sysUser
- * @return boolean
- */
- @Override
- @Transactional(propagation= Propagation.REQUIRED, rollbackFor = Exception.class)
- public boolean updateUser(SysUser sysUser){
- return this.updateById(sysUser);
- }
- /**
- * 删除用户
- * @param id
- * @return
- */
- @Override
- @Transactional(propagation= Propagation.REQUIRED, rollbackFor = Exception.class)
- public boolean deleteUser(String id){
- return this.removeById(id);
- }
- /**
- * 根据账号查找
- * @param username
- * @return SysUser
- */
- @Override
- public SysUser queryUserName(String username){
- LambdaQueryWrapper<SysUser> queryWrapper = new LambdaQueryWrapper<>();
- queryWrapper.eq(SysUser::getUsername,username);
- SysUser sysUser = sysUserMapper.selectOne(queryWrapper);
- return sysUser;
- }
- /**
- * 根据邮箱查找
- * @param mailbox
- * @return SysUser
- */
- @Override
- public SysUser queryMailBox(String mailbox){
- LambdaQueryWrapper<SysUser> queryWrapper = new LambdaQueryWrapper<>();
- queryWrapper.eq(SysUser::getMailbox,mailbox);
- SysUser sysUser = sysUserMapper.selectOne(queryWrapper);
- return sysUser;
- }
- /**
- * 删除用户
- * @param id
- * @return
- */
- @Override
- @Transactional(propagation= Propagation.REQUIRED, rollbackFor = Exception.class)
- public boolean removeUserById(Integer id) {
- LambdaUpdateWrapper<SysUser> updateWrapper = new UpdateWrapper<SysUser>().lambda();
- updateWrapper.eq(SysUser::getId, id).set(SysUser::getDelFlag, 1);
- int count = sysUserMapper.update(new SysUser(), updateWrapper);
- if (count > 0) {
- return true;
- }
- return false;
- }
- /**
- * 初始/重置密码
- * @param id 主键id
- * @param initPassword 初始密码
- * @return
- */
- @Override
- @Transactional(propagation= Propagation.REQUIRED, rollbackFor = Exception.class)
- public boolean resetPassword(Integer id,String initPassword) {
- LambdaUpdateWrapper<SysUser> updateWrapper = new UpdateWrapper<SysUser>().lambda();
- updateWrapper.eq(SysUser::getId, id).set(SysUser::getLastUpdatePwdTime, null).set(SysUser::getPassword,initPassword);
- int count = sysUserMapper.update(new SysUser(), updateWrapper);
- if (count > 0) {
- return true;
- }
- return false;
- }
- /**
- * 解锁用户
- * @param id
- * @return
- */
- @Override
- @Transactional(propagation= Propagation.REQUIRED, rollbackFor = Exception.class)
- public boolean relockUserById(Integer id) {
- LambdaUpdateWrapper<SysUser> updateWrapper = new UpdateWrapper<SysUser>().lambda();
- updateWrapper.eq(SysUser::getId, id).set(SysUser::getStatus, 0);
- int count = sysUserMapper.update(new SysUser(), updateWrapper);
- if (count > 0) {
- return true;
- }
- return false;
- }
- /**
- * 用户授权角色
- *
- * @param userId 用户ID
- * @param roleId 角色ID
- */
- @Override
- @Transactional(propagation= Propagation.REQUIRED, rollbackFor = Exception.class)
- public int insertUserAuth(Long userId, Long roleId) {
- int returnVal = 0;
- sysUserRoleMapper.deleteUserRoleByUserId(userId);
- if (roleId!=null){
- // 新增用户与角色管理
- SysUserRole ur = new SysUserRole();
- ur.setUserId(userId);
- ur.setRoleId(roleId);
- returnVal = sysUserRoleMapper.insert(ur);
- }
- return returnVal;
- }
- }
|