@page "/booking" @using System @using System.Collections.Generic @using System.Linq @using System.Threading.Tasks @rendermode InteractiveServer
@* Page Head *@

Online GDS Booking Console

GDS-integrated · Amadeus, Travelport & Sabre · e-ticketing & vouchers

@* Notification Feedback Banner *@ @if (!string.IsNullOrEmpty(AlertFeedback)) {
@AlertFeedback
} @* Financial & Booking KPI Dashboard *@
Lodge Card Balance R @LodgeCardBalance.ToString("N0")
Active Bookings Value R @GetActiveBookingsValue().ToString("N0")
Unused e-Ticket Credits R @GetUnusedTicketsValue().ToString("N0")
Approval Backlog @tripRequests.Count(t => t.Status == "Pending") Awaiting
@* Search Card *@
@* Tabs *@
@* Form Row *@
@if (activeTab == "flights") {
} else if (activeTab == "hotels") {
} else {
}
@* Simulated GDS Node Loader / Spinner *@ @if (IsSearching) {
Interrogating GDS Telemetry Nodes...

Fetching pre-negotiated corporate rates from Amadeus, Sabre and Travelport databases

} else { @* Grid 3: Results *@
@foreach (var result in GetActiveSearchResults()) {

@result.Title

@result.Subtitle

@result.BadgeText
R @result.Price.ToString("N0")
@result.HighlightText
}
} @* Grid 2: Delivery & Unused e-Tickets *@

Unused e-Tickets

Tracked & refund-eligible corporate flight stock

@unusedTickets.Count(t => !t.IsRefunded && !t.IsReused) open
@foreach (var ticket in unusedTickets) {
@ticket.TicketDetails for @ticket.Passenger @if (ticket.IsRefunded) { Refunded } else if (ticket.IsReused) { Reused }
Expires @ticket.ExpiryDate · Face Value: R @ticket.Price.ToString("N0")
@if (!ticket.IsRefunded && !ticket.IsReused) { }
}
Refunds are directly re-credited to SAQA's master Lodge Card balance instantly upon approval.

Delivery & Notifications

E-tickets, SMS alerts & hotel vouchers

Active Feed
@foreach (var log in deliveryLogs) {
@if (log.Icon == "sms") { } else if (log.Icon == "email") { } else { }

@log.Title

@log.Content

@log.Timestamp
}
@* Grid 2: Approval & Cancellations *@
@* Approvals Table *@

Travel Approval Queue

Manager sign-off required before GDS auto-ticketing

@tripRequests.Count(t => t.Status == "Pending") awaiting
@foreach (var trip in tripRequests) { }
Traveller Trip Cost Approver Action
@trip.Initials
@trip.Name @trip.Role
@trip.TripDetails @trip.Cost @trip.ApproverRole @if (trip.Status == "Pending") { } else if (trip.Status == "Approved") { Approved } else { Declined }
@* Manage Bookings *@

Active Corporate Bookings

Amend, cancel & track refunds

Live Feed
@foreach (var booking in GetFilteredBookings()) {
@booking.Title @if (booking.IsCancelled) { Cancelled }
@booking.Subtitle · R @booking.Price.ToString("N0")
@if (booking.IsCancelled) { Refund Queued } else { }
}

Automated voucher

Vouchers are auto-sent to hotel, traveller and back-office instantly on finalization.

