public OfferedRentOutput processOfferedRentInput(OfferedRentInput offeredRentInput, string userAgent) { OfferedRentOutput offeredRentOutput = new OfferedRentOutput(); CalculateRent(offeredRentInput, offeredRentOutput); offeredRentOutput.qualityMicro = offeredRentInput.qualityMicro ?? 0; offeredRentOutput.zip = offeredRentInput.address.zip; offeredRentOutput.town = offeredRentInput.address.town; offeredRentOutput.street = offeredRentInput.address.street; offeredRentOutput.CategoryCode = offeredRentInput.categoryCode; offeredRentOutput.country = offeredRentInput.address.country; ////Saving try { SaveRentPropertyDetails(MapRentBuisnessDataToDatabaseModel(null, null, null, offeredRentInput.deviceId, offeredRentOutput), userAgent); } catch (Exception ex) { RealEstateRepository realEstateRepository = new RealEstateRepository(); realEstateRepository.saveException(ex.Message, Convert.ToString(ex.InnerException), ex.StackTrace); return(offeredRentOutput); } return(offeredRentOutput); }
public AppraisalOutput processDetailInput(DetailInput detailInput, string userAgent) { PriceInput priceInput = MapDetailInputToPriceInput(detailInput); AppraisalOutput appraisalOutput = new AppraisalOutput(); CalculatePrice(priceInput, detailInput.catCode ?? 0, appraisalOutput); appraisalOutput.microRating = detailInput.microRating ?? 0; appraisalOutput.zip = detailInput.zip; appraisalOutput.town = detailInput.town; appraisalOutput.street = detailInput.street; appraisalOutput.CatCode = detailInput.catCode ?? 0; appraisalOutput.country = detailInput.country; ////Saving try { SavePricePropertyDetails(MapPriceBuisnessDataToDatabaseModel(null, null, null, detailInput.deviceId, appraisalOutput), userAgent); } catch (Exception ex) { RealEstateRepository realEstateRepository = new RealEstateRepository(); realEstateRepository.saveException(ex.Message, Convert.ToString(ex.InnerException), ex.StackTrace); return(appraisalOutput); } return(appraisalOutput); }
private void UpdateButton_Click(object sender, RoutedEventArgs e) { decimal square; decimal.TryParse(squareTextbox.Text, out square); _realEstate.Square = square; RealEstateRepository.Update(_realEstate); MessageBox.Show("Действие успешно выполнено."); MainFrameHolder.MainFrame.Navigate(new RealEstatePage()); }
public UnitOfWork(AdvertContext context) { this.context = context; CommentRepository = new CommentRepository(context); RatingRepository = new RatingRepository(context); RealEstateRepository = new RealEstateRepository(context); UserRepository = new UserRepository(context); PictureRepository = new PictureRepository(context); }
public RealEstateRepositoryTests() { // Arrange dbSetRealEstateMock = new MockedDbSet <RealEstate>(testRealEstates); var builder = new DbContextOptionsBuilder <AdvertContext>(); var contextMock = new Mock <AdvertContext>(builder.Options); contextMock.Setup(c => c.Set <RealEstate>()).Returns(dbSetRealEstateMock.Object); contextMock.Setup(c => c.RealEstates).Returns(dbSetRealEstateMock.Object); repo = new RealEstateRepository(contextMock.Object); }
private void UpdateButton_Click(object sender, RoutedEventArgs e) { int roomsQuantity; int floorsQuantity; decimal square; int.TryParse(roomsQuantityTextbox.Text, out roomsQuantity); int.TryParse(floorsQuantityTextbox.Text, out floorsQuantity); decimal.TryParse(squareTextbox.Text, out square); _realEstate.RoomsQuantity = roomsQuantity; _realEstate.Floor = floorsQuantity; _realEstate.Square = square; RealEstateRepository.Update(_realEstate); MessageBox.Show("Действие успешно выполнено."); MainFrameHolder.MainFrame.Navigate(new RealEstatePage()); }
private void SaveRentPropertyDetails(RentData rentData, string userAgent) { RealEstateRepository realEstateRepository = new RealEstateRepository(); realEstateRepository.saveRentPropertyDetails(rentData, userAgent); }
private void SavePricePropertyDetails(PriceData priceData, string userAgent) { RealEstateRepository realEstateRepository = new RealEstateRepository(); realEstateRepository.savePricePropertyDetails(priceData, userAgent); }
public AppraisalOutput processImageLatLon(string imageBase64, double?latitude, double?longitude, string deviceId, string userAgent) { AppraisalOutput appraisalOutput = new AppraisalOutput(); GoogleVisionApi googleVisionApi = new GoogleVisionApi(); PriceInput priceInput = new PriceInput(); ImageCategory imageCategory; string country; string countryCode; double? lat; double? lng; try { imageCategory = googleVisionApi.fetchCategoryForImage(imageBase64); } catch (Exception) { // imageBase64 = getImageAndConvertbase64(); // imageCategory = googleVisionApi.fetchCategoryForImage(imageBase64); imageCategory = new ImageCategory(); imageCategory.CategoryCode = -2; imageCategory.CategoryText = "Invalid Image"; } getAddressForLatLong(latitude ?? 0.0, longitude ?? 0.0); if (reverseGeoCodeResult.Country != "Switzerland") { country = "Switzerland"; countryCode = "CH"; priceInput.zip = appraisalOutput.zip = ConfigurationManager.AppSettings["DefaultZip"]; priceInput.town = appraisalOutput.town = ConfigurationManager.AppSettings["DefaultTown"]; //if country is not switzerland then attach time to street . priceInput.street = appraisalOutput.street = ConfigurationManager.AppSettings["DefaultStreet"] + DateTime.Now.Hour + DateTime.Now.Minute + DateTime.Now.Second; appraisalOutput.minappraisalValue = Convert.ToInt64(latitude.ToString().Replace(".", String.Empty)); appraisalOutput.maxappraisalValue = Convert.ToInt64(longitude.ToString().Replace(".", String.Empty)); lat = Convert.ToDouble(ConfigurationManager.AppSettings["DefaultLatitude"]); lng = Convert.ToDouble(ConfigurationManager.AppSettings["DefaultLongitude"]); } else { country = reverseGeoCodeResult.Country; countryCode = "CH"; priceInput.zip = appraisalOutput.zip = reverseGeoCodeResult.Zip; priceInput.town = appraisalOutput.town = reverseGeoCodeResult.Town; priceInput.street = appraisalOutput.street = reverseGeoCodeResult.Street; lat = (double)latitude; lng = (double)longitude; } if (imageCategory.CategoryCode != -1 && imageCategory.CategoryCode != -2) { getMicroRating(imageCategory.CategoryCode, lat ?? 0.0, lng ?? 0.0, countryCode); priceInput.qualityMicro = appraisalOutput.microRating = ratingResponse.results.microRatingClass1To5 ?? 3; } appraisalOutput.country = country; appraisalOutput.CatCode = imageCategory.CategoryCode; switch (imageCategory.CategoryCode) { case 5: priceInput.surfaceLiving = Convert.ToInt16(ConfigurationManager.AppSettings["A2SurfaceLivingDefault"]); //set default for A2 for Surface appraisalOutput.category = imageCategory.CategoryText; //" Single family House"; break; case 6: priceInput.surfaceLiving = Convert.ToInt16(ConfigurationManager.AppSettings["A3SurfaceLivingDefault"]);; appraisalOutput.category = imageCategory.CategoryText; //" Condominium"; break; case -1: case -2: appraisalOutput.category = imageCategory.CategoryText; //Set the first two labels that are returned by Google break; default: break; } if (imageCategory.CategoryCode != -1 && imageCategory.CategoryCode != -2) { CalculatePrice(priceInput, imageCategory.CategoryCode, appraisalOutput); } //Saving Property Details// try { PriceData priceData = MapPriceBuisnessDataToDatabaseModel(imageBase64, latitude, longitude, deviceId, appraisalOutput); SavePricePropertyDetails(priceData, userAgent); } catch (Exception ex) { RealEstateRepository realEstateRepository = new RealEstateRepository(); realEstateRepository.saveException(ex.Message, Convert.ToString(ex.InnerException), ex.StackTrace); return(appraisalOutput); } return(appraisalOutput); }
public OfferedRentOutput processImageLatLonForOfferedRent(string imageBase64, double?latitude, double?longitude, string deviceId, string userAgent) { OfferedRentOutput offeredRentOutput = new OfferedRentOutput(); GoogleVisionApi googleVisionApi = new GoogleVisionApi(); OfferedRentInput offeredRentInput = new OfferedRentInput(); ImageCategory imageCategory; string country; string countryCode; try { imageCategory = googleVisionApi.fetchCategoryForImage(imageBase64); } catch (Exception) { //imageBase64 = getImageAndConvertbase64(); //imageCategory = googleVisionApi.fetchCategoryForImage(imageBase64); imageCategory = new ImageCategory(); imageCategory.CategoryCode = -2; imageCategory.CategoryText = "Invalid Image"; } getAddressForLatLong(latitude ?? 0.0, longitude ?? 0.0); if (reverseGeoCodeResult.Country != "Switzerland") { country = "Switzerland"; countryCode = "CH"; offeredRentInput.address = new OfferedRentAddress() { address = ConfigurationManager.AppSettings["DefaultFormatedAddress"], zip = offeredRentOutput.zip = ConfigurationManager.AppSettings["DefaultZip"], town = offeredRentOutput.town = ConfigurationManager.AppSettings["DefaultTown"], street = offeredRentOutput.street = ConfigurationManager.AppSettings["DefaultStreet"] + DateTime.Now.Hour + DateTime.Now.Minute + DateTime.Now.Second, lat = Convert.ToDouble(ConfigurationManager.AppSettings["DefaultLatitude"]), lng = Convert.ToDouble(ConfigurationManager.AppSettings["DefaultLongitude"]), country = country }; offeredRentOutput.minappraisalValue = Convert.ToInt64(latitude.ToString().Replace(".", String.Empty)); offeredRentOutput.maxappraisalValue = Convert.ToInt64(longitude.ToString().Replace(".", String.Empty)); } else { country = reverseGeoCodeResult.Country; countryCode = "CH"; offeredRentInput.address = new OfferedRentAddress() { address = reverseGeoCodeResult.FormattedAddress, zip = offeredRentOutput.zip = reverseGeoCodeResult.Zip, town = offeredRentOutput.town = reverseGeoCodeResult.Town, street = offeredRentOutput.street = reverseGeoCodeResult.Street, lat = (double)latitude, lng = (double)longitude, country = country }; } if (imageCategory.CategoryCode != -1 && imageCategory.CategoryCode != -2) { getMicroRating(imageCategory.CategoryCode, offeredRentInput.address.lat ?? 0.0, offeredRentInput.address.lng ?? 0.0, countryCode); offeredRentInput.qualityMicro = offeredRentOutput.qualityMicro = ratingResponse.results.microRatingClass1To5 ?? 3; offeredRentInput.ortId = getOrtId(countryCode, offeredRentInput.address.lat ?? 0.0, offeredRentInput.address.lng ?? 0.0, "en-US"); } offeredRentOutput.country = country; offeredRentOutput.CategoryCode = imageCategory.CategoryCode; switch (imageCategory.CategoryCode) { case 5: offeredRentInput.surfaceContract = Convert.ToInt16(ConfigurationManager.AppSettings["A2SurfaceLivingDefault"]); //set default for A2 for Surface offeredRentInput.categoryCode = offeredRentOutput.CategoryCode; offeredRentOutput.category = imageCategory.CategoryText; //" Single family House"; break; case 6: offeredRentInput.surfaceContract = Convert.ToInt16(ConfigurationManager.AppSettings["A3SurfaceLivingDefault"]); offeredRentInput.categoryCode = offeredRentOutput.CategoryCode; offeredRentOutput.category = imageCategory.CategoryText; //" Condominium"; break; case -1: case -2: offeredRentOutput.category = imageCategory.CategoryText; break; default: break; } if (imageCategory.CategoryCode != -1 && imageCategory.CategoryCode != -2) { CalculateRent(offeredRentInput, offeredRentOutput); } //Saving Property Details// try { RentData rentData = MapRentBuisnessDataToDatabaseModel(imageBase64, latitude, longitude, deviceId, offeredRentOutput); SaveRentPropertyDetails(rentData, userAgent); } catch (Exception ex) { RealEstateRepository realEstateRepository = new RealEstateRepository(); realEstateRepository.saveException(ex.Message, Convert.ToString(ex.InnerException), ex.StackTrace); return(offeredRentOutput); } return(offeredRentOutput); }
private void UpdateButton_Click(object sender, RoutedEventArgs e) { decimal latitude; decimal longitude; var latitudeSucceded = decimal.TryParse(latitudeTextbox.Text, out latitude); var longitudeSucceded = decimal.TryParse(longitudeTextbox.Text, out longitude); if (_realEstate == null) { if (realtyTypeCombobox.SelectedItem == null) { MessageBox.Show("Выберите тип недвижимости."); return; } var type = (RealEstateType)realtyTypeCombobox.SelectedItem; RealEstate realEstate = new RealEstate { City = cityTextbox.Text, Street = streetTextbox.Text, HouseNumber = houseTextbox.Text, FlatNumber = flatTextbox.Text }; if (latitudeSucceded) { realEstate.Latitude = latitude; } if (longitudeSucceded) { realEstate.Longitude = longitude; } realEstate.Discriminator = Enum.GetName(typeof(RealEstateType), type); RealEstateRepository.Create(realEstate); switch (type) { case RealEstateType.Flat: MainFrameHolder.MainFrame.Navigate(new UpdateFlatPage(realEstate)); break; case RealEstateType.House: MainFrameHolder.MainFrame.Navigate(new UpdateHousePage(realEstate)); break; case RealEstateType.Ground: MainFrameHolder.MainFrame.Navigate(new UpdateGroundPage(realEstate)); break; } return; } _realEstate.City = cityTextbox.Text; _realEstate.Street = streetTextbox.Text; _realEstate.HouseNumber = houseTextbox.Text; _realEstate.FlatNumber = flatTextbox.Text; if (latitudeSucceded) { _realEstate.Latitude = latitude; } if (longitudeSucceded) { _realEstate.Latitude = longitude; } RealEstateRepository.Update(_realEstate); MessageBox.Show("Операция успешно завершена."); MainFrameHolder.MainFrame.Navigate(new RealEstatePage()); }