Esempio n. 1
0
        public bool UpdateCascade(int id, Estagio internship)
        {
            using (var ctx = new CodehunterContext())
            {
                var entityInternship = ctx.Estagio
                                       .Include(e => e.IdContratoNavigation)
                                       .Include(e => e.IdInscricaoNavigation)
                                       .FirstOrDefault(e => e.IdEstagio == id);

                if (entityInternship != null)
                {
                    entityInternship.IdContratoNavigation.Inicio           = internship.IdContratoNavigation.Inicio;
                    entityInternship.IdContratoNavigation.Previsto         = internship.IdContratoNavigation.Previsto;
                    entityInternship.IdContratoNavigation.Efetivado        = internship.IdContratoNavigation.Efetivado;
                    entityInternship.IdContratoNavigation.IdStatusContrato = internship.IdContratoNavigation.IdStatusContrato;
                    entityInternship.ContratoPdf = internship.ContratoPdf;

                    ctx.Update(entityInternship);
                    ctx.SaveChanges();


                    return(true);
                }

                return(false);
            }
        }
Esempio n. 2
0
        public void UpdateCascata(int id, Empresa empresa)
        {
            using (var ctx = new CodehunterContext())
            {
                var empresaBanco = ctx.Empresa.FirstOrDefault(e => e.IdEmpresa == id);
                var acessoBanco  = ctx.Acesso.FirstOrDefault(a => a.IdAcesso == empresaBanco.IdAcesso);


                if (empresa.NomeFantasia != null)
                {
                    empresaBanco.NomeFantasia = empresa.NomeFantasia;
                }

                if (empresa.NumColaboradores != 0)
                {
                    empresaBanco.NumColaboradores = empresa.NumColaboradores;
                }

                if (empresa.NomeRepresentante != null)
                {
                    empresaBanco.NomeRepresentante = empresa.NomeRepresentante;
                }

                if (empresa.Celular != null)
                {
                    empresaBanco.Celular = empresa.Celular;
                }

                if (empresa.Descricao != null)
                {
                    empresaBanco.Descricao = empresa.Descricao;
                }

                if (empresa.Foto != null)
                {
                    empresaBanco.Foto = empresa.Foto;
                }

                ctx.SaveChanges();



                if (empresa.IdAcessoNavigation != null)
                {
                    Acesso acesso = new Acesso
                    {
                        IdAcesso     = empresaBanco.IdAcesso,
                        Email        = acessoBanco.Email,
                        Senha        = empresa.IdAcessoNavigation.Senha,
                        IdTipoAcesso = 3
                    };

                    _acessoRepository.Update(acesso);
                }

                if (empresa.IdAreaAtuacaoNavigation != null)
                {
                    AreaAtuacao areaAtuacao = new AreaAtuacao
                    {
                        IdAreaAtuacao   = empresaBanco.IdAreaAtuacao,
                        NomeAreaAtuacao = empresa.IdAreaAtuacaoNavigation.NomeAreaAtuacao
                    };

                    _areaAtuacaoRepository.Update(areaAtuacao);
                }

                if (empresa.IdEnderecoNavigation != null)
                {
                    Endereco endereco = new Endereco
                    {
                        IdEndereco  = empresaBanco.IdEndereco,
                        Cep         = empresa.IdEnderecoNavigation.Cep,
                        Logradouro  = empresa.IdEnderecoNavigation.Logradouro,
                        Complemento = empresa.IdEnderecoNavigation.Complemento,
                        Bairro      = empresa.IdEnderecoNavigation.Bairro,
                        Localidade  = empresa.IdEnderecoNavigation.Localidade,
                        Uf          = empresa.IdEnderecoNavigation.Uf
                    };

                    _enderecoRepository.Update(endereco);
                }
            }
        }
