public void Votar(TB_Opcao opcao)
        {
            try
            {
                if (opcao.option_id < 1 || opcao.option_id > 3)
                {
                    throw new Exception("404 Not Found.");
                }

                StringBuilder strQuery = new StringBuilder();
                strQuery.Append("UPDATE T_OPCAO");
                strQuery.Append(" SET NU_VOTO = NU_VOTO+1");
                strQuery.Append(" WHERE ID_ENQUETE = ");
                strQuery.Append(opcao.poll_id);
                strQuery.Append(" AND ID_OPCAO = ");
                strQuery.Append(opcao.option_id);

                Conexao dadosEnquete = new Conexao();
                dadosEnquete.ExecutarComando(strQuery);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Пример #2
0
 public void Votar(TB_Opcao opcao)
 {
     try
     {
         var objEnquete = new Desafio_DAL.Enquete();
         objEnquete.Votar(opcao);
     }
     catch (Exception)
     {
         throw;
     }
 }
Пример #3
0
        public void Vote(int id, [FromBody] VO_Voto voto)
        {
            Enquete  cadEnquete = new Enquete();
            TB_Opcao opcao      = new TB_Opcao();

            opcao.poll_id = id;
            if (voto.option_id > 3 || voto.option_id < 1)
            {
                voto.option_id = 1;
            }
            opcao.option_id = voto.option_id;
            cadEnquete.Votar(opcao);
        }
        public TB_Enquete ListarPorId(int id)
        {
            try
            {
                var strQuery = string.Format("SELECT E.ID, E.NM_DESCRICAO, E.NU_VIEW" +
                                             " FROM T_ENQUETE E " +
                                             " WHERE ID={0}", id);

                var strQueryO = string.Format("SELECT E.ID_OPCAO, E.NM_OPCAO_DESCRICAO, E.NU_VOTO " +
                                              " FROM T_OPCAO E " +
                                              " WHERE ID_ENQUETE={0} ORDER BY E.ID_OPCAO", id);


                Conexao       DadosEnquete  = new Conexao();
                SqlDataReader retornoReader = DadosEnquete.RetornoReader(strQuery);

                TB_Enquete obj = null;

                if (retornoReader.Read())
                {
                    obj = new TB_Enquete
                    {
                        poll_id          = int.Parse(retornoReader["ID"].ToString()),
                        poll_description = retornoReader["NM_DESCRICAO"].ToString(),
                        views            = int.Parse(retornoReader["NU_VIEW"].ToString()),
                    };
                    TB_Opcao        objO         = null;
                    List <TB_Opcao> objOList     = new List <TB_Opcao> {
                    };
                    SqlDataReader retornoReaderO = DadosEnquete.RetornoReader(strQueryO);
                    while (retornoReaderO.Read())
                    {
                        objO = new TB_Opcao
                        {
                            poll_id            = obj.poll_id,
                            option_id          = int.Parse(retornoReaderO["ID_OPCAO"].ToString()),
                            option_description = retornoReaderO["NM_OPCAO_DESCRICAO"].ToString(),
                            votes = int.Parse(retornoReaderO["NU_VOTO"].ToString())
                        };
                        objOList.Add(objO);
                    }
                    obj.options = objOList;
                }
                return(obj);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
        public List <TB_Enquete> ListarTodos()
        {
            try
            {
                var strQuery = string.Format("SELECT E.ID, E.NM_DESCRICAO, E.NU_VIEW " +
                                             " FROM T_ENQUETE E");
                var strQueryOpcao = string.Format("");


                Conexao       DadosEnquete  = new Conexao();
                SqlDataReader retornoReader = DadosEnquete.RetornoReader(strQuery);

                TB_Enquete        obj         = null;
                List <TB_Enquete> listenquete = new List <TB_Enquete>();



                while (retornoReader.Read())
                {
                    obj = new TB_Enquete();

                    obj.poll_id = int.Parse(retornoReader["ID"].ToString());

                    TB_Opcao        objOpcao  = null;
                    List <TB_Opcao> listopcao = new List <TB_Opcao>();
                    strQueryOpcao = string.Format("SELECT ID_OPCAO, NM_OPCAO_DESCRICAO, NU_VOTO FROM T_OPCAO WHERE ID_ENQUETE =" + obj.poll_id + " ORDER BY ID_OPCAO");
                    SqlDataReader retornoReaderOpcao = DadosEnquete.RetornoReader(strQueryOpcao);
                    while (retornoReaderOpcao.Read())
                    {
                        objOpcao                    = new TB_Opcao();
                        objOpcao.poll_id            = obj.poll_id;
                        objOpcao.option_id          = int.Parse(retornoReaderOpcao["ID_OPCAO"].ToString());
                        objOpcao.option_description = retornoReaderOpcao["NM_OPCAO_DESCRICAO"].ToString();
                        objOpcao.votes              = int.Parse(retornoReaderOpcao["NU_VOTO"].ToString());
                        listopcao.Add(objOpcao);
                    }
                    obj.options          = listopcao;
                    obj.poll_description = retornoReader["NM_DESCRICAO"].ToString();
                    obj.views            = int.Parse(retornoReader["NU_VIEW"].ToString());

                    listenquete.Add(obj);
                }
                return(listenquete);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Пример #6
0
        public VO_Enquete_Retorno Cadastrar([FromBody] VO_Enquete_Post enquete_post)
        {
            TB_Enquete         enquete = new TB_Enquete();
            VO_Enquete_Retorno retorno = new VO_Enquete_Retorno();

            enquete.poll_description = enquete_post.poll_description;
            TB_Opcao        objO     = new TB_Opcao();
            List <TB_Opcao> objOList = new List <TB_Opcao> {
            };

            for (int i = 0; i < 3; i++)
            {
                objO.option_description = enquete_post.options[i];
                objO.option_id          = i + 1;
                objOList.Add(objO);
                objO = new TB_Opcao();
            }
            enquete.options = objOList;
            Enquete cadEnquete = new Enquete();

            retorno.poll_id = cadEnquete.Inserir(enquete);
            return(retorno);
        }