ipns-poc-eval / src /services /_letter_service.py
Aryan Jain
update letters and evaluation apis
1eb956a
from src.repositories import LetterRepository
from src.models import Letter, LetterType
class LetterService:
def __init__(self):
self.letter_repository = LetterRepository
async def __aenter__(self):
return self
async def __aexit__(self, exc_type, exc_value, traceback):
pass
async def get_letters(
self, id: str = None, proposal_id: str = None, letter_type: LetterType = None
):
async with self.letter_repository() as repository:
return await repository.get_letters(
id=id, proposal_id=proposal_id, letter_type=letter_type
)
async def create_letter(self, letter: dict):
async with self.letter_repository() as repository:
return await repository.create_letter(letter)
async def update_letter(self, id: str, letter: dict):
async with self.letter_repository() as repository:
return await repository.update_letter(id=id, letter=letter)
async def delete_letter(self, id: str = None, proposal_id: str = None):
async with self.letter_repository() as repository:
return await repository.delete_letter(id)