TrackedEntityInstance.fromJson constructor
TrackedEntityInstance.fromJson(
- Map<String, dynamic> json
)
Implementation
factory TrackedEntityInstance.fromJson(Map<String, dynamic> json) {
final attributes = json['attributes'];
final dynamic lastSyncSummary = json['lastSyncSummary'] != null
? TrackedEntityInstanceImportSummary.fromJson(
jsonDecode(json['lastSyncSummary']))
: null;
return TrackedEntityInstance(
id: json['id'] ?? json['trackedEntityInstance'],
name: json['trackedEntityInstance'],
created: json['created'] ?? json['createdAt'],
lastUpdated: json['lastUpdated'] ?? json['updatedAt'],
orgUnit: json['orgUnit'],
trackedEntityInstance: json['trackedEntityInstance'],
trackedEntityType: json['trackedEntityType'],
deleted: json['deleted'],
synced: json['synced'] ?? true,
saved: json['saved'],
transfer: json['transfer'],
syncFailed: json['syncFailed'],
lastSyncSummary: lastSyncSummary,
lastSyncDate: json['lastSyncDate'],
inactive: json['inactive'],
enrollments: json['enrollments'] != null
? List<dynamic>.from(json['enrollments'])
.map((enrollment) => Enrollment.fromJson({
...enrollment,
'trackedEntityType': enrollment['trackedEntityType'] ??
json['trackedEntityType'],
'dirty': enrollment['dirty'] ?? json['dirty'] ?? false,
'synced': json['synced'] ?? true
}))
.toList()
: null,
attributes: List<Map<String, dynamic>>.from(attributes ?? [])
.map((attribute) => TrackedEntityAttributeValue.fromJson({
...attribute,
'id': attribute['id'] ??
'${json['trackedEntityInstance']}_${attribute['attribute']}',
'trackedEntityInstance':
json['trackedEntityInstance'] ?? json['trackedEntity'],
'dirty': attribute['dirty'] ?? false
}))
.toList(),
relationships: List<dynamic>.from(json['relationships'] ?? [])
.map((relationship) => TrackedEntityInstanceRelationship.fromJson({
...relationship,
'dirty': relationship['dirty'] ?? json['dirty'] ?? false,
'synced': json['synced'] ?? true
}))
.toList(),
skipDateUpdate: json['skipDateUpdate'],
dirty: json['dirty'] ?? false);
}