56 lines
2.1 KiB
C#
Raw Normal View History

2025-06-04 09:42:48 +08:00
using Syc.Basic.Web.WMS.DO;
using Syc.Basic.Web.WMS.Entitys;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Syc.Basic.Web.WMS.Repository
{
public interface IUserRepository
{
/// <summary>
/// 根据账号获取 UserDO
/// </summary>
/// <param name="account">账号</param>
/// <param name="fillRole">是否包含角色</param>
/// <param name="fillORG">是否包含组织</param>
/// <param name="fillPosition">是否包含职位</param>
/// <returns></returns>
public Task<UserDO> GetUserByAccountAsync(string account,bool fillRole = true,bool fillORG = true,bool fillPosition = true);
/// <summary>
/// 根据 UserId 获取 UserDO
/// </summary>
/// <param name="account">账号</param>
/// <param name="fillRole">是否包含角色</param>
/// <param name="fillORG">是否包含组织</param>
/// <param name="fillPosition">是否包含职位</param>
/// <returns></returns>
public Task<UserDO> GetUserByUserIdAsync(int userId, bool fillRole = true, bool fillORG = true, bool fillPosition = true);
public Task<List<UserDO>> GetUserByUserIdAsync(int[] userId, bool fillRole = true, bool fillORG = true, bool fillPosition = true);
/// <summary>
/// 获取所有角色,包含菜单
/// </summary>
/// <returns></returns>
public Task<List<Role>> GetRoleByCodesAsync(string[] roleCodes);
/// <summary>
/// 搜索用户
/// </summary>
/// <returns></returns>
public Task<(List<User> items,int total)> SearchUserAsync(int? departmentId,string email,string mobile,string nickname,string username,string[] roleIds, int page, int pageSize);
/// <summary>
/// 根据部门获取用户
/// </summary>
/// <param name="departmentIds">部门id</param>
/// <returns></returns>
public Task<List<User>> GetUserByDepartmentIds(int[] departmentIds);
public Task<List<User>> GetUsers(int[] ids, bool incOrg);
}
}