ai_giga_tcg/app/services/card_service.py
2025-04-09 21:02:43 -04:00

17 lines
809 B
Python

from typing import List, Optional
from sqlalchemy.orm import Session
from app.services.base_service import BaseService
from app.models.card import Card
class CardService(BaseService[Card]):
def __init__(self):
super().__init__(Card)
def get_by_name(self, db: Session, name: str) -> Optional[Card]:
return db.query(self.model).filter(self.model.name == name).first()
def get_by_rarity(self, db: Session, rarity: str, skip: int = 0, limit: int = 100) -> List[Card]:
return db.query(self.model).filter(self.model.rarity == rarity).offset(skip).limit(limit).all()
def get_by_set(self, db: Session, set_name: str, skip: int = 0, limit: int = 100) -> List[Card]:
return db.query(self.model).filter(self.model.set_name == set_name).offset(skip).limit(limit).all()