27 lines
827 B
TypeScript
27 lines
827 B
TypeScript
import { db } from '~/drizzle/db'
|
|
import { expectedPlayDates } from '~/drizzle/schema'
|
|
import { eq } from 'drizzle-orm'
|
|
|
|
export default defineEventHandler(async (event) => {
|
|
const user = event.context.user
|
|
|
|
if (!user || (user.role !== 'ADMIN' && user.role !== 'SUPER_ADMIN')) {
|
|
throw createError({ statusCode: 403, message: '权限不足' })
|
|
}
|
|
|
|
const idParam = event.context.params?.id
|
|
if (!idParam) {
|
|
throw createError({ statusCode: 400, message: '无效的ID' })
|
|
}
|
|
const id = Number(idParam)
|
|
if (isNaN(id)) {
|
|
throw createError({ statusCode: 400, message: '无效的ID' })
|
|
}
|
|
|
|
try {
|
|
await db.delete(expectedPlayDates).where(eq(expectedPlayDates.id, id))
|
|
return { success: true }
|
|
} catch (e: any) {
|
|
throw createError({ statusCode: 500, message: e.message || '删除失败' })
|
|
}
|
|
}) |