示例#1
0
 /// <summary>
 /// Get Credit Limits
 /// </summary>
 public CreditLimitSearchRequestResponse Get([FromUri] CreditLimitSearchRequest request)
 {
     if (request == null || !ModelState.IsValid)
     {
         throw new HttpException((int)HttpStatusCode.BadRequest, "Invalid Request");
     }
     return(creditLimitService.SearchCreditLimit(request).CreateFrom());
 }
示例#2
0
        /// <summary>
        /// Search Credit Limit
        /// </summary>
        public CreditLimitSearchRequestResponse SearchCreditLimit(CreditLimitSearchRequest request)
        {
            int rowCount;

            return(new CreditLimitSearchRequestResponse
            {
                CreditLimits = creditLimitRepository.SearchCreditLimit(request, out rowCount),
                TotalCount = rowCount
            });
        }
示例#3
0
        /// <summary>
        /// Search Credit Limit
        /// </summary>
        public IEnumerable <CreditLimit> SearchCreditLimit(CreditLimitSearchRequest request, out int rowCount)
        {
            int fromRow = (request.PageNo - 1) * request.PageSize;
            int toRow   = request.PageSize;
            Expression <Func <CreditLimit, bool> > query =
                creditLimit =>
                (!request.BpSubTypeId.HasValue || request.BpSubTypeId == creditLimit.BpSubTypeId) &&
                (!request.RatingTypeId.HasValue || request.RatingTypeId == creditLimit.BpRatingTypeId);

            rowCount = DbSet.Count(query);
            return(request.IsAsc
                ? DbSet.Where(query)
                   .OrderBy(creditLimitOrderByClause[request.CreditLimitOrderBy])
                   .Skip(fromRow)
                   .Take(toRow)
                   .ToList()
                : DbSet.Where(query)
                   .OrderByDescending(creditLimitOrderByClause[request.CreditLimitOrderBy])
                   .Skip(fromRow)
                   .Take(toRow)
                   .ToList());
        }