Program/mooc/crud/crud_account.py
2025-01-04 01:13:47 +08:00

60 lines
3.0 KiB
Python

from typing import Optional
from sqlalchemy.orm import Session
from mooc.crud.crud_base import CRUDBase
from mooc.models.account import (
AccountWechats, AccountAliapp, AccountBaiduapp,
AccountPhoneapp, AccountToutiaoapp, Account,
AccountWebapp, AccountWxapp, AccountXzapp
)
from mooc.schemas.account import (
AccountWechatsCreate, AccountWechatsUpdate,
AccountAliappCreate, AccountAliappUpdate,
AccountBaiduappCreate, AccountBaiduappUpdate,
AccountPhoneappCreate, AccountPhoneappUpdate,
AccountToutiaoappCreate, AccountToutiaoappUpdate,
AccountWebappCreate, AccountWebappUpdate,
AccountWxappCreate, AccountWxappUpdate,
AccountXzappCreate, AccountXzappUpdate
)
class CRUDAccountWechats(CRUDBase[AccountWechats, AccountWechatsCreate, AccountWechatsUpdate]):
def get_by_uniacid(self, db: Session, *, uniacid: int) -> Optional[AccountWechats]:
return self.get_by_field(db, "uniacid", uniacid)
class CRUDAccountAliapp(CRUDBase[AccountAliapp, AccountAliappCreate, AccountAliappUpdate]):
def get_by_uniacid(self, db: Session, *, uniacid: int) -> Optional[AccountAliapp]:
return self.get_by_field(db, "uniacid", uniacid)
class CRUDAccountBaiduapp(CRUDBase[AccountBaiduapp, AccountBaiduappCreate, AccountBaiduappUpdate]):
def get_by_uniacid(self, db: Session, *, uniacid: int) -> Optional[AccountBaiduapp]:
return self.get_by_field(db, "uniacid", uniacid)
class CRUDAccountPhoneapp(CRUDBase[AccountPhoneapp, AccountPhoneappCreate, AccountPhoneappUpdate]):
def get_by_uniacid(self, db: Session, *, uniacid: int) -> Optional[AccountPhoneapp]:
return self.get_by_field(db, "uniacid", uniacid)
class CRUDAccountToutiaoapp(CRUDBase[AccountToutiaoapp, AccountToutiaoappCreate, AccountToutiaoappUpdate]):
def get_by_uniacid(self, db: Session, *, uniacid: int) -> Optional[AccountToutiaoapp]:
return self.get_by_field(db, "uniacid", uniacid)
class CRUDAccountWebapp(CRUDBase[AccountWebapp, AccountWebappCreate, AccountWebappUpdate]):
def get_by_uniacid(self, db: Session, *, uniacid: int) -> Optional[AccountWebapp]:
return self.get_by_field(db, "uniacid", uniacid)
class CRUDAccountWxapp(CRUDBase[AccountWxapp, AccountWxappCreate, AccountWxappUpdate]):
def get_by_uniacid(self, db: Session, *, uniacid: int) -> Optional[AccountWxapp]:
return self.get_by_field(db, "uniacid", uniacid)
class CRUDAccountXzapp(CRUDBase[AccountXzapp, AccountXzappCreate, AccountXzappUpdate]):
def get_by_uniacid(self, db: Session, *, uniacid: int) -> Optional[AccountXzapp]:
return self.get_by_field(db, "uniacid", uniacid)
# 创建实例
account_wechats = CRUDAccountWechats(AccountWechats)
account_aliapp = CRUDAccountAliapp(AccountAliapp)
account_baiduapp = CRUDAccountBaiduapp(AccountBaiduapp)
account_phoneapp = CRUDAccountPhoneapp(AccountPhoneapp)
account_toutiaoapp = CRUDAccountToutiaoapp(AccountToutiaoapp)
account_webapp = CRUDAccountWebapp(AccountWebapp)
account_wxapp = CRUDAccountWxapp(AccountWxapp)
account_xzapp = CRUDAccountXzapp(AccountXzapp)