zhanglin8526
2023-05-04 daf1d5e645ba76343f048044405fa08a1573d77a
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/sys/SysUserServiceImpl.java
@@ -1,9 +1,18 @@
package com.ruoyi.system.service.impl.sys;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.stream.Collectors;
import javax.validation.Validator;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.system.api.domain.dto.AppEditUserDto;
import com.ruoyi.system.api.domain.poji.member.Member;
import com.ruoyi.system.domain.pojo.coupon.Coupon;
import com.ruoyi.system.mapper.coupon.CouponMapper;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
@@ -29,14 +38,15 @@
import com.ruoyi.system.mapper.sys.SysUserRoleMapper;
import com.ruoyi.system.service.sys.ISysConfigService;
import com.ruoyi.system.service.sys.ISysUserService;
import org.springframework.util.ObjectUtils;
/**
 * 用户 业务层处理
 *
 * @author ruoyi
 *
 * @author jqs
 */
@Service
public class SysUserServiceImpl implements ISysUserService
public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser>  implements ISysUserService
{
    private static final Logger log = LoggerFactory.getLogger(SysUserServiceImpl.class);
@@ -63,7 +73,7 @@
    /**
     * 根据条件分页查询用户列表
     *
     *
     * @param user 用户信息
     * @return 用户信息集合信息
     */
@@ -74,9 +84,21 @@
        return userMapper.selectUserList(user);
    }
    @Override
    public SysUser selectUserByPhoneNumber(String phoneNumber) {
        SysUser sysUser = new SysUser();
        sysUser.setPhonenumber(phoneNumber);
        List<SysUser> userList = this.selectUserList(sysUser);
        SysUser queryUser = null;
        if(!userList.isEmpty()){
            queryUser = userList.get(0);
        }
        return queryUser;
    }
    /**
     * 根据条件分页查询已分配用户角色列表
     *
     *
     * @param user 用户信息
     * @return 用户信息集合信息
     */
@@ -89,7 +111,7 @@
    /**
     * 根据条件分页查询未分配用户角色列表
     *
     *
     * @param user 用户信息
     * @return 用户信息集合信息
     */
@@ -102,7 +124,7 @@
    /**
     * 通过用户名查询用户
     *
     *
     * @param userName 用户名
     * @return 用户对象信息
     */
@@ -114,7 +136,7 @@
    /**
     * 通过用户ID查询用户
     *
     *
     * @param userId 用户ID
     * @return 用户对象信息
     */
@@ -126,7 +148,7 @@
    /**
     * 查询用户所属角色组
     *
     *
     * @param userName 用户名
     * @return 结果
     */
@@ -143,7 +165,7 @@
    /**
     * 查询用户所属岗位组
     *
     *
     * @param userName 用户名
     * @return 结果
     */
@@ -160,7 +182,7 @@
    /**
     * 校验用户名称是否唯一
     *
     *
     * @param user 用户信息
     * @return 结果
     */
@@ -214,7 +236,7 @@
    /**
     * 校验用户是否允许操作
     *
     *
     * @param user 用户信息
     */
    @Override
@@ -228,7 +250,7 @@
    /**
     * 校验用户是否有数据权限
     *
     *
     * @param userId 用户id
     */
    @Override
@@ -248,7 +270,7 @@
    /**
     * 新增保存用户信息
     *
     *
     * @param user 用户信息
     * @return 结果
     */
@@ -267,7 +289,7 @@
    /**
     * 注册用户信息
     *
     *
     * @param user 用户信息
     * @return 结果
     */
@@ -279,7 +301,7 @@
    /**
     * 修改保存用户信息
     *
     *
     * @param user 用户信息
     * @return 结果
     */
@@ -301,7 +323,7 @@
    /**
     * 用户授权角色
     *
     *
     * @param userId 用户ID
     * @param roleIds 角色组
     */
@@ -315,7 +337,7 @@
    /**
     * 修改用户状态
     *
     *
     * @param user 用户信息
     * @return 结果
     */
@@ -327,7 +349,7 @@
    /**
     * 修改用户基本信息
     *
     *
     * @param user 用户信息
     * @return 结果
     */
@@ -339,7 +361,7 @@
    /**
     * 修改用户头像
     *
     *
     * @param userName 用户名
     * @param avatar 头像地址
     * @return 结果
@@ -352,7 +374,7 @@
    /**
     * 重置用户密码
     *
     *
     * @param user 用户信息
     * @return 结果
     */
@@ -364,7 +386,7 @@
    /**
     * 重置用户密码
     *
     *
     * @param userName 用户名
     * @param password 密码
     * @return 结果
@@ -377,7 +399,7 @@
    /**
     * 新增用户角色信息
     *
     *
     * @param user 用户对象
     */
    public void insertUserRole(SysUser user)
@@ -387,7 +409,7 @@
    /**
     * 新增用户岗位信息
     *
     *
     * @param user 用户对象
     */
    public void insertUserPost(SysUser user)
@@ -410,7 +432,7 @@
    /**
     * 新增用户角色信息
     *
     *
     * @param userId 用户ID
     * @param roleIds 角色组
     */
@@ -433,7 +455,7 @@
    /**
     * 通过用户ID删除用户
     *
     *
     * @param userId 用户ID
     * @return 结果
     */
@@ -450,7 +472,7 @@
    /**
     * 批量删除用户信息
     *
     *
     * @param userIds 需要删除的用户ID
     * @return 结果
     */
@@ -472,7 +494,7 @@
    /**
     * 导入用户数据
     *
     *
     * @param userList 用户数据列表
     * @param isUpdateSupport 是否更新支持,如果已存在,则进行更新数据
     * @param operName 操作用户
@@ -542,4 +564,54 @@
        return successMsg.toString();
    }
    /**
     * @description: updateUserMobile
     * @param: sysUser
     * @return: null
     * @author jqs34
     * @date: 2023/4/30 15:43
     */
    @Override
    public void updateUserMobile(SysUser sysUser){
        SysUser oldSysUser = this.selectUserById(sysUser.getUserId());
        oldSysUser.setPhonenumber(sysUser.getPhonenumber());
        userMapper.updateUser(oldSysUser);
    }
    /**
     *
     * @param appEditUserDto
     */
    @Override
    public void editUserInfo(AppEditUserDto appEditUserDto){
        SysUser sysUser = this.selectUserById(appEditUserDto.getUserId());
        //修改类型1.昵称2.头像3.性别4.生日
        Integer editType = appEditUserDto.getEditType();
        String editValue = appEditUserDto.getEditValue();
        switch (editType){
            case 1:
                sysUser.setNickName(editValue);
                sysUser.setUpdateTime(new Date());
                sysUser.setUpdateBy(String.valueOf(appEditUserDto.getUserId()));
                userMapper.updateUser(sysUser);
                break;
            case 2:
                sysUser.setAvatar(editValue);
                sysUser.setUpdateTime(new Date());
                sysUser.setUpdateBy(String.valueOf(appEditUserDto.getUserId()));
                userMapper.updateUser(sysUser);
                break;
            case 3:
                sysUser.setSex(editValue);
                sysUser.setUpdateTime(new Date());
                sysUser.setUpdateBy(String.valueOf(appEditUserDto.getUserId()));
                userMapper.updateUser(sysUser);
                break;
            case 4:
                break;
            default:
                break;
        }
    }
}