- 前后端分离架构 (Nuxt 3 + Element Plus) - SQLite 数据库 (better-sqlite3) - 比赛项目管理 (田赛/径赛/团体赛) - 队伍管理 (5 个组别) - 成绩录入与积分统计 - 记分板展示 (排名/奖牌榜) - 移动端响应式适配 - 侧边栏布局 + 抽屉菜单 - 自动生成初始化数据接口
30 lines
534 B
TypeScript
30 lines
534 B
TypeScript
import db from '../../db'
|
|
|
|
export default defineEventHandler((event) => {
|
|
const query = getQuery(event)
|
|
const { category, group } = query
|
|
|
|
let sql = 'SELECT * FROM events WHERE 1=1'
|
|
const params: any[] = []
|
|
|
|
if (category) {
|
|
sql += ' AND category = ?'
|
|
params.push(category)
|
|
}
|
|
|
|
if (group) {
|
|
sql += ' AND event_group = ?'
|
|
params.push(group)
|
|
}
|
|
|
|
sql += ' ORDER BY created_at DESC'
|
|
|
|
const stmt = db.prepare(sql)
|
|
const events = stmt.all(...params)
|
|
|
|
return {
|
|
success: true,
|
|
data: events
|
|
}
|
|
})
|