private HACondition GetSearchConditon(string city, string checkin, string checkout, string guestcount, int rooms, int adults, string adultsbyroom, int children, string childbyroom, string childrenages, string currencycode) { try { HACondition Hac = new HACondition(); if (city != "") { if (city.IndexOf('-') > 0) { Hac.City = city.Split('-')[0]; Hac.CityType = "CC"; } else { DataTable dtll = HotelDBLayer.GetLatLong(city); string[] cityparts = city.Split(','); string CityP = cityparts[0]; //string State = cityparts[1]; string Country = cityparts[1]; Hac.CityName = CityP; Hac.fullCity = city; Hac.Latitude = dtll.Rows[0]["Latitude"].ToString(); Hac.Longitude = dtll.Rows[0]["Longitude"].ToString(); if (dtll.Rows[0]["CityCode"] == null || dtll.Rows[0]["CityCode"].ToString().Trim() == "" && CityP == "" || CityP == null) { Hac.CityType = "LL"; } else { Hac.CityType = "CN"; } } } Hac.fullCity = city.ToString(); Hac.GuestCount = (adults + children).ToString(); if (!string.IsNullOrEmpty(checkin)) { Hac.CheckIn = Convert.ToDateTime(checkin).ToString("yyyy-MM-dd"); } if (!string.IsNullOrEmpty(checkout)) { Hac.CheckOut = Convert.ToDateTime(checkout).ToString("yyyy-MM-dd"); } Hac.Rooms = rooms; Hac.Adults = adults; Hac.Adultsbyroom = adultsbyroom; Hac.Children = children; Hac.Childrenbyroom = childbyroom; Hac.SortBy = "low_price"; Hac.CurrencyCode = currencycode; Hac.childrenage = childrenages; return(Hac); } catch (Exception ex) { throw ex; } }
public string Get(string city, string checkind, string checkoutd, string guestscount, string selroom, string seladults, string adultbyroom, string selchilds, string childrenbyroom, string childages, string curcode, string b2c_idn) { string ipaddress = ""; string searchid = ""; string cust_idn = string.Empty; if (Request.Properties.ContainsKey("MS_HttpContext")) { var ctx = Request.Properties["MS_HttpContext"] as HttpContextWrapper; if (ctx != null) { var ip = ctx.Request.UserHostAddress; //do stuff with IP } } searchid = HotelDBLayer.SaveSearch(city, checkind, checkoutd, Convert.ToInt16(selroom), Convert.ToInt16(seladults), adultbyroom, Convert.ToInt16(selchilds), childrenbyroom, childages, ipaddress, curcode, b2c_idn, cust_idn); HACondition Hac = Utilities.GetSearchConditon(city, checkind, checkoutd, guestscount.ToString(), Convert.ToInt32(selroom), Convert.ToInt32(seladults), adultbyroom, Convert.ToInt32(selchilds), childrenbyroom, childages, curcode); HotelSearchAj hs = new HotelSearchAj(Hac, searchid, b2c_idn); DataTable dtHList = hs.dtBPIadd; DataSet ds = new DataSet(); ds.Tables.Add(dtHList); string HLFPath = Path.Combine(HttpRuntime.AppDomainAppPath, "HotelXML/" + searchid + "_" + curcode + "6140_USD_hotelsAvail-RS.xml"); ds.WriteXml(HLFPath); string rvalue = searchid; return(rvalue); }
private HACondition GetSearchConditon(string city, string checkin, string checkout, string guestcount, int rooms, int adults, int children) { try { HACondition Hac = new HACondition(); if (city != "") { Hac.City = city.Split('-')[0]; } Hac.GuestCount = (adults + children).ToString(); if (checkin != "") { Hac.CheckIn = Convert.ToDateTime(checkin).ToString("MM-dd"); } if (checkout != "") { Hac.CheckOut = Convert.ToDateTime(checkout).ToString("MM-dd"); } Hac.Rooms = rooms; Hac.Adults = adults; Hac.Children = children; Hac.SortBy = "low_price"; return(Hac); } catch (Exception ex) { throw ex; } }
public static HACondition GetSearchConditon(string city, string checkin, string checkout, string guestcount, int rooms, int adults, string adultbyroom, int children, string childrenbyroom, string childages, string currencycode) { try { HACondition Hac = new HACondition(); if (city != "") { if (city.IndexOf('-') > 0) { Hac.City = city.Split('-')[0]; Hac.CityType = "CC"; } else { DataTable dtll = HotelDBLayer.GetLatLong(city); string[] cityparts = city.Split(','); string CityP = cityparts[0]; //string State = cityparts[1]; string Country = cityparts[1]; Hac.CityName = CityP; Hac.fullCity = city; // Hac.City = city.Split(',')[0]; Hac.CityType = "CN"; } } Hac.fullCity = city.ToString(); Hac.GuestCount = (adults + children).ToString(); if (checkin != "") { Hac.CheckIn = Convert.ToDateTime(checkin).ToString("yyyy-MM-dd"); } if (checkout != "") { Hac.CheckOut = Convert.ToDateTime(checkout).ToString("yyyy-MM-dd"); } Hac.Rooms = rooms; Hac.Adults = adults; Hac.Adultsbyroom = adultbyroom; Hac.Children = children; Hac.Childrenbyroom = childrenbyroom; Hac.childrenage = childages; Hac.SortBy = "low_price"; Hac.CurrencyCode = currencycode; return(Hac); } catch (Exception ex) { throw ex; } }
public HotelSearch(HACondition hac, string searchid) { FillFaiconDictionary(); dtChainCode = manage_data.GetDatable_SP("p_CodeHotelChain", manage_data.flip_con); //// to get data from sable api starts string sc = GetRqcond(hac); string result = ""; result = GetHotels(sc, searchid); XMLResult = result; GenerateHS(XMLResult, searchid); // //// to get the data from xml file ends }
public string Get(string searchid, string curcode, string b2c_idn) { string rvalue = "N"; try { string checkind = ""; string checkoutd = ""; string selroom = ""; string seladults = ""; string selchildren = ""; string seladultsbyroom = ""; string selchildrenbyroom = ""; string city = ""; int guestcount = 1; string childrenages = ""; DataTable dssearch = HotelDBLayer.GetSearch(searchid); city = dssearch.Rows[0]["Destination"].ToString(); checkind = Convert.ToDateTime(dssearch.Rows[0]["CheckInDt"]).ToString("yyyy-MM-dd"); checkoutd = Convert.ToDateTime(dssearch.Rows[0]["CheckOutDt"]).ToString("yyyy-MM-dd"); selroom = dssearch.Rows[0]["Rooms"].ToString(); seladults = dssearch.Rows[0]["Adults"].ToString(); seladultsbyroom = dssearch.Rows[0]["HB_AdultsByRoom"].ToString(); selchildren = dssearch.Rows[0]["Children"].ToString(); selchildrenbyroom = dssearch.Rows[0]["HB_ChildrenByRoom"].ToString(); guestcount = Convert.ToInt16(dssearch.Rows[0]["Adults"].ToString()) + Convert.ToInt16(dssearch.Rows[0]["Children"].ToString()); childrenages = dssearch.Rows[0]["HB_ChildAge"].ToString(); HACondition Hac = GetSearchConditon(city, checkind, checkoutd, guestcount.ToString(), Convert.ToInt32(selroom), Convert.ToInt32(seladults), seladultsbyroom, Convert.ToInt32(selchildren), selchildrenbyroom, childrenages, curcode.Trim()); HotelSearchAj hs = new HotelSearchAj(Hac, searchid, b2c_idn); DataTable dtHList = hs.dtBPIadd; DataSet ds = new DataSet(); ds.Tables.Add(dtHList); // string HLFPath = Path.Combine(HttpRuntime.AppDomainAppPath, "HotelAvail/" + searchid + "_" + curcode + "_HotelList.xml");//yogi //string HLFPath = Path.Combine(HttpRuntime.AppDomainAppPath, "HotelXML/" + searchid + "_" + curcode + "_hotelsAvail-RS"); //ds.WriteXml(HLFPath); rvalue = "Y"; } catch (Exception ex) { rvalue = "N"; } return(rvalue); }
// GET api/<controller> public HotelSearch Get(string searchid, string city, string checkind, string checkoutd, string guestscount, string selroom, string selaudults, string selchilds) { HACondition Hac = GetSearchConditon(city, checkind, checkoutd, guestscount, Convert.ToInt32(selroom), Convert.ToInt32(selaudults), Convert.ToInt32(selchilds)); HotelSearch hs = new HotelSearch(Hac, searchid); //string filePathRQ = Path.Combine(HttpRuntime.AppDomainAppPath, "HotelAvail/" + searchid + "_Context.xml"); //File.WriteAllText(filePathRQ, hs.ContextResult); //string filePathHA = Path.Combine(HttpRuntime.AppDomainAppPath, "HotelAvail/" + searchid + "_HotelAvail.xml"); //File.WriteAllText(filePathHA, hs.XMLResult); DataTable dtHList = hs.dtBPIadd; DataSet ds = new DataSet(); ds.Tables.Add(dtHList); string HLFPath = Path.Combine(HttpRuntime.AppDomainAppPath, "HotelAvail/" + searchid + "_HotelList.xml"); ds.WriteXml(HLFPath); return(hs); }
private HACondition GetSearchConditon(string city, string checkin, string checkout, string guestcount, int rooms, int adults, int children, string currencycode) { try { HACondition Hac = new HACondition(); if (city != "") { if (city.IndexOf('-') > 0) { Hac.City = city.Split('-')[0]; Hac.CityType = "CC"; } else { Hac.City = city.Split(',')[0]; Hac.CityType = "CN"; } } Hac.fullCity = city; Hac.GuestCount = (adults + children).ToString(); if (checkin != "") { Hac.CheckIn = Convert.ToDateTime(checkin).ToString("yyyy-MM-dd"); } if (checkout != "") { Hac.CheckOut = Convert.ToDateTime(checkout).ToString("yyyy-MM-dd"); } Hac.Rooms = rooms; Hac.Adults = adults; Hac.Children = children; Hac.SortBy = "low_price"; Hac.CurrencyCode = currencycode; return(Hac); } catch (Exception ex) { throw ex; } }
public string Get(string searchid, string city, string checkind, string checkoutd, string guestscount, string selroom, string selaudults, string selchilds, string sortby, string pageno, string amenities, string stars, string hotelname, string curcode, string b2c_idn) { AvailabilityRS objAvailabilityRS = new AvailabilityRS(); vcity = city; vpageno = Convert.ToInt16(pageno); // string HLFPath = Path.Combine(HttpRuntime.AppDomainAppPath, "HotelAvail/" + searchid + "_" + curcode + "_HotelList.xml"); string HLFPath = Path.Combine(HttpRuntime.AppDomainAppPath, "HotelXML/" + searchid + "_" + curcode + "_hotelsAvail-RS.xml"); if (File.Exists(HLFPath)) { XmlDataDocument xmldoc = new XmlDataDocument(); FileStream fs = new FileStream(HLFPath, FileMode.Open, FileAccess.Read); xmldoc.Load(fs); fs.Close(); XmlNode xnod = xmldoc.DocumentElement; XmlSerializer deserializer = new XmlSerializer(typeof(AvailabilityRS)); StreamReader reader = new StreamReader(HLFPath); objAvailabilityRS = (AvailabilityRS)deserializer.Deserialize(reader); //HotelListGenerate.CreateTables(dtBPIadd); //HotelListGenerate.FillHStable(xnod, dtBPIadd);//yogi } else { HACondition Hac = GetSearchConditon(city, checkind, checkoutd, guestscount, Convert.ToInt32(selroom), Convert.ToInt32(selaudults), Convert.ToInt32(selchilds), curcode); HotelSearchAj hs = new HotelSearchAj(Hac, searchid, b2c_idn); dtBPIadd = hs.dtBPIadd; DataSet ds = new DataSet(); ds.Tables.Add(dtBPIadd); ds.WriteXml(HLFPath); } string pricerangecond = HotelListGenerate.GetPricrangecondzero(); AvailabilityRS dtPricingzero = HotelListGenerate.FilterTable(objAvailabilityRS, pricerangecond); objAvailabilityRS.Hotels.Hotel = objAvailabilityRS.Hotels.Hotel.OrderBy(k => Convert.ToDouble(k.MinRate)).ToList(); int totalhotels = 0; if (objAvailabilityRS.Hotels.Hotel.Count() >= 350) { totalhotels = 350;//objAvailabilityRS.Hotels.Hotel.Count(); } else { totalhotels = objAvailabilityRS.Hotels.Hotel.Count(); } //int totalhotels = dtPricingzero.Rows.Count; string rvalue = ""; if (totalhotels <= 0) { rvalue = "N"; } else { vtotpages = Convert.ToInt16(Math.Ceiling(Convert.ToDecimal(totalhotels) / 20)); AvailabilityRS dtFilterHotels = HotelListGenerate.GetFilteredData(objAvailabilityRS, hotelname, "", sortby, stars, amenities); //AvailabilityRS dtSortedHotels = HotelListGenerate.GetSortedData(dtFilterHotels, sortby); rvalue = Generatehtml(dtFilterHotels, dtPricingzero, searchid, checkind, checkoutd, guestscount, hotelname, sortby, curcode, b2c_idn, selaudults, selchilds); } return(rvalue); }
private static string GetRqcond(HACondition hac) { string city = hac.City; string guestcount = hac.GuestCount; string checkin = hac.CheckIn; string checkout = hac.CheckOut; string rooms = hac.Rooms.ToString(); string Awardrating = hac.AwardRating; string HotelName = hac.HotelName; string chaincode = hac.ChainCode; string RateMax = hac.RateMax; string RateMin = hac.RateMin; string rq = ""; #region makerq string CustomerCriteria = ""; string GuestCountCriteria = ""; string HotelSearchCriteria = ""; //string AddressCriteria = ""; string AwardCriteria = ""; string HotelAmenityCriteria = ""; string TimeSpanCriteria = ""; // string HotelFeatureCriteria = ""; string HotelRefCriteria = ""; string PropertyTypeCriteria = ""; string RoomAmenityCriteria = ""; string RatePlanCandiCriteria = ""; string RateRangeCriteria = ""; if (Awardrating == "5") { AwardCriteria += "<Award Provider='NTM' Rating='5'/>"; } if (Awardrating == "4") { AwardCriteria += "<Award Provider='NTM' Rating='4'/>"; } if (Awardrating == "3") { AwardCriteria += "<Award Provider='NTM' Rating='3'/>"; } if (Awardrating == "2") { AwardCriteria += "<Award Provider='NTM' Rating='2'/>"; } if (Awardrating == "1") { AwardCriteria += "<Award Provider='NTM' Rating='1'/>"; } if (hac.PropertyTypes != "") { string ptstrim = hac.PropertyTypes.Trim(','); string[] pts = ptstrim.Split(','); foreach (string pt in pts) { PropertyTypeCriteria += "<PropertyType>" + pt + "</PropertyType>"; } } if (guestcount != "") { GuestCountCriteria = "<GuestCounts Count='" + guestcount + "' />"; } //if (corporateID != "") //{ // Customercriteria += "</Customer><Corporate><ID> " + corporateID + "</ID></Corporate></Customer>"; //} if (checkin != "") { TimeSpanCriteria = "<TimeSpan End='" + checkout + "' Start='" + checkin + "' />"; } if (city != "") { HotelRefCriteria += " HotelCityCode='" + city + "'"; } if (HotelName != "") { HotelRefCriteria += " HotelName ='" + HotelName.ToUpper() + "'"; } if (HotelRefCriteria != "") { HotelRefCriteria = "<HotelRef" + HotelRefCriteria + "/>"; } string chaincriteria = ""; if (hac.ChainCode != "") { string ctstrim = hac.ChainCode.Trim(','); string[] pts = ctstrim.Split(','); foreach (string pt in pts) { chaincriteria += "<HotelRef ChainCode='" + pt + "'/>"; } } if (hac.HotelAmenities != "") { string ctstrim = hac.HotelAmenities.Trim(','); string[] pts = ctstrim.Split(','); foreach (string pt in pts) { HotelAmenityCriteria += "<HotelAmenity>" + pt + "</HotelAmenity>"; } } if (hac.RoomAmenities != "") { string ctstrim = hac.RoomAmenities.Trim(','); string[] pts = ctstrim.Split(','); foreach (string pt in pts) { RoomAmenityCriteria += "<RoomAmenity>" + pt + "</RoomAmenity>"; } } //// HotelSearchCriteria = "<HotelSearchCriteria NumProperties='200'><Criterion>" + AwardCriteria + HotelAmenityCriteria + HotelRefCriteria + chaincriteria + PropertyTypeCriteria + RoomAmenityCriteria; HotelSearchCriteria = "<HotelSearchCriteria NumProperties='200'><Criterion>" + HotelRefCriteria; HotelSearchCriteria += "</Criterion></HotelSearchCriteria>"; if (RateMax != "" || RateMin != "") { RateRangeCriteria = "<RateRange CurrencyCode='USD'"; if (RateMax != "") { RateRangeCriteria += "Max=" + RateMax; } if (RateMin != "") { RateRangeCriteria += "Min=" + RateMin; } RateRangeCriteria += "</RateRange>"; } if (RateRangeCriteria != "") { RatePlanCandiCriteria = "<RatePlanCandidates>" + RateRangeCriteria + "</RatePlanCandidates>"; } #endregion #region rq rq += "<SOAP-ENV:Body>"; rq += "<OTA_HotelAvailRQ Version='2.3.0' xmlns='http://webservices.sabre.com/sabreXML/2011/10' xmlns:xs='http://www.w3.org/2001/XMLSchema' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'>"; rq += "<AvailRequestSegment>"; ////rq += CustomerCriteria; rq += GuestCountCriteria; rq += HotelSearchCriteria; ////rq += RateRangeCriteria; rq += TimeSpanCriteria; rq += " </AvailRequestSegment>"; rq += "</OTA_HotelAvailRQ>"; rq += "</SOAP-ENV:Body>"; return(rq); #endregion }