diff --git a/src/pilgrim/application.py b/src/pilgrim/application.py index 8954411..abf7b68 100644 --- a/src/pilgrim/application.py +++ b/src/pilgrim/application.py @@ -7,7 +7,10 @@ from pilgrim.ui.ui import UIApp class Application: def __init__(self): self.database = Database() - self.ui = UIApp(ServiceManagerMock()) + session = self.database.session() + session_manager = ServiceManager() + session_manager.set_session(session) + self.ui = UIApp(session_manager) def run(self): self.database.create() diff --git a/src/pilgrim/service/entry_service.py b/src/pilgrim/service/entry_service.py index f316f97..cc121af 100644 --- a/src/pilgrim/service/entry_service.py +++ b/src/pilgrim/service/entry_service.py @@ -1,5 +1,4 @@ from typing import List - from ..models.entry import Entry from ..models.travel_diary import TravelDiary diff --git a/src/pilgrim/service/travel_diary_service.py b/src/pilgrim/service/travel_diary_service.py index ce5293b..7a355ca 100644 --- a/src/pilgrim/service/travel_diary_service.py +++ b/src/pilgrim/service/travel_diary_service.py @@ -1,10 +1,10 @@ from ..models.travel_diary import TravelDiary - +import asyncio class TravelDiaryService: def __init__(self,session): self.session = session - def create(self, name:str): + async def async_create(self, name:str): new_travel_diary = TravelDiary(name) self.session.add(new_travel_diary) self.session.commit() @@ -18,14 +18,17 @@ class TravelDiaryService: def read_all(self): return self.session.query(TravelDiary).all() - def update(self, travel_diary_id: TravelDiary, travel_diary_dst: TravelDiary): - original = self.read_by_id(travel_diary_id.id) + def update(self, travel_diary_id: int, name: str): + original = self.read_by_id(travel_diary_id) if original is not None: - original.name = travel_diary_dst.name + original.name = name self.session.commit() self.session.refresh(original) return original + async def async_update(self, travel_diary_id: int, name: str): + return self.update(travel_diary_id, name) + def delete(self, travel_diary_id: TravelDiary): excluded = self.read_by_id(travel_diary_id.id) if excluded is not None: diff --git a/src/pilgrim/ui/screens/diary_list_screen.py b/src/pilgrim/ui/screens/diary_list_screen.py index 8166ffa..066fbae 100644 --- a/src/pilgrim/ui/screens/diary_list_screen.py +++ b/src/pilgrim/ui/screens/diary_list_screen.py @@ -127,8 +127,8 @@ class DiaryListScreen(Screen): service_manager = self.app.service_manager travel_diary_service = service_manager.get_travel_diary_service() - # Uses async method - diaries = await travel_diary_service.async_read_all() + # Usa método síncrono agora + diaries = travel_diary_service.read_all() # Saves current state current_diary_id = None diff --git a/src/pilgrim/ui/styles/pilgrim.css b/src/pilgrim/ui/styles/pilgrim.css index fef0786..e170af2 100644 --- a/src/pilgrim/ui/styles/pilgrim.css +++ b/src/pilgrim/ui/styles/pilgrim.css @@ -387,4 +387,4 @@ Screen.-modal { .RenameEntryModal-cancel-button { margin: 0 1; width: 1fr; -} \ No newline at end of file +} \ No newline at end of file