public async Task <FilterPiDetailDto> GetPiesByFiltersList(FilterPiDetailDto filterPiDetailDto) { var asQueryable = piDetailRepository .GetEntities() .Where(x => x.PeroformaInvoiceId == filterPiDetailDto.PiId) .AsQueryable(); //if (filterPiDetailDto.SearchText != null || !(string.IsNullOrWhiteSpace(filterPiDetailDto.SearchText))) //{ // asQueryable = asQueryable.Where(x => x.PiCode.Contains(filterPiDto.SearchText.Trim())); //} var count = (int)Math.Ceiling(asQueryable.Count() / (double)filterPiDetailDto.TakeEntity); var pager = Pager.Builder(count, filterPiDetailDto.PageId, filterPiDetailDto.TakeEntity); var list = asQueryable.Paging(pager).ToList(); filterPiDetailDto.PiDetailDtos = new List <PiDetailDto>(); foreach (var item in list) { filterPiDetailDto.PiDetailDtos.Add(new PiDetailDto() { BrokerId = item.BrokerId, PiId = item.PeroformaInvoiceId, DepositDate = item.DepositDate, DepositPrice = item.DepositPrice, Id = item.Id, IsSold = item.IsSold }); } return(filterPiDetailDto.SetPiDetails(filterPiDetailDto.PiDetailDtos).SetPaging(pager)); }
public async Task <IActionResult> GetPiDetail([FromQuery] FilterPiDetailDto filterPiDetailDto) { var piDetail = await _piDetailService.GetPiesByFiltersList(filterPiDetailDto); return(JsonResponseStatus.Success(piDetail)); }