Esempio n. 3
0
        public void UpdateCascata(int id, Usuario usuario)
        {
            using (var ctx = new CodehunterContext())
            {
                var usuarioBanco = ctx.Usuario
                                   .Include(u => u.IdPreferenciasTrabalhoNavigation)
                                   .FirstOrDefault(e => e.IdUsuario == id);
                var acessoBanco = ctx.Acesso.FirstOrDefault(a => a.IdAcesso == usuarioBanco.IdAcesso);
                //var prefTrabalhoBanco = ctx.PreferenciasTrabalho.FirstOrDefault(p => p.IdPreferenciasTrabalho == usuarioBanco.IdPreferenciasTrabalho);



                if (usuario.Celular != null)
                {
                    usuarioBanco.Celular = usuario.Celular;
                }
                if (usuario.NomePersonalidade != null)
                {
                    usuarioBanco.NomePersonalidade = usuario.NomePersonalidade;
                }
                if (usuario.Curriculo != null)
                {
                    usuarioBanco.Curriculo = usuario.Curriculo;
                }
                if (usuario.Foto != null)
                {
                    usuarioBanco.Foto = usuario.Foto;
                }
                if (usuario.Descricao != null)
                {
                    usuarioBanco.Descricao = usuario.Descricao;
                }

                ctx.SaveChanges();

                if (usuario.IdAcessoNavigation != null)
                {
                    Acesso acesso = new Acesso
                    {
                        IdAcesso     = usuarioBanco.IdAcesso,
                        Email        = acessoBanco.Email,
                        Senha        = usuario.IdAcessoNavigation.Senha,
                        IdTipoAcesso = 1
                    };

                    _acessoRepository.Update(acesso);
                }

                if (usuario.IdAreaAtuacaoNavigation != null)
                {
                    AreaAtuacao areaAtuacao = new AreaAtuacao
                    {
                        IdAreaAtuacao   = usuarioBanco.IdAreaAtuacao,
                        NomeAreaAtuacao = usuario.IdAreaAtuacaoNavigation.NomeAreaAtuacao
                    };

                    _areaAtuacaoRepository.Update(areaAtuacao);
                }


                if (usuario.IdEnderecoNavigation != null)
                {
                    Endereco endereco = new Endereco
                    {
                        IdEndereco  = usuarioBanco.IdEndereco,
                        Cep         = usuario.IdEnderecoNavigation.Cep,
                        Logradouro  = usuario.IdEnderecoNavigation.Logradouro,
                        Complemento = usuario.IdEnderecoNavigation.Complemento,
                        Bairro      = usuario.IdEnderecoNavigation.Bairro,
                        Localidade  = usuario.IdEnderecoNavigation.Localidade,
                        Uf          = usuario.IdEnderecoNavigation.Uf
                    };

                    _enderecoRepository.Update(endereco);
                }

                if (usuario.IdPreferenciasTrabalhoNavigation != null)
                {
                    PreferenciasTrabalho preferenciasTrabalho = new PreferenciasTrabalho
                    {
                        IdPreferenciasTrabalho = usuarioBanco.IdPreferenciasTrabalho,
                        Linkedin             = usuario.IdPreferenciasTrabalhoNavigation.Linkedin,
                        Github               = usuario.IdPreferenciasTrabalhoNavigation.Github,
                        StackOverflow        = usuario.IdPreferenciasTrabalhoNavigation.StackOverflow,
                        SitePessoal          = usuario.IdPreferenciasTrabalhoNavigation.SitePessoal,
                        NivelIngles          = usuario.IdPreferenciasTrabalhoNavigation.NivelIngles,
                        SituacaoProfissional = usuario.IdPreferenciasTrabalhoNavigation.SituacaoProfissional,
                        IdRemoto             = usuario.IdPreferenciasTrabalhoNavigation.IdRemoto,
                        IdRegimeContratacao  = usuarioBanco.IdPreferenciasTrabalhoNavigation.IdRegimeContratacao
                    };

                    _prefTrabalhoRepository.Update(preferenciasTrabalho);
                }

                if (usuario.IdPreferenciasTrabalhoNavigation != null)
                {
                    if (usuario.IdPreferenciasTrabalhoNavigation.IdRegimeContratacaoNavigation != null)
                    {
                        RegimeContratacao regimeContratacao = new RegimeContratacao
                        {
                            IdRegimeContratacao   = usuarioBanco.IdPreferenciasTrabalhoNavigation.IdRegimeContratacao,
                            NomeRegimeContratacao = usuario.IdPreferenciasTrabalhoNavigation.IdRegimeContratacaoNavigation.NomeRegimeContratacao,
                            ExpectativaSalario    = usuario.IdPreferenciasTrabalhoNavigation.IdRegimeContratacaoNavigation.ExpectativaSalario
                        };

                        _regContratacaoRepository.Update(regimeContratacao);
                    }
                }

                #region EXPERIENCIAS

                if (usuario.Experiencias != null)
                {
                    var lista = ctx.Experiencias.Where(x => x.IdUsuario == id).ToList();

                    var numeros = new int[lista.Count];

                    var num = 0;

                    foreach (var item in lista)
                    {
                        numeros[num] = item.IdExperiencias;
                        num++;
                    }

                    num = 0;


                    foreach (var item in usuario.Experiencias)
                    {
                        try
                        {
                            int startIndex = numeros.IndexOf(numeros[num]);

                            Experiencias experiencias = new Experiencias
                            {
                                IdExperiencias = numeros[num],
                                NomeEmpresa    = item.NomeEmpresa,
                                Cargo          = item.Cargo,
                                DateInicio     = item.DateInicio,
                                DateFim        = item.DateFim,
                                IdUsuario      = id
                            };

                            _experienciasRepository.Update(experiencias);
                        }
                        catch (Exception)
                        {
                            Experiencias experienciasNova = new Experiencias
                            {
                                NomeEmpresa = item.NomeEmpresa,
                                Cargo       = item.Cargo,
                                DateInicio  = item.DateInicio,
                                DateFim     = item.DateFim,
                                IdUsuario   = id
                            };

                            _experienciasRepository.Add(experienciasNova);
                        }

                        num++;
                    }
                }

                #endregion
            }
        }