- 前后端分离架构 (Nuxt 3 + Element Plus) - SQLite 数据库 (better-sqlite3) - 比赛项目管理 (田赛/径赛/团体赛) - 队伍管理 (5 个组别) - 成绩录入与积分统计 - 记分板展示 (排名/奖牌榜) - 移动端响应式适配 - 侧边栏布局 + 抽屉菜单 - 自动生成初始化数据接口
34 lines
750 B
TypeScript
34 lines
750 B
TypeScript
import db from '../../db'
|
|
|
|
export default defineEventHandler(async (event) => {
|
|
const body = await readBody(event)
|
|
const { name, team_group } = body
|
|
|
|
if (!name || !team_group) {
|
|
throw createError({
|
|
statusCode: 400,
|
|
message: '缺少必要参数'
|
|
})
|
|
}
|
|
|
|
const stmt = db.prepare(
|
|
'INSERT INTO teams (name, team_group) VALUES (?, ?)'
|
|
)
|
|
const result = stmt.run(name, team_group)
|
|
|
|
// 初始化团队积分
|
|
const scoreStmt = db.prepare(
|
|
'INSERT INTO team_scores (team_id, total_score, gold_count, silver_count, bronze_count) VALUES (?, 0, 0, 0, 0)'
|
|
)
|
|
scoreStmt.run(result.lastInsertRowid)
|
|
|
|
return {
|
|
success: true,
|
|
data: {
|
|
id: result.lastInsertRowid,
|
|
name,
|
|
team_group
|
|
}
|
|
}
|
|
})
|