diff options
| author | Ariel Costas Guerrero <ariel@costas.dev> | 2025-11-06 18:01:14 +0100 |
|---|---|---|
| committer | Ariel Costas Guerrero <ariel@costas.dev> | 2025-11-06 18:01:14 +0100 |
| commit | 66758ffaa4238191010ccc3dde7e5cdc6445f315 (patch) | |
| tree | 639e37ea14fdb8990451b904eb7c0b2ad2542e9d /src/Costasdev.Busurbano.Backend/Types | |
| parent | 785bc4569fc87aa289766847c862dd8148c5de0b (diff) | |
Seemingly fix algorithm (thanks copilot)
Diffstat (limited to 'src/Costasdev.Busurbano.Backend/Types')
| -rw-r--r-- | src/Costasdev.Busurbano.Backend/Types/ConsolidatedCirculation.cs | 32 | ||||
| -rw-r--r-- | src/Costasdev.Busurbano.Backend/Types/VigoSchedules.cs | 9 |
2 files changed, 40 insertions, 1 deletions
diff --git a/src/Costasdev.Busurbano.Backend/Types/ConsolidatedCirculation.cs b/src/Costasdev.Busurbano.Backend/Types/ConsolidatedCirculation.cs new file mode 100644 index 0000000..d65da61 --- /dev/null +++ b/src/Costasdev.Busurbano.Backend/Types/ConsolidatedCirculation.cs @@ -0,0 +1,32 @@ +namespace Costasdev.Busurbano.Backend.Types; + +public class ConsolidatedCirculation +{ + public required string Line { get; set; } + public required string Route { get; set; } + + public ScheduleData? Schedule { get; set; } + public RealTimeData? RealTime { get; set; } +} + +public class RealTimeData +{ + public required int Minutes { get; set; } + public required int Distance { get; set; } + public required RealTimeConfidence Confidence { get; set; } +} + +public class ScheduleData +{ + public bool Running { get; set; } + public required int Minutes { get; set; } + public required string ServiceId { get; set; } + public required string TripId { get; set; } +} + +public enum RealTimeConfidence +{ + NotApplicable = 0, + Low = 1, + High = 2 +} diff --git a/src/Costasdev.Busurbano.Backend/Types/VigoSchedules.cs b/src/Costasdev.Busurbano.Backend/Types/VigoSchedules.cs index f8e5634..25fc34f 100644 --- a/src/Costasdev.Busurbano.Backend/Types/VigoSchedules.cs +++ b/src/Costasdev.Busurbano.Backend/Types/VigoSchedules.cs @@ -14,9 +14,17 @@ public class ScheduledStop public required double ShapeDistTraveled { get; set; } [JsonPropertyName("next_streets")] public required string[] NextStreets { get; set; } + [JsonPropertyName("starting_code")] public required string StartingCode { get; set; } [JsonPropertyName("starting_name")] public required string StartingName { get; set; } [JsonPropertyName("starting_time")] public required string StartingTime { get; set; } + public DateTime StartingDateTime() + { + var dt = DateTime.Today + TimeOnly.Parse(StartingTime).ToTimeSpan(); + return dt.AddSeconds(60 - dt.Second); + } + + [JsonPropertyName("calling_ssm")] public required int CallingSsm { get; set; } [JsonPropertyName("calling_time")] public required string CallingTime { get; set; } public DateTime CallingDateTime() { @@ -24,7 +32,6 @@ public class ScheduledStop return dt.AddSeconds(60 - dt.Second); } - [JsonPropertyName("calling_ssm")] public required int CallingSsm { get; set; } [JsonPropertyName("terminus_code")] public required string TerminusCode { get; set; } [JsonPropertyName("terminus_name")] public required string TerminusName { get; set; } [JsonPropertyName("terminus_time")] public required string TerminusTime { get; set; } |
