import { eq } from 'drizzle-orm' import { db } from '~/drizzle/db' import { systemSettings } from '~/drizzle/schema' import { CacheService } from '~~/server/services/cacheService' export default defineEventHandler(async (event) => { const user = event.context.user if (!user) throw createError({ statusCode: 401, message: '未登录' }) if (!['ADMIN', 'SUPER_ADMIN'].includes(user.role)) throw createError({ statusCode: 403, message: '仅管理员可解绑酷狗账号' }) const rows = await db.select().from(systemSettings).limit(1) const patch: Record = { kugouAdminToken: null, kugouAdminCookie: null, kugouAdminUser: null, kugouAdminBoundAt: null, updatedAt: new Date(), } if (rows[0]) { await db.update(systemSettings).set(patch).where(eq(systemSettings.id, rows[0].id)) } try { const cs = CacheService.getInstance() if (rows[0]) await cs.setSystemSettings?.({ ...rows[0], ...patch }) } catch (_) {} return { ok: true } })