@* ===================== MODAL DIALOGS ===================== *@ @* 1. Booking Confirmation Modal *@ @if (showBookingModal && selectedSearchResult != null) {
GDS Transaction Gateway

Confirm GDS Lodge Booking

Selected Offering
@selectedSearchResult.Title
@selectedSearchResult.Subtitle
Cost Center Rate: R @selectedSearchResult.Price.ToString("N0")
Corporate Policy Verification

This travel option fits comfortably within SAQA National Treasury Instruction 03 guidelines and budget thresholds. Lodge card is pre-authorized.

} @* 2. Refund Confirmation Modal *@ @if (showRefundModal && selectedTicket != null) {

Confirm e-Ticket Refund

Are you sure you want to request an immediate GDS automated refund for this unused e-ticket?

@selectedTicket.TicketDetails
Traveller: @selectedTicket.Passenger · Expiry: @selectedTicket.ExpiryDate
Refund Amount: R @selectedTicket.Price.ToString("N0")

Note: Airline administrative fees of R150 will be auto-settled via GDS system. The net refund will reflect on the lodge card instantly.

} @* 3. Reuse Credit Confirmation Modal *@ @if (showReuseModal && selectedTicket != null) {

Reassign Unused ticket credit

You are reassigning R @selectedTicket.Price.ToString("N0") of unused ticket credit from @selectedTicket.Passenger.

This credit will be applied directly to the booking fee, reducing the new trip's cash settlement requirement. No extra cash outflows.
} @* 4. Modify Active Booking Modal *@ @if (showModifyModal && selectedBooking != null) {

Amend Corporate Booking

@selectedBooking.Title
Current: @selectedBooking.Subtitle

Note: Modifications are verified against the original GDS fare category rules. No-fee changes are guaranteed for executive tiers.

} @* 5. Cancel Booking Confirmation Modal *@ @if (showCancelConfirmModal && selectedBooking != null) {

Cancel GDS Booking

Are you sure you want to cancel this booking and trigger the refund sequence?

@selectedBooking.Title
@selectedBooking.Subtitle
Value: R @selectedBooking.Price.ToString("N0")
} @* 6. Custom New Trip Booking Modal *@ @if (showNewTripModal) {

Create Manual Corporate Booking

} @* 7. Travel Approval Queue Detail Modal *@ @if (showApprovalModal && selectedApproval != null) {

Review Travel Authorization

@selectedApproval.Initials
@selectedApproval.Name
@selectedApproval.Role · @selectedApproval.ApproverRole Check
Trip Route: @selectedApproval.TripDetails
Cost Quote: @selectedApproval.Cost
Policy Match: ✓ National Treasury compliant
} @code { // --- Tabs State --- private string activeTab = "flights"; private void SetTab(string tab) { activeTab = tab; // Automatically ping GDS when tab changes for liveness IsSearching = true; _ = Task.Delay(400).ContinueWith(_ => { IsSearching = false; InvokeAsync(StateHasChanged); }); } // --- Master Card & Financials State --- private decimal LodgeCardBalance { get; set; } = 312440M; // --- Telemetry Alerts / Success logs --- private string AlertFeedback { get; set; } = string.Empty; // --- My Bookings view filter --- private bool ShowMyBookingsOnly { get; set; } = false; private void ToggleMyBookingsFilter() { ShowMyBookingsOnly = !ShowMyBookingsOnly; if (ShowMyBookingsOnly) { AlertFeedback = "Filtered queue for your corporate profile."; } else { AlertFeedback = "Displaying all corporate passenger GDS itineraries."; } } // --- Form Bindings --- private string FlightFrom { get; set; } = "Johannesburg (JNB)"; private string FlightTo { get; set; } = "Cape Town (CPT)"; private DateTime FlightDate { get; set; } = new DateTime(2026, 6, 2); private string FlightCabin { get; set; } = "Economy (Policy)"; private string HotelLocation { get; set; } = "Sandton, Johannesburg"; private DateTime HotelCheckIn { get; set; } = new DateTime(2026, 6, 2); private DateTime HotelCheckOut { get; set; } = new DateTime(2026, 6, 5); private string HotelGuests { get; set; } = "1 Guest"; private string CarLocation { get; set; } = "O.R. Tambo International Airport (JNB)"; private DateTime CarPickUp { get; set; } = new DateTime(2026, 6, 2); private DateTime CarReturn { get; set; } = new DateTime(2026, 6, 5); private string CarClass { get; set; } = "Compact / Hatchback"; private bool IsSearching { get; set; } = false; // --- Search Logic --- private void TriggerSearch() { IsSearching = true; // Mimic instant GDS query _ = Task.Delay(800).ContinueWith(_ => { IsSearching = false; AlertFeedback = $"Refreshed corporate GDS query for your choice of {activeTab.ToUpper()} with 3 preferred supplier nodes."; InvokeAsync(StateHasChanged); }); } // --- Models --- public class SearchResultItem { public string Id { get; set; } = string.Empty; public string Title { get; set; } = string.Empty; public string Subtitle { get; set; } = string.Empty; public decimal Price { get; set; } public string BadgeText { get; set; } = string.Empty; public string BadgeClass { get; set; } = string.Empty; public string HighlightText { get; set; } = string.Empty; public string TabType { get; set; } = string.Empty; // "flights", "hotels", "cars" } public class TripRequest { public string Id { get; set; } = Guid.NewGuid().ToString(); public string Initials { get; set; } = ""; public string Name { get; set; } = ""; public string Role { get; set; } = ""; public string TripDetails { get; set; } = ""; public string Cost { get; set; } = ""; public string ApproverRole { get; set; } = ""; public string Status { get; set; } = "Pending"; } public class BookingItem { public string Id { get; set; } = Guid.NewGuid().ToString(); public string Title { get; set; } = ""; public string Subtitle { get; set; } = ""; public decimal Price { get; set; } public string Passenger { get; set; } = ""; public bool IsCancelled { get; set; } } public class UnusedTicketItem { public string Id { get; set; } = Guid.NewGuid().ToString(); public string TicketDetails { get; set; } = ""; public string ExpiryDate { get; set; } = ""; public string Passenger { get; set; } = ""; public decimal Price { get; set; } public bool IsRefunded { get; set; } public bool IsReused { get; set; } } public class DeliveryNotification { public string Title { get; set; } = ""; public string Content { get; set; } = ""; public string Icon { get; set; } = ""; // "sms", "email", "warning" public string TypeClass { get; set; } = ""; public string BgClass { get; set; } = ""; public string Timestamp { get; set; } = ""; } // --- Database Collections --- private List allSearchResults = new() { // Flights new() { Id = "F1", Title = "SAA Flight SA 311", Subtitle = "JNB 06:00 → CPT 08:10", Price = 2890M, BadgeText = "Best Value", BadgeClass = "bg-[#e3f6ed] text-[#22a06b]", HighlightText = "Negotiated fare · -12%", TabType = "flights" }, new() { Id = "F2", Title = "FlySafair Flight FA 121", Subtitle = "JNB 07:15 → CPT 09:20", Price = 1985M, BadgeText = "LCC", BadgeClass = "bg-[#e2eefb] text-[#0066b3]", HighlightText = "No checked bag · +R200 ext", TabType = "flights" }, new() { Id = "F3", Title = "British Airways Flight BA 6433", Subtitle = "JNB 08:00 → CPT 10:05", Price = 3410M, BadgeText = "Full Service", BadgeClass = "bg-[#e8f4f4] text-[#00a3a1]", HighlightText = "23kg bag · lounge access", TabType = "flights" }, // Hotels new() { Id = "H1", Title = "Premier Hotel OR Tambo", Subtitle = "Executive Room · Sandton District", Price = 1850M, BadgeText = "Preferred", BadgeClass = "bg-[#e3f6ed] text-[#22a06b]", HighlightText = "Corporate discount · -15%", TabType = "hotels" }, new() { Id = "H2", Title = "The Westin Cape Town", Subtitle = "Deluxe Suite · Convention Centre", Price = 3950M, BadgeText = "Exec Choice", BadgeClass = "bg-[#e2eefb] text-[#0066b3]", HighlightText = "Spa and lounge access included", TabType = "hotels" }, new() { Id = "H3", Title = "Southern Sun Waterfront", Subtitle = "Standard Executive Double · CBD", Price = 2410M, BadgeText = "Standard", BadgeClass = "bg-[#e8f4f4] text-[#00a3a1]", HighlightText = "Free Wi-Fi · Buffet Breakfast", TabType = "hotels" }, // Cars new() { Id = "C1", Title = "Avis Car Rental - VW Polo", Subtitle = "Manual hatchback · Airport Terminal", Price = 450M, BadgeText = "Best Value", BadgeClass = "bg-[#e3f6ed] text-[#22a06b]", HighlightText = "Unlimited mileage · Air-Con", TabType = "cars" }, new() { Id = "C2", Title = "Hertz - Toyota RAV4", Subtitle = "Automatic Midsize SUV · City Depot", Price = 950M, BadgeText = "SUV Tier", BadgeClass = "bg-[#e2eefb] text-[#0066b3]", HighlightText = "Premium Collision Cover", TabType = "cars" }, new() { Id = "C3", Title = "Europcar - VW Caravelle", Subtitle = "8-Seater Executive Passenger Van", Price = 1890M, BadgeText = "Shuttle Class", BadgeClass = "bg-[#e8f4f4] text-[#00a3a1]", HighlightText = "Corporate driver package", TabType = "cars" } }; private List GetActiveSearchResults() { return allSearchResults.Where(r => r.TabType == activeTab).ToList(); } private List tripRequests = new() { new() { Initials = "JM", Name = "J. Mokoena", Role = "Executive", TripDetails = "JNB to CPT, 02 Jun", Cost = "R 3,240", ApproverRole = "CFO", Status = "Pending" }, new() { Initials = "SP", Name = "S. Pillay", Role = "Coordinator", TripDetails = "Avis car, 3 days", Cost = "R 1,420", ApproverRole = "Line Manager", Status = "Pending" }, new() { Initials = "TM", Name = "T. Maluleke", Role = "Director", TripDetails = "JNB to LHR, 14 Jun", Cost = "R 18,940", ApproverRole = "CEO", Status = "Pending" } }; private List activeBookings = new() { new() { Title = "SA 311, J. Mokoena", Subtitle = "Confirmed, 02 Jun, ref AB23PQ", Price = 2890M, Passenger = "J. Mokoena", IsCancelled = false }, new() { Title = "Premier Hotel, N. Ndlovu", Subtitle = "Confirmed, 03 to 05 Jun, ref HT7732", Price = 3700M, Passenger = "N. Ndlovu", IsCancelled = false }, new() { Title = "Avis car, S. Pillay", Subtitle = "Pending approval, 04 to 06 Jun", Price = 1350M, Passenger = "S. Pillay", IsCancelled = false } }; private List GetFilteredBookings() { if (ShowMyBookingsOnly) { return activeBookings.Where(b => b.Passenger == "T. Maluleke").ToList(); } return activeBookings; } private List unusedTickets = new() { new() { TicketDetails = "SA 311", Passenger = "J. Mokoena", Price = 2890M, ExpiryDate = "21 Jul 2026", IsRefunded = false, IsReused = false }, new() { TicketDetails = "BA 6433", Passenger = "T. Maluleke", Price = 3410M, ExpiryDate = "05 Sep 2026", IsRefunded = false, IsReused = false }, new() { TicketDetails = "FA 121", Passenger = "N. Ndlovu", Price = 1985M, ExpiryDate = "18 Aug 2026", IsRefunded = false, IsReused = false } }; private List deliveryLogs = new() { new() { Title = "SMS delivered", Content = "e-Ticket sent to J. Mokoena · +27 82 ●●● 4421", Icon = "sms", TypeClass = "border-[#22a06b] text-[#22a06b]", BgClass = "bg-[#effaf3]", Timestamp = "09:14 UTC" }, new() { Title = "Email voucher sent", Content = "Premier Hotel OR Tambo voucher to n.ndlovu@@saqa.org.za", Icon = "email", TypeClass = "border-[#0066b3] text-[#0066b3]", BgClass = "bg-[#f3f8fd]", Timestamp = "08:55 UTC" }, new() { Title = "Baggage policy alert", Content = "BA reduced free baggage allowance to 1×23kg on JNB-LHR route", Icon = "warning", TypeClass = "border-[#f4a300] text-[#f4a300]", BgClass = "bg-[#fff9ec]", Timestamp = "07:30 UTC" } }; // --- Math Helpers --- private decimal GetActiveBookingsValue() { return activeBookings.Where(b => !b.IsCancelled).Sum(b => b.Price); } private decimal GetUnusedTicketsValue() { return unusedTickets.Where(t => !t.IsRefunded && !t.IsReused).Sum(t => t.Price); } // --- Interactive Action Handlers --- // Modal Control properties private bool showBookingModal = false; private bool showRefundModal = false; private bool showReuseModal = false; private bool showModifyModal = false; private bool showCancelConfirmModal = false; private bool showNewTripModal = false; private bool showApprovalModal = false; private SearchResultItem? selectedSearchResult; private UnusedTicketItem? selectedTicket; private BookingItem? selectedBooking; private TripRequest? selectedApproval; // Field bindings for modals private string selectedTraveller = "J. Mokoena"; private string selectedCostCentre = "Executive Administration"; private string bookingSpecialNotes = string.Empty; private string reusedTargetPassenger = "T. Maluleke"; private string reusedTargetRoute = "JNB to CPT (02 Jun)"; private string modifyNewDetails = string.Empty; private string cancellationReason = "Meeting rescheduled by external stakeholders"; private string customCategory = "Flight"; private string customTitle = string.Empty; private string customSubtitle = string.Empty; private decimal customPrice = 2500M; private string approvalComments = string.Empty; // Trigger Refund Workflow private void OpenRefundModal(UnusedTicketItem ticket) { selectedTicket = ticket; showRefundModal = true; } private void ConfirmRefund() { if (selectedTicket != null) { selectedTicket.IsRefunded = true; LodgeCardBalance += selectedTicket.Price; // Log action deliveryLogs.Insert(0, new DeliveryNotification { Title = $"Refund Approved: {selectedTicket.TicketDetails}", Content = $"Refund of R {selectedTicket.Price.ToString("N0")} credited back to Lodge Card for passenger {selectedTicket.Passenger}", Icon = "email", TypeClass = "border-[#22a06b] text-[#22a06b]", BgClass = "bg-[#effaf3]", Timestamp = "Just Now" }); AlertFeedback = $"Refund sequence completed for {selectedTicket.TicketDetails}. R {selectedTicket.Price.ToString("N0")} returned to Lodge balance."; showRefundModal = false; } } // Trigger Reuse Workflow private void OpenReuseModal(UnusedTicketItem ticket) { selectedTicket = ticket; reusedTargetPassenger = ticket.Passenger; showReuseModal = true; } private void ConfirmReuse() { if (selectedTicket != null) { selectedTicket.IsReused = true; // Add custom booking representing reused ticket var newBooking = new BookingItem { Title = $"{selectedTicket.TicketDetails} Reused - {reusedTargetPassenger}", Subtitle = $"Ticket Credit Applied for {reusedTargetRoute}", Price = 0, // No extra cash spent Passenger = reusedTargetPassenger, IsCancelled = false }; activeBookings.Add(newBooking); // Log action deliveryLogs.Insert(0, new DeliveryNotification { Title = $"Credit Applied: {selectedTicket.TicketDetails}", Content = $"Transferred unused ticket worth R {selectedTicket.Price.ToString("N0")} to passenger {reusedTargetPassenger}", Icon = "sms", TypeClass = "border-[#0066b3] text-[#0066b3]", BgClass = "bg-[#f3f8fd]", Timestamp = "Just Now" }); AlertFeedback = $"Successfully reassigned ticket {selectedTicket.TicketDetails} to passenger {reusedTargetPassenger}!"; showReuseModal = false; } } // Trigger Booking Search Result Workflow private void OpenBookingModal(SearchResultItem result) { selectedSearchResult = result; bookingSpecialNotes = string.Empty; showBookingModal = true; } private void ConfirmBooking() { if (selectedSearchResult != null) { LodgeCardBalance -= selectedSearchResult.Price; // Create booking var newBooking = new BookingItem { Title = $"{selectedSearchResult.Title}, {selectedTraveller}", Subtitle = $"Confirmed, {DateTime.Now.AddDays(7):dd MMM 2026}, ref {GenerateRandomRef()}", Price = selectedSearchResult.Price, Passenger = selectedTraveller, IsCancelled = false }; activeBookings.Add(newBooking); // Add SMS delivery notification deliveryLogs.Insert(0, new DeliveryNotification { Title = "e-Ticket Delivered", Content = $"GDS ticket sent to {selectedTraveller} for {selectedSearchResult.Title}. Reference code attached.", Icon = "sms", TypeClass = "border-[#22a06b] text-[#22a06b]", BgClass = "bg-[#effaf3]", Timestamp = "Just Now" }); AlertFeedback = $"Successfully issued GDS ticket for {selectedTraveller}. Lodged R {selectedSearchResult.Price.ToString("N0")} to {selectedCostCentre} cost center."; showBookingModal = false; } } // Modify Booking private void OpenModifyModal(BookingItem booking) { selectedBooking = booking; modifyNewDetails = booking.Subtitle; showModifyModal = true; } private void ConfirmModify() { if (selectedBooking != null) { selectedBooking.Subtitle = modifyNewDetails; // Log action deliveryLogs.Insert(0, new DeliveryNotification { Title = "Itinerary Amended", Content = $"Changed booking parameters for {selectedBooking.Title} to '{modifyNewDetails}' via Amadeus GDS Node.", Icon = "warning", TypeClass = "border-[#f4a300] text-[#f4a300]", BgClass = "bg-[#fff9ec]", Timestamp = "Just Now" }); AlertFeedback = $"Successfully updated itinerary details for booking."; showModifyModal = false; } } // Cancel Booking private void OpenCancelConfirmModal(BookingItem booking) { selectedBooking = booking; cancellationReason = "Meeting rescheduled by external stakeholders"; showCancelConfirmModal = true; } private void ConfirmCancel() { if (selectedBooking != null) { selectedBooking.IsCancelled = true; LodgeCardBalance += selectedBooking.Price; // credit back // Log action deliveryLogs.Insert(0, new DeliveryNotification { Title = "Booking Cancelled", Content = $"Cancelled {selectedBooking.Title}. Reason: {cancellationReason}. Net refund of R {selectedBooking.Price.ToString("N0")} queued.", Icon = "warning", TypeClass = "border-red-500 text-red-600", BgClass = "bg-red-50", Timestamp = "Just Now" }); AlertFeedback = $"Booking for {selectedBooking.Title} has been cancelled successfully. Refund dispatched."; showCancelConfirmModal = false; } } // Custom Trip Creator private void OpenNewTripModal() { customTitle = string.Empty; customSubtitle = string.Empty; customPrice = 2500; showNewTripModal = true; } private void ConfirmNewTrip() { if (string.IsNullOrEmpty(customTitle)) { AlertFeedback = "Error: Booking title cannot be empty."; return; } LodgeCardBalance -= customPrice; var newBooking = new BookingItem { Title = customTitle, Subtitle = string.IsNullOrEmpty(customSubtitle) ? $"Confirmed on {DateTime.Now:dd MMM 2026}" : customSubtitle, Price = customPrice, Passenger = "T. Maluleke", IsCancelled = false }; activeBookings.Insert(0, newBooking); deliveryLogs.Insert(0, new DeliveryNotification { Title = $"{customCategory} Booked", Content = $"Manually logged {customTitle} at cost of R {customPrice:N0}. System updated.", Icon = "email", TypeClass = "border-[#0066b3] text-[#0066b3]", BgClass = "bg-[#f3f8fd]", Timestamp = "Just Now" }); AlertFeedback = $"Manual {customCategory} booking logged and charged R {customPrice:N0} to Lodge Card."; showNewTripModal = false; } // Review Approvals private void OpenApprovalModal(TripRequest trip) { selectedApproval = trip; approvalComments = string.Empty; showApprovalModal = true; } private void ActionTripRequest(TripRequest trip, string newStatus) { trip.Status = newStatus; if (newStatus == "Approved") { // deduct balance & issue e-Ticket decimal price = decimal.Parse(trip.Cost.Replace("R", "").Replace(",", "").Trim()); LodgeCardBalance -= price; var newBooking = new BookingItem { Title = $"{trip.TripDetails}, {trip.Name}", Subtitle = $"Manager Approved · Ref {GenerateRandomRef()}", Price = price, Passenger = trip.Name, IsCancelled = false }; activeBookings.Insert(0, newBooking); deliveryLogs.Insert(0, new DeliveryNotification { Title = "Approval Confirmed", Content = $"e-Ticket successfully authorized by CFO for {trip.Name} - {trip.TripDetails}", Icon = "sms", TypeClass = "border-[#22a06b] text-[#22a06b]", BgClass = "bg-[#effaf3]", Timestamp = "Just Now" }); AlertFeedback = $"Trip approved for {trip.Name}! Ticket issued under corporate quota."; } else { deliveryLogs.Insert(0, new DeliveryNotification { Title = "Trip Request Declined", Content = $"Authorization declined for {trip.Name} - {trip.TripDetails}. Comments: '{approvalComments}'", Icon = "warning", TypeClass = "border-red-500 text-red-600", BgClass = "bg-red-50", Timestamp = "Just Now" }); AlertFeedback = $"Trip authorization request declined for {trip.Name}."; } showApprovalModal = false; } // Telemetry ping private void TriggerDeliveryTest() { deliveryLogs.Insert(0, new DeliveryNotification { Title = "GDS Terminal Pinged", Content = "Node connectivity test completed successfully. Amadeus: 14ms · Sabre: 18ms · Travelport: 11ms", Icon = "sms", TypeClass = "border-[#0066b3] text-[#0066b3]", BgClass = "bg-[#f3f8fd]", Timestamp = "Just Now" }); AlertFeedback = "Direct node ping successful. 3/3 active global distribution systems reporting online."; } // Helper private string GenerateRandomRef() { var chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"; var random = new Random(); return new string(Enumerable.Repeat(chars, 6).Select(s => s[random.Next(s.Length)]).ToArray()); } }