""" CRUD operations for tasks. """ from typing import List from sqlalchemy.orm import Session from app.crud.base import CRUDBase from app.models.task import Task, TaskStatus from app.schemas.task import TaskCreate, TaskUpdate class CRUDTask(CRUDBase[Task, TaskCreate, TaskUpdate]): """ CRUD operations for tasks. """ def get_by_status( self, db: Session, *, status: TaskStatus, skip: int = 0, limit: int = 100 ) -> List[Task]: """ Get tasks by status. """ return ( db.query(self.model) .filter(self.model.status == status) .offset(skip) .limit(limit) .all() ) def get_by_title( self, db: Session, *, title: str, skip: int = 0, limit: int = 100 ) -> List[Task]: """ Get tasks by title (partial match). """ return ( db.query(self.model) .filter(self.model.title.ilike(f"%{title}%")) .offset(skip) .limit(limit) .all() ) task = CRUDTask(Task)