From c9693390c3bd487cc936955ac3177a382f864ea3 Mon Sep 17 00:00:00 2001 From: Dan Cojocaru Date: Tue, 31 Aug 2021 16:30:58 +0300 Subject: [PATCH] Changed model to refrect actual content (DateTime, not String) --- lib/models/train_data.dart | 6 +++--- .../train_info_page/view_train/train_info_cupertino.dart | 8 ++++---- .../train_info_cupertino_DisplayTrainStation.dart | 4 ++-- .../train_info_page/view_train/train_info_material.dart | 4 ++-- .../train_info_material_DisplayTrainStation.dart | 4 ++-- 5 files changed, 13 insertions(+), 13 deletions(-) diff --git a/lib/models/train_data.dart b/lib/models/train_data.dart index 7469334..63cec2c 100644 --- a/lib/models/train_data.dart +++ b/lib/models/train_data.dart @@ -120,17 +120,17 @@ class StationArrDepTime { this.status, }); - final String scheduleTime; + final DateTime scheduleTime; final StationArrDepTimeStatus? status; factory StationArrDepTime.fromJson(Map json) => StationArrDepTime( - scheduleTime: json["scheduleTime"], + scheduleTime: DateTime.parse(json["scheduleTime"] as String), status: json["status"] == null ? null : StationArrDepTimeStatus.fromJson(json["status"]), ); Map toJson() => { - "scheduleTime": scheduleTime, + "scheduleTime": scheduleTime.toIso8601String(), "status": status?.toJson(), }; } diff --git a/lib/pages/train_info_page/view_train/train_info_cupertino.dart b/lib/pages/train_info_page/view_train/train_info_cupertino.dart index fcdb379..10e65ec 100644 --- a/lib/pages/train_info_page/view_train/train_info_cupertino.dart +++ b/lib/pages/train_info_page/view_train/train_info_cupertino.dart @@ -714,7 +714,7 @@ class DisplayTrainDestination extends StatelessWidget { Builder( builder: (context) { final arrival = - DateTime.parse(trainData.stations.last.arrival!.scheduleTime).toLocal(); + trainData.stations.last.arrival!.scheduleTime.toLocal(); final delay = trainData.stations.last.arrival!.status?.delay ?? 0; // final parts = arrival.split(':'); // final arrivalDT = DateTime(DateTime.now().year, DateTime.now().month, DateTime.now().day, int.parse(parts[0]), int.parse(parts[1])); @@ -827,9 +827,9 @@ class DisplayTrainRouteDuration extends StatelessWidget { Builder( builder: (context) { var duration = - DateTime.parse(trainData.stations.last.arrival!.scheduleTime) - .difference(DateTime.parse( - trainData.stations.first.departure!.scheduleTime)); + trainData.stations.last.arrival!.scheduleTime + .difference( + trainData.stations.first.departure!.scheduleTime); var durationString = StringBuffer(); bool firstWritten = false; diff --git a/lib/pages/train_info_page/view_train/train_info_cupertino_DisplayTrainStation.dart b/lib/pages/train_info_page/view_train/train_info_cupertino_DisplayTrainStation.dart index e060fec..02d5695 100644 --- a/lib/pages/train_info_page/view_train/train_info_cupertino_DisplayTrainStation.dart +++ b/lib/pages/train_info_page/view_train/train_info_cupertino_DisplayTrainStation.dart @@ -254,7 +254,7 @@ class ArrivalTime extends StatelessWidget { } else { final delay = station.arrival!.status?.delay ?? 0; - final time = DateTime.parse(station.arrival!.scheduleTime).toLocal(); + final time = station.arrival!.scheduleTime.toLocal(); if (delay == 0) { return Text("${time.hour.toString().padLeft(2, "0")}:${time.minute.toString().padLeft(2, "0")}"); @@ -387,7 +387,7 @@ class DepartureTime extends StatelessWidget { } else { final delay = station.departure!.status?.delay ?? 0; - final time = DateTime.parse(station.departure!.scheduleTime).toLocal(); + final time = station.departure!.scheduleTime.toLocal(); if (delay == 0) { return Text("${time.hour.toString().padLeft(2, "0")}:${time.minute.toString().padLeft(2, "0")}"); diff --git a/lib/pages/train_info_page/view_train/train_info_material.dart b/lib/pages/train_info_page/view_train/train_info_material.dart index c290a91..3fecc63 100644 --- a/lib/pages/train_info_page/view_train/train_info_material.dart +++ b/lib/pages/train_info_page/view_train/train_info_material.dart @@ -506,7 +506,7 @@ class DisplayTrainDestination extends StatelessWidget { ), Builder( builder: (context) { - final arrival = DateTime.parse(destination.arrival!.scheduleTime).toLocal(); + final arrival = destination.arrival!.scheduleTime.toLocal(); final delay = trainData.stations.last.arrival!.status?.delay ?? 0; final arrivalWithDelay = arrival.add(Duration(minutes: delay)); final arrivalWithDelayString = '${arrivalWithDelay.hour}:${arrivalWithDelay.minute.toString().padLeft(2, "0")}'; @@ -623,7 +623,7 @@ class DisplayTrainRouteDuration extends StatelessWidget { ), Builder( builder: (context) { - var duration = DateTime.parse(trainData.stations.last.arrival!.scheduleTime).difference(DateTime.parse(trainData.stations.first.departure!.scheduleTime)); + var duration = trainData.stations.last.arrival!.scheduleTime.difference(trainData.stations.first.departure!.scheduleTime); var durationString = StringBuffer(); bool firstWritten = false; diff --git a/lib/pages/train_info_page/view_train/train_info_material_DisplayTrainStation.dart b/lib/pages/train_info_page/view_train/train_info_material_DisplayTrainStation.dart index 997d0c3..4626376 100644 --- a/lib/pages/train_info_page/view_train/train_info_material_DisplayTrainStation.dart +++ b/lib/pages/train_info_page/view_train/train_info_material_DisplayTrainStation.dart @@ -261,7 +261,7 @@ class ArrivalTime extends StatelessWidget { } else { final delay = station.arrival!.status?.delay ?? 0; - final time = DateTime.parse(station.arrival!.scheduleTime).toLocal(); + final time = station.arrival!.scheduleTime.toLocal(); if (delay == 0) { return Text("${time.hour.toString().padLeft(2, '0')}:${time.minute.toString().padLeft(2, '0')}"); @@ -396,7 +396,7 @@ class DepartureTime extends StatelessWidget { } else { final delay = station.departure!.status?.delay ?? 0; - final time = DateTime.parse(station.departure!.scheduleTime).toLocal(); + final time = station.departure!.scheduleTime.toLocal(); if (delay == 0) { return Text("${time.hour.toString().padLeft(2, '0')}:${time.minute.toString().padLeft(2, '0')}");