using System;
namespace FrameworkDAL.DTO.EIPConversation
{
///
/// Admin CRUD DTO for MEIPCAPABILITY.
/// Used by the EIPCapability management endpoints (GetCapabilityList, GetCapability, SaveCapability, DeleteCapability).
/// Distinct from EIPCapabilityDTO (stale shape, unused) and EIPCapabilityRiskConfigDTO (runtime read-only risk lookup).
///
public class EIPCapabilityAdminDTO
{
public int CapabilityId { get; set; }
public int TenantId { get; set; }
public string CapabilityCode { get; set; } = string.Empty;
public string CapabilityName { get; set; } = string.Empty;
public string? Description { get; set; }
/// 1=Low, 2=Medium, 3=High, 4=Critical
public byte RiskLevel { get; set; } = 1;
public byte RequiresOtp { get; set; }
public byte RequiresApproval { get; set; }
public byte AuditRequired { get; set; } = 1;
public short CapabilityVersion { get; set; } = 1;
public byte IsActive { get; set; } = 1;
public short Version { get; set; }
/// 1 = active row, 0 = soft-deleted.
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; }
}
}