using JetBrains.Annotations;
using System;
using System.ComponentModel;
using Volo.Abp;
using Volo.Abp.Domain.Entities;
using Volo.Abp.MultiTenancy;
namespace Sanhe.Abp.MenuManagement
{
///
/// 菜单分配
///
[DisplayName("菜单分配")]
public class MenuGrant : Entity, IMultiTenant
{
///
/// 租户Id
///
[DisplayName("租户Id")]
public virtual Guid? TenantId { get; protected set; }
///
/// 菜单Id
///
[DisplayName("菜单Id")]
[NotNull]
public virtual Guid MenuId { get; protected set; }
///
/// 提供器名称
///
[DisplayName("提供器名称")]
[NotNull]
public virtual string ProviderName { get; protected set; }
///
/// 提供器Key
///
[DisplayName("提供器Key")]
[CanBeNull]
public virtual string ProviderKey { get; protected internal set; }
protected MenuGrant()
{
}
public MenuGrant(
Guid id,
[NotNull] Guid menuId,
[NotNull] string providerName,
[CanBeNull] string providerKey,
Guid? tenantId = null)
{
Check.NotNull(menuId, nameof(menuId));
Id = id;
MenuId = menuId;
ProviderName = Check.NotNullOrWhiteSpace(providerName, nameof(providerName));
ProviderKey = providerKey;
TenantId = tenantId;
}
}
}