using System;
namespace EAIAdminDAL.DTO
{
/// Admin CRUD DTO for MEAIBOT — mirrors gbEAI's maibot. See
/// EAIInitiativeAdminDTO for the shared shape/conventions this follows.
public class EAIBotAdminDTO
{
public int BotId { get; set; }
public int TenantId { get; set; }
/// Globally unique — matches gbEAI's unique=True on aibotcode.
public string BotCode { get; set; } = string.Empty;
public string Name { get; set; } = string.Empty;
/// Business-key string, not a numeric FK — matches gbEAI's own string-keyed
/// shape (its AutoNumber INT PK and gbEAI's BigInteger PK are independent sequences).
public string InitiativeCode { get; set; } = string.Empty;
public string? Description { get; set; }
/// Only isreadonly=1 bots are invocable in gbEAI.
public byte IsReadOnly { get; set; } = 1;
public long? EAIRemoteId { get; set; }
public short Version { get; set; }
public byte Status { get; set; } = 1;
public int? CreatedById { get; set; }
public string? CreatedByName { get; set; }
public DateTime CreatedOn { get; set; }
public int? ModifiedById { get; set; }
public string? ModifiedByName { get; set; }
public DateTime? ModifiedOn { get; set; }
}
}