Example #1
0
        public async Task <PersonDocumentSearchModel> GetPersonDocuments(PersonDocumentSearchModel model)
        {
            var url    = ODataApiUri + "/PersonDocument?" + 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.PersonDocumentSearchResult.Clear();
            try
            {
                model.PersonDocumentSearchResult.AddRange(result.Items.Select(item => JsonConvert.DeserializeObject <PersonDocumentDto>(item.ToString())));
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
                throw;
            }

            return(model);
        }
Example #2
0
        public IActionResult Document(PersonDocumentSearchModel model)
        {
            model = InitializePersonDocumentSearchModel(model);
            var documentTypes = _lookupApiClient.GetLookup().Result.DocumentTypes?.ConvertAll(x => (BaseLookupDto)x);

            model.DocumentTypeSelectList = SelectedListHelper.GetSelectListForItems(documentTypes, "");
            return(PartialView(model));
        }
Example #3
0
        public async Task <IActionResult> DocumentGrid(PersonDocumentSearchModel model)
        {
            model = InitializePersonDocumentSearchModel(model);
            var result = await _customerApiClient.GetPersonDocuments(model);

            var documentTypes = _lookupApiClient.GetLookup().Result.DocumentTypes?.ConvertAll(x => (BaseLookupDto)x);

            model.DocumentTypeSelectList = SelectedListHelper.GetSelectListForItems(documentTypes, "");
            foreach (var personDocumentDto in result.PersonDocumentSearchResult)
            {
                personDocumentDto.DocumentTypeName = documentTypes?.FirstOrDefault(x => x.Id == personDocumentDto.Document.DocumentTypeId)?.Name;
            }
            var documents = await CreateThumbnail(result.PersonDocumentSearchResult.Where(x => x.Document.DocumentTypeId == 1).ToList());

            return(PartialView(result));
        }
Example #4
0
        private string GetFilterString(PersonDocumentSearchModel searchModel)
        {
            var filterString = string.Empty;

            if (searchModel != null)
            {
                if (searchModel.PersonId > 0)
                {
                    filterString = ODataFilterConstant.Filter + $"PersonId eq {searchModel.PersonId}";
                    if (!string.IsNullOrWhiteSpace(filterString))
                    {
                        filterString += $" and contains(Comment,'{searchModel.FilterText}') eq true";
                    }
                    filterString += ODataFilterConstant.Expand + $"Document";
                }
                AddPageSizeNumberAndSortingInFilterString(searchModel, ref filterString);
            }
            return(filterString);
        }
Example #5
0
 public async Task <PersonDocumentSearchModel> GetPersonDocuments(PersonDocumentSearchModel model)
 {
     return(await _personDocumentApiClient.GetPersonDocuments(model));
 }
Example #6
0
 private PersonDocumentSearchModel InitializePersonDocumentSearchModel(PersonDocumentSearchModel model)
 {
     model = InitializeSearchModel(model, "PersonDocumentGrid", "Id", "Desc");
     return(model);
 }