using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using AyCode.Entities.Groups;
using AyCode.Interfaces.Entities;
using AyCode.Interfaces.TimeStampInfo;
using TIAM.Entities.Groups;

namespace TIAM.Entities.Permissions;

[Table("PermissionGroups")]
public class PermissionGroup : GroupBase
{
    public PermissionGroup() { }
    public PermissionGroup( Guid ownerId, bool isPublic, string groupName, bool isBuiltin) : this(Guid.NewGuid(), ownerId, isPublic, groupName, isBuiltin) { }
    public PermissionGroup(Guid id, Guid ownerId, bool isPublic, string groupName, bool isBuiltin) : base(id, isPublic)
    {
        Id = id;
        OwnerId = ownerId;
        IsPublic = isPublic;
        GroupName = groupName;
        IsBuiltin = isBuiltin;    
    }

    
    public Guid OwnerId { get; set; }
    public string? GroupName { get; set; }
    public bool IsBuiltin { get; set; }    
}