Files
fforte/lib/screens/sharedMethods/save_main_entry.dart
2025-06-03 22:31:55 +02:00

41 lines
1.1 KiB
Dart

import 'package:fforte/enums/databases.dart';
import 'package:fforte/interfaces/i_db.dart';
import 'package:fforte/methods/excursion_db_helper.dart';
import 'package:fforte/methods/place_db_helper.dart';
class SaveMainEntryMethod {
static Future<int> saveEntry({
required Map<String, String> entryData,
required bool isTemplate,
required DatabasesEnum dbType,
bool sent = false,
}) async {
IDb? placeDB;
if (dbType == DatabasesEnum.place) {
placeDB = PlaceDBHelper();
} else if (dbType == DatabasesEnum.excursion) {
placeDB = ExcursionDBHelper();
}
if (isTemplate) await placeDB!.deleteTemplateById(entryData["ID"]!);
int entryId;
if (entryData["ID"] == "" || isTemplate) {
entryData.remove("ID");
entryId = await placeDB!.addMainEntry(entryData);
// await placeDB.deleteTemplateById(entryData["CID"]!);
} else {
entryId = await placeDB!.updateMainEntry(entryData);
}
if (sent == true) {
placeDB.updateSent(entryId); // Update 'Sent' using the correct ID
}
return entryId;
}
}