public IEnumerable <Flat> GetFlats(FlatViewModel model) { using (var connection = new MySqlConnection(_connectionString)) { connection.Open(); var flats = connection.Query <Flat>(@"SELECT id, address_id as addressId, header, type_of_house as " + "typeOfHouse, number_of_rooms as numberOfRooms, price_for_month as priceForMonth, total_area as totalArea, " + "additional_information as additionalInformation, balcony, owner_id as ownerId, " + "flat_picture as flatPicture FROM flat WHERE address_id in (SELECT id from address WHERE city_id in(SELECT " + "id FROM city WHERE lower(name) like @City)) AND flat.price_for_month >= @FromPrice " + "AND flat.price_for_month <= @ToPrice;", new { City = model.CitySearch.ToLower() + "%", FromPrice = model.FromPrice, ToPrice = model.ToPrice }); foreach (var flat in flats) { flat.Address = GetAddress(flat.AddressId); flat.Owner = GetUserById(flat.OwnerId); } return(flats); } }
public IActionResult Detail(int id) { Flat flat = _dataRepository.GetFlat(id); if (flat == null) { return(NotFound()); } FlatViewModel model = new FlatViewModel { Balcony = flat.Balcony, AdditionalInformation = flat.AdditionalInformation, City = flat.Address.City.Name, Street = flat.Address.Street.Name, FlatNumber = flat.Address.FlatNumber, FlatPicturePath = flat.FlatPicture, PriceForMonth = flat.PriceForMonth, HouseNumber = flat.Address.HouseNumber, NumberOfRooms = flat.NumberOfRooms, Header = flat.Header, TotalArea = flat.TotalArea, TypeOfHouse = flat.TypeOfHouse, OwnerId = flat.OwnerId, Owner = flat.Owner }; return(View(model)); }
public void InsertFlat(FlatViewModel model) { InsertAddress(model); using (var connection = new MySqlConnection(_connectionString)) { connection.Open(); connection.Execute(@"INSERT INTO flat(flat_picture,type_of_house, number_of_rooms, price_for_month, total_area, additional_information, balcony, header, owner_id, address_id) SELECT @FlatPicture, @TypeOfHouse, @NumberOfRooms, @PriceForMonth, @TotalArea, @AdditionalInformation, @Balcony, @Header, @OwnerId, id FROM address WHERE city_id in (SELECT id FROM city WHERE name = @City) AND street_id in (SELECT id FROM street WHERE name = @Street) AND address.house_number = @HouseNumber AND address.flat_number = @FlatNumber;", new { FlatPicture = model.FlatPicturePath, model.TypeOfHouse, model.NumberOfRooms, model.PriceForMonth, model.TotalArea, AdditionalInformation = model.AdditionalInformation.Trim(), model.Balcony, Header = model.Header.Trim(), model.OwnerId, City = model.City.Trim(), Street = model.Street.Trim(), HouseNumber = model.HouseNumber.Trim(), FlatNumber = model.FlatNumber.Trim() }); } }
public async Task <IHttpActionResult> Update([FromBody] FlatViewModel viewmodel) { var model = Mapper.Map <Flat>(viewmodel); await _flatService.Update(model); return(Ok()); }
public IActionResult Index(FlatViewModel model) { SetDefaultValues(model); model = new FlatViewModel { Flats = _dataRepository.GetFlats(model) }; return(View(model)); }
public IActionResult MyAnnouncements(FlatViewModel model) { SetDefaultValues(model); model = new FlatViewModel { Flats = _dataRepository.GetFlats(model).Where(m => m.Owner.Id == _dataRepository.GetUserByEmail(User.Identity.Name).Id) }; return(View(model)); }
public IActionResult Announcement(FlatViewModel model) { if (ModelState.IsValid) { string uniqueFileName = UploadedFile(model); model.FlatPicturePath = uniqueFileName; model.OwnerId = _dataRepository.GetUserByEmail(User.Identity.Name).Id; _dataRepository.InsertFlat(model); return(RedirectToAction("Index", "Home")); } return(View(model)); }
public void InsertAddress(FlatViewModel model) { InsertCity(model.City.Trim()); InsertStreet(model.Street.Trim()); using (var connection = new MySqlConnection(_connectionString)) { connection.Open(); connection.Execute(@"INSERT IGNORE INTO Address(city_id, street_id, house_number, flat_number) SELECT (SELECT id from city WHERE name = @City), (SELECT id from street WHERE name = @Street), @HouseNumber, @FlatNumber;", new { model.City, model.Street, model.HouseNumber, model.FlatNumber }); } }
public void SetDefaultValues(FlatViewModel model) { if (model.CitySearch is null) { model.CitySearch = string.Empty; } if (model.FromPrice is null) { model.FromPrice = 0; } if (model.ToPrice is null) { model.ToPrice = double.MaxValue; } }
private string UploadedFile(FlatViewModel model) { string uniqueFileName = null; if (model.FlatPicture != null) { string uploadsFolder = Path.Combine(webHostEnvironment.WebRootPath, "images"); uniqueFileName = Guid.NewGuid().ToString() + "_" + model.FlatPicture.FileName; string filePath = Path.Combine(uploadsFolder, uniqueFileName); using (var fileStream = new FileStream(filePath, FileMode.Create)) { model.FlatPicture.CopyTo(fileStream); } } return(uniqueFileName); }
private void OnDataContextChanged(object sender, DependencyPropertyChangedEventArgs e) { if (e.NewValue != null) { SamplesCollection collection = (SamplesCollection)e.NewValue; var query = from r in collection.Releases from d in r.Demonstrations select new DemonstrationViewModel { Demonstration = d, Version = r.Version }; FlatViewModel viewModel = new FlatViewModel(query.ToList()); itemsControl.DataContext = viewModel.Demonstrations; } }
public ExampleFourResponse Get() { var flatViewModel = new FlatViewModel { Id = 52, InnerDomainObjectName = "Ben Hall", InnerDomainObjectId = 365 }; var complexDomainObject = _mapper.Map <ComplexDomainObject>(flatViewModel); return(new ExampleFourResponse { FlatViewModel = flatViewModel, ComplexDomainObject = complexDomainObject }); }
public FlatViewModel FindFlatByNumber(int flatNumber) { FlatViewModel flat = FurnitureFloorsProvider.FindFlatByNumber(flatNumber); if (flat != null) { return(flat); } flat = HospitalFloorsProvider.FindFlatByNumber(flatNumber); if (flat == null) { throw new InvalidOperationException($"Квартиры с номером '{ flatNumber }' не существует"); } return(flat); }
private void FillFloorsForSection(int flatsPerFloor, int startFlatNumber) { const int startFloorNumber = 2; int sectionStartFlatNumber = startFlatNumber; Dictionary <int, float> areasDict = sectionType == SectionType.Furniture ? mebelFlatAreas : hospitalFlatAreas; for (int floorNumber = startFloorNumber; floorNumber <= StaticsProvider.TotalFloorsCount; floorNumber++) { var floorModel = new FloorModel { FloorNumber = floorNumber, Section = sectionType, MinFlatNumber = sectionStartFlatNumber + (floorNumber - startFloorNumber) * flatsPerFloor, }; floorModel.MaxFlatNumber = floorModel.MinFlatNumber + flatsPerFloor - 1; var floorViewModel = new FloorViewModel(floorModel); var flats = new List <FlatViewModel>(); for (int flatIndex = 1; flatIndex < flatsPerFloor + 1; flatIndex++) { var flatModel = new FlatModel { Area = areasDict[flatIndex], FloorNumber = floorViewModel.FloorNumber, Number = startFlatNumber, Section = sectionType }; var flat = new FlatViewModel(flatModel); flats.Add(flat); startFlatNumber++; } floorViewModel.PopulateFlats(flats); var decorator = new FloorDecoratorViewModel(floorViewModel); allFloors.Add(decorator); } allFloors.Reverse(); predicatedFloors.AddRange(allFloors); }
public static FlatViewModel FindFlatOfAborigen(string aborigenId) { lock (Locker) { if (aborigenFlats.TryGetValue(aborigenId, out FlatViewModel cachedFlat)) { return(cachedFlat); } int flatNumber = RelationsProvider.GetOwnedFlatNumber(aborigenId); if (flatNumber == RelationsProvider.InvalidFlatNumber) { return(null); } FlatViewModel flat = AllFloorsProvider.Instance.FindFlatByNumber(flatNumber); aborigenFlats.Add(aborigenId, flat); return(flat); } }