public IActionResult update(int id, string descricao)
        {
            Situacoes situacao =
                new Situacoes(
                    id,
                    descricao
                    );

            _repository.Update(situacao);

            return(RedirectToAction("index"));
        }
Exemple #2
0
        public IActionResult GetById(int id)
        {
            try
            {
                Situacoes situacaoBuscada = _situacaoRepository.BuscarPorId(id);

                if (situacaoBuscada == null)
                {
                    return(NotFound("Nenhuma situação encontrada!"));
                }

                return(Ok(situacaoBuscada));
            }
            catch (Exception codErro)
            {
                return(BadRequest(codErro));
            }
        }
Exemple #3
0
        private async void AsyncMostrarDados(int indice)
        {
            var t = Task.Run(() => new Repositorio.RDIA().GetDIA(indice));

            await t;

            if (t.IsCompleted)
            {
                try
                {
                    if (t.Result != null)
                    {
                        if (t.Result.Auxiliar.Nome == "-")
                        {
                            Expand_Auxiliar = false;
                        }
                        else
                        {
                            Expand_Auxiliar = true;
                        }

                        if (t.Result.Veiculo.Modelo == "-")
                        {
                            Expand_Veiculo = false;
                        }
                        else
                        {
                            Expand_Veiculo = true;
                        }

                        if (t.Result.Validade == new DateTime(2001, 1, 1))
                        {
                            Expand_Validade = false;
                        }
                        else
                        {
                            Expand_Validade = true;
                        }

                        DateTime d = Convert.ToDateTime(t.Result.Validade);

                        var dif = d.Date - t.Result.Emissao.Date;

                        //dif.TotalDays;
                        var _dias  = dif.TotalDays;
                        var _meses = dif.TotalDays / 30;
                        var _anos  = dif.TotalDays / 365;

                        //System.Windows.MessageBox.Show("dia: " + _dias + "\n" + "mes: " + _meses + "\n" + "ano: " +_anos);

                        if (_dias < 31 && _meses <= 1 && _anos < 1)
                        {
                            Unidade       = Convert.ToInt32(_dias);
                            Unidade_Tempo = "DIA";
                        }
                        else if (_dias > 30 && _meses <= (12 * 2))
                        {
                            Unidade       = Convert.ToInt32(_meses);
                            Unidade_Tempo = "MÊS";
                        }
                        else if (_meses > (12 * 2) && _anos > ((365 * 2) / 365))
                        {
                            Unidade       = Convert.ToInt32(_anos);
                            Unidade_Tempo = "ANO";
                        }

                        D_I_A = t.Result;

                        if (t.Result.Validade < DateTime.Now)
                        {
                            Situacoes.Add("VENCIDO");
                            D_I_A.Situacao = "VENCIDO";
                        }
                    }
                }
                catch (Exception ex)
                {
                    AsyncMessageBox("Erro '" + ex.Message + "' inesperado, informe o Suporte!", DialogBoxColor.Orange, false);
                }
            }
        }
Exemple #4
0
        internal bool Autenticar(string login, String senhaHash, int timeout, out String userSessionId)
        {
            bool usuarioValido = false;

            userSessionId = string.Empty;
            Usuario usuarioAuditoria = new Usuario();

            usuarioAuditoria.Login = login;            //Necessario para auditoria

            try
            {
                usuarioAuditoria.Ip = HttpContext.Current.Request.UserHostAddress;

                #region Busca Usuario/Credenciado e verifica validade

                Usuario usuario = _busUsuario.Obter(login);

                //Deve retornar APENAS se usuario não existir
                if (usuario == null)
                {
                    Validacao.Add(Mensagem.Login.LoginSenhaInvalido);
                    return(false);
                }

                usuarioValido        = String.Equals(usuario.senhaHash, senhaHash);
                usuarioAuditoria.Id  = usuario.Id;
                usuarioAuditoria.TID = usuario.TID;

                //Buscar funcionario e grava num de tentativas
                Funcionario funcionario = _da.ObterFuncionarioLogin(usuario.Id, timeout);

                //Deve retornar APENAS se funcionario não existir
                if (funcionario == null)
                {
                    Validacao.Add(Mensagem.Login.LoginSenhaInvalido);
                    return(false);
                }

                funcionario.Usuario = usuario;
                #endregion

                #region Execução Obrigatoria [Independe de status do funcionario]

                string strSessionForcarLogoff = string.Empty;

                //Não se pode char busUsuario Autenticar antes do metodo no finally!!!
                if (usuarioValido && funcionario.Logado)
                {
                    GerenciarAutenticacao.Deslogar(login, true);

                    if (usuarioValido && funcionario.ForcarLogout)
                    {
                        strSessionForcarLogoff = funcionario.SessionId;

                        if (!String.Equals(funcionario.Usuario.Ip, usuarioAuditoria.Ip))
                        {
                            Validacao.Add(Mensagem.Login.SessaoDerrubada);
                        }
                    }
                }

                #endregion

                #region 2 - Bloqueio

                if (funcionario.Tentativa > _config.Obter <Int32>(ConfiguracaoCredenciado.KeyNumTentativas))
                {
                    funcionario.Situacao = 2;                    // 2 - Bloqueado
                    funcionario.Usuario  = new Usuario()
                    {
                        Login = login
                    };
                    _da.AlterarSituacao(funcionario.Id, funcionario.Situacao, null, funcionario);
                    Validacao.Add(Mensagem.Login.FuncionarioBloqueado);
                    return(false);
                }

                if (funcionario.Situacao == 2)                // 2-Ausente
                {
                    Validacao.Add(Mensagem.Login.SituacaoInvalida(Situacoes.Single(x => x.Id == funcionario.Situacao).Nome));
                    return(false);
                }

                #endregion

                //Fazer aqui
                //Acesso não permitido nestes horários e/ou dia! Entre em contato com o administrador do sistema
                #region 6 - Senha Vencida

                // 6 -Senha Vencida
                if (_da.VerificarSenhaVencida(usuario.Id, funcionario))
                {
                    //Mensagem gerada na interface
                    return(false);
                }

                #endregion

                #region 4 - Ausente

                if (funcionario.Situacao == 4)                // 4-Ausente
                {
                    Validacao.Add(Mensagem.Login.SituacaoInvalida(Situacoes.Single(x => x.Id == funcionario.Situacao).Nome));
                    return(false);
                }

                #endregion

                #region Mensagem Número de tentativas

                if (!usuarioValido && funcionario.Situacao != 2)                //2 - Bloqueado
                {
                    Validacao.Add(Mensagem.Login.NumTentativas(funcionario.Tentativa, _config.Obter <Int32>(ConfiguracaoCredenciado.KeyNumTentativas)));
                }

                #endregion

                //Efetiva a autenticação de credenciado [Atenção para o finally]
                if (usuarioValido)
                {
                    funcionario.SessionId = Guid.NewGuid().ToString();
                    userSessionId         = funcionario.SessionId;             //Parâmetro out deste metodo!!!
                    _da.Autenticar(funcionario, strSessionForcarLogoff);
                }
            }
            catch
            {
                usuarioValido = false;
                throw;
            }
            finally
            {
                //Autentica Usuario, gera historico e linha de auditoria
                _busUsuario.Autenticar(usuarioAuditoria, usuarioValido, (int)eExecutorTipo.Interno);
            }

            return(usuarioValido);
        }