/// <summary> /// This function returns the location for the given Id /// </summary> /// <param name="locationId"></param> /// <returns></returns> public Location GetLocation(int locationId) { var pContext = new db_pcDataContext(); var loc = (from t in pContext.tbl_AllPostcodes where t.id == locationId select t).FirstOrDefault(); if (loc != null) { var objL = new Location { LocationId = loc.id }; //set the location text if (loc.is_town == 1) objL.LocationText = loc.search_text.Trim() + ", " + loc.county; else if (loc.is_county == 1) objL.LocationText = loc.search_text.Trim(); else objL.LocationText = loc.search_text.Trim() + ", " + loc.town; return objL; } return null; }
/// <summary> /// This function returns the location for the given job Id /// </summary> /// <param name="jobId"></param> /// <param name="searchLocationType"></param> /// <returns></returns> public List<Location> GetLocationsForJob(int jobId, string searchLocationType) { var context = new dbDataContext(); var pContext = new db_pcDataContext(); //retrieve job location ids var qLocationIds = (from l in context.tbl_JobLocations where l.JobId == jobId orderby l.JobLocationId select l.LocationId) .ToList(); var locationList = new List<Location>(); if (searchLocationType.ToLower().Equals("uk")) { var qLocations = (from t in pContext.tbl_AllPostcodes where qLocationIds.Contains(t.id) select t); foreach (var loc in qLocations) { var objL = new Location { LocationId = loc.id }; //set the location text if (loc.is_town == 1) objL.LocationText = loc.search_text.Trim() + ", " + loc.county; else if (loc.is_county == 1) objL.LocationText = loc.search_text.Trim(); else objL.LocationText = loc.search_text.Trim() + ", " + loc.town; //add to list locationList.Add(objL); } } else { // do the join with other locations locationList = (from t in context.tbl_OtherLocations where qLocationIds.Contains(t.OtherLocationId) select new Location { LocationId = t.OtherLocationId, LocationText = t.Location }).ToList(); } return locationList; }
/// <summary> /// This function get locations for client /// </summary> /// <param name="clientId"></param> /// <returns></returns> public IEnumerable<Location> GetLocationsForClient(int clientId) { var context = new dbDataContext(); var pContext = new db_pcDataContext(); //retrieve client location ids var qLocationIds = (from l in context.tbl_ClientLocations where l.ClientId == clientId orderby l.ClientLocationId select l.LocationId).ToList(); var locationList = new List<Location>(); var qLocations = (from t in pContext.tbl_AllPostcodes where qLocationIds.Contains(t.id) select t); foreach (var loc in qLocations) { var objL = new Location { LocationId = loc.id }; //set the location text if (loc.is_town == 1) objL.LocationText = loc.search_text.Trim() + ", " + loc.county; else if (loc.is_county == 1) objL.LocationText = loc.search_text.Trim(); else objL.LocationText = loc.search_text.Trim() + ", " + loc.town; //add to list locationList.Add(objL); } return locationList; }
/// <summary> /// This function retuens the current location for contact /// </summary> /// <param name="currentLocationId"></param> /// <returns></returns> public Location GetContactCurrentLocation(int currentLocationId) { var pContext = new db_pcDataContext(); // get the location text var qLocation = (from t in pContext.tbl_AllPostcodes where t.id == currentLocationId select t).FirstOrDefault(); if (qLocation != null) { var objL = new Location { LocationId = qLocation.id }; //set the location text if (qLocation.is_town == 1) objL.LocationText = qLocation.search_text.Trim() + ", " + qLocation.county; else if (qLocation.is_county == 1) objL.LocationText = qLocation.search_text.Trim(); else objL.LocationText = qLocation.search_text.Trim() + ", " + qLocation.town; return objL; } return null; }