|
|
6add8bf027
|
fix: 修复 ESLint 错误,添加 lint-first 工作流规范
Build & Deploy Admin / deploy (push) Failing after 16s
- 提取 QuestionActionsCell 组件修复 rules-of-hooks 违规
- 抑制 shadcn/ui 文件的 react-refresh/only-export-components
- 移除未使用的 _note 参数并抑制保留参数的 unused-vars 警告
- CLAUDE.md 添加 lint-first 工作流:本地 lint 优先,CI 作为兜底
|
2026-04-22 15:06:41 +08:00 |
|
|
|
37b936ec52
|
feat: 对接题目查询接口,统一数据模型与 API 规范
- Question.stem 从 string 改为 { text: string } 对象,匹配 API 多语言题干格式
- 新增 contentType 字段(text/image/video/audio)
- knowledgeCard 从扁平字段重组为嵌套对象 { summary, deepDive?, sourceRef? }
- source/stats 改为可选字段,UI 添加空值回退
- 查询参数对齐:search→keyword, sort→sortBy, order→sortOrder
- QuestionForm 接入 createQuestion/updateQuestion API
- KnowledgeCardFields 组件重命名 props 匹配新结构
|
2026-04-12 00:34:09 +08:00 |
|
|
|
a822e91c63
|
feat: 对接题目批量导入接口(JSON + CSV)
- 新增 ImportQuestionItem / ImportSuccessResult / ImportValidationError 类型,匹配 API 规范
- importQuestions 改用 API 规范的 stem: { text }、contentType、嵌套 knowledgeCard 结构
- 新增 importQuestionsCsv 函数,POST text/plain 到 /admin/questions/import-csv
- 重写 ImportQuestionsDialog:JSON/CSV 双模式 Tab 切换、预览、校验错误详情展示
|
2026-04-11 23:40:14 +08:00 |
|
|
|
4cb26daa02
|
feat: 对接题目批量发布/归档/删除接口
替换原单一 batch 端点为 batch-publish、batch-archive、batch-delete 三个独立端点,
BatchResult 类型对齐 API 规范(total/succeeded/failed),新增 BatchResultDialog
展示批量操作结果及失败项详情。
|
2026-04-11 22:36:15 +08:00 |
|
|
|
d1af1dbe11
|
feat: 对接题目状态转换接口,补全转换路径和错误处理
- 补全 draft→archived、reviewing→archived 转换路径,与 API 规范对齐
- 添加 draft→archived、reviewing→archived 状态流转描述文案
- 为 confirmStatusChange、handleApproveUgc、handleRejectUgc 添加 try/catch 错误处理
|
2026-04-11 21:56:59 +08:00 |
|
|
|
66fc078b3c
|
refactor: 对接 duoqi-api 管理员登录规范
- ApiResponse 改为标准 { success, data, error } 格式
- 登录响应使用 accessToken/refreshToken 字段
- AdminRole 新增 super_admin 角色
- auth-store 支持 refreshToken 存储
- 所有 API 调用处理 data 可能为 null 的情况
|
2026-04-11 17:46:00 +08:00 |
|
|
|
2c2fc952f9
|
refactor: 对接 duoqi-api 文档规范
- API 路径前缀改为 /v1/admin
- 分类管理改用服务端分页(page/limit),移除未定义的 search/status 筛选
- 知识卡字段重命名:basic→summary、deep→deepDive
- 各页面移除不必要的 limit 参数
|
2026-04-11 15:10:44 +08:00 |
|
|
|
0a31f8634e
|
feat: 实现 Phase 3 — UGC 审核、举报处理、运营配置、多管理员
Phase 3a - UGC 审核队列:
- 题目列表添加来源 Tab 切换(全部/官方/用户投稿)
- UGC 审核对话框,支持通过/拒绝并填写备注
- 添加来源列和审核操作入口
Phase 3b - 举报处理:
- 举报列表页面,支持搜索和筛选
- 举报详情对话框,支持驳回/采纳处理
- 5 种举报原因和 4 种处理状态
Phase 3c - 运营配置:
- 设置页面使用 Tabs 布局
- 活动配置:XP 加成、时间范围、状态管理
- 推送文案:模板管理、变量支持、测试发送
- 通用设置:应用级配置项管理
Phase 3d - 多管理员支持:
- 用户名密码登录(替换 Token 登录)
- 管理员管理页面:创建、删除、重置密码
- 角色区分:admin(管理员)/ moderator(审核员)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
2026-04-08 15:38:07 +08:00 |
|
|
|
4bbdc590f4
|
feat: 实现批量导入题目功能,Phase 1b 完成
- 新建 ImportQuestionsDialog 三步导入对话框(输入→预览→结果)
- 支持 JSON 文件上传和手动粘贴,Zod 格式校验
- 新增 importQuestions API 函数 + ImportResult 类型
- 题目列表页新增批量导入按钮
- Phase 1b 全部功能完成
|
2026-04-07 23:23:57 +08:00 |
|
|
|
a5025e633e
|
feat: 完善题目状态流转 UI(Phase 1b)
- 新建 StatusTransitionDialog 确认对话框,显示流转方向和操作说明
- 状态列增加快速操作按钮(主流转),下拉菜单保留全部流转路径
- 新增 TRANSITION_LABELS 常量定义各状态的流转动作标签
|
2026-04-07 23:20:16 +08:00 |
|
|
|
9314dc8505
|
feat: 实现知识卡编辑组件(Phase 1b)
- 新建 KnowledgeCardFields 组件:基础版/深度版编辑、字符计数器、来源参考、预览面板
- 提取 QuestionForm 中内联的知识卡字段为独立组件
- 新增 sourceRef 字段到类型定义和表单 schema
|
2026-04-07 23:16:01 +08:00 |
|
|
|
918ca279d6
|
feat: 实现题库管理 CRUD(Phase 1b)
- 题目列表页:TanStack Table + 多维度筛选(搜索/状态/分类/难度)+ 分页 + 状态流转 + 删除
- 新建/编辑页:独立路由页面,含题干、正确答案、干扰项编辑器(4-6个)、分类选择、难度、状态、知识卡
- API 封装:question-api.ts 6 个函数(CRUD + 状态流转)
- 组件:StatusBadge、DistractorEditor、QuestionForm、columns
- 修正 QUESTION_STATUSES key: review → reviewing
- 新增 shadcn/ui 组件:textarea、separator
|
2026-04-07 12:10:25 +08:00 |
|