using System.Collections.Generic;
namespace AnalyticsDAL.DTO.Wizard
{
/// Single mutate-shaped request DTO for AnalyticsWizardBLL.QuickBuildAsync —
/// everything needed to turn a wizard session's table/column/join selections into real
/// MANALYSIS/MANALYSISOBJECT/MANALYSISFIELDS/DBJOIN(/MANALYSISQUERY) rows in one
/// transaction.
public class AnalyticsWizardBuildRequestDTO
{
public string AnalysisCode { get; set; } = string.Empty;
public string AnalysisName { get; set; } = string.Empty;
public int WorkspaceId { get; set; }
/// 0 = Own tenant DB, 1 = External client DB.
public byte SourceKind { get; set; }
public int? SourceClientDbId { get; set; }
public List SelectedTables { get; set; } = new();
public List AcceptedJoins { get; set; } = new();
/// When true (default), also creates one MANALYSISQUERY row (QueryType =
/// SELECTION_BASED) covering every selected field, so the wizard's output is immediately
/// usable without a second designer step.
public bool AutoCreateDefaultQuery { get; set; } = true;
}
}