public async Task <HttpResponseMessage> GetAll() { return(await _pathwayService.GetPathways(false, false).AsHttpResponse()); }
public async Task <JsonResult <IEnumerable <Pathway> > > GetAll() { var pathways = await _pathwayService.GetPathways(false, false); return(Json(pathways)); }
public async Task <string> GetCorrection(string input, bool startingOnly) { input = input.ToLower(); var pathways = JsonConvert.DeserializeObject <List <GroupedPathways> >(await _pathwayService.GetPathways(true, startingOnly)); return(GetCorrection(pathways, input)); }
//TODO remove commented out code //private static readonly List<Suggestion> Suggestions = new List<Suggestion> //{ // new Suggestion // { // CorrectTerm = "Headache", // MispelledTerm = // new List<string>(new[] // { // "migraine headache", "migratin headache", "my brain headache", "migrane", "head pain", // "pain in the head", "sore head", "bad head", "hedache", "head ache", "hedayk", "hedake", // "headayk", "hedayk", "hed", "head", "terrible headache", "throbbing headache", "stress headache", // "brain", "hurt head", "tension headache", "tension", "cluster headache", "blinding headache" // }) // }, // new Suggestion // { // CorrectTerm = "Head injury, penetrating", // MispelledTerm = // new List<string>(new[] // { // "Banged head", "bumped head", "head sore", "sore head", "thump head", "hit head", "bruised head", // "cut head", "lacerated head", "head wound", "wounded head", "woonded head", "concussion", // "concushion", "scalp wound", "scalp", "cut head", "head trauma", "haematoma", "hematoma", // "skull fracture", "skull", "contusion", "brain", "hed", "cerebral", "injury" // }) // }, // new Suggestion // { // CorrectTerm = "Head injury, blunt", // MispelledTerm = // new List<string>(new[] // { // "Banged head", "bumped head", "head sore", "sore head", "thump head", "hit head", "bruised head", // "cut head", "head wound", "wounded head", "woonded head", "concussion", "concushion", // "scalp wound", "scalp", "cut head", "head trauma", "haematoma", "hematoma", "skull fracture", // "skull", "contusion", "brain", "hed", "cerebral", "injury", "blunt", "", "swollen head" // }) // } //}; public async Task <string> GetCorrection(string input) { input = input.ToLower(); var pathways = JsonConvert.DeserializeObject <List <GroupedPathways> >(await _pathwayService.GetPathways(true)); //var correctedSuggestions = Suggestions.Where(x => x.MispelledTerm.Any(y => y.ToLower().Contains(input))).Select(x => x.CorrectTerm); //var correctedTerms = new List<GroupedPathways>(); //foreach (var correctedSuggestion in correctedSuggestions) //{ //correctedTerms.Add(new GroupedPathways //{ // Group = correctedSuggestion, // PathwayNumbers = pathways.Where(x => String.Equals(x.Group, correctedSuggestion, StringComparison.CurrentCultureIgnoreCase)) // .Select(x => x.PathwayNumbers) // .FirstOrDefault() //}); //} var pathwaysMatches = pathways.Where(x => x.Group.ToLower().Contains(input)).ToList(); if (!pathwaysMatches.Any())// && !correctedTerms.Any()) { return(JsonConvert.SerializeObject(pathways)); } //pathwaysMatches.AddRange(correctedTerms); return(JsonConvert.SerializeObject(pathwaysMatches.Distinct(new PathwaysComparer()).OrderByDescending(x => x.Group))); }