SurveyVista/Model/QuestionnaireAnalysisSnapshot.cs
2026-03-07 02:37:33 +01:00

45 lines
No EOL
1.4 KiB
C#

// Model/QuestionnaireAnalysisSnapshot.cs
using System;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
namespace Model
{
public class QuestionnaireAnalysisSnapshot
{
[Key]
public int Id { get; set; }
[Required]
public int QuestionnaireId { get; set; }
// Counts
public int TotalResponses { get; set; }
public int AnalyzedResponses { get; set; }
// Aggregated sentiment averages
public double OverallPositiveSentiment { get; set; }
public double OverallNegativeSentiment { get; set; }
public double OverallNeutralSentiment { get; set; }
// Risk distribution counts
public int LowRiskCount { get; set; }
public int ModerateRiskCount { get; set; }
public int HighRiskCount { get; set; }
public int CriticalRiskCount { get; set; }
// Executive summary (generated by Claude once)
public string ExecutiveSummary { get; set; } = string.Empty;
// Complex data as JSON
public string TopWorkplaceIssuesJson { get; set; } = "[]";
public string MostCommonKeyPhrasesJson { get; set; } = "[]";
// Metadata
public DateTime GeneratedAt { get; set; } = DateTime.UtcNow;
// Navigation
[ForeignKey("QuestionnaireId")]
public virtual Questionnaire? Questionnaire { get; set; }
}
}