downloadReservedValueByAttribute method
dynamic
downloadReservedValueByAttribute(
- ProgramTrackedEntityAttribute reservedAttribute, {
- Dio? dioTestClient,
Implementation
downloadReservedValueByAttribute(
ProgramTrackedEntityAttribute reservedAttribute,
{Dio? dioTestClient}) async {
final int reservedCount = await AttributeReservedValueQuery()
.where(attribute: 'attribute', value: reservedAttribute.attribute)
.count();
final numberToReserve = 100 - reservedCount;
if (numberToReserve <= 0) {
return null;
}
final response = await HttpClient.get(
'trackedEntityAttributes/${reservedAttribute.attribute}/generateAndReserve?numberToReserve=$numberToReserve',
database: this.database,
dioTestClient: dioTestClient);
List<AttributeReservedValue> reservedValues = [];
(response.body ?? []).forEach((reservedResult) {
reservedValues.add(
AttributeReservedValue.fromJson({...reservedResult, 'dirty': false}));
});
return AttributeReservedValueQuery().setData(reservedValues).save();
}