namespace AnalyticsDAL.DTO.AnalysisAggregation.V1
{
public class AnalysisDimensionDefinitionDTO
{
/// Field reference. For Warehouse-kind datasets: a bare fact/DIMOU/DIMDATE
/// column name, or "DIMOU." / "DIMDATE." when the column isn't on the
/// fact table itself (see WarehouseDAL's allowlist-based resolution — only DIMOU and
/// DIMDATE are joinable in this pass, since the ported facts are OU+Date grained only).
/// For AnalysisQuery/ApiService-kind datasets: whatever field name that source uses.
public string Field { get; set; } = string.Empty;
public string Label { get; set; } = string.Empty;
/// Mirrors MREPORTVSFIELDS.FIELDTYPE numbering: 0 INT,1 STRING,2 LONG,3 DATE,4 BOOL,6 DOUBLE.
public byte DataType { get; set; }
/// 0 = leaf (deepest level currently shown); matches MREPORTVIEWFIELDS.ROWLEVEL convention.
public int HierarchyLevel { get; set; }
}
}