internal List <string> ProcessValidationResult(string json) { var response = JsonDoc.Parse(json); var validationErrors = new List <string>(); MerchantInfo?.ProcessValidation(response, validationErrors); LegalInfo?.ProcessValidation(response, validationErrors); BusinessInfo?.ProcessValidation(response, validationErrors); // OPTIONALS Headquarters?.ProcessValidation(response, validationErrors); SalesMethods?.ProcessValidation(response, validationErrors); ProcessingMethod?.ProcessValidation(response, validationErrors); FutureDeliveryInfo?.ProcessValidation(response, validationErrors); GolfIndustry?.ProcessValidation(response, validationErrors); SalonIndustry?.ProcessValidation(response, validationErrors); LodgingResortInfo?.ProcessValidation(response, validationErrors); TransactionInfo?.ProcessValidation(response, validationErrors); EquipmentInfo?.ProcessValidation(response, validationErrors); ShippingOptions?.ProcessValidation(response, validationErrors); DepositOptions?.ProcessValidation(response, validationErrors); StatementOptions?.ProcessValidation(response, validationErrors); DisputeOptions?.ProcessValidation(response, validationErrors); // owners/officers for (int i = 0; i < 10; i++) { if (i < OwnerOfficers.Count) { var owner = OwnerOfficers[i]; owner.Prefix = string.Format("OwnerOfficer{0}_", i + 1); owner.ProcessValidation(response, validationErrors); } else { continue; } } // banking info BankingInfo?.ProcessValidation(response, validationErrors); if (BankingInfo != null) { foreach (var account in BankingInfo.BankAccounts) { account.Prefix = string.Format("MerchantAccount{0}_", BankingInfo.BankAccounts.IndexOf(account) + 1); account.ProcessValidation(response, validationErrors); } } return(validationErrors); }
internal MultipartForm BuildForm() { var form = new MultipartForm(false); PopulateForm(form, MerchantInfo); if (LegalInfoSameAsMerchant) { LegalInfo = new LegalInfo { CorporateName = MerchantInfo?.MerchantDbaName, CorporateStreet = MerchantInfo?.MerchantStreet, CorporateCity = MerchantInfo?.MerchantCity, CorporateStatesSelect = MerchantInfo?.MerchantStatesSelect, CorporateZip = MerchantInfo?.MerchantZip }; } PopulateForm(form, LegalInfo); PopulateForm(form, BusinessInfo); // OPTIONALS Headquarters?.PopulateForm(form); SalesMethods?.PopulateForm(form); ProcessingMethod?.PopulateForm(form); FutureDeliveryInfo?.PopulateForm(form); GolfIndustry?.PopulateForm(form); SalonIndustry?.PopulateForm(form); LodgingResortInfo?.PopulateForm(form); TransactionInfo?.PopulateForm(form); EquipmentInfo?.PopulateForm(form); ShippingOptions?.PopulateForm(form); DepositOptions?.PopulateForm(form); StatementOptions?.PopulateForm(form); DisputeOptions?.PopulateForm(form); // owners/officers for (int i = 0; i < 10; i++) { OwnerOfficer owner = new OwnerOfficer(); if (i < OwnerOfficers.Count) { owner = OwnerOfficers[i]; } owner.Prefix = string.Format("OwnerOfficer{0}_", i + 1); PopulateForm(form, owner); // signers form.Set(string.Format("Signer{0}Email", i + 1), owner.EmailAddress ?? " "); form.Set(string.Format("Signer{0}FullName", i + 1), owner.FullName ?? " "); } // banking info PopulateForm(form, BankingInfo); if (BankingInfo != null) { foreach (var account in BankingInfo.BankAccounts) { account.Prefix = string.Format("MerchantAccount{0}_", BankingInfo.BankAccounts.IndexOf(account) + 1); account.PopulateForm(form); } } return(form); }