Exemple #1
0
        public static void parseRespostas(string[] respostas, string token, int id)
        {
            string  valor = "";
            JObject dados = Inquerito.GetIDInqueritoFromToken(token);

            long[] lista = Questao.GetIdsQuestoesPorInquerito((long)dados["idInquerito"]);

            for (int i = 0; i < respostas.Length; i++)
            {
                valor = respostas[i];
                registarResposta(lista[i], (long)dados["idInquerito"], (long)dados["idEvento"], valor, id);
            }
        }
Exemple #2
0
        public static long CriarInquerito(JObject json)
        {
            try
            {
                List <Questao> questoes = new List <Questao>();
                foreach (var questao in json["questoes"])
                {
                    questoes.Add(Questao.CreateFromJobj(questao));
                }

                List <ValoresIntervalos> intervalos = ValoresIntervalos.GetAllValores();
                long idQuestao   = -1;
                long idIntervalo = -1;

                long idInquerito = InstanciarInquerito();
                foreach (Questao questao in questoes)
                {
                    //Cria-se a a questão
                    idQuestao = Questao.CriarQuestao(questao);
                    if (questao.tipoVar.ToLower() == "intervalo")
                    {
                        foreach (var intervalo in questao.intervalo)
                        {
                            //Para cada intervalo fornecido, verificamos se a tabela responsavel ja tem esse valor registado(ex:Satisfeito)
                            ValoresIntervalos encontrado = intervalos.Find(x => x.valor == intervalo.valor);

                            //Se não for encontrado, tem de se criar um novo
                            if (encontrado == null)
                            {
                                idIntervalo = ValoresIntervalos.CriarValor(intervalo.valor);
                            }
                            else
                            {
                                //Ja existe, aproveitamos o ID
                                idIntervalo = encontrado.id;
                            }

                            //Nesta fase sabemos que existe(obrigatoriamente) o valor do intervalo na BD, então damos map na tabela da questão para o valor
                            ValoresIntervalos.MapIntervaloQuestao(idIntervalo, idQuestao);
                        }
                    }
                    //Já so falta dar map da questão ao inquerito
                    Inquerito.MapQuestaoInquerito(idInquerito, idQuestao);
                }
                return(1);
            }
            catch (Exception e)
            {
                return(-1);
            }
        }
Exemple #3
0
 public static JObject GetInquerito(int id)
 {
     return(Inquerito.GetInquerito(id, 0, null, null, null, null));
 }