DD.WellWorkover.Cloud/AsbCloudApp/Services/IUserService.cs
ngfrolov f4b3dfd9fe doc
2022-08-09 11:10:01 +05:00

58 lines
2.0 KiB
C#
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.

using AsbCloudApp.Data;
using System.Collections.Generic;
namespace AsbCloudApp.Services
{
/// <summary>
/// Сервис пользователей
/// </summary>
public interface IUserService : ICrudService<UserExtendedDto>
{
/// <summary>
/// Сервис ролей
/// </summary>
IUserRoleService RoleService { get; }
/// <summary>
/// Получить список всех прав пользователя (включая наследование групп)
/// </summary>
/// <param name="idUser"></param>
/// <returns></returns>
IEnumerable<PermissionDto> GetNestedPermissions(int idUser);
/// <summary>
/// Получить список ролей пользователя (включая наследование)
/// </summary>
/// <param name="idUser"></param>
/// <param name="nestedLevel"></param>
/// <returns></returns>
IEnumerable<UserRoleDto> GetRolesByIdUser(int idUser, int nestedLevel = 0);
// TODO: скорее всего не используется
/// <summary>
///
/// </summary>
/// <param name="idUser"></param>
/// <param name="roleNames"></param>
/// <returns></returns>
bool HasAnyRoleOf(int idUser, IEnumerable<string> roleNames);
// TODO: скорее всего не используется
/// <summary>
///
/// </summary>
/// <param name="idUser"></param>
/// <param name="roleIds"></param>
/// <returns></returns>
bool HasAnyRoleOf(int idUser, IEnumerable<int> roleIds);
/// <summary>
/// определяет есть ли у пользователя указанное разрешение
/// </summary>
/// <param name="idUser"></param>
/// <param name="permissionName"></param>
/// <returns></returns>
public bool HasPermission(int idUser, string permissionName);
}
}