public List <CLayer.Recommended> GetAllByManage(long ManageFor) { List <CLayer.Recommended> result = new List <CLayer.Recommended>(); List <DataPlug.Parameter> param = new List <DataPlug.Parameter>(); param.Add(Connection.GetParameter("pManageFor", DataPlug.DataType._BigInt, ManageFor)); DataTable dt = Connection.GetTable("recommendedbymanage_GetAll", param); CLayer.Recommended temp; foreach (DataRow dr in dt.Rows) { temp = new CLayer.Recommended(); temp.PropertyId = Connection.ToLong(dr["PropertyId"]); temp.EndDate = Connection.ToDate(dr["EndDate"]); temp.StartDate = Connection.ToDate(dr["StartDate"]); temp.Order = Connection.ToInteger(dr["Order"]); temp.Status = Connection.ToInteger(dr["Status"]); temp.UpdatedByUser = Connection.ToString(dr["UpdatedBy"]); temp.UpdatedDate = Connection.ToDate(dr["UpdatedDate"]); temp.Title = Connection.ToString(dr["Title"]); temp.Supplier = Connection.ToString(dr["Name"]); temp.ManageFor = Connection.ToInteger(dr["ManageFor"]); // temp.AccommodationType = Connection.ToString(dr["AccType"]); result.Add(temp); } return(result); }
public CLayer.Recommended GetData(long propertyId, long ManageFor) { CLayer.Recommended result = null; List <DataPlug.Parameter> param = new List <DataPlug.Parameter>(); param.Add(Connection.GetParameter("pPropertyId", DataPlug.DataType._BigInt, propertyId)); param.Add(Connection.GetParameter("pManageFor", DataPlug.DataType._BigInt, ManageFor)); DataTable dt = Connection.GetTable("recommended_Get", param); if (dt.Rows.Count > 0) { result = new CLayer.Recommended() { StartDate = Connection.ToDate(dt.Rows[0]["StartDate"]), EndDate = Connection.ToDate(dt.Rows[0]["EndDate"]), Status = Connection.ToInteger(dt.Rows[0]["Status"]), Order = Connection.ToInteger(dt.Rows[0]["Order"]), UpdatedBy = Connection.ToLong(dt.Rows[0]["UpdatedBy"]), UpdatedDate = Connection.ToDate(dt.Rows[0]["UpdatedDate"]), Title = Connection.ToString(dt.Rows[0]["Title"]), ManageFor = Connection.ToInteger(dt.Rows[0]["ManageFor"]) }; } return(result); }
public void SaveWithGDS(CLayer.Recommended data) { List <DataPlug.Parameter> param = new List <DataPlug.Parameter>(); param.Add(Connection.GetParameter("pPropertyId", DataPlug.DataType._BigInt, data.PropertyId)); param.Add(Connection.GetParameter("pStatus", DataPlug.DataType._Int, data.Status)); param.Add(Connection.GetParameter("pStartDate", DataPlug.DataType._Date, data.StartDate)); param.Add(Connection.GetParameter("pEndDate", DataPlug.DataType._Date, data.EndDate)); param.Add(Connection.GetParameter("pOrder", DataPlug.DataType._Int, data.Order)); param.Add(Connection.GetParameter("pUpdatedBy", DataPlug.DataType._BigInt, data.UpdatedBy)); param.Add(Connection.GetParameter("pManageFor", DataPlug.DataType._Int, data.ManageFor)); Connection.ExecuteQueryScalar("recommended_SaveWithGDS", param); }
public ActionResult GetDetails(long id, long ManageFor) { Models.RecommendedModel val = new Models.RecommendedModel(); try { CLayer.Recommended data = BLayer.Recommended.GetData(id, ManageFor); if (data == null) { RedirectToAction("Index"); } val.PropertyId = id; val.StartDate = data.StartDate.ToShortDateString();; val.EndDate = data.EndDate.ToShortDateString(); val.Order = data.Order; val.Status = data.Status; val.Title = data.Title; val.ManageFor = data.ManageFor; } catch (Exception ex) { Common.LogHandler.HandleError(ex); RedirectToAction("Index", "ErrorPage"); } return(View("_Details", val)); }
public List <CLayer.Recommended> GetAll() { List <CLayer.Recommended> result = new List <CLayer.Recommended>(); DataTable dt = Connection.GetTable("recommended_GetAll"); CLayer.Recommended temp; foreach (DataRow dr in dt.Rows) { temp = new CLayer.Recommended(); temp.PropertyId = Connection.ToLong(dr["PropertyId"]); temp.EndDate = Connection.ToDate(dr["EndDate"]); temp.StartDate = Connection.ToDate(dr["StartDate"]); temp.Order = Connection.ToInteger(dr["Order"]); temp.Status = Connection.ToInteger(dr["Status"]); temp.UpdatedByUser = Connection.ToString(dr["UpdatedBy"]); temp.UpdatedDate = Connection.ToDate(dr["UpdatedDate"]); temp.Title = Connection.ToString(dr["Title"]); temp.Supplier = Connection.ToString(dr["Name"]); temp.ManageFor = Connection.ToInteger(dr["ManageFor"]); // temp.AccommodationType = Connection.ToString(dr["AccType"]); result.Add(temp); } return(result); }
public ActionResult Save(Models.RecommendedModel data) { string start = ""; string End = ""; try { if (ModelState.IsValid) { DateTime tda = DateTime.Today; CLayer.Recommended rec = new CLayer.Recommended(); if (data.PropertyId == 0) { RedirectToAction("Index"); } int InventoryAPIType = BLayer.Property.GetInventoryAPITypeId(data.PropertyId); if (InventoryAPIType == (int)CLayer.ObjectStatus.InventoryAPIType.Amadeus) { rec.PropertyId = data.PropertyId; DataTable dtHoelCode = BLayer.Property.GetHotelIDFrompropertyid(rec.PropertyId); var hotelcode = dtHoelCode.Rows[0]["Hotel_Id"].ToString(); start = DateTime.Now.Date.AddDays(1).ToString("yyyy-MM-dd"); End = DateTime.Now.Date.AddDays(2).ToString("yyyy-MM-dd"); #region Rate Calculation string result = HotelMultiSingleAvailability(hotelcode, start, End); StayBazar.Common.Serializer ser1 = new StayBazar.Common.Serializer(); CLayer.HotelAvailability.Envelope HotelResult = new CLayer.HotelAvailability.Envelope(); CLayer.HotelAvailabilityAdvanced.Envelope HotelResultAdv = new CLayer.HotelAvailabilityAdvanced.Envelope(); CLayer.HotelAvailabilityAdvancedFirst.Envelope HotelResultAdvFirst = new CLayer.HotelAvailabilityAdvancedFirst.Envelope(); try { HotelResult = ser1.Deserialize <CLayer.HotelAvailability.Envelope>(result); } catch (Exception ex) { try { HotelResultAdv = ser1.Deserialize <CLayer.HotelAvailabilityAdvanced.Envelope>(result); } catch (Exception ex1) { HotelResultAdvFirst = ser1.Deserialize <CLayer.HotelAvailabilityAdvancedFirst.Envelope>(result); } } if (HotelResult.Body != null) { if (HotelResult.Body.OTA_HotelAvailRS.CurrencyConversions != null) { var item = HotelResult.Body.OTA_HotelAvailRS.CurrencyConversions; CLayer.GDSCurrencyConversions objCurrencyConversion = new CLayer.GDSCurrencyConversions(); objCurrencyConversion.RateConversion = item.CurrencyConversion.RateConversion; Session["GDSRateConversion"] = objCurrencyConversion.RateConversion; objCurrencyConversion.DecimalPlaces = item.CurrencyConversion.DecimalPlaces; objCurrencyConversion.RequestedCurrencyCode = item.CurrencyConversion.RequestedCurrencyCode; objCurrencyConversion.SourceCurrencyCode = item.CurrencyConversion.SourceCurrencyCode; Session["GDSCurrencyConversion"] = objCurrencyConversion; } if (Convert.ToString(Session["GDSCountry"]) == "") { Session["GDSCurrencyConversion"] = null; } if (HotelResult.Body.OTA_HotelAvailRS.HotelStays != null) { foreach (var item in HotelResult.Body.OTA_HotelAvailRS.HotelStays) { InventoryAPIType = (int)CLayer.ObjectStatus.InventoryAPIType.Amadeus; string HotelId = item.BasicPropertyInfo.HotelCode; List <CLayer.Accommodation> objAcc = BLayer.Accommodation.GetAllAccByPropertyid(rec.PropertyId); long AccomodationId = 0; string RoomStayRPH = item.RoomStayRPH; List <CLayer.RoomStaysResult> RoomStaysResultList = new List <CLayer.RoomStaysResult>(); if (!string.IsNullOrEmpty(RoomStayRPH)) { string[] RoomStayRPHList = RoomStayRPH.Split(' '); RoomStaysResultList = StayBazar.Controllers.PropertyController.GetRoomStays(HotelResult.Body.OTA_HotelAvailRS.RoomStays, RoomStayRPHList, Convert.ToString(Session["GDSCurrencyCode"]), Convert.ToDecimal(Session["GDSRateConversion"])); } CultureInfo culture = CultureInfo.CurrentCulture; CLayer.GDSRates Rdata = new CLayer.GDSRates(); string BookingCode = RoomStaysResultList.OrderBy(x => x.AmountAfterTax).FirstOrDefault().BookingCode; Rdata.Rate = RoomStaysResultList.OrderBy(x => x.AmountAfterTax).FirstOrDefault().AmountAfterTax; Rdata.RateFor = data.ManageFor; long userId = 0; long.TryParse(User.Identity.GetUserId(), out userId); Rdata.UpdatedBy = userId; Rdata.StartDate = DateTime.Parse(start, CultureInfo.CurrentCulture); Rdata.EndDate = DateTime.Parse(End, CultureInfo.CurrentCulture); Rdata.BookingCode = BookingCode; Rdata.Status = 1; Rdata.AccommodationId = objAcc.Where(X => X.BookingCode == BookingCode).FirstOrDefault().AccommodationId; long gdsRateId = BLayer.Rate.GDSRateSave(Rdata); } } } else if (HotelResultAdvFirst.Body != null) { if (HotelResultAdvFirst.Body.OTA_HotelAvailRS.CurrencyConversions != null) { var itemAdv = HotelResultAdvFirst.Body.OTA_HotelAvailRS.CurrencyConversions; CLayer.GDSCurrencyConversions objCurrencyConversion = new CLayer.GDSCurrencyConversions(); objCurrencyConversion.RateConversion = itemAdv.CurrencyConversion.RateConversion; Session["GDSRateConversion"] = objCurrencyConversion.RateConversion; objCurrencyConversion.DecimalPlaces = itemAdv.CurrencyConversion.DecimalPlaces; objCurrencyConversion.RequestedCurrencyCode = itemAdv.CurrencyConversion.RequestedCurrencyCode; objCurrencyConversion.SourceCurrencyCode = itemAdv.CurrencyConversion.SourceCurrencyCode; Session["GDSCurrencyConversion"] = objCurrencyConversion; } if (Convert.ToString(Session["GDSCountry"]) == "") { Session["GDSCurrencyConversion"] = null; } if (HotelResultAdvFirst.Body.OTA_HotelAvailRS.HotelStays != null) { foreach (var item in HotelResult.Body.OTA_HotelAvailRS.HotelStays) { InventoryAPIType = (int)CLayer.ObjectStatus.InventoryAPIType.Amadeus; string HotelId = item.BasicPropertyInfo.HotelCode; List <CLayer.Accommodation> objAcc = BLayer.Accommodation.GetAllAccByPropertyid(rec.PropertyId); long AccomodationId = 0; string RoomStayRPH = item.RoomStayRPH; List <CLayer.RoomStaysResult> RoomStaysResultList = new List <CLayer.RoomStaysResult>(); if (!string.IsNullOrEmpty(RoomStayRPH)) { string[] RoomStayRPHList = RoomStayRPH.Split(' '); RoomStaysResultList = StayBazar.Controllers.PropertyController.GetRoomStays(HotelResult.Body.OTA_HotelAvailRS.RoomStays, RoomStayRPHList, Convert.ToString(Session["GDSCurrencyCode"]), Convert.ToDecimal(Session["GDSRateConversion"])); } CultureInfo culture = CultureInfo.CurrentCulture; CLayer.GDSRates Rdata = new CLayer.GDSRates(); string BookingCode = RoomStaysResultList.OrderBy(x => x.AmountAfterTax).FirstOrDefault().BookingCode; Rdata.Rate = RoomStaysResultList.OrderBy(x => x.AmountAfterTax).FirstOrDefault().AmountAfterTax; Rdata.RateFor = data.ManageFor; long userId = 0; long.TryParse(User.Identity.GetUserId(), out userId); Rdata.UpdatedBy = userId; Rdata.StartDate = DateTime.Parse(start, CultureInfo.CurrentCulture); Rdata.EndDate = DateTime.Parse(End, CultureInfo.CurrentCulture); Rdata.BookingCode = BookingCode; Rdata.Status = 1; Rdata.AccommodationId = objAcc.Where(X => X.BookingCode == BookingCode).FirstOrDefault().AccommodationId; long gdsRateId = BLayer.Rate.GDSRateSave(Rdata); } } } #endregion DateTime.TryParse(data.StartDate, out tda); rec.StartDate = tda; tda = DateTime.Today; DateTime.TryParse(data.EndDate, out tda); rec.EndDate = tda; rec.Order = data.Order; rec.Status = data.Status; rec.ManageFor = data.ManageFor; long userid = 0; long.TryParse(User.Identity.GetUserId(), out userid); rec.UpdatedBy = userid; } else { rec.PropertyId = data.PropertyId; DateTime.TryParse(data.StartDate, out tda); rec.StartDate = tda; tda = DateTime.Today; DateTime.TryParse(data.EndDate, out tda); rec.EndDate = tda; rec.Order = data.Order; rec.Status = data.Status; rec.ManageFor = data.ManageFor; long userid = 0; long.TryParse(User.Identity.GetUserId(), out userid); rec.UpdatedBy = userid; } // BLayer.Recommended.Save(rec); rec.StartDate = DateTime.Parse(start, CultureInfo.CurrentCulture); rec.EndDate = DateTime.Parse(End, CultureInfo.CurrentCulture); BLayer.Recommended.SaveWithGDS(rec); } } catch (Exception ex) { Common.LogHandler.HandleError(ex); RedirectToAction("Index", "ErrorPage"); } //// RedirectToAction("Index", "Recommended", new { area = "Admin" }); return(RedirectToAction("Index", "Recommended", new { area = "Admin" })); }
public static void SaveWithGDS(CLayer.Recommended data) { DataLayer.Recommended rec = new DataLayer.Recommended(); rec.SaveWithGDS(data); }