feat: initialize aivideo project
This commit is contained in:
26
backend/app/modules/assets/repository.py
Normal file
26
backend/app/modules/assets/repository.py
Normal file
@@ -0,0 +1,26 @@
|
||||
from sqlalchemy import select
|
||||
from sqlalchemy.orm import Session
|
||||
|
||||
from app.models.entities import MediaAsset
|
||||
|
||||
|
||||
class AssetsRepository:
|
||||
def __init__(self, db: Session) -> None:
|
||||
self.db = db
|
||||
|
||||
def list_assets(self, user_id: int):
|
||||
return (
|
||||
self.db.query(MediaAsset)
|
||||
.filter(MediaAsset.user_id == user_id, MediaAsset.status == "active")
|
||||
.order_by(MediaAsset.id.desc())
|
||||
)
|
||||
|
||||
def get_asset(self, user_id: int, asset_id: int) -> MediaAsset | None:
|
||||
return self.db.scalar(
|
||||
select(MediaAsset).where(
|
||||
MediaAsset.id == asset_id,
|
||||
MediaAsset.user_id == user_id,
|
||||
MediaAsset.status == "active",
|
||||
)
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user