package com.gkhy.labRiskManage.domain.account.service; import com.gkhy.labRiskManage.api.controller.account.query.UserQuery; import com.gkhy.labRiskManage.commons.domain.SearchResult; import com.gkhy.labRiskManage.commons.model.PageQuery; import com.gkhy.labRiskManage.domain.account.model.bo.CreateUserBO; import com.gkhy.labRiskManage.domain.account.model.bo.UpdateUserBO; import com.gkhy.labRiskManage.domain.account.model.dto.UserInfoDomainDTO; import java.util.List; public interface UserDomainService { /** * 新增用户信息 * @param createUserBO * @return */ UserInfoDomainDTO newUser(CreateUserBO createUserBO); /** * 更新用户信息 * @param updateUserBO * @return */ UserInfoDomainDTO updateUserInfo(UpdateUserBO updateUserBO); /** * 根据用户ID获取用户信息 * @param uid * @return */ UserInfoDomainDTO getUserInfoById(Long uid); /** * 根据用户名获取用户信息 * @param name * @return */ UserInfoDomainDTO getUserInfoByName(String name); List findUserListByRealName(String name); SearchResult> findUserListByRole(Long roleId, boolean usePage, Integer page, Integer pageSize); /** * 根据用户ID列表批量获取用户信息 * @param uidList * @return */ List getUserInfoListByIds(List uidList); /** * 更新用户密码 * @param uid * @param oldPwd * @param newPwd * @return */ boolean updateUserPwd(Long uid,String oldPwd,String newPwd); /** * 变更账号状态 * @param uid * @param status * @return */ boolean updateUserStatus(Long uid,Byte status); boolean updateUserRole(Long uid,Long roleId); /** * 校验密码 * @param pwd * @param hash * @param salt * @return */ boolean checkPassword(String pwd,String hash,String salt); /** * 手机号查找用户 * @param phoneNumber * @return */ UserInfoDomainDTO findUserByPhone(String phoneNumber); /** * 证件号查找用户 * @param idType * @param idSerial * @return */ UserInfoDomainDTO findUserByIdSerial(Byte idType, String idSerial); /** * 修改手机号 * @param uid * @param phoneNumber * @return */ boolean updateUserPhoneNumber(Long uid,String phoneNumber); /** * 删除用户 * @param uid * @return */ boolean deleteUser(Long uid); UserInfoDomainDTO getUserById(Long id); /** * 用户列表 */ List getUserList(); /** * 用户查询 */ UserInfoDomainDTO getUserInfoByIdAndSellInfo(Long evaluateUserId, String info); /** * 用户列表 * @param pageQuery * @return */ SearchResult> findUserList(PageQuery pageQuery); /** * 专家库 * @param pageQuery * @return */ SearchResult> findExpertList(PageQuery pageQuery); }