/// <summary> /// Remover contatos anteriores e adicionar os novos /// </summary> private void atualizarTelefones(Associado OAssociado, Associado dbAssociado) { this.db.PessoaTelefone.Where(x => x.idPessoa == dbAssociado.idPessoa && x.dtExclusao == null).Update(x => new PessoaTelefone { dtExclusao = DateTime.Now, idUsuarioExclusao = User.id(), dtAlteracao = DateTime.Now, idUsuarioAlteracao = User.id() }); foreach (var OPessoaTelefone in OAssociado.Pessoa.listaTelefones) { OPessoaTelefone.idUsuarioAlteracao = OAssociado.idUsuarioAlteracao.toInt(); var dbTelefone = dbAssociado.Pessoa.listaTelefones.FirstOrDefault(e => e.id == OPessoaTelefone.id); if (dbTelefone != null) { var EntryEmail = db.Entry(dbTelefone); OPessoaTelefone.setDefaultUpdateValues(); EntryEmail.CurrentValues.SetValues(OPessoaTelefone); EntryEmail.ignoreFields(new[] { "idPessoa" }); EntryEmail.State = EntityState.Modified; continue; } OPessoaTelefone.idPessoa = dbAssociado.idPessoa; OPessoaTelefone.setDefaultInsertValues(); db.PessoaTelefone.Add(OPessoaTelefone); db.SaveChanges(); } }
/// <summary> /// Remover contatos anteriores e adicionar os novos /// </summary> private void atualizarTelefones(Pessoa OPessoaAtualizacao, Pessoa dbPessoa) { this.db.PessoaTelefone.Where(x => x.idPessoa == dbPessoa.id && x.dtExclusao == null) .Update(x => new PessoaTelefone { dtExclusao = DateTime.Now, idUsuarioExclusao = User.id(), motivoExclusao = "Alteração de cadastro" }); if (OPessoaAtualizacao.listaTelefones == null) { return; } foreach (var OPessoaTelefone in OPessoaAtualizacao.listaTelefones) { var dbTelefone = dbPessoa.listaTelefones.FirstOrDefault(e => e.id == OPessoaTelefone.id); if (dbTelefone != null) { var EntryEmail = db.Entry(dbTelefone); OPessoaTelefone.setDefaultUpdateValues(); EntryEmail.CurrentValues.SetValues(OPessoaTelefone); EntryEmail.ignoreFields(new[] { "idPessoa" }); EntryEmail.State = EntityState.Modified; continue; } OPessoaTelefone.idPessoa = dbPessoa.id; OPessoaTelefone.setDefaultInsertValues(); db.PessoaTelefone.Add(OPessoaTelefone); db.SaveChanges(); } }