public IEnumerable <ProjetoTipoDemanda> AssociarTipoDemandaProjeto(int projetoId, IEnumerable <TipoDemanda> tiposDemandas) { var atual = ObterTipoDemandasAssociadas(projetoId).ToList(); var toRemove = atual.Except(tiposDemandas).ToList(); var toAdd = tiposDemandas.Except(atual).ToList(); if (toRemove.Any()) { var curr = repoPrjTpDem.BuscarPor(t => t.ProjetoId == projetoId && t.Ativo).ToList() .Join( toRemove, d => d.TipoDemandaId, r => r.Id, (TipoDemandaProjeto, TipoDemanda) => new { TipoDemandaProjeto, TipoDemanda } ).Where(w => w.TipoDemanda.Id == w.TipoDemandaProjeto.TipoDemandaId); foreach (var r in curr) { repository.Remover(r.TipoDemandaProjeto.Id); } } foreach (var a in toAdd) { var objToAdd = new ProjetoTipoDemanda { ProjetoId = projetoId, TipoDemandaId = a.Id }; repoPrjTpDem.Adicionar(objToAdd); } repository.SaveChanges(); return(repoPrjTpDem.BuscarPor(b => b.ProjetoId == projetoId && b.Ativo)); }
public virtual T Adicionar(T obj) { try { repository.Adicionar(obj); repository.SaveChanges(); return(obj); } catch (Exception ex) { throw ex; } }
public void Index() { _clienteRepository.Adicionar(new Cliente()); }
public void Index() { _genericRepository.Adicionar(new Cliente()); }
public void AtualizarPessoaColaborador(int pessoaId, int tipoPessoa, List <Telefone> lstNovoTelefone, List <Ferramenta> lstNovaFerramenta, List <Sigla> lstNovaSigla) { try { //var colaborador = repColaborador.BuscarPor(c => c.PessoaId == pessoaId).FirstOrDefault(); var lstTelAtual = repTelefones.BuscarPor(t => t.PessoaId == pessoaId); var lstferAtual = new List <Ferramenta>(); var lstsigAtual = new List <Sigla>(); //if (tipoPessoa == 1) { // lstferAtual = colaborador != null ? (from af in ctx.AcessoFerramentas // join f in ctx.Ferramentas on af.FerramentaId equals f.Id // where af.Ativo && af.ColaboradorId == colaborador.Id // select f).ToList() : // new List<Ferramenta>(); // lstsigAtual = colaborador != null ? (from acs in ctx.AcessoSiglas // join s in ctx.Siglas on acs.SiglaId equals s.Id // where acs.Ativo && acs.ColaboradorId == colaborador.Id // select s).ToList() : // new List<Sigla>(); //} var lstTelToAdd = new List <Telefone>(); //var lstFerToAdd = new List<Ferramenta>(); //var lstSigToAdd = new List<Sigla>(); var lstTelToRemove = new List <Telefone>(); //var lstFerToRemove = new List<Ferramenta>(); //var lstSigToRemove = new List<Sigla>(); foreach (var novo in lstNovoTelefone) { if (lstTelAtual.FirstOrDefault(a => a.Id == novo.Id) == null) { lstTelToAdd.Add(novo); } } //if (tipoPessoa == 1) { // foreach (var novo in lstNovaFerramenta) { // if (lstferAtual.FirstOrDefault(a => a.Id == novo.Id) == null) { // lstFerToAdd.Add(novo); // } // } // foreach (var novo in lstNovaSigla) { // if (lstsigAtual.FirstOrDefault(a => a.Id == novo.Id) == null) { // lstSigToAdd.Add(novo); // } // } //} foreach (var atual in lstTelAtual) { if (lstNovoTelefone.FirstOrDefault(a => a.Id == atual.Id) == null) { lstTelToRemove.Add(atual); } } //if (tipoPessoa == 1) { // foreach (var atual in lstferAtual) { // if (lstNovaFerramenta.FirstOrDefault(a => a.Id == atual.Id) == null) { // lstFerToRemove.Add(atual); // } // } // foreach (var atual in lstsigAtual) { // if (lstNovaSigla.FirstOrDefault(a => a.Id == atual.Id) == null) { // lstSigToRemove.Add(atual); // } // } //} foreach (var a in lstTelToAdd) { a.PessoaId = pessoaId; a.Tipo = null; repTelefones.Adicionar(a); } //if (tipoPessoa == 1) { // foreach (var a in lstSigToAdd) { // repAcessoSiglas.Adicionar(new AcessoSigla { ColaboradorId = colaborador.Id, SiglaId = a.Id }); // } // foreach (var a in lstFerToAdd) { // repAcessoFerramentas.Adicionar(new AcessoFerramenta { ColaboradorId = colaborador.Id, FerramentaId = a.Id }); // } //} foreach (var r in lstTelToRemove) { repTelefones.Desativar(r.Id); } //if (tipoPessoa == 1) { // foreach (var r in lstFerToRemove) { // repFerramentasAssociadas.Desativar(r.Id); // } // foreach (var r in lstSigToRemove) { // repSiglasAssociadas.Desativar(r.Id); // } //} repTelefones.SaveChanges(); //repColaborador.SaveChanges(); //if (tipoPessoa == 1) { // repFerramentasAssociadas.SaveChanges(); // repSiglasAssociadas.SaveChanges(); // repFerramentasAssociadas.SaveChanges(); // repSiglasAssociadas.SaveChanges(); //} } catch (Exception ex) { throw ex; } }
public IActionResult Index() { _genericRepository.Adicionar(new Cliente()); return(View()); }
// Injeção de Dependencia via propriedade // Dificulta os testes // Usar caso não for possível usar no construtor public IActionResult Index([FromServices] IGenericRepository <About> genericRepository) { genericRepository.Adicionar(new About()); return(View()); }