using System;
using System.Collections.Generic;
namespace FrameworkDAL.DTO.MetaReport
{
///
/// MMETAREPORTASPECT row — one picker dimension (Type/Level/PeriodType/...). TabGroup is
/// free text; aspects sharing the same TabGroup render together under one tab in the picker,
/// null means the single default tab (see MetaReport_Guide.md §4's Tab grouping note).
/// AspectId <= 0 means "new row, not yet saved" for the diff-based reconcile.
///
public class MetaReportAspectDTO
{
public int AspectId { get; set; }
public int MetaReportId { get; set; }
public string AspectName { get; set; } = string.Empty;
/// "radio" | "select" | "button" | "checkbox" — matches IMetaReportAspectType.
public string AspectType { get; set; } = "radio";
public bool IsMandatory { get; set; }
public short DisplayOrder { get; set; } = 9999;
public string? TabGroup { get; set; }
public string? Tooltip { get; set; }
public int CreatedById { get; set; } = -1;
public DateTime CreatedOn { get; set; }
public int ModifiedById { get; set; } = -1;
public DateTime ModifiedOn { get; set; }
public List Options { get; set; } = new();
}
}