示例#1
0
        public async Task <IActionResult> DadosUsuario()
        {
            try
            {
                var user = await _userManager.FindByNameAsync(User.Identity.Name);

                var endereco = await _accountRepository.GetEndereco(user.EnderecoId);

                var estados = await _localizacaoRepository.GetEstados();

                var estado = await _localizacaoServices.GetEstado(endereco.CidadeId);

                var cursos = await _accountRepository.GetCursos();

                var cidade = await _localizacaoRepository.GetCidade(endereco.CidadeId);

                var cidades = await _localizacaoRepository.GetCidades(estado.Id);

                DadosUsuárioViewModel model = new DadosUsuárioViewModel();
                model.Nome            = user.Nome;
                model.Sobrenome       = user.Sobrenome;
                model.CPF             = user.CPF;
                model.Documento       = user.Documento;
                model.DataNascimento  = user.DataNascimento;
                model.Genero          = user.Genero;
                model.Telefone        = user.PhoneNumber;
                model.Celular         = user.Celular;
                model.Email           = user.Email;
                model.EmailSecundario = user.EmailSecundario;
                model.Logradouro      = endereco.Logradouro;
                model.CidadeId        = endereco.CidadeId;
                model.CidadeNome      = cidade.CidadeNome;
                model.Cidades         = cidades;
                model.Numero          = endereco.Numero;
                model.Bairro          = endereco.Bairro;
                model.CEP             = endereco.CEP;
                model.EstadoID        = estado.Id;
                model.EstadoNome      = estado.Sigla;
                model.Estados         = estados;
                model.Instituicoes    = await _accountRepository.GetInstituicao();

                model.Cursos        = cursos;
                model.Estudante     = user.Estudante;
                model.CursoId       = user.CursosId;
                model.Bolsista      = user.Bolsista;
                model.InstituicaoId = user.InstituicaoId;

                return(View(model));
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.Message));
            }
        }
示例#2
0
        public async Task <bool> UpdateDadosUsuario(DadosUsuárioViewModel user, long enderecoId, long id)
        {
            try
            {
                using (var db = new SqlConnection(_settings.ConnectionString))
                {
                    var updateDadosQuery = "UPDATE dbo.AspNetUsers SET Bolsista = @Bolsista, CPF = @CPF, Celular = @Celular, " +
                                           "DataNascimento = @DataNascimento, Documento = @Documento, EmailSecundario = @EmailSecundario, Estudante = @Estudante, " +
                                           "Genero = @Genero, Nome = @Nome, PhoneNumber = @PhoneNumber, Sobrenome = @Sobrenome, EnderecoId = @EnderecoId, " +
                                           "CursosId = @CursosId, InstituicaoId = @InstituicaoId, Email = @Email, FirstAccess = @FirstAccess WHERE Id = @Id";

                    var resultadoDados = await db.ExecuteAsync(updateDadosQuery,
                                                               new
                    {
                        Id              = id,
                        Bolsista        = user.Bolsista,
                        CPF             = user.CPF,
                        Celular         = user.Celular,
                        DataNascimento  = user.DataNascimento,
                        Documento       = user.Documento,
                        EmailSecundario = user.EmailSecundario,
                        Estudante       = user.Estudante,
                        Genero          = user.Genero,
                        Nome            = user.Nome,
                        PhoneNumber     = user.Telefone,
                        Sobrenome       = user.Sobrenome,
                        EnderecoId      = enderecoId,
                        InstituicaoId   = user.InstituicaoId,
                        Email           = user.Email,
                        CursosId        = user.CursoId,
                        FirstAccess     = user.FirstAccess
                    });
                }
                return(true);
            }
            catch (Exception ex)
            {
                return(false);
            }
        }
示例#3
0
        public async Task <IActionResult> Registrar()
        {
            try
            {
                DadosUsuárioViewModel model = new DadosUsuárioViewModel();
                var user = await _userManager.FindByNameAsync(User.Identity.Name);

                var estados = await _localizacaoRepository.GetEstados();

                var cursos = await _accountRepository.GetCursos();

                model.Instituicoes = await _accountRepository.GetInstituicao();

                model.Estados = estados;
                model.Email   = user.Email;
                model.Cursos  = cursos;
                return(View(model));
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.Message));
            }
        }
示例#4
0
        public async Task <IActionResult> DadosUsuario(DadosUsuárioViewModel model)
        {
            try
            {
                var user = await _userManager.FindByNameAsync(User.Identity.Name);

                var idUsuario = user.Id;

                if (validarCPF(model.CPF) == false)
                {
                    ViewBag.CPF = true;
                    return(RedirectToAction("DadosUsuario"));
                }

                var usuarioDados = new DadosUsuárioViewModel()
                {
                    Nome            = model.Nome,
                    Sobrenome       = model.Sobrenome,
                    CPF             = model.CPF,
                    DataNascimento  = model.DataNascimento,
                    Documento       = model.Documento,
                    Genero          = model.Genero,
                    Telefone        = model.Telefone,
                    Celular         = model.Celular,
                    EmailSecundario = model.EmailSecundario,
                    InstituicaoId   = model.InstituicaoId,
                    Bolsista        = model.Bolsista,
                    Estudante       = model.Estudante,
                    Email           = user.Email,
                    CursoId         = (model.CursoId > 0) ? model.CursoId : 1,
                    FirstAccess     = false
                };

                long cidadeId   = 0;
                long enderecoId = user.EnderecoId;
                var  endereco   = new Endereco
                {
                    Bairro      = model.Bairro,
                    CEP         = model.CEP,
                    Complemento = model.Complemento,
                    Logradouro  = model.Logradouro,
                    Numero      = model.Numero,
                };


                if (model.EnderecoExterior == true)
                {
                    var enderecoExterior = new EnderecoExterior()
                    {
                        Cidade = model.CidadeExterior,
                        Estado = model.EstadoExterior,
                        Pais   = model.Pais
                    };

                    cidadeId = await _localizacaoRepository.UpdateEnderecoExterior(enderecoExterior);

                    enderecoId = await _localizacaoRepository.UpdateEndereco(endereco, 0, cidadeId, enderecoId);
                }
                else
                {
                    cidadeId   = model.CidadeId;
                    enderecoId = await _localizacaoRepository.UpdateEndereco(endereco, cidadeId, enderecoId, 0);
                }

                var result = await _accountRepository.UpdateDadosUsuario(usuarioDados, user.EnderecoId, idUsuario);

                if (result == true)
                {
                    model.ReturnMessage = "Alterações salvas com sucesso";
                    return(RedirectToAction("DadosUsuario"));
                }

                else
                {
                    return(View("DadosUsuario", model));
                }

                return(Ok());
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.Message));
            }
        }