This commit is contained in:
fengchuanhn@gmail.com
2026-05-21 17:19:32 +08:00
parent 13c8493e4c
commit 79b657941f
6 changed files with 296 additions and 28 deletions

View File

@@ -18,18 +18,18 @@ def _map_image_error(exc: BrandingImageError) -> AdminOemBrandingError:
return AdminOemBrandingError(exc.message)
async def get_or_create_default_oem(db: AsyncSession, *, owner_user_id: int) -> Oem:
oem = await db.get(Oem, DEFAULT_OEM_ID)
async def get_or_create_default_oem(db: AsyncSession, *, oem_id: int,user_id:int) -> Oem:
oem = await db.get(Oem, oem_id)
if oem is not None:
return oem
owner = await db.get(User, owner_user_id)
owner = await db.get(User, user_id)
if owner is None:
raise AdminOemBrandingError("关联用户不存在")
oem = Oem(
id=DEFAULT_OEM_ID,
user_id=owner_user_id,
user_id=user_id,
software_name="",
)
db.add(oem)
@@ -38,17 +38,18 @@ async def get_or_create_default_oem(db: AsyncSession, *, owner_user_id: int) ->
return oem
async def get_default_oem_branding(db: AsyncSession, *, owner_user_id: int) -> Oem:
return await get_or_create_default_oem(db, owner_user_id=owner_user_id)
async def get_default_oem_branding(db: AsyncSession, *, oem_id: int,user_id:int) -> Oem:
return await get_or_create_default_oem(db, oem_id=oem_id,user_id=user_id)
async def update_default_oem_branding(
db: AsyncSession,
body: OemBrandingUpdate,
*,
owner_user_id: int,
oem_id: int,
user_id: int,
) -> Oem:
oem = await get_or_create_default_oem(db, owner_user_id=owner_user_id)
oem = await get_or_create_default_oem(db, oem_id=oem_id,user_id=user_id)
try:
logo_path = resolve_image_field(