protected void Page_Load(object sender, EventArgs e)
 {
     //executa as instruções no primeiro load da página
     if (!IsPostBack)
     {
         try
         {
             //identifica o valor das variaveis de sessão
             id  = Convert.ToInt32(Session["Id_quest"]);
             reg = Convert.ToInt32(Session["user"]);
             //pesquisa na base o usuário e armazena na variavel global
             user = controle.pesquisaUsuarioReg(reg);
             //pesquisa na base o questionário, informação armazenada em variavel local
             Questionarios quest = controle.pesquisaQuestionarioId(id);
             //pesquisa na base o renderizador e armazena na variavel global
             render = controle.pesquisaRenderizarIdUser(id, user.id);
             //modifica os controles da view para personalização
             lblID.Text     = id.ToString();
             lblTitulo.Text = quest.nome;
             //identifica se o usuário é público, não sendo segue as instruções do if a seguir
             if (reg != 0)
             {
                 //mais uma vez personaliza os controles da view
                 lblUser.Text = user.registro.ToString() + " - " + user.nome;
                 //pesquisa a lista das perguntas do questionário a ser renderizado
                 perg = controle.pesquisaPerguntaQuestionario(id);
                 //identifica se existe o formulario já preparado para preenchimento na base de dados, tabela Prenchimentos
                 preenchimentos = controle.pesquisaPreenchimento_render_user(render.id, lblUser.Text);
                 if (preenchimentos.Count == 0)
                 {
                     //não identificando, executa Stored Procedure que preenche todas as questões na tabela Prenchimentos com valores 0
                     controle.construtor_formulario(id, render.id, lblUser.Text);
                 }
                 //atribui a variavel o valor da quantidade de questões
                 countMax = perg.Count;
                 //modifica os controles da view
                 pnlButton.Visible = true;
                 //chama função para renderizar a pergunta em tempo de execução
                 posicionaPergunta();
             }
             //se o usuário for público condiciona ele ao preenchimento do campo texto nome do usuário
             else
             {
                 // modifica os controles da view
                 lblUser.Text       = "Insira seu nome:";
                 txtUser.Visible    = true;
                 btnIniciar.Visible = true;
             }
         }
         //instruções circundadas com try, catch para evitar a exibição de possíveis erros
         catch { }
     }
     //a cada ação de postback da pagina carrega novamente a pergunta em tela
     else
     {
         posicionaPergunta();
     }
 }
예제 #2
0
 //função para salvar alterações realizadas
 protected void btnSalvar_Click(object sender, EventArgs e)
 {
     try
     {
         if (tipo.Equals("quest"))
         {
             //cria uma lista do tipo usuários
             LUser = new List <Usuarios>();
             foreach (ListItem value in chkSelecionados.Items)
             {
                 //para cada elemento na checkbutton list adiciona um novo usuário
                 LUser.Add(controle.pesquisaUsuarioNomeCompleto(value.Text));
             }
             foreach (Usuarios value in LUser)
             {
                 //para cada usuário adicionado a lista, inclui os dados na base de dados do modulo de renderização
                 render = new Renderizar();
                 controle.salvarRender(render);
                 render.id_questionario  = Convert.ToInt32(rblQuest.SelectedValue);
                 render.data_renderizado = DateTime.Now;
                 render.id_usuario       = value.id;
                 //utiliza como parametro a data da variável data
                 render.data_validade = Convert.ToDateTime(data);
                 controle.atualizarDados();
             }
         }
         else//tipo.Equals("user")
         {
             //cria uma lista do tipo questionários
             LQuest = new List <Questionarios>();
             int i = 0;
             foreach (ListItem value in chkSelecionados.Items)
             {
                 //para cada elemento na checkbutton list adiciona um novo questionário
                 LQuest.Add(controle.pesquisaQuestionarioNome(value.Text));
             }
             foreach (Questionarios value in LQuest)
             {
                 //para cada questionário adicionado a lista, inclui os dados na base de dados do modulo de renderização
                 render = new Renderizar();
                 controle.salvarRender(render);
                 render.id_usuario       = Convert.ToInt32(rblUser.SelectedValue);
                 render.data_renderizado = DateTime.Now;
                 render.id_questionario  = value.id;
                 //utiliza como parametro a lista de datas
                 render.data_validade = dataLista[i++];
                 controle.atualizarDados();
             }
         }
         Response.Redirect("Usuario.aspx");
     }
     //instruções circundadas com try, catch para evitar a exibição de possíveis erros
     catch { }
 }
