2024-07-04 11:02:45 +05:00
|
|
|
|
using AsbCloudApp.Data;
|
2023-06-21 12:33:18 +05:00
|
|
|
|
using AsbCloudApp.Data.User;
|
2022-10-27 11:22:39 +05:00
|
|
|
|
using AsbCloudApp.Services;
|
2022-10-26 15:36:49 +05:00
|
|
|
|
using System.Collections.Generic;
|
|
|
|
|
|
2024-08-19 10:01:07 +05:00
|
|
|
|
namespace AsbCloudApp.Repositories;
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Репозиторий пользователей
|
|
|
|
|
/// </summary>
|
|
|
|
|
public interface IUserRepository : ICrudRepository<UserExtendedDto>
|
2022-10-26 15:36:49 +05:00
|
|
|
|
{
|
|
|
|
|
/// <summary>
|
2024-08-19 10:01:07 +05:00
|
|
|
|
/// Получить список всех прав пользователя (включая наследование групп)
|
2022-10-26 15:36:49 +05:00
|
|
|
|
/// </summary>
|
2024-08-19 10:01:07 +05:00
|
|
|
|
/// <param name="idUser"></param>
|
|
|
|
|
/// <returns></returns>
|
|
|
|
|
IEnumerable<PermissionDto> GetNestedPermissions(int idUser);
|
2022-10-26 15:36:49 +05:00
|
|
|
|
|
2024-08-19 10:01:07 +05:00
|
|
|
|
/// <summary>
|
|
|
|
|
/// Получить список ролей пользователя (включая наследование)
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <param name="idUser"></param>
|
|
|
|
|
/// <param name="nestedLevel"></param>
|
|
|
|
|
/// <returns></returns>
|
|
|
|
|
IEnumerable<UserRoleDto> GetRolesByIdUser(int idUser, int nestedLevel = 0);
|
2022-10-26 15:36:49 +05:00
|
|
|
|
|
2024-08-19 10:01:07 +05:00
|
|
|
|
/// <summary>
|
|
|
|
|
/// определяет есть ли у пользователя указанное разрешение
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <param name="idUser"></param>
|
|
|
|
|
/// <param name="permissionName"></param>
|
|
|
|
|
/// <returns></returns>
|
|
|
|
|
public bool HasPermission(int idUser, string permissionName);
|
2022-10-26 15:36:49 +05:00
|
|
|
|
}
|