public IProtocolo ObterProtocoloAtividadesSolicitadas(int id) { IProtocolo protocolo = null; Processo processo = null; try { if (_busProtocolo.ExisteProtocolo(id)) { protocolo = _busProtocolo.ObterProcessosDocumentos(id); if (protocolo.IsProcesso) { processo = protocolo as Processo; //remove os processos que não tem atividade for (var i = 0; i < processo.Processos.Count; i++) { processo.Processos[i] = (_busProtocolo.ExisteAtividade(processo.Processos[i].Id.Value)) ? processo.Processos[i] : null; } processo.Processos.RemoveAll(x => x == null); //remove os documentos que não tem atividade for (var i = 0; i < processo.Documentos.Count; i++) { processo.Documentos[i] = (_busProtocolo.ExisteAtividade(processo.Documentos[i].Id.Value)) ? processo.Documentos[i] : null; } processo.Documentos.RemoveAll(x => x == null); return(processo); } else { return(protocolo as Documento); } } } catch (Exception exc) { Validacao.AddErro(exc); } return(null); }