//Guest Details public async void DisplayGuestDetails() { pageLoading(); layoutHeightGuestDetails = 0; layoutHeightSignatures = 0; lasyoutHeighSignatureInitial = 1; guestNumber = 1; guestNumberCount = 1; try { GuestNameList.ItemsSource = null; string result = await checkInManager.GetRemarksDetails(Constants._reservation_id); guestdetails = new List <guestDetails>(); if (Constants._notAvailableSignatureAdded == false) { guestsignature = new List <guestSignature>(); } GuestSignatureList.ItemsSource = null; if (result != null) { string guestNameAvailabiliyty = ""; string tem_resultMain = result; // //Removing ticks issue in date result = result.Replace("Date(-", "Date("); var output = JObject.Parse(result); if (Enumerable.Count(output["d"]["results"][0]["ReservationNaviGuest"]["results"]) > 0) { savedSignatureCount = 0; for (int i = 0; i < Enumerable.Count(output["d"]["results"][0]["ReservationNaviGuest"]["results"]); i++) { string guestCountryKeyValue = string.Empty; string guestSalutationKeyValue = string.Empty; //Setting values to global variables guestNameAvailabiliyty = serviceDataValidation.validation(Convert.ToString(output["d"]["results"][0]["ReservationNaviGuest"]["results"][i]["Xnombre"])); layoutHeightGuestDetails = layoutHeightGuestDetails + 40; if (guestNameAvailabiliyty != Constants._notAvailable) { if (lasyoutHeighSignatureInitial == 1) { layoutHeightSignatures = 187; } else { layoutHeightSignatures = layoutHeightSignatures + 157; } } //Signaure Manually Not added if (Constants._notAvailableSignatureAdded == false) { if (guestNameAvailabiliyty != Constants._notAvailable) { try { string result1 = await checkInManager.GetGuestSignature(guestNumberCount.ToString()); if (result1 != null) { var output1 = JObject.Parse(result1); //Removing ticks error result1 = result1.Replace("Date(-", "Date("); //Converting base64 string to byte array byte[] data = Convert.FromBase64String(Convert.ToString(output1["d"]["XIMAGE"])); guestsignature.Add(new guestSignature(ImageSource.FromStream(() => new MemoryStream(data)), guestNameAvailabiliyty, "White", guestNumber, Constants._available, "Purple", "")); savedSignatureCount++; } } catch (Exception) { //Guest Signature Not Available string addSignatureImage = "SignatureImage.jpg"; if (guestNameAvailabiliyty != Constants._notAvailable) { guestsignature.Add(new guestSignature(addSignatureImage, guestNameAvailabiliyty, "Purple", guestNumber, Constants._notAvailable, "White", "")); } } } } String dateString = ""; string expiryDateString = ""; DateTime date = DateTime.Now; try { string dateOfBirth = Convert.ToString(output["d"]["results"][0]["ReservationNaviGuest"]["results"][i]["Gbdat"]); if (dateOfBirth != "") { DateTime dt = DateTime.Now; int index = i + 1; string temp_substring = tem_resultMain.Substring(0, tem_resultMain.IndexOf("Xorden\":\"" + "0" + index + "\"")); //temp_substring = temp_substring.Substring(0, temp_substring.IndexOf("Gbdat") + 20); //temp_substring = temp_substring.Substring(temp_substring.IndexOf("Gbdat")); temp_substring = temp_substring.Substring(temp_substring.LastIndexOf("Gbdat")); temp_substring = temp_substring.Substring(0, 20); //Begin of + Vinoch 15122061 if (temp_substring.Contains("-")) { DateTime epoch = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc); long ms = (long)(DateTime.Parse(dateOfBirth) - epoch).TotalMilliseconds; dateOfBirth = ms.ToString(); dateOfBirth = "-" + dateOfBirth; long milliSec = (long)(Convert.ToDouble(dateOfBirth)); DateTime startTime = new DateTime(1970, 1, 1); TimeSpan time = TimeSpan.FromMilliseconds(milliSec); dt = startTime.Add(time); } else { if (dateOfBirth != "") //- Vinoch 1512201 { dt = DateTime.Parse(dateOfBirth); // Vinoch 1512201 } } //DateTime date = serviceDataValidation.dateOfBirthValidation(dateOfBirth); date = dt; dateString = date.ToString(); } else { dateString = ""; expiryDateString = ""; } } catch (Exception) { dateString = ""; expiryDateString = ""; } string country = Convert.ToString(output["d"]["results"][0]["ReservationNaviGuest"]["results"][i]["Country"]); var nameToCountry = CountryDictionary.listOfCountrie(); if (country != "" || country != "") { string name = nameToCountry.FirstOrDefault(x => x.Value == country).Key; guestCountryKeyValue = country; } guestdetails.Add(new guestDetails(guestNumberCount, Convert.ToString(output["d"]["results"][0]["ReservationNaviGuest"]["results"][i]["XtipoDocId"]), Convert.ToString(output["d"]["results"][0]["ReservationNaviGuest"]["results"][i]["XnumeroDoc"]), Convert.ToString(output["d"]["results"][0]["ReservationNaviGuest"]["results"][i]["Title"]), guestNameAvailabiliyty, Convert.ToString(output["d"]["results"][0]["ReservationNaviGuest"]["results"][i]["Name1"]), Convert.ToString(output["d"]["results"][0]["ReservationNaviGuest"]["results"][i]["Name2"]), Convert.ToString(output["d"]["results"][0]["ReservationNaviGuest"]["results"][i]["Parge"]), Convert.ToString(output["d"]["results"][0]["ReservationNaviGuest"]["results"][i]["SmtpAddr"]), Convert.ToString(output["d"]["results"][0]["ReservationNaviGuest"]["results"][i]["MobileNo"]), Convert.ToString(output["d"]["results"][0]["ReservationNaviGuest"]["results"][i]["HouseNum1"]), Convert.ToString(output["d"]["results"][0]["ReservationNaviGuest"]["results"][i]["Street"]), Convert.ToString(output["d"]["results"][0]["ReservationNaviGuest"]["results"][i]["City1"]), Convert.ToString(output["d"]["results"][0]["ReservationNaviGuest"]["results"][i]["Country"]), guestCountryKeyValue, Convert.ToString(output["d"]["results"][0]["ReservationNaviGuest"]["results"][i]["Xnacionalidad"]), dateString, expiryDateString, Convert.ToString(output["d"]["results"][0]["ReservationNaviGuest"]["results"][i]["Langu"]), "", "", "", "", "", "", "")); //Increment guestnumber and guest number count by 1 guestNumber = guestNumber + 1; guestNumberCount = guestNumberCount + 1; lasyoutHeighSignatureInitial = 0; } //Setting stack Layput heights according to the number of records GuestDetails.HeightRequest = layoutHeightGuestDetails; GuestSignatureView.HeightRequest = layoutHeightSignatures; } Device.BeginInvokeOnMainThread(() => { //Setting guest number in label GuestNumber.Text = (guestNumberCount - 1).ToString(); //Adding list to observable Collection items = new ItemList(guestdetails); GuestNameList.ItemsSource = items.Items; //Set Guest Signatures. Signatures loaded from service if (Constants._notAvailableSignatureAdded == false) { GuestSignatureList.ItemsSource = guestsignature; } else { if (Constants._reservationStatus == Constants._reservationStatusCheckedIn) { //checkinAndSaveButton.IsVisible = true; saveSignatureButton.IsVisible = true; //true checkinButton.IsVisible = false; } else if (Constants._reservationStatus == Constants._reservationStatusPending) { //checkinAndSaveButton.IsVisible = true; saveSignatureButton.IsVisible = true; //false checkinButton.IsVisible = true; } } if (Constants._reservationStatus != Constants._reservationStatusCheckedIn && savedSignatureCount > 0) { checkinAndSaveButton.IsVisible = true; } else { checkinAndSaveButton.IsVisible = false; } if (savedSignatureCount == guestsignature.Count) { saveSignatureButton.IsVisible = false; } }); } } catch (Exception e) { this.DisplayGuestDetails(); } stopPageLoading(); }
public async Task <MainGuestDetails> mainGuestInformation(string reservationID) { try { Constants.resultMain = ""; Constants.resultMain = await checkInManager.GetRemarksDetails(reservationID); string tem_resultMain = Constants.resultMain; // + Vinoch 25082017 if (Constants.resultMain == null || Constants.resultMain == "Error") { MessagingCenter.Send <MainGuestInformation, string>(this, "nodetailsAvailable", ""); } else { Constants.resultMain = Constants.resultMain.Replace("Date(-", "Date("); var output = JObject.Parse(Constants.resultMain); if (Enumerable.Count(output["d"]["results"][0]["ReservationNaviGuest"]["results"]) > 0) { string guestSalutationKey = string.Empty; maingGuestDetails.ReservationID = Constants._reservation_id; maingGuestDetails.ClientName = serviceDataValidation.validation(Convert.ToString(output["d"]["results"][0]["Xclientname"])); maingGuestDetails.HotelName = serviceDataValidation.validation(Convert.ToString(output["d"]["results"][0]["XhotelName"])); string titleName = Convert.ToString(output["d"]["results"][0]["ReservationNaviGuest"]["results"][0]["Title"]); guestSalutationKey = serviceDataValidation.titleName(titleName); maingGuestDetails.Title = serviceDataValidation.validation(guestSalutationKey); maingGuestDetails.FirstName = serviceDataValidation.validation(Convert.ToString(output["d"]["results"][0]["ReservationNaviGuest"]["results"][0]["Name1"])); maingGuestDetails.LastName = serviceDataValidation.validation(Convert.ToString(output["d"]["results"][0]["ReservationNaviGuest"]["results"][0]["Name2"])); maingGuestDetails.Email = serviceDataValidation.validation(Convert.ToString(output["d"]["results"][0]["ReservationNaviGuest"]["results"][0]["SmtpAddr"])); maingGuestDetails.ContactNumber = serviceDataValidation.validation(Convert.ToString(output["d"]["results"][0]["ReservationNaviGuest"]["results"][0]["MobileNo"])); //string dateOfBirthWithTime = serviceDataValidation.validation(Convert.ToString(output["d"]["results"][0]["ReservationNaviGuest"]["results"][0]["Gbdat"])); string dateOfBirth = Convert.ToString(output["d"]["results"][0]["ReservationNaviGuest"]["results"][0]["Gbdat"]); if (dateOfBirth != Constants._notAvailable) { //DateTime dt = DateTime.Parse(dateOfBirthWithTime); // - Vinoch 25082017 if (dateOfBirth != "") { //Begin of + Vinoch 25082017 DateTime date = DateTime.Now; try { DateTime dt = DateTime.Now; string temp_substring = tem_resultMain.Substring(0, tem_resultMain.IndexOf("Gbdat") + 20); temp_substring = temp_substring.Substring(temp_substring.IndexOf("Gbdat")); //Begin of + Vinoch 1512206 if (temp_substring.Contains("-")) { DateTime epoch = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc); long ms = (long)(DateTime.Parse(dateOfBirth) - epoch).TotalMilliseconds; dateOfBirth = ms.ToString(); dateOfBirth = "-" + dateOfBirth; long milliSec = (long)(Convert.ToDouble(dateOfBirth)); DateTime startTime = new DateTime(1970, 1, 1); TimeSpan time = TimeSpan.FromMilliseconds(milliSec); dt = startTime.Add(time); } else { if (dateOfBirth != "") //- Vinoch 151220 { dt = DateTime.Parse(dateOfBirth); // Vinoch 1512201 } } //DateTime date = serviceDataValidation.dateOfBirthValidation(dateOfBirth); date = dt; maingGuestDetails.DateOfBirth = date.ToString("dd-MM-yyyy"); } catch (Exception) { maingGuestDetails.DateOfBirth = Constants._notAvailable; } } else { maingGuestDetails.DateOfBirth = Constants._notAvailable; } //End of + Vinoch 2508201 } else { maingGuestDetails.DateOfBirth = Constants._notAvailable; } maingGuestDetails.NicPassNumber = serviceDataValidation.validation(Convert.ToString(output["d"]["results"][0]["ReservationNaviGuest"]["results"][0]["XnumeroDoc"])); maingGuestDetails.HouseNumber = serviceDataValidation.validation(Convert.ToString(output["d"]["results"][0]["ReservationNaviGuest"]["results"][0]["HouseNum1"])); maingGuestDetails.Street = serviceDataValidation.validation(Convert.ToString(output["d"]["results"][0]["ReservationNaviGuest"]["results"][0]["Street"])); maingGuestDetails.City = serviceDataValidation.validation(Convert.ToString(output["d"]["results"][0]["ReservationNaviGuest"]["results"][0]["City1"])); maingGuestDetails.Country = serviceDataValidation.validation(Convert.ToString(output["d"]["results"][0]["ReservationNaviGuest"]["results"][0]["Landx"])); maingGuestDetails.Nationality = serviceDataValidation.validation(Convert.ToString(output["d"]["results"][0]["ReservationNaviGuest"]["results"][0]["Natio50"])); } } } catch (Exception e) { MessagingCenter.Send <MainGuestInformation, string>(this, "nodetailsAvailable", ""); } return(maingGuestDetails); }