49 lines
2.1 KiB
JavaScript
49 lines
2.1 KiB
JavaScript
/**
|
|
* 測試修復 undefined 參數錯誤
|
|
*/
|
|
|
|
console.log('🔧 測試修復 undefined 參數錯誤...\n');
|
|
|
|
console.log('✅ 修復內容:');
|
|
console.log('1. 修復 EvaluationScoreService.create 方法:');
|
|
console.log(' - 使用 ?? 運算符將所有 undefined 值轉換為 null');
|
|
console.log(' - 確保所有參數都符合 MySQL2 的要求\n');
|
|
|
|
console.log('2. 添加調試日誌和驗證:');
|
|
console.log(' - 在創建評分記錄前檢查所有值');
|
|
console.log(' - 如果發現 undefined 值,拋出明確的錯誤訊息');
|
|
console.log(' - 記錄詳細的評分數據以便調試\n');
|
|
|
|
console.log('🔍 修復的具體問題:');
|
|
console.log('- evaluation_id: 確保不是 undefined');
|
|
console.log('- criteria_item_id: 確保不是 undefined');
|
|
console.log('- score: 確保不是 undefined');
|
|
console.log('- max_score: 確保不是 undefined');
|
|
console.log('- weight: 確保不是 undefined');
|
|
console.log('- weighted_score: 計算結果確保不是 undefined');
|
|
console.log('- percentage: 計算結果確保不是 undefined\n');
|
|
|
|
console.log('📊 預期的調試輸出:');
|
|
console.log('🔍 檢查評分數據: 應用實務性 {');
|
|
console.log(' evaluation_id: 123,');
|
|
console.log(' criteria_item_id: 52,');
|
|
console.log(' score: 8,');
|
|
console.log(' max_score: 10,');
|
|
console.log(' weight: 30,');
|
|
console.log(' weighted_score: 24,');
|
|
console.log(' percentage: 80');
|
|
console.log('}');
|
|
console.log('✅ 創建評分記錄: 應用實務性 (ID: 52) - 8/10\n');
|
|
|
|
console.log('🚀 執行步驟:');
|
|
console.log('1. 啟動應用程式: npm run dev');
|
|
console.log('2. 訪問上傳頁面: http://localhost:3000/upload');
|
|
console.log('3. 上傳 PPT 文件並填寫專案資訊');
|
|
console.log('4. 點擊「開始 AI 評審」按鈕');
|
|
console.log('5. 檢查控制台日誌:');
|
|
console.log(' - 應該看到每個評分標準的詳細檢查日誌');
|
|
console.log(' - 不應該再出現 "Bind parameters must not contain undefined" 錯誤');
|
|
console.log(' - 應該看到所有 5 個評分標準的創建記錄\n');
|
|
|
|
console.log('✅ 修復完成!現在應該不會再出現 undefined 參數錯誤了。');
|