saveAll method
Implementation
Future<List<BoolResult>> saveAll(String pSql, List<TableBase> objList) async {
final results = <BoolResult>[];
if (openedBatch[_dbModel!.databaseName!] == null) {
final Database db = (await this.db)!;
for (var t in objList) {
final result = BoolResult(success: false);
try {
final o = t.toMap(forQuery: true);
if (o[_primaryKeyList![0]] != null) {
final uresult = await db.rawInsert(pSql, t.toArgsWithIds());
if (uresult > 0) {
result.successMessage =
'id=${o[_primaryKeyList![0]].toString()} upserted successfully';
}
} else {
final iresult = await db.insert(_tableName!, o);
if (iresult > 0) {
result.successMessage =
'id=${iresult.toString()} inserted successfully';
}
}
result.success = true;
} catch (e) {
result
..successMessage = null
..errorMessage = e.toString();
}
results.add(result);
}
} else {
for (var t in objList) {
final o = t.toMap(forQuery: true);
if (o[_primaryKeyList![0]] != null) {
openedBatch[_dbModel!.databaseName!]!.update(_tableName!, o);
} else {
openedBatch[_dbModel!.databaseName!]!.insert(_tableName!, o);
}
}
}
return results;
}