public async Task <int> CreateAsync(EstabelecimentoRequestModel estabelecimentoRequestModel)
        {
            var configuration = new MapperConfiguration(x =>
            {
                x.CreateMap <EstabelecimentoRequestModel, Estabelecimento>();
            });
            var mapper          = configuration.CreateMapper();
            var estabelecimento = mapper.Map <Estabelecimento>(estabelecimentoRequestModel);
            var validator       = new EstabelecimentoValidator();

            validator.ValidateAndThrow(estabelecimento);
            foreach (var restrictObject in estabelecimentoRequestModel.RestrictedObjects)
            {
                estabelecimento.AddRestrictedObjects(restrictObject);
            }
            await _estabelecimentoRepository.CreateAsync(estabelecimento);

            return(estabelecimento.Id);
        }