public IActionResult update(int id, string descricao) { Situacoes situacao = new Situacoes( id, descricao ); _repository.Update(situacao); return(RedirectToAction("index")); }
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)); } }
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); } } }
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); }