Initial commit of akmon project
This commit is contained in:
140
doc_eldercare/EXECUTE_NOW.md
Normal file
140
doc_eldercare/EXECUTE_NOW.md
Normal file
@@ -0,0 +1,140 @@
|
||||
# 🎯 立即执行:评分标准JSON迁移
|
||||
|
||||
## ✅ 状态确认
|
||||
- **代码修复**: 100% 完成 ✅
|
||||
- **错误修复**: TypeError已解决 ✅
|
||||
- **文件验证**: 所有文件无错误 ✅
|
||||
- **迁移脚本**: 已准备就绪 ✅
|
||||
|
||||
## 🚀 执行步骤 (约30分钟)
|
||||
|
||||
### Step 1: 数据库迁移 (15分钟)
|
||||
```powershell
|
||||
# 在 PowerShell 中执行,当前目录已在 h:\blews\akmon
|
||||
psql -h [数据库主机] -U [用户名] -d [数据库名] -f migrate_scoring_criteria_simple.sql
|
||||
|
||||
# 常见示例:
|
||||
# psql -h localhost -U postgres -d akmon_dev -f migrate_scoring_criteria_simple.sql
|
||||
# 或者使用 Supabase:
|
||||
# psql "postgresql://[user]:[pass]@[host]:5432/[db]" -f migrate_scoring_criteria_simple.sql
|
||||
```
|
||||
|
||||
**迁移内容**:
|
||||
- 创建备份表 `ak_training_projects_backup_20250611`
|
||||
- 转换 `scoring_criteria` 字段为 JSONB 格式
|
||||
- 添加默认JSON结构给缺失数据的项目
|
||||
- 创建性能优化索引
|
||||
- 验证迁移结果
|
||||
|
||||
### Step 2: 功能验证 (15分钟)
|
||||
|
||||
#### 2.1 前端测试 (10分钟)
|
||||
1. **教师端**
|
||||
```
|
||||
访问: /pages/sport/teacher/project-create
|
||||
操作: 创建新项目,添加评分标准
|
||||
验证: 保存成功,数据库包含JSON格式数据
|
||||
|
||||
访问: /pages/sport/teacher/create-assignment
|
||||
操作: 选择训练项目
|
||||
验证: 项目列表加载,难度等级样式正确显示
|
||||
```
|
||||
|
||||
2. **学生端**
|
||||
```
|
||||
访问: /pages/sport/student/assignment-detail
|
||||
操作: 查看作业详情
|
||||
验证: 评分标准正确显示
|
||||
```
|
||||
|
||||
#### 2.2 数据验证 (5分钟)
|
||||
```sql
|
||||
-- 验证迁移成功
|
||||
SELECT
|
||||
COUNT(*) as total_projects,
|
||||
COUNT(CASE WHEN scoring_criteria ? 'criteria' THEN 1 END) as with_json_criteria,
|
||||
COUNT(CASE WHEN jsonb_typeof(scoring_criteria->'criteria') = 'array' THEN 1 END) as valid_structure
|
||||
FROM ak_training_projects;
|
||||
|
||||
-- 查看示例数据
|
||||
SELECT title, scoring_criteria->'criteria' as criteria
|
||||
FROM ak_training_projects
|
||||
WHERE scoring_criteria IS NOT NULL
|
||||
LIMIT 3;
|
||||
```
|
||||
|
||||
## 📊 预期结果
|
||||
|
||||
### 数据库层面
|
||||
```
|
||||
总项目数: N
|
||||
有JSON评分标准的项目: N
|
||||
有效JSON结构的项目: N
|
||||
✅ 迁移成功率: 100%
|
||||
```
|
||||
|
||||
### 前端层面
|
||||
- ✅ 项目创建页面:评分标准输入和保存正常
|
||||
- ✅ 项目编辑页面:数据加载和更新正常
|
||||
- ✅ 作业创建页面:项目选择和难度显示正常
|
||||
- ✅ 作业详情页面:评分标准显示正常
|
||||
|
||||
### JSON数据结构
|
||||
```json
|
||||
{
|
||||
"criteria": [
|
||||
{"min_score": 90, "max_score": 100, "description": "优秀:表现卓越"},
|
||||
{"min_score": 80, "max_score": 89, "description": "良好:符合要求"},
|
||||
{"min_score": 70, "max_score": 79, "description": "及格:基本达标"},
|
||||
{"min_score": 0, "max_score": 69, "description": "不及格:需要改进"}
|
||||
],
|
||||
"scoring_method": "comprehensive",
|
||||
"weight_distribution": {"technique": 0.4, "effort": 0.3, "improvement": 0.3}
|
||||
}
|
||||
```
|
||||
|
||||
## 🛠️ 应急处理
|
||||
|
||||
### 如果迁移失败
|
||||
```sql
|
||||
-- 回滚到迁移前状态
|
||||
DROP TABLE ak_training_projects;
|
||||
ALTER TABLE ak_training_projects_backup_20250611 RENAME TO ak_training_projects;
|
||||
```
|
||||
|
||||
### 如果前端有问题
|
||||
1. 检查浏览器控制台错误
|
||||
2. 验证Vue DevTools中的组件状态
|
||||
3. 确认API请求和响应数据格式
|
||||
|
||||
## 📞 技术支持
|
||||
|
||||
### 调试命令
|
||||
```javascript
|
||||
// 浏览器控制台
|
||||
console.log('getDifficultyClass function:', this.getDifficultyClass);
|
||||
console.log('Selected project:', this.selectedProject);
|
||||
```
|
||||
|
||||
```sql
|
||||
-- 数据库调试
|
||||
SELECT column_name, data_type FROM information_schema.columns
|
||||
WHERE table_name = 'ak_training_projects' AND column_name = 'scoring_criteria';
|
||||
```
|
||||
|
||||
## ✅ 完成确认
|
||||
|
||||
迁移成功后,您应该看到:
|
||||
- [x] 数据库迁移脚本执行成功,无错误
|
||||
- [x] 所有项目都有有效的JSON格式评分标准
|
||||
- [x] 前端页面正常加载和显示
|
||||
- [x] 新建项目使用JSON结构保存
|
||||
- [x] 难度等级样式正确应用
|
||||
|
||||
---
|
||||
|
||||
**⚡ 现在就可以开始执行迁移了!所有准备工作已完成!**
|
||||
|
||||
**项目状态**: 🟢 Ready for Production
|
||||
**预计完成时间**: 30分钟
|
||||
**风险等级**: 🟢 低风险(有完整备份和回滚方案)
|
||||
Reference in New Issue
Block a user