示例#1
0
        private async Task RoomSelected()
        {
            IsListVisible      = false;
            IsIndicatorVisible = true;

            RoomPayloadModel roomPayload = new RoomPayloadModel()
            {
                HotelCode     = Settings.HotelCode,
                ReservationID = Constants.SelectedReservationHeader.ReservationID,
                RoomNumber    = SelectedRoom.RoomNumber
            };

            var responce = await PostAPIservice.AssignRoom(roomPayload);

            if (responce == "success")
            {
                Constants.SelectedReservationHeader.RoomNumber           = roomPayload.RoomNumber;
                Constants.SelectedReservationHeader.RoomIndicatorImgPath = SelectedRoom.RoomStatus == "CLEAN" ? "Icons/CleanRoom.png" : SelectedRoom.RoomStatus == "INSPECTED" ? "Icons/InspectedRoom.png" : "Icons/DirtyRoom.png";

                Constants.SelectedReservationDetailSet.RoomNumber      = roomPayload.RoomNumber;
                Constants.SelectedReservationDetailSet.RoomStatus      = SelectedRoom.RoomStatus;
                Constants.SelectedReservationDetailSet.RoomStatusColor = SelectedRoom.RoomStatus == "CLEAN" ? "Green" : SelectedRoom.RoomStatus == "INSPECTED" ? "Orange" : "Red";

                MessagingCenter.Send <RoomListViewModel>(this, "RoomDetailsChanged");

                await Application.Current.MainPage.DisplayAlert("Success!", "Room has been assigned successfully.", "OK");

                await NavigationStack.PopAsync();
            }

            IsListVisible      = true;
            IsIndicatorVisible = false;
        }
示例#2
0
        public static async Task <string> AssignRoom(RoomPayloadModel roomPayload)
        {
            try
            {
                var payload = JsonConvert.SerializeObject(roomPayload);

                using (var client = new HttpClient())
                {
                    client.DefaultRequestHeaders.Add("AuthToken", Constants.AccessToken);
                    client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));

                    var response = await client.PostAsync(Settings.BaseUri + "posting/AssignRoom", new StringContent(payload, Encoding.UTF8, "application/json"));

                    if (response.IsSuccessStatusCode)
                    {
                        return("success");
                    }
                    else
                    {
                        return(await response.Content.ReadAsStringAsync());
                    }
                }
            }
            catch (Exception ex)
            {
                return(ex.Message);
            }
        }