internal void IniciarVotacao(string id, string pergunta) { var validador = new ValidadorVotacao(); var usuario = Usuarios.FirstOrDefault(p => p.Id.ToString() == id) .ExcecaoSeNull("Este gamelão não foi encontrado."); validador.ValidaBloqueados(Bloqueados, usuario); validador.ValidaTempoInicioVotacao(_inicioVotacao); validador.ValidaJair(pergunta); validador.ValidaTrabalho(pergunta); _guid = Guid.NewGuid(); _pergunta = pergunta; _inicioVotacao = DateTime.Now; _nomeDoSujeitoQueIniciouSessao = string.IsNullOrWhiteSpace(usuario.Nomezinho) ? usuario.Nome : usuario.Nomezinho; Votos.Clear(); }
internal void Justificar(string id, string just) { var validador = new ValidadorVotacao(); var usuario = Usuarios.FirstOrDefault(p => p.Id.ToString() == id) .ExcecaoSeNull("Não achamos esse gamelão na nossa base baluda."); validador.ValidaBloqueados(Bloqueados, usuario); var voto = Votos.FirstOrDefault(p => p.Usuario.Id.ToString() == id) .ExcecaoSeNull("Não votasse nessa sessão, só lamento."); validador.ValidaJair(just); validador.ValidaTrabalho(just); voto.Justificativa = new JustificativaVoto { Guid = Guid.NewGuid(), Texto = just }; }