package com.gkhy.safePlatform.account.service.baseService; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; import com.gkhy.safePlatform.account.entity.user.UserInfo; import com.gkhy.safePlatform.account.entity.user.UserInfoDO; import com.gkhy.safePlatform.account.model.query.db.AccountDBQuery; import java.util.List; public interface UserInfoService extends IService { /** * @Description: 根据用户名查找用户 */ UserInfo getUserByUsername(String username); /** * @Description: 根据用id查找用户 */ UserInfo getUserByUserId(Long userId); /** * @Description: 弃用用户 */ void abandonAccount(Long userId); /** * @Description: 保存用户 */ void saveUserInfo(UserInfo userInfo); /** * @Description: 修改用户 */ void updateUserInfo(UserInfo userInfo); /** * @Description: 分页查询用户列表 */ List listPage(Page page, AccountDBQuery accountDBQuery); /** * @Description: 获取部门下用户信息 */ List getDepUserList(Long depId); /** * @Description: 部门下的总人数 */ long countByDepId(Long depId); /** * @Description: 岗位下总人数 */ long countByPositionId(Long positionId); /** * @Description: 获取正常用户的身份证个数 */ long countByIdentify(String identify); /** * @Description: 获取用户真名=realName的个数 与状态无关 */ long countByRealName(String realName); /** * @Description: 根据 phone 获取 有效用户 */ UserInfoDO getUserByPhone(String phone); /** * @Description: 根据 phone 获取正常用户个数 */ long countByPhone(String phone); /** * @Description: 获取所有用户 */ List listAllUser(); /** * @Description: 根据 uids 获取 n 个用户 */ List listUserByUids(List uids); List listUserByRealName(String realName); /** * @Description: 根据 roleId 获取 用户个数 */ long countByRoleId(Long roleId); /** * @Description: 根据 roleId 解绑 重置用户 roleId 为 null */ void resetRoleToNullByRoleId(Long roleId); /** * @Description: 根据 identify 获取用户 */ UserInfo getUserInfoByIdentify(String identify); /** * @Description: 根据 phone 获取用户 */ UserInfo getUserInfoByPhone(String phone); /** * @Description: 根据 email 获取用户 */ UserInfo getUserInfoByEmail(String email); /** * @Description: 根据 email 获取 用户个数 */ long countByEmail(String email); /** * @Description: 根据 uid 更新 用户的 salt 和 hash */ void updatePassword(Long uid, String salt, String hash); }