public ChaufferChargeSearchResponse Get([FromUri] ChaufferChargeSearchRequest request) { if (!ModelState.IsValid) { throw new HttpException((int)HttpStatusCode.BadRequest, "Invalid Request"); } return(chaufferChargeService.LoadAll(request).CreateFrom()); }
/// <summary> /// Get All Chauffer Charge Main based on search crateria /// </summary> public ChaufferChargeSearchResponse GetChaufferCharges(ChaufferChargeSearchRequest request) { int fromRow = (request.PageNo - 1) * request.PageSize; int toRow = request.PageSize; var getChaufferChargeMainQuery = from chaufferChargeMain in DbSet join tariffType in db.TariffTypes on chaufferChargeMain.TariffTypeCode equals tariffType.TariffTypeCode where ((string.IsNullOrEmpty(request.SearchString) || chaufferChargeMain.ChaufferChargeMainCode.Contains(request.SearchString) || chaufferChargeMain.ChaufferChargeMainName.Contains(request.SearchString)) && (!request.OperationId.HasValue || tariffType.OperationId == request.OperationId.Value) && (!request.TariffTypeId.HasValue || tariffType.TariffTypeId == request.TariffTypeId)) && !(tariffType.ChildTariffTypeId.HasValue) select new ChaufferChargeMainContent { ChaufferChargeMainId = chaufferChargeMain.ChaufferChargeMainId, Code = chaufferChargeMain.ChaufferChargeMainCode, Name = chaufferChargeMain.ChaufferChargeMainName, Description = chaufferChargeMain.ChaufferChargeMainDescription, StartDate = chaufferChargeMain.StartDt, TariffTypeId = tariffType.TariffTypeId, CompanyId = tariffType.Operation.Department.Company.CompanyId, CompanyCodeName = tariffType.Operation.Department.Company.CompanyCode + " - " + tariffType.Operation.Department.Company.CompanyName, DepartmentId = tariffType.Operation.Department.DepartmentId, TariffTypeCodeName = tariffType.TariffTypeCode + " - " + tariffType.TariffTypeName, OperationId = tariffType.OperationId, OperationCodeName = tariffType.Operation.OperationCode + " - " + tariffType.Operation.OperationName, }; IEnumerable <ChaufferChargeMainContent> chaufferChargeMains = request.IsAsc ? getChaufferChargeMainQuery.OrderBy(chaufferChargeClause[request.ChaufferChargeOrderBy]) .Skip(fromRow) .Take(toRow) : getChaufferChargeMainQuery.OrderByDescending(chaufferChargeClause[request.ChaufferChargeOrderBy]) .Skip(fromRow) .Take(toRow); return(new ChaufferChargeSearchResponse { ChaufferChargeMains = chaufferChargeMains, TotalCount = getChaufferChargeMainQuery.Count() }); }
/// <summary> /// Load Chauffer Charge Main Based on search criteria /// </summary> /// <returns></returns> public ChaufferChargeSearchResponse LoadAll(ChaufferChargeSearchRequest request) { return(chaufferChargeMainRepository.GetChaufferCharges(request)); }