private async Task InsertHairSalon() { if (ValidateInputs()) { HairSalonInsertVM hairSalonInsertVM = new HairSalonInsertVM() { Name = TbName.Text, Description = TbDescription.Text, Address = TbAddress.Text, City = TbCity.Text, Country = (Country)CbCountries.SelectedItem, OwnerId = owner.Id }; ls.LblLoading.Text = "Adding"; ls.Show(); bool success = await hairSalonApi.InsertHairSalon(hairSalonInsertVM); ls.Close(); if (success) { Close(); } else { MessageBox.Show("Fail!"); } } else { MessageBox.Show("All input fields are required!"); } }
public async Task <bool> InsertHairSalon(HairSalonInsertVM hairSalonInsertVM) { StringContent content = GetStringContent(hairSalonInsertVM); HttpClient request = new HttpClient(); HttpResponseMessage response = await request.PostAsync($"{ API_URL }/InsertHairSalon", content); if (response.IsSuccessStatusCode) { bool result = await response.Content.ReadAsAsync <bool>(); return(result); } return(false); }
public bool InsertHairSalon(HairSalonInsertVM hairSalonInsertVM) { Owner owner = unitOfWork.Owners.Get(hairSalonInsertVM.OwnerId); string inputAddress = hairSalonInsertVM.Address; string inputCityName = hairSalonInsertVM.City; Country inputCountry = hairSalonInsertVM.Country; Country country = unitOfWork.Countries.Get(inputCountry.Id); bool cityExists = unitOfWork.Cities.Exists(inputCityName, country.Id); City city = cityExists ? unitOfWork.Cities.GetCityWithCountry(inputCityName, country.Id) : new City() { Name = inputCityName, Country = country }; bool locationExists = unitOfWork.Locations.Exists(inputAddress, city.Id, city.Country.Id); DataAccessLayer.Models.Location location = locationExists ? unitOfWork.Locations.GetLocationWithCity(inputAddress, city.Id, city.Country.Id) : new DataAccessLayer.Models.Location() { Address = inputAddress, City = city }; HairSalon hairSalon = new HairSalon() { Name = hairSalonInsertVM.Name, Description = hairSalonInsertVM.Description, Location = location, Owner = owner }; unitOfWork.HairSalons.Add(hairSalon); int success = unitOfWork.Complete(); return(success > 0); }