public List <Compania_> Companias(Contrata_ oVContrata, List <GerenciaTipoPago> data) { var listCompanias = new List <Compania_>(); var companias = data.FindAll(p => p.Contratista == oVContrata.ContrataName).ToList(); var CompaniasAgrupadas = companias.GroupBy(g => g.Compania).Select(s => s.First()); foreach (var compania in CompaniasAgrupadas) { var oContrata = new Compania_(); oContrata.ContrataName = oVContrata.ContrataName; oContrata.Cantidad = companias.FindAll(p => p.Compania == compania.Compania).Count; oContrata.CompaniaName = compania.Compania; oContrata.Total = companias.FindAll(p => p.Compania == compania.Compania).Sum(s => s.CostoExamen); listCompanias.Add(oContrata); } return(listCompanias); }
public List <Contrata_> Contratas(List <GerenciaTipoPago> data) { var listContratas = new List <Contrata_>(); var contratas = data.GroupBy(g => g.Contratista).Select(s => s.First()); foreach (var contrata in contratas) { var oContrata = new Contrata_(); oContrata.Cantidad = data.FindAll(p => p.Contratista == contrata.Contratista).ToList().Count; oContrata.ContrataName = contrata.Contratista; oContrata.Total = data.FindAll(p => p.Contratista == contrata.Contratista).ToList().Sum(s => s.CostoExamen); oContrata.Companias = Companias(oContrata, data); listContratas.Add(oContrata); } return(listContratas); }