package com.gkhy.exam.system.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.gkhy.exam.common.api.CommonPage;
import com.gkhy.exam.common.domain.entity.SysUser;
import java.util.List;
/**
*
* 用户表 服务类
*
*
* @author kzy
* @since 2023-10-17 14:26:29
*/
public interface SysUserService extends IService {
/**
* 根据条件分页查询用户列表
* @param user
* @return
*/
CommonPage selectUserList(SysUser user);
/**
* 根据登录名获取用户
* @param username
* @return
*/
SysUser selectUserByUsername(String username);
/**
* 根据条件分页查询已配用户角色列表
*
* @param user 用户信息
* @return 用户信息集合信息
*/
public List selectAllocatedList(SysUser user);
/**
* 根据条件分页查询未分配用户角色列表
*
* @param user 用户信息
* @return 用户信息集合信息
*/
public List selectUnallocatedList(SysUser user);
/**
* 根据手机号获取用户
* @param phone
* @return
*/
SysUser selectUserByPhone(String phone);
/**
* 根据id获取用户
* @param userId
* @return
*/
SysUser selectUserById(Long userId);
/**
* 根据id删除用户
* @param userId
* @return
*/
int deleteUserById(Long userId);
/**
* 新增用户
* @param user
* @return
*/
int addUser(SysUser user);
/**
* 更新用户
* @param user
* @return
*/
int updateUser(SysUser user);
/**
* 修改用户状态
* @param user
* @return
*/
int updateUserStatus(SysUser user);
/**
* 修改用户密码信息
* @param user
* @return
*/
boolean resetUserPwd(SysUser user);
/**
* 校验登录名是否唯一
* @param user
* @return
*/
boolean checkUsernameUnique(SysUser user);
/**
* 校验手机号是否唯一
* @param user
* @return
*/
boolean checkPhoneUnique(SysUser user);
/**
* 校验用户是否允许操作
* @param user
*/
void checkUserAllowed(SysUser user);
/**
* 校验用户是否有数据权限
* @param userId
*/
SysUser checkUserDataScope(Long userId);
}