from sqlmodel import Session, select from app.models.jira_site import JiraSite from app.repositories.base import BaseRepo class JiraSiteRepo(BaseRepo): model_cls = JiraSite def get(self, session: Session, site_id: int): return session.get(JiraSite, site_id) def must_get(self, session: Session, site_id: int): jira_site = self.get(session, site_id) if not jira_site: raise Exception(f"Jira site #{site_id} is not found") return jira_site def get_by_host(self, session: Session, host: str): stmt = select(JiraSite).where(JiraSite.host == host) return session.exec(stmt).first() def must_get_by_host(self, session: Session, host: str): jira_site = self.get_by_host(session, host) if not jira_site: raise Exception(f"Jira site with host {host} is not found") return jira_site jira_site_repo = JiraSiteRepo()