public ResultPresenter(IWorkflowStepResult result) { this.result = result; }
public static string ParseWorkflowResult(IWorkflowStepResult result) { var sb = new StringBuilder(); if (result is IWorkflowBarcodeResult barcodeResult) { foreach (var barcode in barcodeResult.Barcodes) { sb.AppendFormat("{0}\n{1}\n", barcode.Format, barcode.Text); } } if (result is IWorkflowMachineReadableZoneResult mrzResult) { if (mrzResult.MachineReadableZone != null && mrzResult.MachineReadableZone.Fields != null) { foreach (var field in mrzResult.MachineReadableZone.Fields) { sb.AppendFormat("{0}: {1}\n", field.Name, field.Value); } sb.AppendFormat("Valid check digits: {0}/{1}\n", mrzResult.MachineReadableZone.ValidCheckDigitsCount, mrzResult.MachineReadableZone.CheckDigitsCount); } else { sb.AppendLine("MRZ not recognized"); } } if (result is IWorkflowPayFormResult payformResult) { if (payformResult.PayForm != null && payformResult.PayForm.RecognizedFields != null) { foreach (var field in payformResult.PayForm.RecognizedFields) { sb.AppendFormat("{0}: {1}\n", field.Token.Type, field.Value); } } else { sb.AppendLine("Payform not recognized"); } } if (result is IWorkflowDisabilityCertificateResult dcResult) { if (dcResult.DisabilityCertificate.RecognitionSuccessful) { foreach (var cb in dcResult.DisabilityCertificate.Checkboxes) { sb.AppendFormat("{0}: {1}\n", cb.Type, cb.IsChecked ? "Yes" : "No"); } foreach (var date in dcResult.DisabilityCertificate.Dates) { sb.AppendFormat("{0}: {1}\n", date.Type, date.DateString); } } else { sb.AppendLine("DC not recognized"); } } return(sb.ToString()); }