예제 #3
0
 public void excluirRender(Renderizar render)
 {
     dbRepository.excluirDadosRender(render);
 }
예제 #4
0
        /*
         * Pesquisa Render
         */

        public void salvarRender(Renderizar render)
        {
            dbRepository.salvarNovoRender(render);
        }
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                try
                {
                    //verifica se o login foi feito por usuário + senha na página Index.aspx
                    if (Session["user"].ToString() == "")
                    {
                        //Variaveis de sessão recebidas no postback url
                        string regist = Convert.ToString(Request.Form["hddRegFunc"]);
                        string nome   = Convert.ToString(Request.Form["hddNomeFunc"]);
                        string perfil = Convert.ToString(Request.Form["hddEnumPerfil"]);

                        //verifica a pré existencia do usuário na base de dados
                        if (controle.pesquisaUsuarioReg(Convert.ToInt32(regist)) == null)
                        {
                            ScriptManager.RegisterStartupScript(this.Page, this.Page.GetType(), "alerta", "alert('Usuário CAC não cadastrado na aplicação')", true);
                            //Adiciona o usuário do acesso via postback url a base de dados
                            controle.salvarUsuario(user);
                            user.nome     = nome;
                            user.registro = Convert.ToInt32(registro);
                            user.perfil   = Convert.ToInt32(perfil);
                            //salva a adição de usuário
                            controle.atualizarDados();
                        }
                    }
                    //busca na base de dados o usuário no caso de login por usuário + senha
                    else
                    {
                        //busca na base de dados por meio de variavel de sessão
                        registro = Convert.ToInt32(Session["user"]);
                        user     = controle.pesquisaUsuarioReg(registro);
                    }
                    //verifica se na interface login o usuário utilizou o login anônimo e exibe na tela informação referente ao login
                    if (registro == 0)
                    {
                        lblUser.Text = "Acesso Público";
                    }
                    else
                    {
                        lblUser.Text = user.registro.ToString() + " - " + user.nome;
                    }
                    //atribui a lista de objetos do tipo renderização aqueles que tenha como usuário o registro do login
                    LRend = controle.pesquisaRenderizarReg(user.id);
                    foreach (Renderizar value in LRend)
                    {
                        //variavel para impedir a duplicidade de inclusão na lista de questionários
                        bool publico = false;
                        //verifica se o usuário que acessou é público
                        if (registro != 0)
                        {
                            //busca para cada elemento a existencia deste formulário no formato público
                            render = controle.pesquisaRenderizarIdUser(value.id_questionario, 0);
                            if (render != null)
                            {
                                //localizando exclui esse render do perfil do usuário mantendo somente o acesso público
                                controle.excluirRenderizar(value);
                                controle.atualizarDados();
                                //localizado o id do questionário como público
                                publico = true;
                            }
                        }
                        //verifica se o objeto faz parte da lista e se não é público
                        if (value != null && !publico)
                        {
                            //busca para o objeto o questionário referente ao render
                            quest = controle.pesquisaQuestionarioId(value.id_questionario);
                            if (quest != null)
                            {
                                //adiciona ao objeto lista de questionários este elemento, desde que não seja nulo
                                listaQuest.Add(quest);
                            }
                        }
                    }
                    //se o registro for diferente do perfil de acesso público apresenta ainda os questionários públicos na lista deste usuário
                    if (registro != 0)
                    {
                        //atribui a lista de objetos do tipo renderização aqueles que tenha como usuário o registro do usuário público
                        LRend = controle.pesquisaRenderizarReg(0);
                        foreach (Renderizar value in LRend)
                        {
                            //busca para o objeto o questionário referente ao render
                            quest = controle.pesquisaQuestionarioId(value.id_questionario);
                            if (quest != null)
                            {
                                //adiciona ao objeto lista de questionários este elemento, desde que não seja nulo
                                listaQuest.Add(quest);
                            }
                        }
                    }
                    //se houverem elementos na lista passa esta como parametro para a função que carrega a radio button list
                    if (listaQuest.Count() > 0)
                    {
                        carregaRadioList(listaQuest);
                    }
                    //não havendo elementos na lista informa ao usuário
                    else
                    {
                        lblMensagem.Visible = true;
                        lblMensagem.Text    = "Não existem questionários públicos ou para este usuário";
                    }
                }
                //instruções circundadas com try, catch para evitar a exibição de possíveis erros ao usuário
                catch { }
            }
        }