예제 #1
0
        private async void Button_Click(object sender, RoutedEventArgs e)
        {
            AdministratorCast admin = ah.GetAdministrator();
            AdminInfoChange   am    = new AdminInfoChange();

            am.firstNameField.Text         = firstNameField.Content.ToString();
            am.lastNameField.Text          = lastNameField.Content.ToString();
            am.emailField.Text             = emailField.Content.ToString();
            am.phoneNumberField.Text       = phoneNumberField.Content.ToString();
            am.employeeNumberField.Content = employeeNumberField.Content;
            am.ShowDialog();
            string uri   = baseUrl + "Info";
            var    email = new JObject();

            email.Add("email", admin.Email);
            HttpContent content2  = new StringContent(email.ToString(), Encoding.UTF8, "application/json");
            var         response2 = client.PostAsync(uri, content2).Result;

            if (response2.IsSuccessStatusCode)
            {
                var responseJsonString = await response2.Content.ReadAsStringAsync();

                var deserialized = JsonConvert.DeserializeObject <AdministratorCast>(responseJsonString);
                admin    = deserialized;
                ah.admin = admin;
            }
            GetData();
        }
예제 #2
0
        private async void button_Click(object sender, RoutedEventArgs e)
        {
            if (RoomList.SelectedItem != null)
            {
                if (MessageBox.Show("Do you really want to delete the selected room?", "Message", MessageBoxButtons.YesNo) == DialogResult.Yes)
                {
                    RoomCast rm = (RoomCast)RoomList.SelectedItem;
                    using var client = new HttpClient();
                    {
                        AdminUserHelper   ah    = AdminUserHelper.Instance;
                        AdministratorCast admin = ah.admin;
                        client.DefaultRequestHeaders.Authorization =
                            new AuthenticationHeaderValue("Bearer", admin.Token);
                        string url      = baseUrl + rm.Id;
                        var    response = await client.DeleteAsync(url);

                        if (response.IsSuccessStatusCode)
                        {
                            GetAllRooms();
                        }
                        else
                        {
                            MessageBox.Show(response.ReasonPhrase);
                        }
                    }
                }
            }
            else
            {
                responseBox.Content = "Select a room from the list bellow and try again";
            }
        }
예제 #3
0
        private async void button_Click(object sender, RoutedEventArgs e)
        {
            int    roomNbr;
            int    floorNbr;
            int    capacityNbr;
            double areaNbr;
            double priceNbr;

            if (int.TryParse(roomNumberField.Text, out roomNbr))
            {
                if (int.TryParse(floorField.Text, out floorNbr))
                {
                    if (int.TryParse(capacityField.Text, out capacityNbr))
                    {
                        if (double.TryParse(areaField.Text, out areaNbr))
                        {
                            if (double.TryParse(priceField.Text, out priceNbr))
                            {
                                AdminUserHelper   ah    = AdminUserHelper.Instance;
                                AdministratorCast admin = ah.admin;
                                client.DefaultRequestHeaders.Authorization =
                                    new AuthenticationHeaderValue("Bearer", admin.Token);
                                var registerContent = new JObject();
                                registerContent.Add("RoomNumber", roomNbr);
                                registerContent.Add("Floor", floorNbr);
                                registerContent.Add("Capacity", capacityNbr);
                                registerContent.Add("Area", areaNbr);
                                registerContent.Add("Price", priceNbr);
                                registerContent.Add("Description", descriptionField.Text);
                                registerContent.Add("isAvailable", 1);
                                HttpContent content      = new StringContent(registerContent.ToString(), Encoding.UTF8, "application/json");
                                var         responseBody = client.PostAsync(baseUrl, content).Result;
                                responseField.Content = await responseBody.Content.ReadAsStringAsync();
                            }
                            else
                            {
                                responseField.Content = "Price can not contain letters!";
                            }
                        }
                        else
                        {
                            responseField.Content = "Area can not contain letters!";
                        }
                    }
                    else
                    {
                        responseField.Content = "Capacity must be described only in numbers!";
                    }
                }
                else
                {
                    responseField.Content = "Floor must only be numbers!";
                }
            }
            else
            {
                responseField.Content = "Room number must contain only numbers!";
            }
        }
예제 #4
0
        public void GetData()
        {
            AdministratorCast admin = ah.GetAdministrator();

            firstNameField.Content      = admin.FirstName;
            lastNameField.Content       = admin.LastName;
            phoneNumberField.Content    = admin.PhoneNumber;
            emailField.Content          = admin.Email;
            employeeNumberField.Content = admin.EmployeeNumber;
        }
예제 #5
0
        public async void GetAllApprovedBookings()
        {
            using var client = new HttpClient();
            {
                AdminUserHelper   ah    = AdminUserHelper.Instance;
                AdministratorCast admin = ah.admin;
                client.DefaultRequestHeaders.Authorization =
                    new AuthenticationHeaderValue("Bearer", admin.Token);
                string url      = baseUrl + "AllOfStatus?status=1";
                var    response = await client.GetAsync(url);

                var responseJsonString = await response.Content.ReadAsStringAsync();

                var deserialized = JsonConvert.DeserializeObject <IEnumerable <BookingCast> >(responseJsonString);
                BookingList.ItemsSource = deserialized;
            }
        }
