Esempio n. 1
0
        /// <summary>
        /// Verifica a formação academica, se dados novos foram inseridos, alterados e excluidos e faz as correções necessárias
        /// </summary>
        private void VerificarFormacaoAcademica()
        {
            bool        achou   = false;
            FormacaoDAO formDao = new FormacaoDAO();

            //Remove dados não válidos
            for (int n = 0; n < CurriculoNovo.Formacao.Count; n++)
            {
                if (CurriculoNovo.Formacao[n].Descricao == null && CurriculoNovo.Formacao[n].Instituicao == null)
                {
                    CurriculoNovo.Formacao.RemoveAt(n);
                }
            }
            //Se o curriculo estava sem formação academica todos os dados devem ser inseridos
            if (CurriculoVelho.Formacao.Count == 0 && CurriculoNovo.Formacao.Count > 0)
            {
                foreach (FormacaoViewModel form in CurriculoNovo.Formacao)
                {
                    form.IdCurriculo = CurriculoVelho.Id;
                    formDao.Inserir(form);
                }


                return;
            }
            //Verifica uma exclusão de formação ou uma alteração
            foreach (FormacaoViewModel form in CurriculoVelho.Formacao)
            {
                foreach (FormacaoViewModel form2 in CurriculoNovo.Formacao)
                {
                    if (form2.Id == form.Id)
                    {
                        if (form2.IdCurriculo == -1)
                        {
                            formDao.Excluir(form2.Id, form.IdCurriculo);
                        }
                        else if (FormacaoChanged(form, form2))
                        {
                            formDao.Alterar(form2);
                        }
                        break;
                    }
                }
            }
            achou = false;
            //verifica inserção de dados
            foreach (FormacaoViewModel form2 in CurriculoNovo.Formacao)
            {
                if (form2.Id == 0)
                {
                    form2.IdCurriculo = CurriculoVelho.Id;
                    formDao.Inserir(form2);
                }
            }
        }