Ejemplo n.º 1
0
        public IEnumerable <PurchaseDTO> Purchases(int id, string filter)
        {
            CheckCredentials(id);
            Func <PurchaseDTO, bool> test = filter.ToTest <PurchaseDTO>();
            TEntity entity = FindEntity(id);

            CollectCl(entity);
            entity.CommercialLink.ForEach(cl => ClService.CollectPurchases(cl));
            return(entity.CommercialLink.Reduce <CommercialLink, IEnumerable <PurchaseDTO> >(
                       (ret, cl) => ret.Concat(
                           cl.Purchase
                           .Select(purchase => PurchaseService.EntityToDTO(purchase))
                           .Where(test)
                           ),
                       Enumerable.Empty <PurchaseDTO>()
                       ));
        }