60 lines
3.0 KiB
Python
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) |