// GET: Profile/Create public ActionResult CreateIndividualProfile() { var countryList = new SelectList(countryRepository.GetCountries(), "Id", "Name").ToList(); //var titleList = new SelectList(titleRepository.GetTitle(), "Id", "Title").ToList(); var titleList = new SelectList(titleRepository.GetTitle() .Select( m => new SelectListItem() { Value = m.Id.ToString(), Text = (m.Title) } ), "Value", "Text").ToList(); var vipList = new SelectList(vipRepository.GetVip(), "Id", "Description").ToList(); var nationalityList = new SelectList(nationalityRepository.GetNationality(), "Id", "Name").ToList(); var profileTypeId = profileTypeRepository.GetProfileType(ProfileTypeName.INDIVIDUAL).FirstOrDefault().Id; var preferenceGroupList = new SelectList(preferenceGroupRepository.GetPreferenceGroup(), "Id", "Name").ToList(); IndividualProfileVM model = new IndividualProfileVM(); model.ProfileTypeId = profileTypeId; model.IsActive = true; ViewBag.TitleList = titleList; ViewBag.VipList = vipList; ViewBag.CountryList = countryList; ViewBag.NationalityList = nationalityList; ViewBag.PreferenceGroupList = preferenceGroupList; return(View(model)); }
public string AddIndividualProfile(IndividualProfileVM profile) { string profileId = string.Empty; SqlParameter[] parameters = { new SqlParameter { ParameterName = "@ProfileTypeId", Value = profile.ProfileTypeId }, new SqlParameter { ParameterName = "@FirstName", Value = profile.FirstName }, new SqlParameter { ParameterName = "@LastName", Value = profile.LastName }, new SqlParameter { ParameterName = "@TitleId", Value = profile.TitleId }, new SqlParameter { ParameterName = "@TelephoneNo", Value = profile.TelephoneNo }, new SqlParameter { ParameterName = "@BusinessTelephoneNo", Value = profile.BusinessTelephoneNo }, new SqlParameter { ParameterName = "@Email", Value = profile.Email }, new SqlParameter { ParameterName = "@Address", Value = profile.Address }, new SqlParameter { ParameterName = "@HomeAddress", Value = profile.HomeAddress }, new SqlParameter { ParameterName = "@CountryId", Value = profile.CountryId }, new SqlParameter { ParameterName = "@StateId", Value = profile.StateId }, new SqlParameter { ParameterName = "@StateName", Value = profile.StateName }, new SqlParameter { ParameterName = "@CityId", Value = profile.CityId }, new SqlParameter { ParameterName = "@CityName", Value = profile.CityName }, new SqlParameter { ParameterName = "@ZipCode", Value = profile.ZipCode }, new SqlParameter { ParameterName = "@VipId", Value = profile.VipId }, new SqlParameter { ParameterName = "@NationalityId", Value = profile.NationalityId }, new SqlParameter { ParameterName = "@CarRegistrationNo", Value = profile.CarRegistrationNo }, new SqlParameter { ParameterName = "@PassportNo", Value = profile.PassportNo }, new SqlParameter { ParameterName = "@DOB", Value = profile.DOB }, //new SqlParameter { ParameterName = "@Remarks", Value = profile.Remarks }, new SqlParameter { ParameterName = "@Remarks", Value = string.Empty }, new SqlParameter { ParameterName = "@IsMailingList", Value = profile.IsMailingList }, new SqlParameter { ParameterName = "@IsActive", Value = profile.IsActive }, new SqlParameter { ParameterName = "@CreatedBy", Value = profile.CreatedBy } }; profileId = Convert.ToString(DALHelper.ExecuteScalar("AddIndividualProfile", parameters)); return(profileId); }
public ActionResult CreateIndividualProfile(IndividualProfileVM model) { try { string profileId = string.Empty; model.CarRegistrationNo = Utility.Utility.ToUpperCase(model.CarRegistrationNo); model.CreatedBy = LogInManager.LoggedInUserId; profileId = profileRepository.AddIndividualProfile(model); if (!string.IsNullOrWhiteSpace(profileId)) { model.Id = Guid.Parse(profileId); #region Save Profile Preference Mapping var preferenceItems = model.PreferenceItems; if (!string.IsNullOrWhiteSpace(preferenceItems)) { var preferenceItemsArr = preferenceItems.Split(','); if (preferenceItemsArr != null) { //Remove Duplication. preferenceItemsArr = preferenceItemsArr.Distinct().ToArray(); foreach (var item in preferenceItemsArr) { //Save Profile Preference Mapping. ProfilePreferenceMappingVM profilePreferenceMapping = new ProfilePreferenceMappingVM(); profilePreferenceMapping.ProfileTypeId = model.ProfileTypeId; profilePreferenceMapping.PreferenceId = Guid.Parse(item); profilePreferenceMapping.ProfileId = Guid.Parse(profileId); profilePreferenceMapping.CreatedBy = LogInManager.LoggedInUserId; preferenceRepository.AddProfilePreferenceMapping(profilePreferenceMapping); } } } #endregion #region Profile Remarks if (model.RemarksList != null && model.RemarksList.Count > 0) { foreach (var remark in model.RemarksList) { remark.ProfileId = model.Id; remark.CreatedBy = LogInManager.LoggedInUserId; if (!remark.CreatedOn.HasValue) { remark.CreatedOn = DateTime.Now; } profileRepository.AddProfileRemark(remark); } } #endregion #region Record Activity Log RecordActivityLog.RecordActivity(Pages.INDIVIDUAL_PROFILE, string.Format("Created new profile of {0} {1}.", model.LastName, model.FirstName)); #endregion #region Check Source Parameters if (Request.Form["Source"] != null && !string.IsNullOrWhiteSpace(Convert.ToString(Request.Form["Source"]))) { string source = string.Empty; string url = string.Empty; string qid = string.Empty; source = Convert.ToString(Request.Form["Source"]); if (source == "RateQuery") { TempData["ProfileId"] = profileId; TempData["FirstName"] = model.FirstName; TempData["LastName"] = model.LastName; TempData["CountryId"] = model.CountryId; TempData["TelephoneNo"] = model.TelephoneNo; //TempData["Remarks"] = model.Remarks; url = Url.Action("RateQuery", "Reservation"); } else if (source == "CreateReservation") { TempData["TitleId"] = model.TitleId; TempData["ProfileId"] = profileId; TempData["FirstName"] = model.FirstName; TempData["LastName"] = model.LastName; TempData["CountryId"] = model.CountryId; TempData["TelephoneNo"] = model.TelephoneNo; //TempData["Remarks"] = model.Remarks; url = Url.Action("Create", "Reservation"); } else if (source == "EditReservation") { qid = Convert.ToString(Request.Form["Qid"]); TempData["TitleId"] = model.TitleId; TempData["ProfileId"] = profileId; TempData["FirstName"] = model.FirstName; TempData["LastName"] = model.LastName; TempData["CountryId"] = model.CountryId; TempData["TelephoneNo"] = model.TelephoneNo; //TempData["Remarks"] = model.Remarks; url = Url.Action("Edit", "Reservation", new { Id = qid }); } else if (source == "SearchArrivals") { TempData["TitleId"] = model.TitleId; TempData["ProfileId"] = profileId; TempData["FirstName"] = model.FirstName; TempData["LastName"] = model.LastName; TempData["CountryId"] = model.CountryId; TempData["TelephoneNo"] = model.TelephoneNo; //TempData["Remarks"] = model.Remarks; url = Url.Action("Arrivals", "FrontDesk"); } if (!string.IsNullOrWhiteSpace(url)) { return(Json(new { IsSuccess = true, IsExternalUrl = true, data = url }, JsonRequestBehavior.AllowGet)); } } #endregion return(Json(new { IsSuccess = true, data = new { ProfileId = model.Id } }, JsonRequestBehavior.AllowGet)); } else { return(Json(new { IsSuccess = false, errorMessage = "Individual profile not saved successfully." }, JsonRequestBehavior.AllowGet)); } } catch (Exception e) { Utility.Utility.LogError(e, "CreateIndividualProfile"); return(Json(new { IsSuccess = false, errorMessage = e.Message })); } }
public ActionResult EditIndividualProfile(Guid id) { IndividualProfileVM model = new IndividualProfileVM(); var profile = profileRepository.GetIndividualProfileById(id, LogInManager.LoggedInUserId); if (profile != null && profile.Count > 0) { model = profile[0]; model.Remarks = string.Empty; model.CarRegistrationNo = Utility.Utility.ToUpperCase(model.CarRegistrationNo); #region Preference Mapping //Get Preference Mapping var selectedPreferences = preferenceRepository.GetProfilePreferenceMapping(model.ProfileTypeId, model.Id, null, LogInManager.LoggedInUserId); ViewBag.SelectedPreferences = selectedPreferences; #endregion var countryList = new SelectList(countryRepository.GetCountries(), "Id", "Name").ToList(); //var titleList = new SelectList(titleRepository.GetTitle(), "Id", "Title").ToList(); var titleList = new SelectList(titleRepository.GetTitle() .Select( m => new SelectListItem() { Value = m.Id.ToString(), Text = (m.Title) } ), "Value", "Text").ToList(); var vipList = new SelectList(vipRepository.GetVip(), "Id", "Description").ToList(); var nationalityList = new SelectList(nationalityRepository.GetNationality(), "Id", "Name").ToList(); var preferenceGroupList = new SelectList(preferenceGroupRepository.GetPreferenceGroup(), "Id", "Name").ToList(); ViewBag.TitleList = titleList; ViewBag.VipList = vipList; ViewBag.CountryList = countryList; ViewBag.NationalityList = nationalityList; ViewBag.PreferenceGroupList = preferenceGroupList; ////Get State //var stateList = new SelectList(new List<StateVM>(), "Id", "Name").ToList(); ////Get City //var cityList = new SelectList(new List<CityVM>(), "Id", "Name").ToList(); //if (model.CountryId.HasValue) //{ // stateList = new SelectList(stateRepository.GetStates(model.CountryId), "Id", "Name").ToList(); // cityList = new SelectList(cityRepository.GetCities(model.CountryId,model.StateId), "Id", "Name").ToList(); //} //ViewBag.StateList = stateList; //ViewBag.CityList = cityList; return(View(model)); } return(RedirectToAction("IndividualProfileList")); }
public ActionResult PrintMultipleRegistrationCard() { if (Session["ReservationIds"] == null || string.IsNullOrWhiteSpace(Convert.ToString(Session["ReservationIds"]))) { return(HttpNotFound()); } var reservationIds = (List <Guid>)Session["ReservationIds"]; StringBuilder html = new StringBuilder(); if (reservationIds != null && reservationIds.Count > 0) { foreach (var reservationId in reservationIds) { var reservation = reservationRepository.GetReservationById(reservationId, LogInManager.LoggedInUserId).FirstOrDefault(); if (reservation != null) { GuestRegistrationCardVM model = new GuestRegistrationCardVM(); #region Room Mapping //Get Room Mapping var selectedRooms = roomRepository.GetReservationRoomMapping(reservationId, null, LogInManager.LoggedInUserId); var roomIds = string.Empty; var roomNumbers = string.Empty; if (selectedRooms != null && selectedRooms.Count > 0) { foreach (var room in selectedRooms) { roomIds += string.Format("{0},", room.RoomId); roomNumbers += string.Format("{0}, ", room.RoomNo); } if (!string.IsNullOrWhiteSpace(roomNumbers)) { //Remove Last Comma. roomNumbers = Utility.Utility.RemoveLastCharcter(roomNumbers, ','); } } #endregion #region Profile var profile = new IndividualProfileVM(); if (reservation.ProfileId.HasValue) { profile = profileRepository.GetIndividualProfileById(reservation.ProfileId.Value, LogInManager.LoggedInUserId).FirstOrDefault(); } #endregion #region Title var title = new TitleVM(); if (profile.TitleId.HasValue) { title = titleRepository.GetTitlebyId(profile.TitleId.Value).FirstOrDefault(); } #endregion #region Room Type var roomType = new RoomTypeVM(); if (reservation.RoomTypeId.HasValue) { roomType = roomTypeRepository.GetRoomTypeById(reservation.RoomTypeId.Value).FirstOrDefault(); } #endregion #region Preference Mapping //Get Preference Mapping var selectedPreferences = preferenceRepository.GetReservationPreferenceMapping(reservation.Id, null, LogInManager.LoggedInUserId); var preferences = ""; if (selectedPreferences != null && selectedPreferences.Count > 0) { preferences = String.Join(", ", selectedPreferences.Select(m => m.PreferenceDescription)); if (!string.IsNullOrWhiteSpace(preferences)) { preferences = Utility.Utility.RemoveLastCharcter(preferences.Trim(), ','); } } model.Preferences = preferences; #endregion #region Package Mapping //Get Package Mapping var selectedPackages = reservationRepository.GetReservationPackageMapping(reservation.Id, null, LogInManager.LoggedInUserId).ToList(); if (selectedPackages != null) { model.Packages = selectedPackages; //model.PackageName = selectedPackage.PackageName; //model.PackagePrice = CurrencyManager.ParseAmountToUserCurrency(selectedPackage.PackagePrice, LogInManager.CurrencyCode); //model.PackageTotalAmount = CurrencyManager.ParseAmountToUserCurrency(selectedPackage.TotalAmount, LogInManager.CurrencyCode); } #endregion model.Id = reservation.Id; model.ConfirmationNo = reservation.ConfirmationNumber; model.ProfileId = reservation.ProfileId; model.Title = title.Title; model.Email = profile.Email; model.PhoneNo = profile.TelephoneNo; model.Name = (profile.FirstName + ' ' + profile.LastName); model.CarRegistrationNo = profile.CarRegistrationNo; #region Fetch Address var address = ""; if (!string.IsNullOrWhiteSpace(profile.Address)) { //address = profile.Address; address = profile.Address.Replace(",", Delimeter.SPACE); } else if (!string.IsNullOrWhiteSpace(profile.HomeAddress)) { //address = profile.HomeAddress; address = profile.HomeAddress.Replace(",", Delimeter.SPACE); } model.Address = address; if (!string.IsNullOrWhiteSpace(profile.CityName)) { //model.Address += !string.IsNullOrWhiteSpace(model.Address) ? (Delimeter.SPACE + profile.CityName) : profile.CityName; model.City = profile.CityName; } if (!string.IsNullOrWhiteSpace(profile.StateName)) { //model.Address += !string.IsNullOrWhiteSpace(model.Address) ? (Delimeter.SPACE + profile.StateName) : profile.StateName; model.State = profile.StateName; } if (profile.CountryId.HasValue) { var country = countryRepository.GetCountryById(profile.CountryId.Value).FirstOrDefault(); if (country != null) { model.Country = country.Name; } } //Split Address //if (!string.IsNullOrWhiteSpace(model.Address)) //{ // //var splitAddress = ExtensionMethod.SplitString(model.Address, 40); // var splitAddress = model.Address.SplitStringChunks(60); // if (splitAddress != null && splitAddress.Length > 0) // { // model.Address1 = splitAddress[0]; // if (splitAddress.Length > 1) { model.Address2 = splitAddress[1]; } // if (splitAddress.Length > 2) { model.Address3 = splitAddress[2]; } // } //} model.ZipCode = profile.ZipCode; #endregion model.RoomNumer = roomNumbers; model.ArrivalDate = reservation.ArrivalDate.HasValue ? reservation.ArrivalDate.Value.ToString("dd-MMM-yyyy") : ""; model.DepartureDate = reservation.DepartureDate.HasValue ? reservation.DepartureDate.Value.ToString("dd-MMM-yyyy") : ""; model.NoOfNights = reservation.NoOfNight; model.NoOfAdult = reservation.NoOfAdult; model.NoOfChildren = reservation.NoOfChildren; if (roomType != null) { model.RoomType = roomType.RoomTypeCode; } model.Rate = CurrencyManager.ParseAmountToUserCurrency(reservation.Rate, LogInManager.CurrencyCode); model.ConfirmationNo = reservation.ConfirmationNumber; //HTML to PDF html.Append(Utility.Utility.RenderPartialViewToString((Controller)this, "PreviewRegistrationCard", model)); } } } #region Record Activity Log RecordActivityLog.RecordActivity(Pages.SEARCH_ARRIVALS, "Generated multiple guest registration card report."); #endregion //Clear session. //Session["ReservationIds"] = null; byte[] pdfBytes = Utility.Utility.GetPDF(Convert.ToString(html)); //return File(pdfBytes, "application/pdf", string.Format("RegistrationCard_{0}.pdf", model.Id)); return(File(pdfBytes, "application/pdf")); }