修正評分詳細沒有上傳問題
This commit is contained in:
@@ -260,9 +260,15 @@ export async function POST(request: NextRequest) {
|
||||
}
|
||||
|
||||
// 驗證評分格式(基於實際的競賽規則)
|
||||
console.log('🔍 競賽規則:', rules);
|
||||
console.log('🔍 提交的評分:', scores);
|
||||
|
||||
const providedScores = Object.keys(scores).filter(key => scores[key] > 0);
|
||||
const invalidScores = providedScores.filter(score => scores[score] < 1 || scores[score] > 10);
|
||||
|
||||
console.log('🔍 提供的評分項目:', providedScores);
|
||||
console.log('🔍 無效的評分項目:', invalidScores);
|
||||
|
||||
if (invalidScores.length > 0) {
|
||||
return NextResponse.json({
|
||||
success: false,
|
||||
@@ -278,6 +284,16 @@ export async function POST(request: NextRequest) {
|
||||
error: '至少需要提供一個評分項目'
|
||||
}, { status: 400 });
|
||||
}
|
||||
|
||||
// 驗證所有競賽規則都有對應的評分
|
||||
const ruleNames = rules.map((rule: any) => rule.name);
|
||||
const missingRules = ruleNames.filter(ruleName => !(ruleName in scores) || scores[ruleName] <= 0);
|
||||
|
||||
if (missingRules.length > 0) {
|
||||
console.log('⚠️ 缺少評分的規則:', missingRules);
|
||||
console.log('可用規則:', ruleNames);
|
||||
console.log('提供的評分:', Object.keys(scores));
|
||||
}
|
||||
|
||||
// 計算總分(基於權重,轉換為100分制)
|
||||
let totalScore = 0;
|
||||
|
Reference in New Issue
Block a user