uploadOne method

dynamic uploadOne(
  1. DataValueSet dataValueSet, {
  2. Dio? dioTestClient,
})

Implementation

uploadOne(DataValueSet dataValueSet, {Dio? dioTestClient}) async {
  final uploadFormat = DataValueSet.toUpload(dataValueSet);
  final response = await HttpClient.post(
      this.apiResourceName as String, uploadFormat,
      database: this.database, dioTestClient: dioTestClient);

  final importSummary = response.body;
  final syncFailed = importSummary['status'] == 'ERROR';
  dataValueSet.synced = !syncFailed;
  dataValueSet.dirty = syncFailed;
  dataValueSet.syncFailed = syncFailed;
  dataValueSet.lastSyncDate = DateTime.now().toIso8601String().split('.')[0];
  dataValueSet.lastSyncSummary = importSummary.toString();

  return DataValueSetQuery().setData(dataValueSet).save();
}