using Core.Entities; using Heron.MudCalendar; namespace WebApp.Models; /// /// Calendar meeting item model for Heron.MudCalendar component. /// Maps from TeamMeetingHistory entity to calendar event format. /// public class CalendarMeetingItem : CalendarItem { /// /// Gets the original TeamMeetingHistory data. /// public TeamMeetingHistory? MeetingHistoryData { get; set; } /// /// Parameterless constructor required by Heron.MudCalendar component. /// public CalendarMeetingItem() { // Initialize base class properties to avoid null reference issues Text = string.Empty; Start = DateTime.MinValue; End = DateTime.MinValue; } public CalendarMeetingItem(TeamMeetingHistory meetingHistory) { MeetingHistoryData = meetingHistory; // Set base class properties that the calendar component uses Text = "Team Meeting"; // Use meeting date at 3:00 PM as default time Start = meetingHistory.MeetingDate.Date.AddHours(15); // Default to 1 hour duration End = Start.AddHours(1); } }