in src/Modules/SimplCommerce.Module.Tax/Services/TaxService.cs [18:41]
public async Task<decimal> GetTaxPercent(long? taxClassId, string countryId, long stateOrProvinceId, string zipCode)
{
if (!taxClassId.HasValue)
{
return 0;
}
var query = _taxRateRepository.Query()
.Where(x => x.CountryId == countryId
&& (x.StateOrProvinceId == stateOrProvinceId || x.StateOrProvinceId == null)
&& x.TaxClassId == taxClassId.Value);
if (!string.IsNullOrEmpty(zipCode))
{
query = query.Where(x => x.ZipCode == zipCode || string.IsNullOrWhiteSpace(x.ZipCode));
}
var taxRate = await query.FirstOrDefaultAsync();
if (taxRate != null)
{
return taxRate.Rate;
}
return 0;
}