From 767ed3538a8804320906113e46f29037cd335690 Mon Sep 17 00:00:00 2001 From: b1ek Date: Sun, 7 May 2023 16:35:50 +1000 Subject: [PATCH 1/3] fix faker --- pairent_backend/pairent_app/factories.py | 93 ++++++++++++++++-------- 1 file changed, 61 insertions(+), 32 deletions(-) diff --git a/pairent_backend/pairent_app/factories.py b/pairent_backend/pairent_app/factories.py index a574ddb..b2a3263 100644 --- a/pairent_backend/pairent_app/factories.py +++ b/pairent_backend/pairent_app/factories.py @@ -1,55 +1,84 @@ import factory +import random +import time, datetime + +from django.db import models from pairent_app.models import Apartament factory.Faker.override_default_locale('ru_RU'); +class PhoneNumber(factory.declarations.BaseDeclaration): + def evaluate(self, instance, step, extra): + return '+799' + str(random.randint(0, 99999999)).zfill(8); + +class Random(factory.declarations.BaseDeclaration): + def __init__(self, min, max = None, multiply = 1): + if (max == None): + self.min = 0; + self.max = min; + else: + self.min = min; + self.max = max; + self.multiply = multiply; + super().__init__(); + + def evaluate(self, instance, step, extra): + if (self.multiply != None): + return random.randint(self.min, self.max) * self.multiply; + return random.randint(self.min, self.max); + +class Date(factory.declarations.BaseDeclaration): + def evaluate(self, instance, step, extra): + # year_before = time.time() - (60 * 60 * 24 * 30 * 12); + return datetime.datetime(2023, random.randint(1,12), random.randint(1,27)).strftime("%G-%m-%d"); + class ApartmentFactory(factory.django.DjangoModelFactory): class Meta: model = Apartament # Base data - price = factory.Faker('random_number') - lastPrice = price - bail = factory.Faker('random_number') + price = Random(3,10,5000); + lastPrice = Random(3,10,5000); + bail = Random(2,10,1000); - agencyCommission = factory.Faker('random_number') - utilitiesPrice = factory.Faker('random_number') - minimumLeasePeriod = factory.Faker('random_number') + agencyCommission = Random(3,5,2500); + utilitiesPrice = Random(4,8,1000) + minimumLeasePeriod = Random(1,2,6); - address = factory.Faker('address') - description = factory.Faker('sentence') + address = factory.Faker('address', locale='ru_RU'); + description = factory.Faker('sentence', locale='ru_RU'); - perimetrs = factory.Faker('random_number') - rooms = factory.Faker('random_number') - ceilingHeight = factory.Faker('random_number') - floorHouse = factory.Faker('random_number') - floor = factory.Faker('random_number') + perimetrs = Random(15,40); + rooms = Random(0,4); + ceilingHeight = Random(3,5); + floorHouse = Random(2,20); + floor = Random(2,20); - phoneNumber = factory.Faker('phone_number') + phoneNumber = PhoneNumber() - timeToBus = factory.Faker('random_number') - timeToTrain = factory.Faker('random_number') + timeToBus = Random(1, 12, 5); + timeToTrain = Random(1, 12, 5); # Apartment props - isFurniture = factory.Faker('boolean') - isAnimal = factory.Faker('boolean') - isTelevision = factory.Faker('boolean') - isChild = factory.Faker('boolean') - isInternet = factory.Faker('boolean') - isBathroom = factory.Faker('boolean') - isRefrigerator = factory.Faker('boolean') - isWasher = factory.Faker('boolean') - isAirConditioning = factory.Faker('boolean') - isFreshRepair = factory.Faker('boolean') + isFurniture = Random(0, 1); + isAnimal = Random(0, 1); + isTelevision = Random(0, 1); + isChild = Random(0, 1); + isInternet = Random(0, 1); + isBathroom = Random(0, 1); + isRefrigerator = Random(0, 1); + isWasher = Random(0, 1); + isAirConditioning = Random(0, 1); + isFreshRepair = Random(0, 1); # House props - isElevator = factory.Faker('boolean') - isParking = factory.Faker('boolean') - isGarbageChute = factory.Faker('boolean') - isConcierge = factory.Faker('boolean') + isElevator = Random(0, 1); + isParking = Random(0, 1); + isGarbageChute = Random(0, 1); + isConcierge = Random(0, 1); - views = factory.Faker('random_number') + # views = [] # factory.Faker('random_number') - dateCreate = factory.Faker('date') \ No newline at end of file + dateCreate = Date() \ No newline at end of file From f728f0c4cd9b9f81e59c7975df98abdb39a275bb Mon Sep 17 00:00:00 2001 From: b1ek Date: Sun, 7 May 2023 16:37:27 +1000 Subject: [PATCH 2/3] attempt to fix conflict --- pairent_frontend_react/src/{App.js => App.jsx} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename pairent_frontend_react/src/{App.js => App.jsx} (100%) diff --git a/pairent_frontend_react/src/App.js b/pairent_frontend_react/src/App.jsx similarity index 100% rename from pairent_frontend_react/src/App.js rename to pairent_frontend_react/src/App.jsx From 5ab3a91fdbe773c308098426e95f1ba85f249f8c Mon Sep 17 00:00:00 2001 From: b1ek Date: Sun, 7 May 2023 16:41:58 +1000 Subject: [PATCH 3/3] display studio apartments correctly --- .../src/components/CardApartament/CardApartament.jsx | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/pairent_frontend_react/src/components/CardApartament/CardApartament.jsx b/pairent_frontend_react/src/components/CardApartament/CardApartament.jsx index 761170e..6586e83 100644 --- a/pairent_frontend_react/src/components/CardApartament/CardApartament.jsx +++ b/pairent_frontend_react/src/components/CardApartament/CardApartament.jsx @@ -25,7 +25,13 @@ const CardApartament = function (props) {
-

{props.results.perimetrs} м², {props.results.rooms}{props.results.rooms > 1 ? "-х комнатная" : " комнатная"}

+

{props.results.perimetrs} м², {props.results.rooms == 0 ? '' : props.results.rooms} + + {props.results.rooms == 0 ? 'Гостинка' : + (props.results.rooms > 1 ? "-х комнатная" : " комнатная") + } + +

{props.results.address}, {props.results.floor} этаж из {props.results.floorHouse}