parseConsentData method
Implementation
CustomerData parseConsentData(ConsentFormResponse consentData) {
List<PiiData> listPiiData = [];
List<ConsentStatus> consentList = [];
String subjectIdentityValue = "";
int? siTID =
consentData.result?.data?.additionalInfo?.subjectIdentityTypeId;
for (var item in consentData.result?.data?.piiList ?? []) {
if (siTID == item.customerPiiLabelId) {
subjectIdentityValue = item.val ?? "";
}
listPiiData.add(
PiiData(
piiLabelId: item.customerPiiLabelId!,
piiLabelName: "",
piiValue: item.val ?? "",
),
);
}
for (var purpose in consentData.result?.data?.purposeList ?? []) {
for (ConsentList data in purpose.consentList ?? []) {
// String? freq = data.selectedFreq?.toLowerCase();
consentList.add(
ConsentStatus(
consentPurposeId: data.consentPurposeId!,
consentPurposeName: data.consentPurposeName!,
consentStatus: data.isChecked,
frequency: data.frequency!.toLowerCase(),
piiLabelId: data.piiLabelId!,
piiLabelName: data.piiLabelName!,
consentLifetime: data.consentLifetime,
),
);
}
}
return CustomerData(
customerId: consentData.result?.data?.additionalInfo?.customerId ?? 0,
collectionTemplateId:
consentData.result?.data?.additionalInfo?.collectionTemplateId ?? 0,
consentSource: "form",
geolocation: "",
continent: "",
subjectIdentityId:
consentData.result?.data?.additionalInfo?.subjectIdentityTypeId ?? 0,
subjectIdentityValue: subjectIdentityValue,
subjectIdentityName: "",
verificationKey:
consentData.result?.data?.additionalInfo?.templateVerficationKey ??
"",
piiData: listPiiData,
consentStatus: consentList,
);
}