Add initial project files and configurations for bus_running_record app

This commit is contained in:
ImBenji
2026-03-25 17:19:53 +00:00
parent f5da563c29
commit e41e14e252
151 changed files with 9829 additions and 0 deletions
+34
View File
@@ -0,0 +1,34 @@
import "../models/trip.dart";
class TripValidator {
static List<String> validate(Trip trip) {
final errors = <String>[];
// Validate time format
if (!RegExp(r"^\d{2}:\d{2}$").hasMatch(trip.scheduledTime)) {
errors.add("Invalid time format: ${trip.scheduledTime}");
}
// Validate trip number
if (trip.tripNumber.isEmpty) {
errors.add("Missing trip number");
}
// Validate duty/running numbers
if (trip.dutyNumber.isEmpty || trip.runningNumber.isEmpty) {
errors.add("Missing duty or running number");
}
// Validate actual departure time if provided
if (trip.actualDepartureTime != null &&
!RegExp(r"^\d{2}:\d{2}$").hasMatch(trip.actualDepartureTime!)) {
errors.add("Invalid actual departure time format: ${trip.actualDepartureTime}");
}
return errors;
}
static bool isValid(Trip trip) {
return validate(trip).isEmpty;
}
}