public void ProcessRequest(HttpContext context) { context.Response.ContentType = "application/json"; context.Response.ContentEncoding = Encoding.UTF8; // The Request QueryString here is protected against XSS attacks by Request Validation QuerySettings settings = CCHSerializer.DeserializeSettings<QuerySettings>(context.Request.QueryString); if (settings.Lat == null) { settings.Lat = context.GetLatitude<String>(); } if (settings.Lng == null) { settings.Lng = context.GetLongitude<String>(); } ResultsBack rb = new ResultsBack(); using (GetDoctorsForService gdfs = new GetDoctorsForService()) { gdfs.ServiceName = context.GetServiceName<String>(); gdfs.Latitude = settings.Lat; gdfs.Longitude = settings.Lng; gdfs.SpecialtyID = context.GetSpecialtyID<Int32>(); //gdfs.MemberMedicalID = ThisSession.SubscriberMedicalID; gdfs.CCHID = context.GetCCHID<Int32>(); gdfs.UserID = context.GetUserLogginID<String>(); gdfs.SessionID = context.GetSessionID<String>(); gdfs.Domain = context.GetDomain<String>(); gdfs.GetData(); if (!gdfs.HasErrors) { ResultData rd = new ResultData(); gdfs.ForEachResult(delegate(object Result) { rd = CCHSerializer.DeserializeDataRow<ResultData>(Result); rd.Distance = String.Format("{0:#0.0 mi}", Convert.ToDouble(rd.NumericDistance)); rb.AddResult(rd); }); } } JavaScriptSerializer jss = new JavaScriptSerializer(); String jsonBack = jss.Serialize(rb); context.Response.Write(jsonBack); }
public void ProcessRequest(HttpContext context) { context.Response.ContentType = "application/json"; context.Response.ContentEncoding = Encoding.UTF8; // The Request QueryString here is protected against XSS attacks by Request Validation QuerySettings settings = CCHSerializer.DeserializeSettings<QuerySettings>(context.Request.QueryString); if (settings.Lat == 0.0) { settings.Lat = context.GetLatitude<Double>(); }// Convert.ToDouble(context.GetLatitude<String>()); } if (settings.Lng == 0.0) { settings.Lng = context.GetLongitude<Double>(); }// Convert.ToDouble(ThisSession.PatientLongitude); } ResultsBack rb = new ResultsBack(); using (GetFacilitiesForServicePastCare gffspc = new GetFacilitiesForServicePastCare()) { gffspc.ServiceID = context.GetServiceID<Int32>();//ThisSession.ServiceID; gffspc.ProcedureCode = context.GetPastCareProcedureCode<String>();// ThisSession.PastCareProcedureCode; gffspc.Latitude = settings.Lat; gffspc.Longitude = settings.Lng; gffspc.SpecialtyID = context.GetSpecialtyID<Int32>();//ThisSession.SpecialtyID; gffspc.PastCareID = context.GetPastCareID<Int32>();//Convert.ToInt32(ThisSession.PastCareID); //gffspc.MemberMedicalID = ThisSession.SubscriberMedicalID; gffspc.CCHID = context.GetCCHID<Int32>();//ThisSession.CCHID; gffspc.UserID = context.GetUserLogginID<String>();//System.Web.Security.Membership.GetUser(ThisSession.PatientEmail).ProviderUserKey.ToString(); gffspc.SessionID = context.GetSessionID<String>(); gffspc.Domain = context.GetDomain<String>(); gffspc.GetData(); if (!gffspc.HasErrors) { //ResultData rd; gffspc.ForEachResult<DataRow>(delegate(DataRow dr) { //rd = new ResultData(); }); } } }
public void ProcessRequest(HttpContext context) { context.Response.ContentType = "application/json"; context.Response.ContentEncoding = Encoding.UTF8; // The Request QueryString here is protected against XSS attacks by Request Validation QuerySettings settings = CCHSerializer.DeserializeSettings<QuerySettings>(context.Request.QueryString); if (settings.Latitude == null) { settings.Latitude = context.GetLatitude<String>(); } if (settings.Longitude == null) { settings.Longitude = context.GetLongitude<String>(); } if (String.IsNullOrWhiteSpace(settings.CurrentSort)) settings.CurrentSort = ThisSession.DefaultSort; if (String.IsNullOrWhiteSpace(settings.Distance)) settings.Distance = "20"; if (settings.ToRow == 0) { settings.ToRow = 49; } ResultsBack rb = new ResultsBack(); if (context.GetChosenDrugs<DataTable>() == null || context.GetChosenDrugs<DataTable>().CheckForRows()) { using (GetDrugPricingResults gdpr = new GetDrugPricingResults()) { gdpr.Distance = settings.Distance.To<Int32>(); gdpr.Latitude = settings.Latitude; gdpr.Longitude = settings.Longitude; gdpr.FromIndex = settings.FromRow; gdpr.ToIndex = settings.ToRow; gdpr.OrderByField = settings.CurrentDirection; //gdpr.MemberRXID = ThisSession.SubscriberRXID; gdpr.CCHID = context.GetCCHID<Int32>(); gdpr.UserID = context.GetUserLogginID<String>(); // System.Web.Security.Membership.GetUser(ThisSession.PatientEmail).ProviderUserKey.ToString(); if (context.GetChosenDrugs<DataTable>() == null) { gdpr.DrugID = context.GetDrugID<String>();// ThisSession.DrugID; gdpr.GPI = context.GetDrugGPI<String>();// ThisSession.DrugGPI; gdpr.Quantity = context.GetDrugQuantity<String>();// ThisSession.DrugQuantity; if (!String.IsNullOrWhiteSpace(context.GetPastCareID<String>())) gdpr.PastCareID = context.GetPastCareID<String>(); } else { gdpr.DrugID = context.GetDrugID<String>(0);// ThisSession.ChosenDrugs.Rows[0]["DrugID"].ToString(); gdpr.GPI = context.GetDrugGPI<String>(0);// ThisSession.ChosenDrugs.Rows[0]["GPI"].ToString(); gdpr.Quantity = context.GetDrugQuantity<String>(0);// ThisSession.ChosenDrugs.Rows[0]["Quantity"].ToString(); gdpr.PastCareID = context.GetPastCareID<String>(0);// ThisSession.ChosenDrugs.Rows[0]["PastCareID"].ToString(); } gdpr.SessionID = context.GetSessionID<String>(); gdpr.Domain = context.GetDomain<String>(); gdpr.GetData(); if (gdpr.RawResults.TableName != "EmptyTable") { foreach (DataRow dr in gdpr.RawResults.Rows) { ResultData rd = CCHSerializer.DeserializeDataRow<ResultData>(dr); rd.Price = String.Format("{0:C2}", Convert.ToDouble(rd.Price)); rd.YourCost = String.Format("{0:C2}", Convert.ToDouble(rd.YourCost)); rd.Distance = String.Format("{0:#0.0 mi}", Convert.ToDouble(rd.Distance)); rb.AddResult(rd); } } } } else { using (GetDrugMultiPricingResults gdmpr = new GetDrugMultiPricingResults()) { using (DataView dv = new DataView(ThisSession.ChosenDrugs)) gdmpr.DrugList = dv.ToTable("DrugInput", false, new String[] { "DrugID", "GPI", "Quantity", "PastCareID" }); gdmpr.Latitude = settings.Latitude; gdmpr.Longitude = settings.Longitude; gdmpr.GetData(); if (gdmpr.RawResults.TableName != "EmptyTable") { foreach (DataRow dr in gdmpr.RawResults.Rows) { ResultData rd = CCHSerializer.DeserializeDataRow<ResultData>(dr); rd.Price = String.Format("{0:C2}", Convert.ToDouble(rd.Price)); rd.YourCost = String.Format("{0:C2}", Convert.ToDouble(rd.YourCost)); rd.Distance = String.Format("{0:#0.0 mi}", Convert.ToDouble(rd.Distance)); rb.AddResult(rd); } } } } JavaScriptSerializer jss = new JavaScriptSerializer(); String jsonBack = jss.Serialize(rb); context.Response.Write(jsonBack); }