public InquiryResponse GetAllInquiries(InquirySearchRequest searchRequest) { int fromRow = (searchRequest.PageNo - 1) * searchRequest.PageSize; int toRow = searchRequest.PageSize; Expression <Func <Inquiry, bool> > query = s => searchRequest.HasPermissionToViewAll? ( (string.IsNullOrEmpty(searchRequest.ContactName) || (s.Contact.FirstName + " " + s.Contact.LastName).Contains(searchRequest.ContactName)) && (searchRequest.Priority == 0 || (s.Priority) == searchRequest.Priority) && (string.IsNullOrEmpty(searchRequest.CreatedBy) || (s.CreatedBy).Equals(searchRequest.CreatedBy)) ): ( (string.IsNullOrEmpty(searchRequest.ContactName) || (s.Contact.FirstName + " " + s.Contact.LastName).Contains(searchRequest.ContactName)) && (searchRequest.Priority == 0 || (s.Priority) == searchRequest.Priority) && (s.CreatedBy == searchRequest.CurrentUserId) && (string.IsNullOrEmpty(searchRequest.CreatedBy) || (s.CreatedByUser.FirstName + " " + s.CreatedByUser.LastName).Contains(searchRequest.CreatedBy)) ); IEnumerable <Inquiry> inquiries = searchRequest.IsAsc ? DbSet .Where(query) .OrderBy(sortClause[searchRequest.OrderByColumn]).Skip(fromRow) .Take(toRow) .ToList() : DbSet .Where(query) .OrderByDescending(sortClause[searchRequest.OrderByColumn]).Skip(fromRow) .Take(toRow) .ToList(); return(new InquiryResponse { Inquiries = inquiries.ToList(), TotalCount = DbSet.Count(query), FilteredCount = inquiries.Count() }); }
public InquiryViewModel() { Contacts = new List <Models.ContactModel>(); Products = new List <Models.Product>(); InquiryDetail = new List <Models.InquiryDetailModel>(); Documents = new List <Document>(); Employees = new List <EmployeeDDL>(); data = new List <Models.InquiryModel>(); InquirySearchRequest = new InquirySearchRequest(); }
public JsonResult Index(InquirySearchRequest searchRequest) { string[] userPermissionsSet = (string[])Session["UserPermissionSet"]; searchRequest.HasPermissionToViewAll = userPermissionsSet.Contains("ViewAllInquiries"); searchRequest.CurrentUserId = User.Identity.GetUserId(); var contactResponse = inquiryService.GetAllInquiries(searchRequest); var inquiryList = contactResponse.Inquiries.ToList().Select(x => x.MapServerToClientSearch()).ToList(); var model = new InquiryViewModel() { data = inquiryList, recordsFiltered = contactResponse.FilteredCount, recordsTotal = contactResponse.TotalCount }; //var obj = new {data = model.EmployeePayrolls, model}; return(Json(model, JsonRequestBehavior.AllowGet)); }
public InquiryResponse GetAllInquiries(InquirySearchRequest searchRequest) { var inquiries = inquiryRepository.GetAllInquiries(searchRequest); return(inquiries); }