using System.Collections.Generic; using System.Threading.Tasks; using GxPress.Common.Page; using GxPress.Entity; using GxPress.Request.App.User; using GxPress.Request.User; using GxPress.Result.User; using Datory; using GxPress.Result.App.User; using GxPress.Result.Job; namespace GxPress.Repository.Interface { public interface IUserRepository : IRepository { Task GetAsync(int id); Task GetAsync(SqlKata.Query query); Task GetDetailAsync(int id); Task GetNameAsync(int id); Task GetAvatarUrlAsync(int id); string GetAvatarUrl(User user); Task> GetAllUserIm(); Task GetByPhoneAsync(string phone); Task DeleteUsersAsync(IEnumerable userIds); Task ChangeRoleAsync(IEnumerable userIds, int roleId); Task ChangeDepartmentAsync(IEnumerable userIds, int department); Task UpdateAsync(User user); Task UpdateAsync(SqlKata.Query query); Task GetCountAsync(int departmentId, int roleId, string keyword); /// /// Set the limit and offset for a given page. /// /// /// /// /// /// /// Task> GetPageListAsync(int page, int perPage, int departmentId, int roleId, string keyword); /// /// 登录 /// /// /// Task SignInAsync(UserSignInRequest request); Task InsertAsync(User user); /// /// 删除用户 /// /// /// Task DeleteAsync(int id); /// /// 更新用户信息 /// /// /// /// Task UpdateAsync(int id, User request); /// /// 用户分页列表 /// /// /// Task> GetPagedListAsync(UserPageSearchRequest request); Task> GetListAsync(ArticleSearchRequest request); /// /// 更新excel用户数据 /// /// /// Task UpdateUserExcelAsync(List request); /// /// 更新用户是否接收私信 /// /// /// Task UpdateUserPrivateLetterAsync(UserPrivateLetterRequest request); /// /// 更新用户是否接收通知 /// Task UpdateUserNoticeAsync(UserNoticeRequest request); /// /// 更新用户是否接收回复 /// Task UpdateUserReplyAsync(UserReplyRequest request); /// /// 更新用户是否静音 /// Task UpdateUserMuteAsync(UserMuteRequest request); /// /// 更新用户是否震动 /// Task UpdateUserShakeAsync(UserShakeRequest request); /// /// 修改用户手机号码 /// /// /// Task UpdateUserPhoneAsync(UserUpdatePhoneRequest request); /// /// 用户邮箱验证 /// /// /// Task SendEmailVerifyCodeAsync(UserEmailVerifyCodeRequest request); /// /// 用户修改密码 /// /// /// Task UpdateUserEmailAsync(UserUpdateEmailRequest request); /// /// 根据部门ID获取下面的用户 /// /// /// Task> GetUserByDepartmentIdAsync(int departmentId); /// /// 根据部门ID获取下面的用户ID /// /// /// Task> GetUserIdListByDepartmentIdAsync(int departmentId); /// /// 根据角色ID获取下面的用户ID /// /// /// Task> GetUserIdListByRoleIdAsync(int roleId); /// /// 创建环信用户 /// /// /// Task CreateMiUserAsync(User request); /// /// 模糊搜索用户 /// /// /// Task> SearchUserNameAsync(SearchUserNameRequest request); /// /// 获取用户 /// /// Task> FindAllUserAsync(SqlKata.Query query); /// /// 根据GUID获取用户信息 /// /// /// Task GetGuidAsync(string guid); Task CountAsync(SqlKata.Query query); Task> GetAllAsync(SqlKata.Query query); /// /// 根据ID集合查询用户 /// /// /// Task> UserListInsAsync(List ids); /// /// 获取用户未读数据 /// /// /// Task GetUserCountAsync(int userId); /// /// 获取工作用户选择审核和抄送人 /// /// /// /// Task> GeFlowUsers(List userIds, int flowId, string type); Task> ElasticSearchUser(); /// /// 根据姓名查询用户 /// /// /// Task> UserByNameAsync(string name); /// /// openId微信认证 /// /// /// /// Task GetByOpenIdAsync(string openId); /// /// 绑定微信 /// /// /// Task UpdateByOpendIdAsync(UserSignInRequest request); /// /// 根据用户ID获取哦手机号码 /// /// /// Task> GetUserIdsAsync(List userIds); } }