You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

65 lines
1.5 KiB

using System.Collections.Generic;
using CellularManagement.Domain.Entities;
namespace CellularManagement.Application.Features.RolePermissions.Queries.GetRolePermissions;
/// <summary>
/// 获取角色权限响应
/// </summary>
public class GetRolePermissionsResponse
{
/// <summary>
/// 角色ID
/// </summary>
public string RoleId { get; set; } = string.Empty;
/// <summary>
/// 角色名称
/// </summary>
public string RoleName { get; set; } = string.Empty;
/// <summary>
/// 权限列表
/// </summary>
public IEnumerable<PermissionDto> Permissions { get; set; } = new List<PermissionDto>();
}
/// <summary>
/// 权限数据传输对象
/// </summary>
public class PermissionDto
{
/// <summary>
/// 权限ID
/// </summary>
public string Id { get; set; } = string.Empty;
/// <summary>
/// 权限名称
/// </summary>
public string Name { get; set; } = string.Empty;
/// <summary>
/// 权限编码
/// </summary>
public string Code { get; set; } = string.Empty;
/// <summary>
/// 权限描述
/// </summary>
public string Description { get; set; } = string.Empty;
/// <summary>
/// 从权限实体创建DTO
/// </summary>
public static PermissionDto FromEntity(Permission permission)
{
return new PermissionDto
{
Id = permission.Id,
Name = permission.Name,
Code = permission.Code,
Description = permission.Description
};
}
}