Пример #1
0
        public IActionResult CriarCandidatoPost(CandidatoCadastro candidatoCadastro)
        {
            string idUser = HttpContext.Session.GetString("Id");

            if (idUser != null)
            {
                var eleicao = _db.Eleicoes
                              .FromSqlRaw("SELECT * from eleicao where cod_eleicao IN " +
                                          "(select cod_eleicao from usuario_x_eleicao where cod_usuario = '" +
                                          idUser + "' and cod_eleicao = " + candidatoCadastro.CodEleicao + " and organizador = true)");
                if (eleicao.Count() > 0 && eleicao.First().Status.Equals("P"))
                {
                    var candidatoExistente = _db.Candidatos.Where(c => c.Nome.Equals(candidatoCadastro.Nome) && c.CodEleicao.Equals(candidatoCadastro.CodEleicao));
                    if (candidatoExistente.Count() == 0)
                    {
                        string     pastaUpload = Path.Combine(_hostingEnvironment.WebRootPath + "/media");
                        string     nomeArquivo = Guid.NewGuid().ToString() + "_" + candidatoCadastro.Imagem.FileName;
                        string     pathArquivo = Path.Combine(pastaUpload, nomeArquivo);
                        FileStream fs          = new FileStream(pathArquivo, FileMode.Create);
                        candidatoCadastro.Imagem.CopyTo(fs);
                        fs.Close();

                        Candidato candidato = new Candidato();
                        candidato.CodEleicao   = candidatoCadastro.CodEleicao;
                        candidato.CodCandidato = _db.GetMySequence("seq_candidato");
                        candidato.Descricao    = candidatoCadastro.Descricao;
                        candidato.Nome         = candidatoCadastro.Nome;
                        candidato.GrupoPartido = candidatoCadastro.GrupoPartido;
                        candidato.Imagem       = nomeArquivo;

                        _db.Candidatos.Add(candidato);
                        _db.SaveChanges();

                        TempData["MensagemSucesso"] = "Candidato criado com sucesso!";
                        return(RedirectToAction("CriarCandidato", new { id = candidatoCadastro.CodEleicao }));
                    }
                    ViewBag.MensagemErro = "Este candidato já foi cadastrado.";
                    ViewBag.EleicaoId    = candidatoCadastro.CodEleicao;
                    return(View("CriarCandidato"));
                }
                return(RedirectToAction("MinhasEleicoes", "ListaEleicao"));
            }

            return(RedirectToAction("Login", "Home"));
        }
Пример #2
0
        public IActionResult CriarCandidato(string id)
        {
            string idUser = HttpContext.Session.GetString("Id");

            if (idUser != null)
            {
                var eleicao = _db.Eleicoes
                              .FromSqlRaw("SELECT * from eleicao where cod_eleicao IN " +
                                          "(select cod_eleicao from usuario_x_eleicao where cod_usuario = '" +
                                          idUser + "' and cod_eleicao = " + id + " and organizador = true)");
                if (eleicao.Count() > 0 && eleicao.First().Status.Equals("P"))
                {
                    CandidatoCadastro candidato = new CandidatoCadastro();
                    candidato.CodEleicao    = Decimal.Parse(id);
                    ViewBag.EleicaoId       = id;
                    ViewBag.MensagemSucesso = TempData["MensagemSucesso"] != null ? TempData["MensagemSucesso"].ToString() : null;
                    return(View(candidato));
                }
                return(RedirectToAction("MinhasEleicoes", "ListaEleicao"));
            }

            return(RedirectToAction("Login", "Home"));
        }