public ActionResult CadastrarEleicao(Eleicoes criarVotacao)
        {
            string idUser  = HttpContext.Session.GetString("Id");
            var    usuario = _db.Usuarios.SingleOrDefault(u => u.CodUsuario.ToString().Equals(idUser));

            if (usuario != null)
            {
                var nomeVotacaoExistente = _db.Eleicoes.SingleOrDefault(u => u.Titulo.Equals(criarVotacao.Titulo));
                if (nomeVotacaoExistente == null)
                {
                    criarVotacao.ChaveAcesso = BCrypt.Net.BCrypt.HashPassword(criarVotacao.ChaveAcesso);
                    Eleicao eleicao = new Eleicao(criarVotacao.Titulo, criarVotacao.Descricao, criarVotacao.ChaveAcesso, criarVotacao.VotoMultiplo, "P");
                    eleicao.CodEleicao = _db.GetMySequence("seq_eleicao");
                    UsuarioEleicao usuario_x_eleicao = new UsuarioEleicao();
                    usuario_x_eleicao.CodEleicao    = eleicao.CodEleicao;
                    usuario_x_eleicao.CodUsuario    = usuario.CodUsuario;
                    usuario_x_eleicao.Organizador   = true;
                    usuario_x_eleicao.VotoConcluido = false;
                    _db.Eleicoes.Add(eleicao);
                    _db.UsuarioEleicoes.Add(usuario_x_eleicao);
                    _db.SaveChanges();
                    return(RedirectToAction("PainelEleicao", "PainelEleicao", new { id = eleicao.CodEleicao }));
                }
                ViewBag.MensagemErro = "Este título já está em uso.";
                return(View("CriacaoVotacao"));
            }
            return(RedirectToAction("Login", "Home"));
        }
Example #2
0
        public void SaveEleicao(string action)
        {
            if (EleicaoSelecionada == null)
            {
                return;
            }


            if (EleicaoSelecionada.Candidatos.Count == 0 && action == "register")
            {
                Show.Window().For(new Alert("Selecione os candidatos!", "ERRO"));
                return;
            }


            if (EleicaoSelecionada.Cargos.Count == 0 && action == "register")
            {
                Show.Window().For(new Alert("Selecione os cargos!", "ERRO"));
                return;
            }


            if (Eleicoes.Any(s => s.StatusAtual == Status.Ativa && s.Id != EleicaoSelecionada.Id) && action == "register" && EleicaoSelecionada.StatusAtual == Status.Ativa)
            {
                Show.Window().For(new Alert("Já existe eleição ativa!", "ERRO"));
                return;
            }


            switch (action)
            {
            case "cancel":
                AppViewModel.Instance.Dialog.IsOpen = false;
                break;

            case "register":
                if (EleicaoSelecionada.Id != null)
                {
                    UpdateEleicao();
                }
                else
                {
                    AddEleicao();
                }
                AppViewModel.Instance.Dialog.IsOpen = false;
                break;
            }
        }
Example #3
0
        public int getTamanhoEleicao() => listaEleicoes.Count;//RETORNA A QUANTIDADE DE ELEIÇÕES CANDIDATOS


        //################################################### MÉTODOS DA CLASSE ########################################################

        public void restauraEleicao(int i)//RESTAURA DADOS DA ELEIÇÃO
        {
            eleicoes = listaEleicoes[i];
        }