50 lines
1.5 KiB
Python
50 lines
1.5 KiB
Python
"""管理员:默认 OEM(id=1)软件品牌配置。"""
|
||
|
||
from fastapi import APIRouter
|
||
|
||
from app.dependencies import AdminUser, DbSession
|
||
from app.schemas.admin_oem_branding import OemBrandingOut, OemBrandingUpdate
|
||
from app.schemas.common import ApiResponse
|
||
from app.services import admin_oem_branding as branding_service
|
||
|
||
router = APIRouter(prefix="/admin/oem-branding", tags=["管理-OEM品牌"])
|
||
|
||
|
||
@router.get("", response_model=ApiResponse[OemBrandingOut])
|
||
async def get_oem_branding(
|
||
admin: AdminUser,
|
||
db: DbSession,
|
||
) -> ApiResponse[OemBrandingOut]:
|
||
try:
|
||
oem = await branding_service.get_default_oem_branding(
|
||
db, oem_id=1,user_id=admin.id
|
||
)
|
||
except branding_service.AdminOemBrandingError as exc:
|
||
return ApiResponse(ok=False, message=exc.message)
|
||
|
||
return ApiResponse(
|
||
ok=True,
|
||
message="",
|
||
data=OemBrandingOut.model_validate(oem),
|
||
)
|
||
|
||
|
||
@router.patch("", response_model=ApiResponse[OemBrandingOut])
|
||
async def update_oem_branding(
|
||
body: OemBrandingUpdate,
|
||
admin: AdminUser,
|
||
db: DbSession,
|
||
) -> ApiResponse[OemBrandingOut]:
|
||
try:
|
||
oem = await branding_service.update_default_oem_branding(
|
||
db, body, oem_id=1,user_id=admin.id
|
||
)
|
||
except branding_service.AdminOemBrandingError as exc:
|
||
return ApiResponse(ok=False, message=exc.message)
|
||
|
||
return ApiResponse(
|
||
ok=True,
|
||
message="软件配置已保存",
|
||
data=OemBrandingOut.model_validate(oem),
|
||
)
|