public HttpResponseMessage Get(HttpRequestMessage request, int id = 0, string code = "*", string tag = "*", int serviceId = 0, string servicetitle = "*", int pagesize = 15, int pageindex = 1) { Expression <Func <tbProcedure, bool> > filter, tagfilter, codefilter, serviceidfilter, servicetitlefilter = null; if (id != 0) { filter = l => l.ID == id; } else { filter = l => l.IsDeleted != true; } if (code != "*") { codefilter = l => l.Code == code; } else { codefilter = l => l.IsDeleted != true; } if (tag != "*") { tagfilter = l => l.Tag == tag; } else { tagfilter = l => l.IsDeleted != true; } if (serviceId != 0) { serviceidfilter = l => l.ServiceID == serviceId; } else { serviceidfilter = l => l.IsDeleted != true; } if (servicetitle != "*") { servicetitlefilter = l => l.ServiceTitle.StartsWith(servicetitle); } else { servicetitlefilter = l => l.IsDeleted != true; } var skipindex = pagesize * (pageindex - 1); var objs = repo.GetWithoutTracking().Where(filter).Where(codefilter).Where(tagfilter).OrderBy(a => a.Description).Skip(skipindex).Take(pagesize).ToList(); HttpResponseMessage response = request.CreateResponse <List <tbProcedure> >(HttpStatusCode.OK, objs); return(response); }
public HttpResponseMessage GetWithServicesAndProceduresById(HttpRequestMessage request, int id, int airlineid = 0, string tags = "*") { Expression <Func <tbDomain, bool> > airlineidfilter, tagsfilter = null; if (airlineid != 0) { airlineidfilter = l => l.HospitalId == airlineid; } else { airlineidfilter = l => l.IsDeleted != true; } if (tags != "*") { tagsfilter = l => l.Tags.Contains(tags); } else { tagsfilter = l => l.IsDeleted != true; } DomainViewModel vm = new DomainViewModel() { Domain = repo.GetWithoutTracking().Where(a => a.ID == id).FirstOrDefault(), ServiceInfo = serviceRepo.GetWithoutTracking().Where(a => a.DomainId == id && a.IsDeleted != true).ToList().Select(a => new ServiceViewModel() { Procedures = procedureRepo.GetWithoutTracking().Where(b => b.ServiceID == a.ID && a.IsDeleted != true).ToList(), Service = a }).ToList() }; HttpResponseMessage response = request.CreateResponse <DomainViewModel>(HttpStatusCode.OK, vm); return(response); }
public HttpResponseMessage GetWithService(HttpRequestMessage request, string question = "*", string answer = "*", int serviceid = 0, int procedureid = 0, int pagesize = 15, int pageindex = 1) { Expression <Func <tbFAQ, bool> > questionfilter, answerfilter, serviceidfilter, procedureidfilter = null; if (question != "*") { FuzzySearch _fuzz = new FuzzySearch(question); questionfilter = l => _fuzz.IsMatch(l.Question); } else { questionfilter = l => l.IsDeleted != true; } if (answer != "*") { FuzzySearch _fuzz = new FuzzySearch(answer); answerfilter = l => _fuzz.IsMatch(l.Answer); //answerfilter = l => l.ManagedbyId == managedbyid; } else { answerfilter = l => l.IsDeleted != true; } if (serviceid != 0) { serviceidfilter = l => l.ServiceId == serviceid; } else { serviceidfilter = l => l.IsDeleted != true; } if (procedureid != 0) { procedureidfilter = l => l.ProcedureId == procedureid; } else { procedureidfilter = l => l.IsDeleted != true; } var skipindex = pagesize * (pageindex - 1); var obj = new FAQViewModel { FAQs = repo.GetWithoutTracking().Where(questionfilter).Where(answerfilter).Where(serviceidfilter).Where(procedureidfilter) .OrderByDescending(a => a.Question).Skip(skipindex).Take(pagesize).ToList(), Procedure = procedureRepo.GetWithoutTracking().Where(a => a.ID == procedureid).FirstOrDefault(), Service = serviceRepo.GetWithoutTracking().Where(a => a.ID == serviceid).FirstOrDefault() }; HttpResponseMessage response = request.CreateResponse <FAQViewModel>(HttpStatusCode.OK, obj); return(response); }
public HttpResponseMessage GetById(HttpRequestMessage request, int id) { ServiceViewModel vm = new ServiceViewModel() { Service = repo.GetWithoutTracking().Where(a => a.ID == id).FirstOrDefault(), Procedures = procedureRepo.GetWithoutTracking().Where(a => a.ServiceID == id).ToList() }; HttpResponseMessage response = request.CreateResponse <ServiceViewModel>(HttpStatusCode.OK, vm); return(response); }