/// <returns>A task that represents the asynchronous operation</returns>
        public virtual async Task <IActionResult> CategoryUpdate(TaxCategoryModel model)
        {
            if (!await _permissionService.AuthorizeAsync(StandardPermissionProvider.ManageTaxSettings))
            {
                return(AccessDeniedView());
            }

            if (!ModelState.IsValid)
            {
                return(ErrorJson(ModelState.SerializeErrors()));
            }

            var taxCategory = await _taxCategoryService.GetTaxCategoryByIdAsync(model.Id);

            taxCategory = model.ToEntity(taxCategory);
            await _taxCategoryService.UpdateTaxCategoryAsync(taxCategory);

            return(new NullJsonResult());
        }