Ejemplo n.º 1
0
        public async Task <IHttpActionResult> Autenticar(string email, string senha)
        {
            if ((await this.service.RetornarTodosUsuarios()).Any(x => x.Email == email && x.Senha == senha))
            {
                var u = (await this.service.RetornarTodosUsuarios()).Where(x => x.Email == email && x.Senha == senha).First();

                var user = new UsuarioMobile
                {
                    DataNascimento = u.DataNascimento,
                    Email          = u.Email,
                    Senha          = u.Senha,
                    DDD            = u.DDD.ToString(),
                    Municipio      = u.Municipio,
                    FacebookID     = u.FacebookID,
                    Nome           = u.Nome,
                    Sexo           = u.Sexo,
                    Telefone       = u.Telefone,
                    Id             = u.Id
                };

                var lista = new List <CategoriaMobile>();
                foreach (var item in u.UsuarioCategoria)
                {
                    lista.Add(new CategoriaMobile {
                        Id = item.Categoria.Id, Nome = item.Categoria.Nome, UsuarioId = user.Id
                    });
                }

                user.Categorias = lista;

                return(Ok(user));
            }

            return(BadRequest());
        }
Ejemplo n.º 2
0
        public async Task <IHttpActionResult> AtualizaCategoriasViaFB([FromBody] string usuarioJson)
        {
            try
            {
                var _usuario   = JsonConvert.DeserializeObject <Usuario>(usuarioJson);
                var _usuarioBD = await this.service.RetornarUsuarioPorId(_usuario.Id);

                List <int> catIds = new List <int>();

                if (!String.IsNullOrEmpty(_usuario.CategoriaMobileSelection))
                {
                    await this.ucRepo.DeletarCategoriasDoUsuario(_usuarioBD.Id);
                }

                foreach (var item in _usuario.CategoriaMobileSelection.Split(';'))
                {
                    var uc = new UsuarioCategoria {
                        UsuarioId = _usuarioBD.Id, CategoriaId = Convert.ToInt32(item)
                    };
                    await this.ucRepo.InserirUsuarioCategoria(uc);

                    catIds.Add(Convert.ToInt32(item));
                }

                _usuarioBD.Email = _usuario.Email;
                _usuarioBD.CategoriaMobileSelection = _usuario.CategoriaMobileSelection;

                await this.service.AtualizarUsuario(_usuarioBD);

                var listaCategorias = (await this.catRepo.RetornarTodasCategorias()).Where(x => catIds.Contains(x.Id)).ToList();

                var user = new UsuarioMobile
                {
                    DataNascimento = _usuarioBD.DataNascimento,
                    DDD            = _usuarioBD.DDD.ToString(),
                    Municipio      = _usuarioBD.Municipio,
                    Nome           = _usuarioBD.Nome,
                    Sexo           = _usuarioBD.Sexo,
                    Telefone       = _usuarioBD.Telefone,
                    Id             = _usuarioBD.Id,
                    Email          = _usuarioBD.Email,
                    Categorias     = MapeiaCategoriaParaMobile(listaCategorias).ToList()
                };

                return(Ok(user));
            }
            catch (Exception ex)
            {
                return(InternalServerError(ex));
            }
        }
Ejemplo n.º 3
0
        public async Task <IHttpActionResult> NovoCadastro([FromBody] string usuario)
        {
            if (String.IsNullOrEmpty(usuario))
            {
                return(InternalServerError(new ArgumentException("Json inválido")));
            }

            try
            {
                var usuarioJson = JsonConvert.DeserializeObject <Usuario>(usuario);

                //if (!String.IsNullOrEmpty(usuarioJson.Email) && (await this.service.RetornarTodosUsuarios()).Any(x => x.Email == usuarioJson.Email))
                //    return BadRequest("Email Já existe");

                if (usuarioJson.DataNascimento == null && usuarioJson.Sexo == null)
                {
                    usuarioJson.DataNascimento = null;
                    usuarioJson.Sexo           = null;
                }

                var retornoInsertUsuario = await this.service.InserirRetornarUsuario(usuarioJson);

                var listaCategorias = new List <Categoria>();

                if (!String.IsNullOrEmpty(usuarioJson.CategoriaMobileSelection))
                {
                    List <int> catIds = new List <int>();
                    foreach (var item in usuarioJson.CategoriaMobileSelection.Split(';'))
                    {
                        var uc = new UsuarioCategoria {
                            UsuarioId = retornoInsertUsuario.Id, CategoriaId = Convert.ToInt32(item)
                        };
                        await this.ucRepo.InserirUsuarioCategoria(uc);

                        catIds.Add(Convert.ToInt32(item));
                    }

                    listaCategorias = (await this.catRepo.RetornarTodasCategorias()).Where(x => catIds.Contains(x.Id)).ToList();
                }

                if (retornoInsertUsuario != null && !String.IsNullOrEmpty(retornoInsertUsuario.Email))
                {
                    EnviarEmailConfirmacaoCadastro(usuarioJson);
                }

                UsuarioMobile user;

                if (listaCategorias != null && listaCategorias.Any())
                {
                    user = new UsuarioMobile
                    {
                        DataNascimento = retornoInsertUsuario.DataNascimento,
                        DDD            = retornoInsertUsuario.DDD.ToString(),
                        Municipio      = retornoInsertUsuario.Municipio,
                        Nome           = retornoInsertUsuario.Nome,
                        Sexo           = retornoInsertUsuario.Sexo,
                        Telefone       = retornoInsertUsuario.Telefone,
                        Id             = retornoInsertUsuario.Id,
                        Email          = retornoInsertUsuario.Email,
                        Categorias     = MapeiaCategoriaParaMobile(listaCategorias).ToList()
                    };
                }
                else
                {
                    user = new UsuarioMobile
                    {
                        DataNascimento = retornoInsertUsuario.DataNascimento,
                        DDD            = retornoInsertUsuario.DDD.ToString(),
                        Municipio      = retornoInsertUsuario.Municipio,
                        Nome           = retornoInsertUsuario.Nome,
                        Sexo           = retornoInsertUsuario.Sexo,
                        Telefone       = retornoInsertUsuario.Telefone,
                        Id             = retornoInsertUsuario.Id,
                        Email          = retornoInsertUsuario.Email,
                    };
                }

                var json = await Task.Factory.StartNew(() => JsonConvert.SerializeObject(user.Id));

                if (usuarioJson.DataNascimento != null)
                {
                    return(Ok(user.Id));
                }
                else
                {
                    return(Ok(retornoInsertUsuario));
                }
            }
            catch (Exception ex)
            {
                return(InternalServerError(ex));
            }
        }