public async Task <Retorno> Excluir(int id)
        {
            if (!_userIdentity.ValidarUsuario())
            {
                return(new Retorno(false, "Só Administradores podem persistir.", "Só Administradores podem persistir."));;
            }
            try
            {
                var FilmeXEscritor = await _ctx.FilmeXescritor.FirstOrDefaultAsync(a => a.Id.Equals(id));

                if (FilmeXEscritor == null)
                {
                    return(new Retorno(false, "Não Autorizado", "FilmeXEscritor não encontrado."));
                }


                _ctx.FilmeXescritor.Remove(FilmeXEscritor);
                _ctx.SaveChanges();
                return(new Retorno(true, "FilmeXEscritor Excluido.", "FilmeXEscritor Excluido."));
            }
            catch (Exception ex)
            {
                _log.GerarLogDisc("Erro ao Excluir FilmeXEscritor", ex: ex);
                throw new Exception("Erro ao Excluir FilmeXEscritor", ex);
                throw new Exception("Erro ao Excluir FilmeXEscritor", ex);
            }
        }
        public async Task <Retorno> Excluir(int id)
        {
            try
            {
                var filmeXNota = await _ctx.FilmeXnota.FirstOrDefaultAsync(a => a.Id.Equals(id));

                if (filmeXNota == null)
                {
                    return(new Retorno(false, "Não Autorizado", "FilmeXNota não encontrado."));
                }


                _ctx.FilmeXnota.Remove(filmeXNota);
                _ctx.SaveChanges();
                return(new Retorno(true, "FilmeXNota Excluido.", "FilmeXNota Excluido."));
            }
            catch (Exception ex)
            {
                _log.GerarLogDisc("Erro ao Excluir FilmeXNota", ex: ex);
                throw new Exception("Erro ao Excluir FilmeXNota", ex);
                throw new Exception("Erro ao Excluir FilmeXNota", ex);
            }
        }
예제 #3
0
        public async Task <Retorno> Atualizar(UsuarioDTO command)
        {
            try
            {
                var usuario = await GetUsuarioById(command.Id);

                if (usuario == null)
                {
                    return(new Retorno(false, "Usuario não encontrado", "Usuario não encontrado"));
                }

                if (usuario.Id != command.Id)
                {
                    return(new Retorno(false, "Usuario já existe", "Usuario já existe"));
                }

                usuario = await GetUsuarioByEmail(command.Email);

                if (usuario.Id != command.Id)
                {
                    return(new Retorno(false, "E-mail já existe", "E-mail já existe"));
                }


                usuario.UserName           = command.UserName;
                usuario.NormalizedUserName = command.UserName.ToUpper();
                usuario.Email           = command.Email;
                usuario.NormalizedEmail = command.Email.ToUpper();
                usuario.IdPerfil        = command.IdPerfil;
                usuario.Ativo           = command.Ativo;
                usuario.Nome            = command.Nome;

                _ctx.Usuarios.Update(usuario);
                _ctx.SaveChanges();

                // Atualiza a Senha
                if (command.Senha.Length < 50)
                {
                    var email = new Email(command.Email);
                    if (email.Invalid)
                    {
                        return(new Retorno(false, "Email Inválido.", "Email Inválido."));
                    }

                    var retorno = await AlterarSenha(email, command.Senha);

                    if (!retorno.Sucesso)
                    {
                        return(retorno);
                    }
                }


                return(new Retorno(true, "Dados Atualizados Com Sucesso.", "Dados Atualizados Com Sucesso."));
            }
            catch (Exception ex)
            {
                _log.GerarLogDisc("Erro ao Atualizar o Usuario", ex: ex);
                throw new Exception("Erro ao Atualizar o Usuario", ex);
            }
        }