Пример #1
0
        public EmployeesByRegionAndTerritoryCollectionResponse Fetch(EmployeesByRegionAndTerritoryQueryCollectionRequest request)
        {
            base.FixupLimitAndPagingOnRequest(request);

            var typedList = new EmployeesByRegionAndTerritoryTypedList();

            var totalItemCount     = 0;
            var sortExpression     = RepositoryHelper.ConvertStringToSortExpression(TypedListType, request.Sort);
            var includedFieldNames = RepositoryHelper.ConvertStringToExcludedIncludedFields(request.Select);
            var predicateBucket    = RepositoryHelper.ConvertStringToRelationPredicateBucket(TypedListType, typedList.GetRelationInfo(), request.Filter);

            using (var adapter = DataAccessAdapterFactory.NewDataAccessAdapter())
            {
                OnBeforeFetchEmployeesByRegionAndTerritoryQueryCollectionRequest(adapter, request, sortExpression, includedFieldNames, predicateBucket,
                                                                                 request.PageNumber, request.PageSize, request.Limit);
                totalItemCount = (int)adapter.GetDbCount(typedList.GetFieldsInfo(), predicateBucket, null, false);
                adapter.FetchTypedList(typedList.GetFieldsInfo(), typedList, predicateBucket, request.Limit, sortExpression, true, null, request.PageNumber, request.PageSize);
                OnAfterFetchEmployeesByRegionAndTerritoryQueryCollectionRequest(adapter, request, typedList, sortExpression, includedFieldNames, predicateBucket,
                                                                                request.PageNumber, request.PageSize, request.Limit, totalItemCount);
            }

            var dtos       = new EmployeesByRegionAndTerritoryCollection();
            var enumerator = typedList.GetEnumerator();

            while (enumerator.MoveNext())
            {
                dtos.Add(Map(enumerator.Current, includedFieldNames));
            }

            var response = new EmployeesByRegionAndTerritoryCollectionResponse(dtos, request.PageNumber,
                                                                               request.PageSize, totalItemCount);

            return(response);
        }
        /// <summary>Queries 'EmployeesByRegionAndTerritory' typed list records using sorting, filtering, paging and more.</summary>
        public EmployeesByRegionAndTerritoryCollectionResponse Get(EmployeesByRegionAndTerritoryQueryCollectionRequest request)
        {
            OnBeforeGetEmployeesByRegionAndTerritoryQueryCollectionRequest(request);
            var output = Repository.Fetch(request);

            OnAfterGetEmployeesByRegionAndTerritoryQueryCollectionRequest(request, output);
            return(output);
        }
Пример #3
0
 partial void OnAfterFetchEmployeesByRegionAndTerritoryQueryCollectionRequest(IDataAccessAdapter adapter, EmployeesByRegionAndTerritoryQueryCollectionRequest request, EmployeesByRegionAndTerritoryTypedList typedList, SortExpression sortExpression, string[] includedFieldNames, IRelationPredicateBucket predicateBucket, int pageNumber, int pageSize, int limit, int totalItemCount);
 partial void OnAfterGetEmployeesByRegionAndTerritoryQueryCollectionRequest(EmployeesByRegionAndTerritoryQueryCollectionRequest request, EmployeesByRegionAndTerritoryCollectionResponse response);
 partial void OnBeforeGetEmployeesByRegionAndTerritoryQueryCollectionRequest(EmployeesByRegionAndTerritoryQueryCollectionRequest request);