修正資料上傳有誤的問題
This commit is contained in:
@@ -303,26 +303,33 @@ export async function POST(request: NextRequest) {
|
||||
|
||||
// 各項標準的反饋
|
||||
for (const result of evaluation.results) {
|
||||
const criteriaItem = criteria.find(c => c.name === result.criteriaName);
|
||||
if (!criteriaItem) continue;
|
||||
// 使用更寬鬆的匹配方式,去除前後空格和不可見字符
|
||||
const cleanResultName = result.criteriaName.trim().replace(/[\u200B-\u200D\uFEFF]/g, '');
|
||||
const criteriaItem = criteria.find(c => {
|
||||
const cleanCriteriaName = c.name.trim().replace(/[\u200B-\u200D\uFEFF]/g, '');
|
||||
return cleanCriteriaName === cleanResultName;
|
||||
});
|
||||
|
||||
if (!criteriaItem) {
|
||||
console.warn(`⚠️ 找不到對應的評分標準: "${result.criteriaName}"`);
|
||||
continue;
|
||||
}
|
||||
|
||||
// 合併 feedback 和 details 為一條記錄
|
||||
let combinedContent = result.feedback;
|
||||
if (result.details && result.details.trim()) {
|
||||
combinedContent += `\n\n詳細說明:${result.details}`;
|
||||
}
|
||||
|
||||
// 標準反饋
|
||||
await EvaluationFeedbackService.create({
|
||||
evaluation_id: evaluationId,
|
||||
criteria_item_id: criteriaItem.id,
|
||||
feedback_type: 'criteria',
|
||||
content: result.feedback,
|
||||
sort_order: sortOrder++
|
||||
});
|
||||
|
||||
// 詳細反饋
|
||||
await EvaluationFeedbackService.create({
|
||||
evaluation_id: evaluationId,
|
||||
criteria_item_id: criteriaItem.id,
|
||||
feedback_type: 'criteria',
|
||||
content: result.details,
|
||||
content: combinedContent,
|
||||
sort_order: sortOrder++
|
||||
});
|
||||
|
||||
console.log(`✅ 創建 criteria feedback: ${criteriaItem.name} (ID: ${criteriaItem.id})`);
|
||||
}
|
||||
|
||||
// 如果有 fullData,添加 strengths 和 improvements 反饋
|
||||
|
Reference in New Issue
Block a user