141 lines
3.0 KiB
Java
141 lines
3.0 KiB
Java
package com.youlai.system.service;
|
||
|
||
|
||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||
import com.baomidou.mybatisplus.extension.service.IService;
|
||
import com.youlai.system.enums.ContactType;
|
||
import com.youlai.system.model.entity.SysUser;
|
||
import com.youlai.system.model.form.PasswordChangeForm;
|
||
import com.youlai.system.model.form.UserForm;
|
||
import com.youlai.system.model.dto.UserAuthInfo;
|
||
import com.youlai.system.model.form.UserProfileForm;
|
||
import com.youlai.system.model.query.UserPageQuery;
|
||
import com.youlai.system.model.dto.UserExportDTO;
|
||
import com.youlai.system.model.vo.UserInfoVO;
|
||
import com.youlai.system.model.vo.UserPageVO;
|
||
import com.youlai.system.model.vo.UserProfileVO;
|
||
|
||
import java.util.List;
|
||
|
||
/**
|
||
* 用户业务接口
|
||
*
|
||
* @author haoxr
|
||
* @since 2022/1/14
|
||
*/
|
||
public interface SysUserService extends IService<SysUser> {
|
||
|
||
/**
|
||
* 用户分页列表
|
||
*
|
||
* @return
|
||
*/
|
||
IPage<UserPageVO> listPagedUsers(UserPageQuery queryParams);
|
||
|
||
|
||
/**
|
||
* 获取用户表单数据
|
||
*
|
||
* @param userId
|
||
* @return
|
||
*/
|
||
UserForm getUserFormData(Long userId);
|
||
|
||
|
||
/**
|
||
* 新增用户
|
||
*
|
||
* @param userForm 用户表单对象
|
||
* @return
|
||
*/
|
||
boolean saveUser(UserForm userForm);
|
||
|
||
/**
|
||
* 修改用户
|
||
*
|
||
* @param userId 用户ID
|
||
* @param userForm 用户表单对象
|
||
* @return
|
||
*/
|
||
boolean updateUser(Long userId, UserForm userForm);
|
||
|
||
|
||
/**
|
||
* 删除用户
|
||
*
|
||
* @param idsStr 用户ID,多个以英文逗号(,)分割
|
||
* @return
|
||
*/
|
||
boolean deleteUsers(String idsStr);
|
||
|
||
|
||
/**
|
||
* 根据用户名获取认证信息
|
||
*
|
||
* @param username 用户名
|
||
* @return {@link UserAuthInfo}
|
||
*/
|
||
|
||
UserAuthInfo getUserAuthInfo(String username);
|
||
|
||
|
||
/**
|
||
* 获取导出用户列表
|
||
*
|
||
* @param queryParams 查询参数
|
||
* @return
|
||
*/
|
||
List<UserExportDTO> listExportUsers(UserPageQuery queryParams);
|
||
|
||
|
||
/**
|
||
* 获取登录用户信息
|
||
*
|
||
* @return
|
||
*/
|
||
UserInfoVO getCurrentUserInfo();
|
||
|
||
/**
|
||
* 获取个人中心用户信息
|
||
*
|
||
* @return
|
||
*/
|
||
UserProfileVO getUserProfile(Long userId);
|
||
|
||
/**
|
||
* 修改个人中心用户信息
|
||
*
|
||
* @param userId 用户ID
|
||
* @param formData 表单数据
|
||
* @return
|
||
*/
|
||
boolean updateUserProfile(Long userId, UserProfileForm formData);
|
||
|
||
/**
|
||
* 修改用户密码
|
||
*
|
||
* @param userId 用户ID
|
||
* @param data 修改密码表单数据
|
||
* @return
|
||
*/
|
||
boolean changePassword(Long userId, PasswordChangeForm data);
|
||
|
||
/**
|
||
* 重置用户密码
|
||
*
|
||
* @param userId 用户ID
|
||
* @param password 重置后的密码
|
||
* @return
|
||
*/
|
||
boolean resetPassword(Long userId, String password);
|
||
|
||
/**
|
||
* 发送验证码
|
||
*
|
||
* @param contact 联系方式
|
||
* @param type 联系方式类型
|
||
* @return
|
||
*/
|
||
boolean sendVerificationCode(String contact, ContactType type);
|
||
}
|