public static DALResponse<Fuente> Obtener(RepositoryProxy proxy, ObtenerFuentes fuente,Pager paginador) { long? totalCount=null; var visitor = ReadExtensions.CreateExpression<Fuente>(); var predicate = PredicateBuilder.True<Fuente>(); if(!fuente.Tipo.IsNullOrEmpty()){ predicate= q=>q.Tipo==fuente.Tipo; } if( fuente.SoloDetalles) { predicate =predicate.AndAlso(q=>q.Codigo.Contains(".")); } visitor.Where(predicate); if(paginador.PageNumber.HasValue) { totalCount= proxy.DbCmd.Count(predicate); int rows= paginador.PageSize.HasValue? paginador.PageSize.Value:DAL.PageSize; visitor.Limit(paginador.PageNumber.Value*rows, rows); } visitor.OrderBy(f=>f.Codigo); var response = new DALResponse<Fuente>(); response.Result= proxy.DbCmd.Select(visitor); response.TotalCount= totalCount; return response; }
public BLResponse<Fuente> ObtenerFuentes(ObtenerFuentes fuente, IRequestContext requestContext) { var cp = Client.Execute(proxy=>{ return Fuentes.Obtener(proxy, fuente, Paginador(requestContext)); }); return new BLResponse<Fuente>{ Result=cp.Result, TotalCount= cp.TotalCount, }; }
public BLResponse<Fuente> Post(ObtenerFuentes fuente) { return Controller.ObtenerFuentes(fuente,RequestContext); }
public BLResponse<Fuente> Get(ObtenerFuentes fuente) { return Post(fuente); }