crud_ytviews.py 1.0 KB

1234567891011121314151617181920212223242526272829303132333435
  1. from typing import List
  2. from fastapi.encoders import jsonable_encoder
  3. from sqlalchemy.orm import Session
  4. from sqlalchemy import desc
  5. from app.crud.base import CRUDBase
  6. from app.models.ytviews import YTViews
  7. from app.schemas.ytviews import YTViewsCreate, YTViewsUpdate
  8. from app.utils import random_name
  9. class CRUDYTViews(CRUDBase[YTViews, YTViewsCreate, YTViewsUpdate]):
  10. def create_with_payment_data(
  11. self, db: Session, *, obj_in: YTViewsCreate,
  12. epayment:str,
  13. remark: str
  14. ) -> YTViews:
  15. obj_in_data = jsonable_encoder(obj_in)
  16. db_obj = self.model(**obj_in_data,
  17. epayment=epayment,
  18. remark=remark)
  19. db.add(db_obj)
  20. db.commit()
  21. db.refresh(db_obj)
  22. return db_obj
  23. def get_all_desc(self, db: Session) -> List[YTViews]:
  24. return (
  25. db.query(self.model)
  26. .order_by(desc(YTViews.id))
  27. .all()
  28. )
  29. ytviews = CRUDYTViews(YTViews)