예제 #1
0
        protected void ButtonAddQuestionario_Click(object sender, EventArgs e)
        {
            panelDoente.Visible              = false;
            panelMedico.Visible              = false;
            panelInfo_Socio.Visible          = false;
            panelQuestionario.Visible        = true;
            panel_QuestionarioOpcoes.Visible = false;
            ButtonEditarQuestao.Visible      = false;
            TextBoxNomeQuestionario.Text     = "";
            TextBoxPergunta.Text             = "";
            DropDownListTipoPergunta.ClearSelection();

            // Dar Reset ao numero das questoes
            numero_pergunta    = 1;
            ViewState["count"] = numero_pergunta;
            try
            {
                conexao.Open();
                comando.CommandText = "SELECT MAX(ID_Questionario)+1 from Questionario";
                comando.ExecuteNonQuery();
                novoID = Convert.ToInt32(comando.ExecuteScalar());
                conexao.Close();
                ViewState["novoID"] = novoID;
            }
            catch (System.InvalidCastException)
            {
                novoID = 1;
                ViewState["novoID"] = novoID;
            }
        }
예제 #2
0
        protected void ButtonAdicionarQuestionario_Click(object sender, EventArgs e)
        {
            //Colocar Panel visiveis e invisiveis
            panelDoente.Visible         = false;
            panelMedico.Visible         = false;
            panelInfo_Socio.Visible     = false;
            panelQuestionario.Visible   = true;
            ButtonEditarQuestao.Visible = true;

            string verificarquestao = "";
            string questao_editar   = ("Questão-" + numero_pergunta).ToString();

            conexao.Open();
            comando.CommandText = "select questao from QUESTIONARIO_PERGUNTA where NUMERO_QUESTAO = '" + questao_editar + "' and ID_QUESTIONARIO = '" + novoID + "'";
            verificarquestao    = Convert.ToString(comando.ExecuteScalar());
            conexao.Close();

            if (verificarquestao == "")
            {
                if (numero_pergunta == 1)
                {
                    ButtonEditarQuestao.Visible = true;
                    if (TextBoxNomeQuestionario.Text != "" && TextBoxPergunta.Text != "")
                    {
                        string questionarioexistente;

                        conexao.Open();
                        comando.CommandText   = "Select Nome_Questionario From Questionario Where Nome_Questionario = '" + TextBoxNomeQuestionario.Text + "'";
                        questionarioexistente = Convert.ToString(comando.ExecuteScalar());
                        conexao.Close();

                        if (questionarioexistente == "")
                        {
                            string numero_questao = ("Questão-" + numero_pergunta).ToString();

                            if (DropDownListTipoPergunta.Text == "Adicionar Manualmente")
                            {
                                conexao.Open();
                                comando.CommandText = "INSERT INTO Questionario(ID_Questionario, Nome_Questionario)VALUES('" + novoID + "', '" + TextBoxNomeQuestionario.Text + "')";
                                comando.ExecuteNonQuery();
                                comando.CommandText = "INSERT INTO Questionario_Pergunta(ID_Questionario, Numero_Questao, Questao, Tipo_Resposta)VALUES('" + novoID + "', '" + numero_questao + "', '" + TextBoxPergunta.Text + "', '" + DropDownListTipoPergunta.Text + "')";
                                comando.ExecuteNonQuery();
                                if (ListBoxOpcoesResposta.Items.Count >= 2)
                                {
                                    for (int i = 0; i < ListBoxOpcoesResposta.Items.Count; i++)
                                    {
                                        comando.CommandText = "INSERT INTO TipoResposta(ID_Questionario, Numero_Questao, Nome_Resposta)VALUES('" + novoID + "', '" + numero_questao + "', '" + ListBoxOpcoesResposta.Items[i].Text + "')";
                                        comando.ExecuteNonQuery();
                                    }
                                    conexao.Close();

                                    //Limpar Pergunta anterior para passar para a proxima
                                    TextBoxPergunta.Text = "";
                                    DropDownListTipoPergunta.ClearSelection();
                                    ListBoxOpcoesResposta.Items.Clear();
                                    TextBoxAdicionarResposta.Text = "";

                                    //Incrementar o numero da pergunta
                                    numero_pergunta++;
                                    ViewState["count"]     = numero_pergunta;
                                    labelQuestionario.Text = ("Questão-" + numero_pergunta).ToString();
                                }
                                else
                                {
                                    ClientScript.RegisterStartupScript(this.GetType(), "myalert", "alert('Por favor, adicione mais opções de resposta!');", true);
                                    ViewState["count"]               = numero_pergunta;
                                    labelQuestionario.Text           = ("Questão-" + numero_pergunta).ToString();
                                    ListBoxOpcoesResposta.Visible    = true;
                                    ButtonAddResp.Visible            = true;
                                    ButtonRemoveResp.Visible         = true;
                                    TextBoxAdicionarResposta.Visible = true;
                                }
                            }
                            else
                            {
                                conexao.Open();
                                comando.CommandText = "INSERT INTO Questionario(ID_Questionario, Nome_Questionario)VALUES('" + novoID + "', '" + TextBoxNomeQuestionario.Text + "')";
                                comando.ExecuteNonQuery();
                                comando.CommandText = "INSERT INTO Questionario_Pergunta(ID_Questionario, Numero_Questao, Questao, Tipo_Resposta)VALUES('" + novoID + "', '" + numero_questao + "', '" + TextBoxPergunta.Text + "', '" + DropDownListTipoPergunta.Text + "')";
                                comando.ExecuteNonQuery();
                                conexao.Close();

                                //Limpar Pergunta anterior para passar para a proxima
                                TextBoxPergunta.Text = "";
                                DropDownListTipoPergunta.ClearSelection();

                                //Incrementar o numero da pergunta
                                numero_pergunta++;
                                ViewState["count"]     = numero_pergunta;
                                labelQuestionario.Text = ("Questão-" + numero_pergunta).ToString();
                            }
                        }
                        else
                        {
                            ClientScript.RegisterStartupScript(this.GetType(), "myalert", "alert('Nome de Questionario já existente, por favor escolha outro nome!');", true);
                            ViewState["count"]     = numero_pergunta;
                            labelQuestionario.Text = ("Questão-" + numero_pergunta).ToString();
                        }
                    }
                    else
                    {
                        ClientScript.RegisterStartupScript(this.GetType(), "myalert", "alert('Por favor, preencha todos os campos!');", true);
                        ViewState["count"]     = numero_pergunta;
                        labelQuestionario.Text = ("Questão-" + numero_pergunta).ToString();
                    }
                }
                else
                {
                    ButtonEditarQuestao.Visible = true;
                    if (TextBoxNomeQuestionario.Text != "" && TextBoxPergunta.Text != "")
                    {
                        string numero_questao = ("Questão-" + numero_pergunta).ToString();

                        if (DropDownListTipoPergunta.Text == "Adicionar Manualmente")
                        {
                            conexao.Open();
                            comando.CommandText = "INSERT INTO Questionario_Pergunta(ID_Questionario, Numero_Questao, Questao, Tipo_Resposta)VALUES('" + novoID + "', '" + numero_questao + "', '" + TextBoxPergunta.Text + "', '" + DropDownListTipoPergunta.Text + "')";
                            comando.ExecuteNonQuery();

                            if (ListBoxOpcoesResposta.Items.Count >= 2)
                            {
                                for (int i = 0; i < ListBoxOpcoesResposta.Items.Count; i++)
                                {
                                    comando.CommandText = "INSERT INTO TipoResposta(ID_Questionario, Numero_Questao, Nome_Resposta)VALUES('" + novoID + "', '" + numero_questao + "', '" + ListBoxOpcoesResposta.Items[i].Text + "')";
                                    comando.ExecuteNonQuery();
                                }
                                conexao.Close();

                                //Limpar Pergunta anterior para passar para a proxima
                                TextBoxPergunta.Text = "";
                                DropDownListTipoPergunta.ClearSelection();
                                ListBoxOpcoesResposta.Items.Clear();
                                TextBoxAdicionarResposta.Text = "";

                                //Incrementar o numero da pergunta
                                numero_pergunta++;
                                ViewState["count"]     = numero_pergunta;
                                labelQuestionario.Text = ("Questão-" + numero_pergunta).ToString();
                            }
                            else
                            {
                                ClientScript.RegisterStartupScript(this.GetType(), "myalert", "alert('Por favor, adicione mais opções de resposta!');", true);
                                ViewState["count"]               = numero_pergunta;
                                labelQuestionario.Text           = ("Questão-" + numero_pergunta).ToString();
                                ListBoxOpcoesResposta.Visible    = true;
                                ButtonAddResp.Visible            = true;
                                ButtonRemoveResp.Visible         = true;
                                TextBoxAdicionarResposta.Visible = true;
                            }
                        }
                        else
                        {
                            conexao.Open();
                            comando.CommandText = "INSERT INTO Questionario_Pergunta(ID_Questionario, Numero_Questao, Questao, Tipo_Resposta)VALUES('" + novoID + "', '" + numero_questao + "', '" + TextBoxPergunta.Text + "', '" + DropDownListTipoPergunta.Text + "')";
                            comando.ExecuteNonQuery();
                            conexao.Close();

                            //Limpar Pergunta anterior para passar para a proxima
                            TextBoxPergunta.Text = "";
                            DropDownListTipoPergunta.ClearSelection();

                            //Incrementar o numero da pergunta
                            numero_pergunta++;
                            ViewState["count"]     = numero_pergunta;
                            labelQuestionario.Text = ("Questão-" + numero_pergunta).ToString();
                        }
                    }
                    else
                    {
                        ClientScript.RegisterStartupScript(this.GetType(), "myalert", "alert('Por favor, preencha todos os campos!');", true);
                        ViewState["count"]     = numero_pergunta;
                        labelQuestionario.Text = ("Questão-" + numero_pergunta).ToString();
                    }
                }

                LabelConfirmacao.Visible = true;
                LabelConfirmacao.Text    = "Questão-" + (numero_pergunta - 1) + " submetida com sucesso, para terminar o questionário apenas saia deste!";
            }
            else
            {
                if (TextBoxNomeQuestionario.Text != "" && TextBoxPergunta.Text != "")
                {
                    string numero_questao = ("Questão-" + numero_pergunta).ToString();

                    if (DropDownListTipoPergunta.Text == "Adicionar Manualmente")
                    {
                        conexao.Open();
                        comando.CommandText = "UPDATE QUESTIONARIO_PERGUNTA SET QUESTAO = '" + TextBoxPergunta.Text + "', TIPO_RESPOSTA = '" + DropDownListTipoPergunta.Text + "' where ID_QUESTIONARIO = '" + novoID + "' and NUMERO_QUESTAO = '" + numero_questao + "'";
                        comando.ExecuteNonQuery();

                        if (ListBoxOpcoesResposta.Items.Count >= 2)
                        {
                            comando.CommandText = "Delete from TipoResposta Where ID_QUESTIONARIO = '" + novoID + "' and NUMERO_QUESTAO = '" + numero_questao + "'";
                            comando.ExecuteNonQuery();
                            for (int i = 0; i < ListBoxOpcoesResposta.Items.Count; i++)
                            {
                                comando.CommandText = "INSERT INTO TipoResposta(ID_Questionario, Numero_Questao, Nome_Resposta)VALUES('" + novoID + "', '" + numero_questao + "', '" + ListBoxOpcoesResposta.Items[i].Text + "')";
                                comando.ExecuteNonQuery();
                            }
                            conexao.Close();

                            //Limpar Pergunta anterior para passar para a proxima
                            TextBoxPergunta.Text = "";
                            DropDownListTipoPergunta.ClearSelection();
                            ListBoxOpcoesResposta.Items.Clear();
                            TextBoxAdicionarResposta.Text = "";

                            //Incrementar o numero da pergunta
                            numero_pergunta++;
                            ViewState["count"]     = numero_pergunta;
                            labelQuestionario.Text = ("Questão-" + numero_pergunta).ToString();

                            string verificarquestao1;
                            string proximaquestao = ("Questão-" + numero_pergunta).ToString();

                            conexao.Open();
                            comando.CommandText = "select questao from QUESTIONARIO_PERGUNTA where NUMERO_QUESTAO = '" + proximaquestao + "' and ID_QUESTIONARIO = '" + novoID + "'";
                            verificarquestao1   = Convert.ToString(comando.ExecuteScalar());
                            conexao.Close();
                            if (verificarquestao1 == "")
                            {
                            }
                            else
                            {
                                string numero_questao1 = ("Questão-" + numero_pergunta).ToString();
                                conexao.Open();
                                comando.CommandText           = "Select Questao From Questionario_Pergunta where ID_QUESTIONARIO = '" + novoID + "' and NUMERO_QUESTAO = '" + numero_questao1 + "'";
                                TextBoxPergunta.Text          = Convert.ToString(comando.ExecuteScalar());
                                comando.CommandText           = "Select Tipo_Resposta From Questionario_Pergunta where ID_QUESTIONARIO = '" + novoID + "' and NUMERO_QUESTAO = '" + numero_questao1 + "'";
                                DropDownListTipoPergunta.Text = Convert.ToString(comando.ExecuteScalar());
                                conexao.Close();

                                if (DropDownListTipoPergunta.Text == "Adicionar Manualmente")
                                {
                                    ListBoxOpcoesResposta.Visible    = true;
                                    TextBoxAdicionarResposta.Visible = true;
                                    ButtonAddResp.Visible            = true;
                                    ButtonRemoveResp.Visible         = true;

                                    conexao.Open();
                                    comando.CommandText = "Select Nome_Resposta from TipoResposta Where ID_QUESTIONARIO = '" + novoID + "' and NUMERO_QUESTAO = '" + numero_questao1 + "'";
                                    dataReader          = comando.ExecuteReader();

                                    if (dataReader.HasRows)
                                    {
                                        ListBoxOpcoesResposta.Items.Clear();
                                        while (dataReader.Read())
                                        {
                                            ListBoxOpcoesResposta.Items.Add(dataReader[0].ToString());
                                        }
                                    }
                                    else
                                    {
                                        ClientScript.RegisterStartupScript(this.GetType(), "myalert", "alert('Não existem valores adicionados!');", true);
                                    }

                                    conexao.Close();
                                }
                            }
                        }
                        else
                        {
                            ClientScript.RegisterStartupScript(this.GetType(), "myalert", "alert('Por favor, adicione mais opções de resposta!');", true);
                            ViewState["count"]               = numero_pergunta;
                            labelQuestionario.Text           = ("Questão-" + numero_pergunta).ToString();
                            ListBoxOpcoesResposta.Visible    = true;
                            ButtonAddResp.Visible            = true;
                            ButtonRemoveResp.Visible         = true;
                            TextBoxAdicionarResposta.Visible = true;
                        }
                    }
                    else
                    {
                        conexao.Open();
                        comando.CommandText = "UPDATE QUESTIONARIO_PERGUNTA SET QUESTAO = '" + TextBoxPergunta.Text + "', TIPO_RESPOSTA = '" + DropDownListTipoPergunta.Text + "' where ID_QUESTIONARIO = '" + novoID + "' and NUMERO_QUESTAO = '" + numero_questao + "'";
                        comando.ExecuteNonQuery();
                        comando.CommandText = "Delete from TipoResposta Where ID_QUESTIONARIO = '" + novoID + "' and NUMERO_QUESTAO = '" + numero_questao + "'";
                        comando.ExecuteNonQuery();
                        conexao.Close();

                        //Limpar Pergunta anterior para passar para a proxima
                        TextBoxPergunta.Text = "";
                        DropDownListTipoPergunta.ClearSelection();


                        // PASSAR À PERGUNTA SEGUINTE


                        //Incrementar o numero da pergunta
                        numero_pergunta++;
                        ViewState["count"]     = numero_pergunta;
                        labelQuestionario.Text = ("Questão-" + numero_pergunta).ToString();

                        string verificarquestao1;
                        string proximaquestao = ("Questão-" + numero_pergunta).ToString();

                        conexao.Open();
                        comando.CommandText = "select questao from QUESTIONARIO_PERGUNTA where NUMERO_QUESTAO = '" + proximaquestao + "' and ID_QUESTIONARIO = '" + novoID + "'";
                        verificarquestao1   = Convert.ToString(comando.ExecuteScalar());
                        conexao.Close();
                        if (verificarquestao1 == "")
                        {
                        }
                        else
                        {
                            string numero_questao1 = ("Questão-" + numero_pergunta).ToString();
                            conexao.Open();
                            comando.CommandText           = "Select Questao From Questionario_Pergunta where ID_QUESTIONARIO = '" + novoID + "' and NUMERO_QUESTAO = '" + numero_questao1 + "'";
                            TextBoxPergunta.Text          = Convert.ToString(comando.ExecuteScalar());
                            comando.CommandText           = "Select Tipo_Resposta From Questionario_Pergunta where ID_QUESTIONARIO = '" + novoID + "' and NUMERO_QUESTAO = '" + numero_questao1 + "'";
                            DropDownListTipoPergunta.Text = Convert.ToString(comando.ExecuteScalar());
                            conexao.Close();

                            if (DropDownListTipoPergunta.Text == "Adicionar Manualmente")
                            {
                                ListBoxOpcoesResposta.Visible    = true;
                                TextBoxAdicionarResposta.Visible = true;
                                ButtonAddResp.Visible            = true;
                                ButtonRemoveResp.Visible         = true;

                                conexao.Open();
                                comando.CommandText = "Select Nome_Resposta from TipoResposta Where ID_QUESTIONARIO = '" + novoID + "' and NUMERO_QUESTAO = '" + numero_questao1 + "'";
                                dataReader          = comando.ExecuteReader();

                                if (dataReader.HasRows)
                                {
                                    ListBoxOpcoesResposta.Items.Clear();
                                    while (dataReader.Read())
                                    {
                                        ListBoxOpcoesResposta.Items.Add(dataReader[0].ToString());
                                    }
                                }
                                else
                                {
                                    ClientScript.RegisterStartupScript(this.GetType(), "myalert", "alert('Não existem valores adicionados!');", true);
                                }

                                conexao.Close();
                            }
                        }
                    }
                }
                else
                {
                    ClientScript.RegisterStartupScript(this.GetType(), "myalert", "alert('Por favor, preencha todos os campos!');", true);
                    ViewState["count"]     = numero_pergunta;
                    labelQuestionario.Text = ("Questão-" + numero_pergunta).ToString();
                }

                LabelConfirmacao.Visible = true;
                LabelConfirmacao.Text    = "Questão-" + (numero_pergunta - 1) + " alterada e submetida com sucesso, para terminar o questionário apenas saia deste!";
            }
        }