Files
nimbusflow/backend/database/repository.py

41 lines
1.5 KiB
Python

from .connection import DatabaseConnection
from .models import Classification, Member, ServiceType, Service, ServiceAvailability
class Repository:
def __init__(self, db: DatabaseConnection):
self.db = db
def create_classification(self, classification_name: str):
classification = Classification(classification_name)
classification.save(self.db)
def create_member(self, first_name: str, last_name: str, email: str, phone_number: str, classification_id: int, notes: str = None):
member = Member(first_name, last_name, email, phone_number, classification_id, notes)
member.save(self.db)
def create_service_type(self, type_name: str):
service_type = ServiceType(type_name)
service_type.save(self.db)
def create_service(self, service_type_id: int, service_date: str):
service = Service(service_type_id, service_date)
service.save(self.db)
def create_service_availability(self, member_id: int, service_type_id: int):
service_availability = ServiceAvailability(member_id, service_type_id)
service_availability.save(self.db)
def get_all_classifications(self):
return Classification.get_all(self.db)
def get_all_members(self):
return Member.get_all(self.db)
def get_all_service_types(self):
return ServiceType.get_all(self.db)
def get_all_services(self):
return Service.get_all(self.db)
def get_all_service_availability(self):
return ServiceAvailability.get_all(self.db)