public HotelBookingProcessModel GetDetail(long?id) { HotelBookingProcessModel _model = new HotelBookingProcessModel(); HotelMessageModel _msg = new HotelMessageModel(); if (id != null) { HotelItinearyModel _itinModel = new HotelItinearyModel(); HotelBookRepository _bookRep = new HotelBookRepository(); HotelBookDetailRepository _bookingDtlRep = new HotelBookDetailRepository(); HotelBookingDetailModel _bookingDtlModel = new HotelBookingDetailModel(); _bookingDtlModel = _bookingDtlRep.GetHotelBooking(id); _model.BookingDetail = _bookingDtlModel; _model.BookingRecordId = id.Value; _itinModel = _bookRep.GetItineary(id); _model.Itineary = _itinModel.Itineary; _model.Message = _bookingDtlModel.Message; } else { _msg.ActionMessage = "Invalid Operation."; _msg.MsgNumber = 1000; _msg.MsgStatus = true; _msg.MsgType = 2; _model.Message = _msg; } return(_model); }
public ActionResult PrintItineary(long?id) { HotelBookingRecordRepository _rep = new HotelBookingRecordRepository(); HotelItinearyModel _model = new HotelItinearyModel(); _model = _rep.Itineary(id); return(View(_model)); }
public ActionResult CancellationEmail(long?BookingRecordId) { HotelBookingRecordRepository _rep = new HotelBookingRecordRepository(); HotelItinearyModel _model = new HotelItinearyModel(); HotelMessageModel _msg = new HotelMessageModel(); _model = _rep.CancelEmailFormat(BookingRecordId); return(View(_model)); }
public HotelItinearyModel Itineary(long?id) { HotelItinearyModel _model = new HotelItinearyModel(); HotelBookRepository _bookRep = new HotelBookRepository(); _model = _bookRep.GetItineary(id); if (_model.Message.MsgNumber == 1) { _model.BookingRecordId = id.Value; } return(_model); }
public ActionResult EmailCancel(long?id, string emal) { HotelBookingRecordRepository _rep = new HotelBookingRecordRepository(); HotelItinearyModel _model = new HotelItinearyModel(); HotelMessageModel _msg = new HotelMessageModel(); if (ATLTravelPortal.Areas.Hotel.Repository.HotelGeneralRepository.ValidateEmail(emal) == false) { _msg.ActionMessage = "Invalid Email address."; _msg.MsgNumber = 1001; _msg.MsgStatus = true; _msg.MsgType = 3; _model.Message = _msg; } else { _model = _rep.CancelEmailFormat(id); if (_model.Message.MsgNumber == 1) { List <string> emailList = new List <string>(); emailList.Add(emal); if (_model.Itineary.GuestEmail != emal) { emailList.Add(_model.Itineary.GuestEmail); } string body = RenderPartialViewToString("VUC_CancellationEmail", _model); GeneralRepository gProvider = new GeneralRepository(); //use ohter way to send email. var agent = gProvider.GetAgentInfo(GeneralRepository.LoggedAgentId()); string emailId = agent.Email + "," + emal; string subject = "Hotel Booking Cancellation #: " + _model.Itineary.HotelName + ", " + _model.Itineary.CityName + ", " + _model.Itineary.CountryName; string HTML = HotelGeneralRepository.sendQuotation(emailId, subject, body, "", false); _msg.ActionMessage = "Booking Cancellation Email has been sent."; _msg.MsgNumber = 1; _msg.MsgStatus = true; _msg.MsgType = 0; _model.Message = _msg; } } return(PartialView("Utility/VUC_Message", _model.Message)); }
public ActionResult EmailItinerary(long?id, string emal) { HotelBookingRecordRepository _rep = new HotelBookingRecordRepository(); HotelItinearyModel _model = new HotelItinearyModel(); HotelMessageModel _msg = new HotelMessageModel(); if (ATLTravelPortal.Areas.Hotel.Repository.HotelGeneralRepository.ValidateEmail(emal) == false) { _msg.ActionMessage = "Invalid Email address."; _msg.MsgNumber = 1001; _msg.MsgStatus = true; _msg.MsgType = 3; _model.Message = _msg; } else { _model = _rep.Itineary(id); if (_model.Message.MsgNumber == 1) { List <string> emailList = new List <string>(); emailList.Add(emal); if (_model.Itineary.GuestEmail != emal) { emailList.Add(_model.Itineary.GuestEmail); } string body = RenderPartialViewToString("Common/VUC_Itinerary", _model); //use ohter way to send email. string subject = "Hotel Booking Itinerary Ref No : " + _model.BookingRecordId + "#" + _model.Itineary.BookingId + "#" + _model.Itineary.ConfirmationNo + "# " + _model.Itineary.HotelName + ", " + _model.Itineary.CityName + ", " + _model.Itineary.CountryName; HotelGeneralRepository.sendEmial(emal, "", "", subject, body, "HTML", ""); _msg.ActionMessage = "Itinerary has been sent."; _msg.MsgNumber = 1; _msg.MsgStatus = true; _msg.MsgType = 0; _model.Message = _msg; } } return(PartialView("Utility/VUC_Message", _model.Message)); }
public HotelItinearyModel CancelEmailFormat(long?id) { HotelItinearyModel _model = new HotelItinearyModel(); HotelMessageModel _msg = new HotelMessageModel(); if (id != null) { TravelPortalEntity.EntityModel _ent = new TravelPortalEntity.EntityModel(); var obj = _ent.Htl_BookingCancelDetail.Where(x => x.BookingCancelId == id).FirstOrDefault(); if (obj != null) { HotelBookRepository _bookRep = new HotelBookRepository(); _model = _bookRep.GetItineary(obj.BookingRecordId); _model.BookingRecordId = id.Value; _msg.ActionMessage = "Success."; _msg.MsgNumber = 1; _msg.MsgStatus = false; _msg.MsgType = 1; } else { _msg.ActionMessage = "Invalid Operation."; _msg.MsgNumber = 1000; _msg.MsgStatus = true; _msg.MsgType = 2; } } else { _msg.ActionMessage = "Invalid Operation."; _msg.MsgNumber = 1000; _msg.MsgStatus = true; _msg.MsgType = 2; } _model.Message = _msg; return(_model); }
public HotelBookingProcessModel ProcessPendingBooking(long?id) { TravelPortalEntity.EntityModel _ent = new TravelPortalEntity.EntityModel(); int BaseCurrencyId = 0; int CurrencyCodeId = 0; string BaseCurrencyCode = System.Configuration.ConfigurationManager.AppSettings["HotelBaseCurrencyCode"]; string CurrencyCode = System.Configuration.ConfigurationManager.AppSettings["HotelCurrencyCode"]; var _BaseCurrencyCode = _ent.Currencies.Where(x => x.CurrencyCode.Trim() == BaseCurrencyCode).FirstOrDefault(); if (_BaseCurrencyCode != null) { BaseCurrencyId = _BaseCurrencyCode.CurrencyId == null ? 0 : _BaseCurrencyCode.CurrencyId; } var _CurrencyCode = _ent.Currencies.Where(x => x.CurrencyCode.Trim() == CurrencyCode).FirstOrDefault(); if (_CurrencyCode != null) { CurrencyCodeId = _CurrencyCode.CurrencyId == null ? 0 : _CurrencyCode.CurrencyId; } var _ExchangeRate = _ent.Core_FXRate.Where(x => x.BaseCurrencyID == BaseCurrencyId && x.CurrencyID == CurrencyCodeId).OrderByDescending(x => x.CreatedDate).FirstOrDefault(); decimal ExchangeRate = 1; if (_ExchangeRate != null) { ExchangeRate = (decimal)(_ExchangeRate.ExchangeRate == null ? 1 : _ExchangeRate.ExchangeRate == 0 ? 1 : _ExchangeRate.ExchangeRate); } HotelItinearyModel _itmodel = new HotelItinearyModel(); HotelBookingProcessModel _model = new HotelBookingProcessModel(); HotelMessageModel _msg = new HotelMessageModel(); HotelCore.GetHotelBooking.Request _getBookingReq = new HotelCore.GetHotelBooking.Request(); HotelCore.GetHotelBooking.Response _getBookingRes = new HotelCore.GetHotelBooking.Response(); HotelCore.AddHotelBookingDetail.Request _addBookingReq = new HotelCore.AddHotelBookingDetail.Request(); HotelCore.AddHotelBookingDetail.Response _addBookingRes = new HotelCore.AddHotelBookingDetail.Response(); HotelCore.Book.Request _bookingReq = new HotelCore.Book.Request(); HotelCore.API api = new HotelCore.API(); if (id != null) { var obj = _ent.Htl_BookingRecord.FirstOrDefault(x => x.BookingRecordId == id && x.IsProcessed == false); if (obj != null) { if (obj.BookingStatusCode.Trim() == "Pending") { _getBookingReq.BookingId = obj.GDSBookingId; _getBookingRes = api.GetHotelBooking(_getBookingReq); if (_getBookingRes.Status.StatusNumber == 0) { if (_getBookingRes.BookingDetail != null) { var _bookRecObj = _ent.Htl_BookingRecord.Where(x => x.BookingRecordId == id).FirstOrDefault(); _bookRecObj.BookingStatusCode = _getBookingRes.BookingDetail[0].BookingStatus.ToString(); _bookRecObj.BookingReferenceNo = _getBookingRes.BookingDetail[0].BookingRefNo; _bookRecObj.BookingConformationNo = _getBookingRes.BookingDetail[0].ConfirmationNo; _bookRecObj.LastCancilationDate = _getBookingRes.BookingDetail[0].LastCancellationDate; _bookRecObj.BookingStatusCode = _getBookingRes.BookingDetail[0].BookingStatus.ToString(); _bookRecObj.IsGetBookingDetail = true; _ent.ApplyCurrentValues(obj.EntityKey.EntitySetName, _bookRecObj); _ent.SaveChanges(); var _bookingRecord = _ent.Htl_BookingRecord.Where(x => x.BookingRecordId == id).FirstOrDefault(); _bookingReq.SessionId = _bookingRecord.SearchSessionId; _bookingReq.Index = _bookingRecord.SearchIndex; _bookingReq.CountryName = _bookingRecord.CountryName; HotelCore.Utility.PaymentInformation pinfo = new HotelCore.Utility.PaymentInformation(); pinfo.Amount = _bookingRecord.TotalChargeableAmount; _bookingReq.PaymentInfo = pinfo; List <HotelCore.Utility.Guest> Guest = new List <HotelCore.Utility.Guest>(); var _guest = _ent.Htl_BookingGuestDetail.Where(x => x.BookingRecordId == id); if (_guest != null) { if (_guest.Count() > 0) { foreach (var item in _guest) { HotelCore.Utility.Guest gu = new HotelCore.Utility.Guest(); gu.Age = item.Age; gu.Addressline1 = item.Address1; gu.Addressline2 = item.Address2; gu.Areacode = item.AreaPhCode; gu.City = item.City; gu.Country = item.Country; gu.Countrycode = item.CountryPhCode; gu.Email = item.Email; gu.FirstName = item.FirstName; gu.GuestType = item.GuestType.Trim() == "Child" ? HotelCore.Utility.HotelGuestType.Child : HotelCore.Utility.HotelGuestType.Adult; gu.LastName = item.LastName; gu.LeadGuest = item.IsLeadGuest; gu.MiddleName = item.MiddleName; gu.Phoneno = item.PhoneNo; gu.RoomIndex = item.RoomIndex; gu.State = item.GuestState; gu.Title = item.Title; gu.Zipcode = item.ZipCoade; Guest.Add(gu); } } } _bookingReq.Guest = Guest.ToArray(); _bookingReq.CreatedOn = CurrentDateTime; _bookingReq.DisplayExchangeRate = ExchangeRate; if (_getBookingRes.BookingDetail[0].BookingStatus.ToString() == "Confirmed") { _addBookingReq = api.FillAddBookingRequest(1, _getBookingRes, _bookingReq); _addBookingRes = api.AddHotelBookingDetail(_addBookingReq); if (_addBookingRes.Status.StatusNumber == 0) { var _bookRecObj1 = _ent.Htl_BookingRecord.Where(x => x.BookingRecordId == id).FirstOrDefault(); _bookRecObj.AddBookingRefId = _addBookingRes.ReferenceId; _bookRecObj.IsBookingAdded = true; _ent.ApplyCurrentValues(obj.EntityKey.EntitySetName, _bookRecObj1); _ent.SaveChanges(); } } } } } else if ((obj.IsProcessed == false && obj.IsGetBookingDetail == false && obj.BookingStatusCode.Trim() == "Confirmed") || (obj.IsBookingAdded == false)) { _getBookingReq.BookingId = obj.GDSBookingId; _getBookingRes = api.GetHotelBooking(_getBookingReq); if (_getBookingRes.Status.StatusNumber == 0) { if (_getBookingRes.BookingDetail != null) { var _bookRecObj = _ent.Htl_BookingRecord.Where(x => x.BookingRecordId == id).FirstOrDefault(); _bookRecObj.BookingStatusCode = _getBookingRes.BookingDetail[0].BookingStatus.ToString(); _bookRecObj.BookingReferenceNo = _getBookingRes.BookingDetail[0].BookingRefNo; _bookRecObj.BookingConformationNo = _getBookingRes.BookingDetail[0].ConfirmationNo; _bookRecObj.LastCancilationDate = _getBookingRes.BookingDetail[0].LastCancellationDate; _bookRecObj.IsGetBookingDetail = true; _ent.ApplyCurrentValues(obj.EntityKey.EntitySetName, _bookRecObj); _ent.SaveChanges(); var _bookingRecord = _ent.Htl_BookingRecord.Where(x => x.BookingRecordId == id).FirstOrDefault(); _bookingReq.SessionId = _bookingRecord.SearchSessionId; _bookingReq.Index = _bookingRecord.SearchIndex; _bookingReq.CountryName = _bookingRecord.CountryName; HotelCore.Utility.PaymentInformation pinfo = new HotelCore.Utility.PaymentInformation(); pinfo.Amount = _bookingRecord.TotalChargeableAmount; _bookingReq.PaymentInfo = pinfo; List <HotelCore.Utility.Guest> Guest = new List <HotelCore.Utility.Guest>(); var _guest = _ent.Htl_BookingGuestDetail.Where(x => x.BookingRecordId == id); if (_guest != null) { if (_guest.Count() > 0) { foreach (var item in _guest) { HotelCore.Utility.Guest gu = new HotelCore.Utility.Guest(); gu.Age = item.Age; gu.Addressline1 = item.Address1; gu.Addressline2 = item.Address2; gu.Areacode = item.AreaPhCode; gu.City = item.City; gu.Country = item.Country; gu.Countrycode = item.CountryPhCode; gu.Email = item.Email; gu.FirstName = item.FirstName; gu.GuestType = item.GuestType.Trim() == "Child" ? HotelCore.Utility.HotelGuestType.Child : HotelCore.Utility.HotelGuestType.Adult; gu.LastName = item.LastName; gu.LeadGuest = item.IsLeadGuest; gu.MiddleName = item.MiddleName; gu.Phoneno = item.PhoneNo; gu.RoomIndex = item.RoomIndex; gu.State = item.GuestState; gu.Title = item.Title; gu.Zipcode = item.ZipCoade; Guest.Add(gu); } } } _bookingReq.Guest = Guest.ToArray(); _bookingReq.CreatedOn = CurrentDateTime; _bookingReq.DisplayExchangeRate = ExchangeRate; _addBookingReq = api.FillAddBookingRequest(1, _getBookingRes, _bookingReq); _addBookingRes = api.AddHotelBookingDetail(_addBookingReq); if (_addBookingRes.Status.StatusNumber == 0) { var _bookRecObj1 = _ent.Htl_BookingRecord.Where(x => x.BookingRecordId == id).FirstOrDefault(); _bookRecObj1.AddBookingRefId = _addBookingRes.ReferenceId; _bookRecObj1.IsBookingAdded = true; _ent.ApplyCurrentValues(_bookRecObj1.EntityKey.EntitySetName, _bookRecObj1); _ent.SaveChanges(); } } } } else if (obj.IsVouchered == false) { _getBookingReq.BookingId = obj.GDSBookingId; _getBookingRes = api.GetHotelBooking(_getBookingReq); var _bookRecObj1 = _ent.Htl_BookingRecord.Where(x => x.BookingRecordId == id).FirstOrDefault(); _bookRecObj1.IsVouchered = _getBookingRes.BookingDetail[0].VoucherStatus; _bookRecObj1.IsProcessed = _getBookingRes.BookingDetail[0].VoucherStatus; _ent.ApplyCurrentValues(_bookRecObj1.EntityKey.EntitySetName, _bookRecObj1); _ent.SaveChanges(); } } var _bookRecObj2 = _ent.Htl_BookingRecord.Where(x => x.BookingRecordId == id).FirstOrDefault(); if (_bookRecObj2.IsBookingSuccess == true && _bookRecObj2.IsBookingAdded == true && _bookRecObj2.BookingStatusCode == "Confirmed") { _bookRecObj2.IsProcessed = true; _ent.ApplyCurrentValues(_bookRecObj2.EntityKey.EntitySetName, _bookRecObj2); _ent.SaveChanges(); } HotelItinearyModel _itinModel = new HotelItinearyModel(); HotelBookRepository _bookRep = new HotelBookRepository(); HotelBookDetailRepository _bookingDtlRep = new HotelBookDetailRepository(); _model.BookingDetail = _bookingDtlRep.GetHotelBooking(id); _itinModel = _bookRep.GetItineary(id); _model.Itineary = _itinModel.Itineary; if (_itinModel.Itineary.BookingStatusDesc == "Confirmed" || _itinModel.Itineary.IsProcessed == true) { _msg.ActionMessage = "Booking Success"; _msg.MsgNumber = 1; _msg.MsgStatus = true; _msg.MsgType = 0; _model.Message = _msg; } else { _msg.ActionMessage = "Booking can not complete try again."; _msg.MsgNumber = 1001; _msg.MsgStatus = true; _msg.MsgType = 2; _model.Message = _msg; } } else { _msg.ActionMessage = "Invalid Operation."; _msg.MsgNumber = 1000; _msg.MsgStatus = true; _msg.MsgType = 2; _model.Message = _msg; } return(_model); }