feat: initialize aivideo project
This commit is contained in:
72
backend/app/modules/system/router.py
Normal file
72
backend/app/modules/system/router.py
Normal file
@@ -0,0 +1,72 @@
|
||||
from fastapi import APIRouter, Depends
|
||||
from sqlalchemy.orm import Session
|
||||
|
||||
from app.common.db.session import get_db
|
||||
from app.common.responses.api_response import success_response
|
||||
from app.common.security.deps import require_admin_permission
|
||||
from app.modules.system.schema import RedeemBatchCreatePayload, SystemConfigItemPayload
|
||||
from app.modules.system.service import SystemService
|
||||
|
||||
|
||||
router = APIRouter(prefix="/api/v1/admin", tags=["admin-system"])
|
||||
|
||||
|
||||
@router.get("/system-config")
|
||||
def list_system_configs(
|
||||
_=Depends(require_admin_permission()),
|
||||
db: Session = Depends(get_db),
|
||||
):
|
||||
return success_response(SystemService(db).list_configs())
|
||||
|
||||
|
||||
@router.put("/system-config")
|
||||
def upsert_system_config(
|
||||
payload: SystemConfigItemPayload,
|
||||
_=Depends(require_admin_permission()),
|
||||
db: Session = Depends(get_db),
|
||||
):
|
||||
return success_response(SystemService(db).upsert_config(payload))
|
||||
|
||||
|
||||
@router.get("/redeem-codes")
|
||||
def list_redeem_codes(
|
||||
_=Depends(require_admin_permission()),
|
||||
db: Session = Depends(get_db),
|
||||
):
|
||||
return success_response(SystemService(db).list_redeem_codes())
|
||||
|
||||
|
||||
@router.post("/redeem-codes/batch-create")
|
||||
def batch_create_redeem_codes(
|
||||
payload: RedeemBatchCreatePayload,
|
||||
_=Depends(require_admin_permission()),
|
||||
db: Session = Depends(get_db),
|
||||
):
|
||||
return success_response(SystemService(db).batch_create_redeem_codes(payload))
|
||||
|
||||
|
||||
@router.post("/redeem-codes/import")
|
||||
def import_redeem_codes(
|
||||
payload: RedeemBatchCreatePayload,
|
||||
_=Depends(require_admin_permission()),
|
||||
db: Session = Depends(get_db),
|
||||
):
|
||||
return success_response(SystemService(db).batch_create_redeem_codes(payload))
|
||||
|
||||
|
||||
@router.put("/redeem-codes/{redeem_id}/disable")
|
||||
def disable_redeem_code(
|
||||
redeem_id: int,
|
||||
_=Depends(require_admin_permission()),
|
||||
db: Session = Depends(get_db),
|
||||
):
|
||||
return success_response(SystemService(db).disable_redeem_code(redeem_id))
|
||||
|
||||
|
||||
@router.get("/callback-logs")
|
||||
def list_callback_logs(
|
||||
_=Depends(require_admin_permission()),
|
||||
db: Session = Depends(get_db),
|
||||
):
|
||||
return success_response(SystemService(db).list_callback_logs())
|
||||
|
||||
Reference in New Issue
Block a user