From 6733c3b1dbc30eddb000395b65b5f507373d8a0f Mon Sep 17 00:00:00 2001 From: wuttinanhi Date: Thu, 29 Sep 2022 19:27:24 +0000 Subject: [PATCH] create default settings if not exists --- Makefile | 6 +++--- main.py | 4 ++++ mock/mock.py | 4 +--- settings/service.py | 10 ++++++++++ 4 files changed, 18 insertions(+), 6 deletions(-) diff --git a/Makefile b/Makefile index 00c3718..860a5c0 100644 --- a/Makefile +++ b/Makefile @@ -10,13 +10,13 @@ install: pip install -r requirements.txt run: - flask --app main:app run --host=0.0.0.0 --port=${PORT} + flask --app main:app run --host=0.0.0.0 --port=5000 dev: - flask --app main:app --debug run --port=${PORT} + flask --app main:app --debug run --port=5000 stripe-listen: - stripe listen --forward-to 127.0.0.1:${PORT}/payment/stripe/webhook + stripe listen --forward-to 127.0.0.1:5000/payment/stripe/webhook stripe-trigger: stripe trigger payment_intent.succeeded diff --git a/main.py b/main.py index deb4b25..7888121 100644 --- a/main.py +++ b/main.py @@ -18,6 +18,7 @@ from payment.service import PaymentService from reservation.blueprint import blueprint as reservation_blueprint from settings.blueprint import blueprint as settings_blueprint +from settings.service import SettingService # load env load_env() @@ -34,6 +35,9 @@ # initialize database init_db() +# if settings not exists then create new one +SettingService.setup_default_settings() + # setup payment PaymentService.setup_payment() diff --git a/mock/mock.py b/mock/mock.py index 5794477..763846a 100644 --- a/mock/mock.py +++ b/mock/mock.py @@ -9,7 +9,6 @@ from parking_lot.service import ParkingLotService from payment.service import PaymentService from reservation.service import ReservationService -from settings.model import Setting from settings.service import SettingService from user.service import UserService @@ -28,8 +27,7 @@ def setup_db(): @staticmethod def mock(): # mock setting - setting = Setting(0.0, 10.0, 100.0) - SettingService.set_settings(setting) + SettingService.setup_default_settings() # mock user UserService.register("test@example.com", "@Test12345") diff --git a/settings/service.py b/settings/service.py index 4157ab8..4e077d2 100644 --- a/settings/service.py +++ b/settings/service.py @@ -33,3 +33,13 @@ def get_settings() -> Setting: if settings is None: raise NotFound("Settings not found!") return settings + + @staticmethod + def setup_default_settings(): + try: + SettingService.get_settings() + except NotFound as __e: + setting = Setting(0.0, 10.0, 100.0) + SettingService.set_settings(setting) + except Exception as err: + raise Exception("Failed to create default settings!")