2025-01-03 17:06:40 +08:00
|
|
|
from typing import List
|
|
|
|
from fastapi import APIRouter, Depends, HTTPException
|
|
|
|
from sqlalchemy.orm import Session
|
|
|
|
from mooc.api import deps
|
2025-01-03 18:03:30 +08:00
|
|
|
from mooc.crud.crud_account import account_baiduapp
|
2025-01-03 17:06:40 +08:00
|
|
|
from mooc.schemas.account import AccountBaiduappCreate, AccountBaiduappRead, AccountBaiduappUpdate
|
|
|
|
|
|
|
|
account_router = APIRouter()
|
|
|
|
|
|
|
|
@account_router.post("/baiduapp", response_model=AccountBaiduappRead)
|
|
|
|
def create_baiduapp(
|
|
|
|
*,
|
|
|
|
db: Session = Depends(deps.get_db),
|
|
|
|
baiduapp_in: AccountBaiduappCreate,
|
|
|
|
):
|
|
|
|
"""
|
|
|
|
创建百度小程序账号
|
|
|
|
"""
|
2025-01-03 18:03:30 +08:00
|
|
|
baiduapp = account_baiduapp.create(db=db, obj_in=baiduapp_in)
|
2025-01-03 17:06:40 +08:00
|
|
|
return baiduapp
|
|
|
|
|
|
|
|
@account_router.get("/baiduapp/{acid}", response_model=AccountBaiduappRead)
|
|
|
|
def read_baiduapp(
|
|
|
|
*,
|
|
|
|
db: Session = Depends(deps.get_db),
|
|
|
|
acid: int,
|
|
|
|
):
|
|
|
|
"""
|
|
|
|
获取百度小程序账号信息
|
|
|
|
"""
|
2025-01-03 18:03:30 +08:00
|
|
|
baiduapp = account_baiduapp.get(db=db, acid=acid)
|
2025-01-03 17:06:40 +08:00
|
|
|
if not baiduapp:
|
|
|
|
raise HTTPException(
|
|
|
|
status_code=404,
|
|
|
|
detail="Baidu app not found"
|
|
|
|
)
|
|
|
|
return baiduapp
|
|
|
|
|
|
|
|
@account_router.put("/baiduapp/{acid}", response_model=AccountBaiduappRead)
|
|
|
|
def update_baiduapp(
|
|
|
|
*,
|
|
|
|
db: Session = Depends(deps.get_db),
|
|
|
|
acid: int,
|
|
|
|
baiduapp_in: AccountBaiduappUpdate,
|
|
|
|
):
|
|
|
|
"""
|
|
|
|
更新百度小程序账号信息
|
|
|
|
"""
|
2025-01-03 18:03:30 +08:00
|
|
|
baiduapp = account_baiduapp.get(db=db, acid=acid)
|
2025-01-03 17:06:40 +08:00
|
|
|
if not baiduapp:
|
|
|
|
raise HTTPException(
|
|
|
|
status_code=404,
|
|
|
|
detail="Baidu app not found"
|
|
|
|
)
|
2025-01-03 18:03:30 +08:00
|
|
|
baiduapp = account_baiduapp.update(
|
2025-01-03 17:06:40 +08:00
|
|
|
db=db,
|
|
|
|
db_obj=baiduapp,
|
|
|
|
obj_in=baiduapp_in
|
|
|
|
)
|
|
|
|
return baiduapp
|
|
|
|
|
|
|
|
@account_router.delete("/baiduapp/{acid}", response_model=AccountBaiduappRead)
|
|
|
|
def delete_baiduapp(
|
|
|
|
*,
|
|
|
|
db: Session = Depends(deps.get_db),
|
|
|
|
acid: int,
|
|
|
|
):
|
|
|
|
"""
|
|
|
|
删除百度小程序账号
|
|
|
|
"""
|
2025-01-03 18:03:30 +08:00
|
|
|
baiduapp = account_baiduapp.get(db=db, acid=acid)
|
2025-01-03 17:06:40 +08:00
|
|
|
if not baiduapp:
|
|
|
|
raise HTTPException(
|
|
|
|
status_code=404,
|
|
|
|
detail="Baidu app not found"
|
|
|
|
)
|
2025-01-03 18:03:30 +08:00
|
|
|
baiduapp = account_baiduapp.delete(db=db, acid=acid)
|
2025-01-03 17:06:40 +08:00
|
|
|
return baiduapp
|