diff options
Diffstat (limited to 'src/Enmarcha.Backend/Services/LineFormatterService.cs')
| -rw-r--r-- | src/Enmarcha.Backend/Services/LineFormatterService.cs | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/src/Enmarcha.Backend/Services/LineFormatterService.cs b/src/Enmarcha.Backend/Services/LineFormatterService.cs new file mode 100644 index 0000000..d3b6109 --- /dev/null +++ b/src/Enmarcha.Backend/Services/LineFormatterService.cs @@ -0,0 +1,53 @@ +using Enmarcha.Backend.Types; + +namespace Enmarcha.Backend.Services; + +public class LineFormatterService +{ + public ConsolidatedCirculation Format(ConsolidatedCirculation circulation) + { + circulation.Route = circulation.Route.Replace("*", ""); + + if (circulation.Route == "FORA DE SERVIZO.G.B.") + { + circulation.Route = "García Barbón, 7 (fora de servizo)"; + return circulation; + } + + switch (circulation.Line) + { + case "A" when circulation.Route.StartsWith("\"1\""): + circulation.Line = "A1"; + circulation.Route = circulation.Route.Replace("\"1\"", ""); + return circulation; + case "6": + circulation.Route = circulation.Route + .Replace("\"", ""); + return circulation; + case "FUT": + { + if (circulation.Route == "CASTELAO-CAMELIAS-G.BARBÓN.M.GARRIDO") + { + circulation.Line = "MAR"; + circulation.Route = "MARCADOR ⚽: CASTELAO-CAMELIAS-G.BARBÓN.M.GARRIDO"; + } + + if (circulation.Route == "P. ESPAÑA-T.VIGO-S.BADÍA") + { + circulation.Line = "RIO"; + circulation.Route = "RÍO ⚽: P. ESPAÑA-T.VIGO-S.BADÍA"; + } + + if (circulation.Route == "NAVIA-BOUZAS-URZAIZ-G. ESPINO") + { + circulation.Line = "GOL"; + circulation.Route = "GOL ⚽: NAVIA-BOUZAS-URZAIZ-G. ESPINO"; + } + + return circulation; + } + default: + return circulation; + } + } +} |
