feat: 更新构建流程,添加 API 构建脚本和 SQL 文件复制脚本

- 修改 package.json,更新构建命令,添加 postbuild 脚本以复制 init.sql 文件。
- 新增 scripts/build-api.mjs,使用 esbuild 构建 API 代码。
- 新增 scripts/copy-init-sql.mjs,复制数据库初始化 SQL 文件到构建输出目录。
- 在 SubjectSelectionPage 组件中添加 totalScore 属性,增加历史最高分状态显示功能。
- 在 ExamSubjectPage 和 QuestionManagePage 中优化判断题答案处理逻辑。
- 在 OptionList 组件中将判断题选项文本从 'T' 和 'F' 改为 '对' 和 '错'。
- 在 QuizFooter 组件中调整样式,增加按钮和文本的可读性。
- 新增用户默认组测试用例,验证新用户创建后自动加入“全体用户”系统组。
- 新增 tsconfig.api.json,配置 API 相关 TypeScript 编译选项。
- 移除 vite.config.ts 中的 global 定义。
This commit is contained in:
2025-12-30 20:33:14 +08:00
parent 1822d8b4da
commit eb4504960e
31 changed files with 10221 additions and 150 deletions

View File

@@ -100,7 +100,7 @@ export class UserController {
const existingUser = await UserModel.findByPhone(phone);
if (existingUser) {
if (existingUser) {
if (existingUser.password && existingUser.password !== password) {
return res.status(400).json({
success: false,
@@ -118,6 +118,11 @@ export class UserController {
});
} else {
const newUser = await UserModel.create({ name, phone, password });
// 自动加入"全体用户"组
const allUsersGroup = await UserGroupModel.getSystemGroup();
if (allUsersGroup) {
await UserGroupModel.addMember(allUsersGroup.id, newUser.id);
}
res.json({
success: true,
data: newUser