private List <TaxamoCalculationResult.PossibleCountry> GetPossibleCountries(CalculateTaxOut data) { var result = new List <TaxamoCalculationResult.PossibleCountry>(); if (data.Transaction.Countries.ByCc != null && data.Transaction.Countries.ByCc.Name != null) { result.Add(new TaxamoCalculationResult.PossibleCountry( data.Transaction.Countries.ByCc.Name, data.Transaction.Countries.ByCc.Code)); } if (data.Transaction.Countries.ByIp != null && data.Transaction.Countries.ByIp.Name != null) { result.Add(new TaxamoCalculationResult.PossibleCountry( data.Transaction.Countries.ByIp.Name, data.Transaction.Countries.ByIp.Code)); } if (data.Transaction.Countries.ByBilling != null && data.Transaction.Countries.ByBilling.Name != null) { result.Add(new TaxamoCalculationResult.PossibleCountry( data.Transaction.Countries.ByBilling.Name, data.Transaction.Countries.ByBilling.Code)); } return(result); }
private bool IsCountryDetected(CalculateTaxOut data) { int count = 0; if (data.Transaction.Evidence.ByCc != null && data.Transaction.Evidence.ByCc.Used.HasValue && data.Transaction.Evidence.ByCc.Used.Value) { ++count; } if (data.Transaction.Evidence.ByIp != null && data.Transaction.Evidence.ByIp.Used.HasValue && data.Transaction.Evidence.ByIp.Used.Value) { ++count; } if (data.Transaction.Evidence.ByBilling != null && data.Transaction.Evidence.ByBilling.Used.HasValue && data.Transaction.Evidence.ByBilling.Used.Value) { ++count; } return(count > 1); }