Files
youlai-boot/src/main/java/com/youlai/system/service/SysUserService.java
2024-08-19 00:31:18 +08:00

141 lines
3.0 KiB
Java
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
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);
}