Files
maps-saas/apps/siro_maps/lib/data/models/place_gate.dart
T

40 lines
1.2 KiB
Dart

class PlaceGate {
final String nameAr;
final String? nameEn;
final double latitude;
final double longitude;
final bool isMainGate;
const PlaceGate({
required this.nameAr,
this.nameEn,
required this.latitude,
required this.longitude,
this.isMainGate = false,
});
factory PlaceGate.fromJson(Map<String, dynamic> json) {
return PlaceGate(
nameAr: json['name_ar']?.toString() ?? json['gate_name_ar']?.toString() ?? 'بوابة',
nameEn: json['name_en']?.toString() ?? json['gate_name_en']?.toString(),
latitude: (json['latitude'] as num?)?.toDouble() ??
(json['lat'] as num?)?.toDouble() ??
double.tryParse(json['latitude']?.toString() ?? '0.0') ??
0.0,
longitude: (json['longitude'] as num?)?.toDouble() ??
(json['lng'] as num?)?.toDouble() ??
double.tryParse(json['longitude']?.toString() ?? '0.0') ??
0.0,
isMainGate: json['is_main_gate'] as bool? ?? false,
);
}
Map<String, dynamic> toJson() => {
'name_ar': nameAr,
if (nameEn != null) 'name_en': nameEn,
'latitude': latitude,
'longitude': longitude,
'is_main_gate': isMainGate,
};
}