internal async Task <ReturnRepository> CreateMok(List <EstablishmmentModelData> establishmentModelData)
        {
            try
            {
                _context.Establishments.AddRange(establishmentModelData);
                await _context.SaveChangesAsync();

                return(ReturnRepository.Create(false, "Estabelecimentos salvo com sucesso!"));
            }
            catch (DbUpdateException ex)
            {
                return(ReturnRepository.Create(true, string.Format("Erro ao salvar o estabelecimento ! Analise o erro: {0} ", ex.InnerException)));
            }
        }
        internal async Task <ReturnRepository> Update(UserModelData user)
        {
            try
            {
                _context.Entry(user).State = EntityState.Modified;
                await _context.SaveChangesAsync();

                return(ReturnRepository.Create(false, string.Format("Usuário {0} salvo com sucesso!", user)));
            }
            catch (DbUpdateConcurrencyException ex)
            {
                return(ReturnRepository.Create(true, string.Format("Erro ao salvar o estabelecimento {0}!\n Analise o erro: {1}", user.Email, ex.Message)));
            }
        }
        internal async Task <ReturnRepository> CreateSingle(EstablishmmentSugestionModelData establishmentModelData)
        {
            try
            {
                _context.EstablishmentSugestions.Add(establishmentModelData);
                await _context.SaveChangesAsync();

                return(ReturnRepository.Create(false, string.Format("Estabelecimento {0} salvo com sucesso!", establishmentModelData.Name)));
            }
            catch (DbUpdateException ex)
            {
                return(ReturnRepository.Create(true, string.Format("Erro ao salvar o estabelecimento {0}! Analise o erro: {1}", establishmentModelData.Name, ex.InnerException)));
            }
        }
        internal async Task <ReturnRepository> CreateMultiple(List <UserModelData> users)
        {
            try
            {
                _context.Users.AddRange(users);
                await _context.SaveChangesAsync();

                return(ReturnRepository.Create(false, "Usuários salvo com sucesso!"));
            }
            catch (DbUpdateException ex)
            {
                return(ReturnRepository.Create(true, string.Format("Erro ao salvar usuario! Analise o erro: {0}", ex.Message)));
            }
        }
        internal async Task <ReturnRepository> Update(EstablishmmentModelData establishmentModelData)
        {
            try
            {
                _context.Entry(establishmentModelData).State = EntityState.Modified;
                await _context.SaveChangesAsync();

                return(ReturnRepository.Create(false, string.Format("Estabelecimento {0} alterado com sucesso!", establishmentModelData.Name)));
            }
            catch (DbUpdateConcurrencyException ex)
            {
                if (Exists(establishmentModelData.Id))
                {
                    return(ReturnRepository.Create(true, string.Format("Erro ao salvar o estabelecimento {0}!\n Analise o erro: {1}", establishmentModelData.Name, ex.Message)));
                }
                return(ReturnRepository.Create(true, string.Format("ERRO: Este Estabelecimento não existe: {0}", ex.Message)));
            }
        }