Exemplo n.º 1
0
        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();
        }
Exemplo n.º 2
0
        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
            };
        }