Beispiel #1
0
        public IHttpActionResult Get(int?idCategoria)
        {
            try
            {
                using (var db = new DesputadosContext())
                {
                    var lista = new List <Questao>();

                    var questoes = db.questoes
                                   .Include("alternativas")
                                   .Where(x => x.ID_CATEGORIA == idCategoria);

                    foreach (var questao in questoes)
                    {
                        lista.Add(questao);
                    }

                    return(Ok(lista));
                }
            }
            catch (Exception ex)
            {
                return(InternalServerError(ex));
            }
        }
Beispiel #2
0
        public IHttpActionResult Post([FromBody] RankingRequest rankingRequest)
        {
            try
            {
                using (var db = new DesputadosContext())
                {
                    var u = db.usuarios.FirstOrDefault(x => x.ID == rankingRequest.idUsuario);

                    if (u == null)
                    {
                        return(Ok(new
                        {
                            sucesso = false,
                            mensagem = "O usuário informado não existe"
                        }));
                    }
                    else
                    {
                        var ranking = db.ranking_usuario.FirstOrDefault(x => x.ID_USUARIO == rankingRequest.idUsuario);
                        ranking.PONTUACAO += 1;
                        db.SaveChanges();
                        return(Ok(new
                        {
                            sucesso = true,
                            mensagem = ""
                        }));
                    }
                }
            }
            catch (Exception ex)
            {
                return(InternalServerError(ex));
            }
        }
Beispiel #3
0
        public IHttpActionResult GetRankingUsuario(int idUsuario)
        {
            try
            {
                using (var db = new DesputadosContext())
                {
                    Ranking ranking = null;

                    var rankingUsuario = db.ranking_usuario
                                         .Include("usuarios")
                                         .Where(x => x.ID_USUARIO == idUsuario)
                                         .FirstOrDefault();

                    if (rankingUsuario != null)
                    {
                        ranking = new Ranking()
                        {
                            nomeUsuario = rankingUsuario.usuarios.NOME,
                            pontuacao   = rankingUsuario.PONTUACAO
                        };
                    }

                    return(Ok(ranking));
                }
            }
            catch (Exception ex)
            {
                return(InternalServerError(ex));
            }
        }
Beispiel #4
0
        public IHttpActionResult Get()
        {
            try
            {
                using (var db = new DesputadosContext())
                {
                    var lista = new List <Ranking>();

                    var rankings = db.ranking_usuario
                                   .Include("usuarios")
                                   .OrderByDescending(x => x.PONTUACAO)
                                   .Take(10)
                                   .ToList();

                    foreach (var item in rankings)
                    {
                        lista.Add(item);
                    }

                    return(Ok(lista));
                }
            }
            catch (Exception ex)
            {
                return(InternalServerError(ex));
            }
        }
Beispiel #5
0
        public IHttpActionResult Get()
        {
            try
            {
                using (var db = new DesputadosContext())
                {
                    var lista = new List <Categoria>();

                    foreach (var item in db.categorias)
                    {
                        lista.Add(item);
                    }


                    return(Ok(lista));
                }
            }
            catch (Exception ex)
            {
                return(InternalServerError(ex));
            }
        }
Beispiel #6
0
        public IHttpActionResult Get(string email)
        {
            try
            {
                var mensagem = "";
                var sucesso  = true;
                using (var db = new DesputadosContext())
                {
                    var usuario = db.usuarios.FirstOrDefault(x => x.EMAIL == email);

                    if (usuario == null)
                    {
                        return(Ok(new
                        {
                            sucesso = false,
                            mensagem = "O usuário informado não existe"
                        }));
                    }

                    return(Ok(new
                    {
                        usuario = new Usuario()
                        {
                            id = usuario.ID,
                            email = usuario.EMAIL,
                            nome = usuario.NOME
                        },
                        sucesso = sucesso,
                        mensagem = mensagem
                    }));
                }
            }
            catch (Exception ex)
            {
                return(InternalServerError(ex));
            }
        }
Beispiel #7
0
        public IHttpActionResult Post([FromBody] Usuario usuario)
        {
            try
            {
                int?idUsuario = null;
                using (var db = new DesputadosContext())
                {
                    var u = db.usuarios.FirstOrDefault(x => x.EMAIL == usuario.email);

                    if (u != null)
                    {
                        return(Ok(new
                        {
                            idUsuario = idUsuario,
                            sucesso = false,
                            mensagem = "O usuário informado já está cadastrado"
                        }));
                    }
                    else
                    {
                        using (var tran = db.Database.BeginTransaction())
                        {
                            try
                            {
                                var novoUsuario = db.usuarios.Add(new usuarios()
                                {
                                    NOME  = usuario.nome,
                                    EMAIL = usuario.email
                                });

                                db.SaveChanges();

                                db.ranking_usuario.Add(new ranking_usuario()
                                {
                                    ID_USUARIO = novoUsuario.ID,
                                    PONTUACAO  = 0
                                });

                                db.SaveChanges();

                                tran.Commit();

                                return(Ok(new
                                {
                                    idUsuario = novoUsuario.ID,
                                    sucesso = true,
                                    mensagem = ""
                                }));
                            }
                            catch (Exception ex)
                            {
                                tran.Rollback();

                                throw ex;
                            }
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                return(InternalServerError(ex));
            }
        }