monitor-ai/src/app/api/status-history/route.ts

18 lines
719 B
TypeScript

// GET /api/status-history — 状态变更列表
import { NextRequest, NextResponse } from 'next/server'
import { dbQuery } from '@/lib/db'
export async function GET(request: NextRequest) {
const { searchParams } = new URL(request.url)
const page = Number(searchParams.get('page')) || 1
const limit = 20
const offset = (page - 1) * limit
const serviceId = searchParams.get('service_id')
let where = ''
if (serviceId) where = ` WHERE service_id = ${Number(serviceId)}`
const events = dbQuery(`SELECT sh.*, s.name as service_name FROM status_history sh JOIN services s ON sh.service_id = s.id ${where} ORDER BY sh.started_at DESC LIMIT ${limit} OFFSET ${offset}`)
return NextResponse.json(events)
}