Esempio n. 1
0
        static void TestarValidarPeticao()
        {
            string peticao = "{titulo1& [1.1 pergunta aqui] abc[1.2 - pergunta aqui] abc[1.3 - pergunta aqui] doc_1 que está bem ali }" +
                             "{titulo2& [2.1 pergunta aqui] abcabc doc_2 [3.2 - pergunta aqui] abc[2.3 - pergunta aqui]}" +
                             "{titulo3& [3.1 pergunta aqui] abcabc doc_3 [3.2 - pergunta aqui] abc[3.3 - pergunta aqui]}";

            GerarQuestionario gerarQuestionario = new GerarQuestionario();
            var perguntas = gerarQuestionario.ExtrairPerguntas(peticao);
            var mensagem  = gerarQuestionario.ValidarExtrairPeguntas(perguntas);

            Console.WriteLine(mensagem);
            Console.ReadKey();
        }
Esempio n. 2
0
        public ActionResult Create([Bind(Include = "PeticaoModeloId,Nome,NaturezaAcaoId,Comentario, PeticaoOriginal, PeticaoModificada")] PeticaoModelo peticaoModelo)
        {
            GerarQuestionario gerarQuestionario = new GerarQuestionario();
            var perguntas          = gerarQuestionario.ExtrairPerguntas(peticaoModelo.PeticaoModificada);
            var perguntasRepetidas = perguntas.Select(x => x.pergunta).Distinct();

            if (perguntas.Count > 0 && perguntas.Count() > perguntasRepetidas.Count())
            {
                ModelState.AddModelError("PeticaoModificada", "Uma pergunta não pode se repetir em uma mesma petição");
            }

            if (ModelState.IsValid)
            {
                db.PeticaoModeloes.Add(peticaoModelo);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            ViewBag.NaturezaAcaoId = new SelectList(db.NaturezaAcaos, "NaturezaAcaoID", "Nome", peticaoModelo.NaturezaAcaoId);
            return(View(peticaoModelo));
        }
Esempio n. 3
0
        public ActionResult Edit([Bind(Include = "PeticaoModeloId,Nome,NaturezaAcaoId,Comentario, PeticaoOriginal, PeticaoModificada")] PeticaoModelo peticaoModelo)
        {
            //Validação: vedar no campo Petição anotada perguntas identicas
            GerarQuestionario gerarQuestionario = new GerarQuestionario();
            var perguntas          = gerarQuestionario.ExtrairPerguntas(peticaoModelo.PeticaoModificada);
            var perguntasRepetidas = perguntas.Select(x => x.pergunta).Distinct();

            if (perguntas.Count > 0 && perguntas.Count() > perguntasRepetidas.Count())
            {
                ViewBag.MensagemErro = "Erro no Campo Petição Anotada!"; //apenas para uso de exemplo.
                ModelState.AddModelError("PeticaoModificada", "Uma pergunta não pode se repetir em uma mesma petição");
            }

            //daqui em diante, nada alterado.
            if (ModelState.IsValid)
            {
                db.Entry(peticaoModelo).State = EntityState.Modified;
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }
            ViewBag.NaturezaAcaoId = new SelectList(db.NaturezaAcaos, "NaturezaAcaoID", "Nome", peticaoModelo.NaturezaAcaoId);
            return(View(peticaoModelo));
        }