Exemplo n.º 1
0
        public IActionResult update(CandidatoQuestionario cq)
        {
            DB.Candidatos.Update(cq.candidato);

            DB.CandidatoCampos.RemoveRange(DB.CandidatoCampos.Where(cc => cc.IdCandidato == cq.candidato.IdCandidato));
            DB.CandidatosRespostas.RemoveRange(DB.CandidatosRespostas.Where(cr => cr.IdCandidato == cq.candidato.IdCandidato));

            foreach (CandidatosRespostas cr in cq.respostasCandidato)
            {
                cr.IdCandidato = cq.candidato.IdCandidato;
                DB.CandidatosRespostas.Add(cr);
            }

            foreach (CandidatoCampos cc in cq.camposCandidato)
            {
                cc.IdCandidato = cq.candidato.IdCandidato;

                if (cc.Resposta == null)
                {
                    cc.Resposta = "";
                }

                DB.CandidatoCampos.Add(cc);
            }

            DB.SaveChanges();

            return(View("Create", cq.candidato));
        }
Exemplo n.º 2
0
        public IActionResult Create(CandidatoQuestionario cq)
        {
            DB.Candidatos.Add(cq.candidato);

            foreach (CandidatosRespostas cr in cq.respostasCandidato)
            {
                cr.IdCandidato = cq.candidato.IdCandidato;
                DB.CandidatosRespostas.Add(cr);
            }

            foreach (CandidatoCampos cc in cq.camposCandidato)
            {
                cc.IdCandidato = cq.candidato.IdCandidato;

                if (cc.Resposta == null)
                {
                    cc.Resposta = "";
                }

                DB.CandidatoCampos.Add(cc);
            }

            DB.SaveChanges();

            return(View(cq.candidato));
        }
Exemplo n.º 3
0
        // GET: /<controller>/
        public IActionResult Index(int id)
        {
            CandidatoQuestionario dados = new CandidatoQuestionario();

            //dados.perguntas = DB.Perguntas.Join(DB.FormulariosCamposPerguntas,
            //                                    pergunta => pergunta.IdPergunta,
            //                                    formPerguntas => formPerguntas.IdPergunta,
            //                                    (pergunta, formPerguntas) => new { Pergunta = pergunta, FormPerguntas = formPerguntas }).Where(uniao => uniao.FormPerguntas.IdFormulario == 1).OrderBy(uniao => uniao.FormPerguntas.Ordem);

            dados.questionario = DB.FormulariosCamposPerguntas.Where(c => c.IdFormulario == 1).OrderBy(c => c.Ordem).ToList();
            dados.perguntas    = DB.Perguntas.Where(p => DB.FormulariosCamposPerguntas.Any(c => c.IdPergunta == p.IdPergunta && c.IdFormulario == 1)).ToList();
            dados.respostas    = DB.Respostas.Where(r => DB.Perguntas.Any(p => DB.FormulariosCamposPerguntas.Any(c => c.IdPergunta == p.IdPergunta && c.IdFormulario == 1) && p.IdPergunta == r.IdPergunta)).OrderBy(r => r.IdResposta).ToList();
            dados.campos       = DB.Campos.Where(p => DB.FormulariosCamposPerguntas.Any(c => c.IdCampo == p.IdCampo && c.IdFormulario == 1)).OrderBy(c => c.IdCampo).ToList();

            if (id == 0)
            {
                dados.camposCandidato    = new List <CandidatoCampos>();
                dados.respostasCandidato = new List <CandidatosRespostas>();

                foreach (Respostas r in dados.respostas)
                {
                    CandidatosRespostas cr = new CandidatosRespostas();

                    cr.IdCandidato = 0;
                    cr.IdReposta   = r.IdResposta;
                    cr.Checked     = false;

                    dados.respostasCandidato.Add(cr);
                }

                foreach (Campos c in dados.campos)
                {
                    CandidatoCampos cc = new CandidatoCampos();

                    cc.IdCandidato = 0;
                    cc.IdCampo     = c.IdCampo;
                    cc.Resposta    = null;

                    dados.camposCandidato.Add(cc);
                }

                dados.candidato = new Candidatos();
            }
            else
            {
                dados.camposCandidato    = DB.CandidatoCampos.Where(cc => cc.IdCandidato == id).OrderBy(cc => cc.IdCampo).ToList();
                dados.respostasCandidato = DB.CandidatosRespostas.Where(rc => rc.IdCandidato == id).OrderBy(rc => rc.IdReposta).ToList();
                dados.candidato          = DB.Candidatos.Where(c => c.IdCandidato == id).First();
            }

            return(View(dados));
        }