private void CheckButton_Click(object sender, EventArgs e) { CheckButton.Enabled = false; ResultLabel.ResetText(); string countryCode = ExtractCountryCodeFromInput(); string VATCode = ExtractVatCodeFromInput(); if (VatIsFine() && ValidateVatByCountryCode(countryCode, VATCode)) { CheckVatByVies(countryCode, VATCode); } else { ResultLabel.Text = MessageProvider.ErrorMessage(); } CheckButton.Enabled = true; }
//Second button, only to launch CheckVatApprox private void CheckButton2_Click(object sender, EventArgs e) { CheckButton2.Enabled = false; string countryCode = ExtractCountryCodeFromInput(); string VATCode = ExtractVatCodeFromInput(); if (VatIsFine() && ValidateVatByCountryCode(countryCode, VATCode)) { CheckVatApproxByVies(); // XmlGenerator.GenerateXmlDoc(); } else { ResultLabel.Text = MessageProvider.ErrorMessage(); } CheckButton2.Enabled = true; }
private bool ValidateVatByCountryCode(string countryCode, string VATCode) { if (countryCode == "CH") { countryCode = "CHE"; } switch (countryCode) { case "DK": case "FI": case "HU": case "LU": case "MT": case "SI": { return(CheckCountriesVATRequirements.IsNumbersOkDigits8(VATCode)); } case "EE": case "DE": case "EL": case "PT": case "UK": { if (CheckCountriesVATRequirements.IsNumbersOkDigits9(VATCode)) { return(true); } break; } case "PL": case "RO": case "SK": { if (CheckCountriesVATRequirements.IsNumbersOkDigits10(VATCode)) { return(true); } break; } case "HR": case "IT": case "LV": { if (CheckCountriesVATRequirements.IsNumbersOkDigits11(VATCode)) { return(true); } break; } case "SE": { if (CheckCountriesVATRequirements.IsNumbersOkDigits12(VATCode)) { return(true); } break; } case "AT": { if (CheckCountriesVATRequirements.IsNumbersOkAustria(VATCode)) { return(true); } break; } case "BE": { if (CheckCountriesVATRequirements.IsNumbersOkBelgium(VATCode)) { return(true); } break; } case "CY": { if (CheckCountriesVATRequirements.IsNumbersOkCyprus(VATCode)) { return(true); } break; } case "CZ": { if (CheckCountriesVATRequirements.IsNumbersOkCzech(VATCode)) { return(true); } break; } case "ES": { if (CheckCountriesVATRequirements.IsNumbersOkSpain(VATCode)) { return(true); } break; } case "IE": { if (CheckCountriesVATRequirements.IsNumbersOkIreland(VATCode)) { return(true); } break; } case "NL": { if (CheckCountriesVATRequirements.IsNumbersOkNetherlands(VATCode)) { return(true); } break; } case "LT": { if (CheckCountriesVATRequirements.IsNumbersOkDigits9(VATCode) || CheckCountriesVATRequirements.IsNumbersOkDigits12(VATCode)) { return(true); } break; } case "FR": { if (CheckCountriesVATRequirements.IsNumbersOkFrance(VATCode)) { return(true); } break; } case "CHE": { if (CheckCountriesVATRequirements.IsNumbersOkSwitzerland(VATCode)) { return(true); } break; } case "IS": { if (CheckCountriesVATRequirements.IsNumbersOkIceland(VATCode)) { return(true); } break; } case "NO": { if (CheckCountriesVATRequirements.IsNumbersOkNorway(VATCode)) { return(true); } break; } default: MessageProvider.ErrorMessage(); break; } return(false); }