50 lines
1.3 KiB
C#
50 lines
1.3 KiB
C#
|
|
using MongoDB.Bson;
|
|
using MongoDB.Bson.Serialization.Attributes;
|
|
|
|
namespace Marco.Pms.Model.AppMenu
|
|
{
|
|
public class MenuSection
|
|
{
|
|
[BsonId]
|
|
[BsonRepresentation(BsonType.String)]
|
|
public Guid Id { get; set; } = Guid.NewGuid();
|
|
|
|
public string? Header { get; set; }
|
|
public string? Title { get; set; }
|
|
public List<MenuItem> Items { get; set; } = new List<MenuItem>();
|
|
}
|
|
|
|
public class MenuItem
|
|
{
|
|
[BsonId]
|
|
[BsonRepresentation(BsonType.String)]
|
|
public Guid Id { get; set; } = Guid.NewGuid();
|
|
|
|
public string? Text { get; set; }
|
|
public string? Icon { get; set; }
|
|
public bool Available { get; set; } = true;
|
|
|
|
public string? Link { get; set; }
|
|
|
|
public string PermissionKey { get; set; } = string.Empty;
|
|
|
|
public List<SubMenuItem> Submenu { get; set; } = new List<SubMenuItem> ();
|
|
}
|
|
|
|
public class SubMenuItem
|
|
{
|
|
[BsonId]
|
|
[BsonRepresentation(BsonType.String)]
|
|
public Guid Id { get; set; } = Guid.NewGuid();
|
|
|
|
public string? Text { get; set; }
|
|
public bool Available { get; set; } = true;
|
|
|
|
public string Link { get; set; } = string.Empty;
|
|
|
|
public string PermissionKey { get; set; } = string.Empty;
|
|
}
|
|
}
|
|
|