@page "/gds-sync"
@using System.Collections.Generic
@using System.Linq
@using System.Threading.Tasks
@rendermode InteractiveServer
@* Page Header Area *@
GDS Sync Console
Real-time Amadeus, Travelport, and Sabre telemetry synchronization gateway and GDS negotiated rates validator
@* Alert / Feedback Notification Banner *@
@if (!string.IsNullOrEmpty(AlertFeedback))
{
}
@* GDS Status Core KPI Cards *@
Amadeus Node
Last sync @AmadeusLastSyncs ago
Travelport Node
Last sync @TravelportLastSyncs ago
Sabre Node
Last sync @SabreLastSyncs ago
In-Flight PNR Queue
@PnrQueueCount
Pending ticket printing checks
@* Spend vs Savings Visual Indicators & GDS Providers Metrics split *@
@* Spend vs Savings Metrics Panel - Left Column (lg:col-span-7) *@
Spend vs. Savings Telemetry
Negotiated corporate GDS fares against open published consumer tickets for May 2026
+18.2% YTD Savings
Below metrics reflect the total savings realized directly from GDS nodes through TMT projects pre-negotiated corporate rates.
Open Published Cost
R 2,662,890
Consumer benchmark rates
Negotiated Corporate Cost
R 2,250,310
SAQA contracted limits
Direct Savings Realized
R @TotalSavingsThisMonth.ToString("N0")
May 2026 reporting index
@* Visual Simulated Bar stack *@
May Spend Budget Saved Rate
15.5% Saved
Negotiated (R 2,250,310)
Savings Realized (R @TotalSavingsThisMonth.ToString("N0"))
Database verified by ASATA / IATA standards
Sync is operational
@* Savings by GDS Provider progress list - Right Column (lg:col-span-5) *@
Savings by GDS Provider Node
Contribution percentages realized across Amadeus, Travelport, and Sabre connection pools
@* Provider 1 *@
Amadeus Node
Domestic & regional flights / local lodging
R @AmadeusSavings.ToString("N0")
52.9% of total
@* Provider 2 *@
Travelport Node
International airlines / premium class cabins
R @TravelportSavings.ToString("N0")
30.1% of total
@* Provider 3 *@
Sabre Node
Hotel aggregates & car rental structures
R @SabreSavings.ToString("N0")
17.0% of total
@* Highlighted Box *@
Total GDS Savings Verified
R @TotalSavingsThisMonth.ToString("N0")
Savings are calculated on GDS booking confirmation vs standard unrestricted booking baseline. Verified by continuous live audit checks.
@* Live Supplier Feed Table & Sync Activity grid *@
@* GDS Supplier Fares Feed - Left Column (lg:col-span-8) *@
Live Supplier Feed via GDS
Contracted tariffs fetched directly from active connection handshakes
@* Search Filter *@
GDS Provider:
| Supplier |
GDS Node |
Type |
Open Rate |
Negotiated |
ZAR Saved |
Status |
@foreach (var feed in FilteredSupplierFeed)
{
| @feed.SupplierName |
@feed.GdsNode
|
@feed.CategoryType |
R @feed.OpenPrice.ToString("N0") |
R @feed.NegotiatedPrice.ToString("N0") |
R @feed.SavedValue.ToString("N0") (@feed.SavedPercentage%)
|
@feed.Status
|
}
* Rates are updated dynamically every 30 seconds. Supplier cache lifetimes are managed according to commercial service agreements.
@* Sync Activity & Health status indicators - Right Column (lg:col-span-4) *@
Node Traffic Analysis
Aggregated telemetry actions logged over last 24 hours
PNRs Generated
Across all connection tunnels
142
Fares & Tariff Queries
Read operations processed
8,420
Confirmed Air & Hotel Bookings
Ticketed in line with SAQA policies
118
Auto Refund / Voucher Queues
Cancellations processed smoothly
9
GDS Connection Failure Rate
Auto-retry failover threshold
0.04% (Exceptional)
Telemetry Node Health
Direct response times & availability metrics
@* Bar 1 *@
Amadeus API latency
88ms (Avg)
@* Bar 2 *@
Travelport API latency
82ms (Avg)
@* Bar 3 *@
Sabre API latency
124ms (Avg)
GDS Node Uptime: 99.98%
Automatic node failover setup ensures queries bypass any downtime immediately by fetching rates from auxiliary tunnels.
@* ===================== MODAL DIALOGS ===================== *@
@* 1. GDS Sync Logs Modal *@
@if (ShowSyncLogsModal)
{