namespace FLSDAL.DTO.Survey; public record SurveyQuestionDetailDto( int QuestionId, string QuestionCode, string QuestionText, int QuestionTypeId, int IsRequired, // 0=No, 1=Yes int SortOrder, int? RatingMin, int? RatingMax, string? RatingLabelLow, string? RatingLabelHigh, int? TextMaxLength, int? TextMinLength, string? YesLabel, string? NoLabel, List Options ); // No primary constructor (init-only properties) so this gets an implicit parameterless // constructor — see SurveyQuestionCoreRow for why Dapper's positional-record materializer // is fragile (LEFT JOIN-sourced/nullable columns cannot exactly match a positional signature). public record SurveyQuestionOptionDetailDto { public int OptionId { get; init; } public string OptionCode { get; init; } = string.Empty; public string OptionText { get; init; } = string.Empty; public int DisplayOrder { get; init; } }