/// <summary> /// Get Documents /// </summary> public DocumentSearchRequestResponse Get([FromUri] DocumentSearchRequest request) { if (request == null || !ModelState.IsValid) { throw new HttpException((int)HttpStatusCode.BadRequest, "Invalid Request"); } return(documentService.SearchDocument(request).CreateFrom()); }
public MainRule(DocumentSearchRequest request, IRule parentRule = null) { // Create Context Context = new ContextModel(request, this); ParentRule = parentRule; ValidEvaluate += OnValidEvaluate; }
public async Task <IWrappedResponse> Search(DocumentSearchRequest request) { var cmd = ServiceCommand <Document, Rules.Documents.Search.MainRule> .Create(_serviceProvider) .When(new Rules.Documents.Search.MainRule(request)) .Then(SearchAction); return(await cmd.Execute()); }
/// <summary> /// Search Document /// </summary> public DocumentSearchRequestResponse SearchDocument(DocumentSearchRequest request) { int rowCount; return(new DocumentSearchRequestResponse { Documents = documentRepository.SearchDocument(request, out rowCount), TotalCount = rowCount }); }
/// <summary> /// Search Document /// </summary> public IEnumerable <Document> SearchDocument(DocumentSearchRequest request, out int rowCount) { int fromRow = (request.PageNo - 1) * request.PageSize; int toRow = request.PageSize; Expression <Func <Document, bool> > query = document => (string.IsNullOrEmpty(request.DocumentCodeNameText) || (document.DocumentCode.Contains(request.DocumentCodeNameText)) || (document.DocumentName.Contains(request.DocumentCodeNameText))) && (!request.DocumentGroypId.HasValue || request.DocumentGroypId == document.DocumentGroupId); rowCount = DbSet.Count(query); return(request.IsAsc ? DbSet.Where(query) .OrderBy(documentOrderByClause[request.DocumentOrderBy]) .Skip(fromRow) .Take(toRow) .ToList() : DbSet.Where(query) .OrderByDescending(documentOrderByClause[request.DocumentOrderBy]) .Skip(fromRow) .Take(toRow) .ToList()); }
public Task <ActionResult <IPaginationResult <Document> > > Get([FromQuery] DocumentSearchRequest request) { return(this._documentsService.Search(request).Convert <IPaginationResult <Document> >(this)); }