public PurchaseListModel PreparePurchaseListModel(PurchaseSearchRequest p) { if (p == null) { throw new ArgumentNullException(nameof(p)); } DateTime?FromDate = null; if (!string.IsNullOrWhiteSpace(p.FromPurchaseDate)) { FromDate = Convert.ToDateTime(p.FromPurchaseDate); } DateTime?ToDate = null; if (!string.IsNullOrWhiteSpace(p.ToPurchaseDate)) { ToDate = Convert.ToDateTime(p.ToPurchaseDate); } int statusId = 0; if (!string.IsNullOrWhiteSpace(p.PurchaseStatusId)) { statusId = Int32.Parse(p.PurchaseStatusId); } int processId = 0; if (!string.IsNullOrWhiteSpace(p.PurchaseProcessId)) { processId = Int32.Parse(p.PurchaseProcessId); } var items = _purchaseService.SearchPurchases(p.VendorName, p.ProductName, FromDate, ToDate, p.PurchaseNo, statusId, processId); var purchases = CreatePurchaseModelList(items); var purchaseListModel = new PurchaseListModel(); purchaseListModel.Purchases = purchases; purchaseListModel.HasNextPage = items.HasNextPage; purchaseListModel.HasPreviousPage = items.HasPreviousPage; purchaseListModel.PageIndex = items.PageIndex; purchaseListModel.PageSize = items.PageSize; purchaseListModel.TotalCount = items.TotalCount; purchaseListModel.TotalPages = items.TotalPages; purchaseListModel.PurchaseStatus = p.PurchaseStatusId.Equals("0") ? SelectListHelper.GetPurchaseStatus(false, "ALL") : SelectListHelper.GetPurchaseStatus(true, p.PurchaseStatusName); purchaseListModel.PurchaseProcessStatus = p.PurchaseProcessId.Equals("0") ? SelectListHelper.GetPurchaseProcess(false, "ALL") : SelectListHelper.GetPurchaseProcess(true, p.PurchaseProcessName); return(purchaseListModel); }