Compare commits

..

No commits in common. "14055770e7351268c03a03e2800db5c543d02d32" and "4a5da4d44c98f558c6776f52d132bd4a333abd68" have entirely different histories.

7 changed files with 14 additions and 21 deletions

View File

@ -7,10 +7,7 @@ from pilgrim.ui.ui import UIApp
class Application: class Application:
def __init__(self): def __init__(self):
self.database = Database() self.database = Database()
session = self.database.session() self.ui = UIApp(ServiceManagerMock())
session_manager = ServiceManager()
session_manager.set_session(session)
self.ui = UIApp(session_manager)
def run(self): def run(self):
self.database.create() self.database.create()

View File

@ -1,6 +1,6 @@
from typing import Any from typing import Any
from sqlalchemy import Column, Integer, String, ForeignKey, DateTime from sqlalchemy import Column, Integer, String, ForeignKey
from sqlalchemy.orm import relationship from sqlalchemy.orm import relationship
from pilgrim.models.photo_in_entry import photo_entry_association from pilgrim.models.photo_in_entry import photo_entry_association
@ -12,7 +12,7 @@ class Entry(Base):
id = Column(Integer, primary_key=True) id = Column(Integer, primary_key=True)
title = Column(String) title = Column(String)
text = Column(String) text = Column(String)
date = Column(DateTime) date = Column(String)
photos = relationship( photos = relationship(
"Photo", "Photo",
secondary=photo_entry_association, secondary=photo_entry_association,

View File

@ -1,4 +1,3 @@
from datetime import datetime
from typing import List from typing import List
from ..models.entry import Entry from ..models.entry import Entry
@ -9,7 +8,7 @@ class EntryService:
def __init__(self,session): def __init__(self,session):
self.session = session self.session = session
def create(self, travel_diary_id:int, title: str, text: str, date: datetime, ): def create(self, travel_diary_id:int, title: str, text: str, date: str, ):
travel_diary = self.session.query(TravelDiary).filter(TravelDiary.id == travel_diary_id).first() travel_diary = self.session.query(TravelDiary).filter(TravelDiary.id == travel_diary_id).first()
if not travel_diary: if not travel_diary:
return None return None

View File

@ -1,10 +1,10 @@
from ..models.travel_diary import TravelDiary from ..models.travel_diary import TravelDiary
import asyncio
class TravelDiaryService: class TravelDiaryService:
def __init__(self,session): def __init__(self,session):
self.session = session self.session = session
async def async_create(self, name:str): def create(self, name:str):
new_travel_diary = TravelDiary(name) new_travel_diary = TravelDiary(name)
self.session.add(new_travel_diary) self.session.add(new_travel_diary)
self.session.commit() self.session.commit()
@ -18,17 +18,14 @@ class TravelDiaryService:
def read_all(self): def read_all(self):
return self.session.query(TravelDiary).all() return self.session.query(TravelDiary).all()
def update(self, travel_diary_id: int, name: str): def update(self, travel_diary_id: TravelDiary, travel_diary_dst: TravelDiary):
original = self.read_by_id(travel_diary_id) original = self.read_by_id(travel_diary_id.id)
if original is not None: if original is not None:
original.name = name original.name = travel_diary_dst.name
self.session.commit() self.session.commit()
self.session.refresh(original) self.session.refresh(original)
return 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): def delete(self, travel_diary_id: TravelDiary):
excluded = self.read_by_id(travel_diary_id.id) excluded = self.read_by_id(travel_diary_id.id)
if excluded is not None: if excluded is not None:

View File

@ -127,8 +127,8 @@ class DiaryListScreen(Screen):
service_manager = self.app.service_manager service_manager = self.app.service_manager
travel_diary_service = service_manager.get_travel_diary_service() travel_diary_service = service_manager.get_travel_diary_service()
# Usa método síncrono agora # Uses async method
diaries = travel_diary_service.read_all() diaries = await travel_diary_service.async_read_all()
# Saves current state # Saves current state
current_diary_id = None current_diary_id = None

View File

@ -375,8 +375,8 @@ class EditEntryScreen(Screen):
service_manager = self.app.service_manager service_manager = self.app.service_manager
entry_service = service_manager.get_entry_service() entry_service = service_manager.get_entry_service()
# Get current date as datetime object # Get current date
current_date = datetime.now() current_date = datetime.now().strftime("%d/%m/%Y")
new_entry = entry_service.create( new_entry = entry_service.create(
travel_diary_id=self.diary_id, travel_diary_id=self.diary_id,

View File

@ -387,4 +387,4 @@ Screen.-modal {
.RenameEntryModal-cancel-button { .RenameEntryModal-cancel-button {
margin: 0 1; margin: 0 1;
width: 1fr; width: 1fr;
} }