Пример #1
0
 /// <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());
 }
Пример #2
0
        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());
        }
Пример #4
0
        /// <summary>
        /// Search Document
        /// </summary>
        public DocumentSearchRequestResponse SearchDocument(DocumentSearchRequest request)
        {
            int rowCount;

            return(new DocumentSearchRequestResponse
            {
                Documents = documentRepository.SearchDocument(request, out rowCount),
                TotalCount = rowCount
            });
        }
Пример #5
0
        /// <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());
        }
Пример #6
0
 public Task <ActionResult <IPaginationResult <Document> > > Get([FromQuery] DocumentSearchRequest request)
 {
     return(this._documentsService.Search(request).Convert <IPaginationResult <Document> >(this));
 }