Exemple #1
0
        public async Task AlteraLoja(int idUsuario, Guid lojaId, AlteraLojaDto alteracao)
        {
            var usuarioAlteracao = (await _repoUsuario.GetAsync(c => c.Id == idUsuario &&
                                                                c.Ativo)).FirstOrDefault();

            if (usuarioAlteracao == null)
            {
                throw new UsuarioInvalidoException("Usuário inválido!");
            }

            if (usuarioAlteracao.LojaId != lojaId)
            {
                throw new SemPermissaoAlteracaoException("Usuário sem permissão para alterar dados de outra loja!");
            }

            var loja = (await _repoLoja.GetAsync(c => c.LojaId == lojaId &&
                                                 c.Ativo)).FirstOrDefault();

            if (loja == null)
            {
                throw new LojaNaoEncontradaException("Loja inválida!");
            }

            loja.Codigo          = alteracao.Codigo;
            loja.ChaveIntegracao = alteracao.ChaveIntegracao;
            _repoLoja.Update(loja);
            _repoLoja.SaveChangesAsync();
        }
Exemple #2
0
        public async Task <IActionResult> PutAtualizaLoja([FromRoute] Guid id, AlteraLojaDto alteraLojaDto)
        {
            ClaimsPrincipal currentUser   = this.User;
            var             currentUserID = currentUser.FindFirst(ClaimTypes.NameIdentifier).Value;

            await _lojaService.AlteraLoja(int.Parse(currentUserID), id, alteraLojaDto);

            return(Ok());
        }