public ProductCategoryDto CreateOrUpdateProductCategory(ProductCategoryCreateOrEditDto input)
        {
            if (!input.Id.HasValue)
            {
                CheckCreatePermission();

                var entity = input.MapTo <ProductCategory>();

                Repository.Insert(entity);
                CurrentUnitOfWork.SaveChanges();

                return(MapToEntityDto(entity));
            }
            else
            {
                CheckUpdatePermission();

                var entity = GetEntityById(input.Id.Value);
                ObjectMapper.Map(input, entity);
                CurrentUnitOfWork.SaveChanges();

                return(MapToEntityDto(entity));
            }
        }