addUnreservedTemplate method
unreserved template
unreserved template is map type.
u can add more than one item.
id
id No. is "80" up to "99".
Implementation
addUnreservedTemplate({String? id, UnreservedTemplate? value}) {
if (id != null && value != null) {
if (int.parse(id) < int.parse(ID.unreservedTemplatesRangeStart) ||
int.parse(id) > int.parse(ID.unreservedTemplatesRangeEnd)) {
throw InvalidId(title: "UnreservedTemplate");
}
String _globally =
"${value.value.globallyUniqueIdentifier?.tag}${value.value.globallyUniqueIdentifier?.length}${value.value.globallyUniqueIdentifier?.value}";
String _payment = "";
value.value.contextSpecificData?.forEach((element) {
_payment += "${element.tag}${element.length}${element.value}";
});
UnreservedTemplateModel unreservedTemplate = UnreservedTemplateModel(
tag: id,
length: getValueLength(_globally + _payment),
value: value.value);
// add merchant account info
if (this.value.unreservedTemplates != null) {
this.value.unreservedTemplates?[id] = unreservedTemplate;
} else {
this.value =
this.value.copyWith(unreservedTemplates: {id: unreservedTemplate});
}
}
}