first commit

This commit is contained in:
atseirjo
2026-01-23 07:33:20 +01:00
commit aeca07a5a3
31 changed files with 1831 additions and 0 deletions

View File

@@ -0,0 +1,82 @@
import 'dart:convert';
class TankModel {
final String szDocumentId;
final String szUserId;
final String szDate;
final String szOdometer;
final String szLiters;
final String szPricePerLiter;
final String szLocation;
final String szPriceTotal;
TankModel({
required this.szDocumentId,
required this.szUserId,
required this.szDate,
required this.szOdometer,
required this.szLiters,
required this.szPricePerLiter,
required this.szLocation,
required this.szPriceTotal,
});
TankModel copyWith({
String? szDocumentId,
String? szUserId,
String? szDate,
String? szOdometer,
String? szLiters,
String? szPricePerLiter,
String? szLocation,
String? szPriceTotal,
}) {
return TankModel(
szDocumentId: szDocumentId ?? this.szDocumentId,
szUserId: szUserId ?? this.szUserId,
szDate: szDate ?? this.szDate,
szOdometer: szOdometer ?? this.szOdometer,
szLiters: szLiters ?? this.szLiters,
szPricePerLiter: szPricePerLiter ?? this.szPricePerLiter,
szLocation: szLocation ?? this.szLocation,
szPriceTotal: szPriceTotal ?? this.szPriceTotal,
);
}
Map<String, dynamic> toMap() {
final result = <String, dynamic>{};
result.addAll({'\$id': szDocumentId});
result.addAll({'userId': szUserId});
result.addAll({'date': szDate});
result.addAll({'odometer': szOdometer});
result.addAll({'liters': szLiters});
result.addAll({'pricePerLiter': szPricePerLiter});
result.addAll({'location': szLocation});
result.addAll({'priceTotal': szPriceTotal});
return result;
}
factory TankModel.fromMap(Map<String, dynamic> map) {
return TankModel(
szDocumentId: map['\$id'] ?? '',
szUserId: map['userId'] ?? '',
szDate: map['date'] ?? '',
szOdometer: map['odometer'] ?? '',
szLiters: map['liters'] ?? '',
szPricePerLiter: map['pricePerLiter'] ?? '',
szLocation: map['location'] ?? '',
szPriceTotal: (double.parse(map['liters']?.toString() ?? '0') * double.parse(map['pricePerLiter']?.toString() ?? '0')).toStringAsFixed(2),
);
}
String toJson() => json.encode(toMap());
factory TankModel.fromJson(String source) => TankModel.fromMap(json.decode(source));
@override
String toString() {
return 'TankModel(szDocumentId: $szDocumentId, szUserId: $szUserId, szDate: $szDate, szOdometer: $szOdometer, szLiters: $szLiters, szPricePerLiter: $szPricePerLiter, szLocation: $szLocation, szPriceTotal: $szPriceTotal)';
}
}