public IActionResult Grid(DocumentSearchModel model) { model = InitializeModel(model); var result = _commonFacadeApiClient.GetDocuments(model).Result; return(PartialView(result)); }
public async Task <List <DocumentDto> > GetDocuments(DocumentSearchModel searchModel) { var daos = await this.context.Documents.Include(x => x.FileType).ToListAsync(); var fileTypes = daos .Select(x => x.FileType.ToDto()) .Distinct() .ToList(); return(daos.Select(dao => dao.ToDto(fileTypes.First(fileType => fileType.Id == dao.FileType.Id))).ToList()); }
public async Task <DocumentSearchModel> GetDocuments(DocumentSearchModel model) { var url = ODataApiUri + "/Document?" + GetFilterString(model); var result = await GetOdataResultFromApi(url); var searchResultCount = 0; if (result.Count != null) { int.TryParse(result.Count.ToString(), out searchResultCount); } model.TotalRows = searchResultCount; model.DocumentSearchResult.Clear(); model.DocumentSearchResult.AddRange(result.Items.Select(item => JsonConvert.DeserializeObject <DocumentDto>(item.ToString()))); return(model); }
private string GetFilterString(DocumentSearchModel searchModel) { var filterString = string.Empty; if (searchModel != null) { if (!string.IsNullOrWhiteSpace(searchModel.FilterText)) { if (string.IsNullOrWhiteSpace(filterString)) { filterString = ODataFilterConstant.Filter + $"contains(Forename,'{searchModel.FilterText}') eq true"; } else { filterString += $" or contains(Forename,'{searchModel.FilterText}') eq true"; } filterString += $" or contains(Surname,'{searchModel.FilterText}') eq true"; } AddPageSizeNumberAndSortingInFilterString(searchModel, ref filterString); } return(filterString); }
private DocumentSearchModel InitializeModel(DocumentSearchModel model) { if (model == null) { model = new DocumentSearchModel { SortColumn = "Id", SortDirection = "Desc", PageSize = 8, PageNumber = 1 }; } else { if (string.IsNullOrWhiteSpace(model.SortColumn)) { model.SortColumn = "Id"; model.SortDirection = "Desc"; } } model.TargetGridId = "DocumentGrid"; return(model); }
public async Task <DocumentSearchModel> GetDocuments(DocumentSearchModel model) { return(await _documentApiClient.GetDocuments(model)); }
public async Task <IActionResult> GetDocuments([FromQuery] DocumentSearchModel searchModel) { var documents = await this.documentRepository.GetDocuments(searchModel); return(this.Ok(documents.Select(DocumentOverview.FromDto))); }