예제 #6
0
        private async void informationBooking_Clicked(object sender, RoutedEventArgs e)
        {
            if (BookingList.SelectedItem != null)
            {
                using var client = new HttpClient();
                {
                    BookingCast bm                 = (BookingCast)BookingList.SelectedItem;
                    string      url                = "https://localhost:44382/api/Rooms?id=" + bm.RoomId;
                    var         roomResult         = client.GetAsync(url).Result;
                    var         responseJsonString = await roomResult.Content.ReadAsStringAsync();

                    var               deserialized = JsonConvert.DeserializeObject <RoomCast>(responseJsonString);
                    RoomCast          rm           = deserialized;
                    AdminUserHelper   ah           = AdminUserHelper.Instance;
                    AdministratorCast admin        = ah.admin;
                    client.DefaultRequestHeaders.Authorization =
                        new AuthenticationHeaderValue("Bearer", admin.Token);
                    string uri                 = "https://localhost:44382/api/Student/FindByBooking?bookingId=" + bm.Id;
                    var    studentResult       = client.GetAsync(uri).Result;
                    var    responseJsonString2 = await studentResult.Content.ReadAsStringAsync();

                    var                 deserialized2 = JsonConvert.DeserializeObject <StudentCast>(responseJsonString2);
                    StudentCast         sd            = deserialized2;
                    BookingAdvancedInfo bk            = new BookingAdvancedInfo();
                    bk.BookingID.Content      = bm.Id;
                    bk.RoomNumber.Content     = rm.RoomNumber;
                    bk.DateOfCreation.Content = bm.CreationDate;
                    bk.StudentMail.Content    = sd.Email;
                    bk.StudentName.Content    = sd.FirstName + sd.LastName;
                    bk.ShowDialog();
                }

                GetAllApprovedBookings();
            }
            else
            {
                responseBox.Content = "Select a booking from the list bellow and try again";
            }
        }
예제 #7
0
        private async void button_Click(object sender, RoutedEventArgs e)
        {
            string            okResponse = "\"ok\"";
            AdministratorCast admin      = ah.admin;
            RegisterViewModel rvm        = new RegisterViewModel();

            if (rvm.isEmailValid(emailField.Text))
            {
                string url = baseUrl + "Update";
                client.DefaultRequestHeaders.Authorization =
                    new AuthenticationHeaderValue("Bearer", admin.Token);
                var updateContent = new JObject();
                updateContent.Add("Id", admin.Id);
                updateContent.Add("employeeNumber", Convert.ToInt32(employeeNumberField.Content));
                updateContent.Add("firstName", firstNameField.Text);
                updateContent.Add("lastName", lastNameField.Text);
                updateContent.Add("phoneNumber", phoneNumberField.Text);
                updateContent.Add("email", emailField.Text);
                updateContent.Add("modificationDate", admin.modificationDate);
                HttpContent content      = new StringContent(updateContent.ToString(), Encoding.UTF8, "application/json");
                var         responseBody = client.PostAsJsonAsync(url, updateContent).Result;
                string      response     = await responseBody.Content.ReadAsStringAsync();

                if (response.Equals(okResponse))
                {
                    admin.Email = emailField.Text;
                    this.Close();
                }
                else
                {
                    responseField.Content = response;
                }
            }
            else
            {
                responseField.Content = "Not a valid email!";
            }
        }
예제 #8
0
        private async void button_Click(object sender, RoutedEventArgs e)
        {
            string          okResponse = "\"ok\"";
            string          url        = baseUrl + "Update";
            int             id         = Convert.ToInt32(idField.Content);
            int             roomNbr;
            int             floorNbr;
            int             capacityNbr;
            double          areaNbr;
            double          priceNbr;
            AdminUserHelper ah = AdminUserHelper.Instance;

            if (int.TryParse(roomNumberField.Text, out roomNbr))
            {
                if (int.TryParse(floorField.Text, out floorNbr))
                {
                    if (int.TryParse(capacityField.Text, out capacityNbr))
                    {
                        if (double.TryParse(areaField.Text, out areaNbr))
                        {
                            if (double.TryParse(priceField.Text, out priceNbr))
                            {
                                SelectedRoomHelper rh         = SelectedRoomHelper.Instance;
                                AdministratorCast  admin      = ah.admin;
                                RoomCast           updateRoom = rh.GetSelectedRoom(Convert.ToInt32(idField.Content));
                                client.DefaultRequestHeaders.Authorization =
                                    new AuthenticationHeaderValue("Bearer", admin.Token);
                                var registerContent = new JObject();
                                registerContent.Add("Id", id);
                                registerContent.Add("RoomNumber", roomNbr);
                                registerContent.Add("Floor", floorNbr);
                                registerContent.Add("Capacity", capacityNbr);
                                registerContent.Add("Area", areaNbr);
                                registerContent.Add("Price", priceNbr);
                                registerContent.Add("Description", descriptionField.Text);
                                registerContent.Add("isAvailable", 1);
                                registerContent.Add("modificationDate", updateRoom.modificationDate);
                                HttpContent content      = new StringContent(registerContent.ToString(), Encoding.UTF8, "application/json");
                                var         responseBody = client.PostAsync(url, content).Result;
                                string      response     = await responseBody.Content.ReadAsStringAsync();

                                if (response.Equals(okResponse))
                                {
                                    this.Close();
                                }
                                else
                                {
                                    responseField.Content = response;
                                }
                            }
                            else
                            {
                                responseField.Content = "Price can not contain letters!";
                            }
                        }
                        else
                        {
                            responseField.Content = "Area can not contain letters!";
                        }
                    }
                    else
                    {
                        responseField.Content = "Capacity must be described only in numbers!";
                    }
                }
                else
                {
                    responseField.Content = "Floor must only be numbers!";
                }
            }
            else
            {
                responseField.Content = "Room number must contain only numbers!";
            }
        }