public SearchResult <TipePekerjaanDTO> Search(TipePekerjaanSearchFilter filter)
        {
            if (string.IsNullOrEmpty(filter.SortName))
            {
                filter.SortName = "TipePekerjaan_PK";
            }

            var filteredRecords =
                GetQuery()
                .Where(tipePekerjaan =>
                       tipePekerjaan.Title.Contains(filter.Keyword));

            var displayedRecords = filteredRecords.
                                   SortBy(filter.SortName, filter.SortDir)
                                   .Skip(filter.Skip)
                                   .Take(filter.PageSize)
                                   .ToList();

            var searchResult = new SearchResult <TipePekerjaanDTO>(filter);

            searchResult.Filter               = filter;
            searchResult.Count.TotalRecords   = GetTotalRecords();
            searchResult.Count.TotalFiltered  = filteredRecords.Count();
            searchResult.Count.TotalDisplayed = displayedRecords.Count();
            searchResult.Records              = displayedRecords;

            return(searchResult);
        }
        public TipePekerjaanListModel Get(TipePekerjaanSearchFilter searchFilter)
        {
            TipePekerjaanListFormData       formData     = new TipePekerjaanListFormData();
            SearchResult <TipePekerjaanDTO> searchResult = tipePekerjaanQuery.Search(searchFilter);

            return(new TipePekerjaanListModel()
            {
                FormData = formData,
                SearchResult = searchResult
            });
        }