将量表导出功能修复
This commit is contained in:
parent
b549cacc04
commit
9de6cb41f7
|
|
@ -1036,8 +1036,11 @@ export default {
|
||||||
reportId: row.reportId,
|
reportId: row.reportId,
|
||||||
sourceType: row.sourceType,
|
sourceType: row.sourceType,
|
||||||
sourceId: row.sourceId,
|
sourceId: row.sourceId,
|
||||||
reportTitle: row.reportTitle || report.reportTitle || '未命名报告',
|
infoNumber: row.infoNumber || report.infoNumber,
|
||||||
reportContent: report.reportContent || '',
|
reportTitle: report.reportTitle,
|
||||||
|
reportType: report.reportType,
|
||||||
|
summary: report.summary,
|
||||||
|
reportContent: report.reportContent,
|
||||||
aiAnalysis: report.aiAnalysis || null,
|
aiAnalysis: report.aiAnalysis || null,
|
||||||
aiAnalysisTime: report.aiAnalysisTime || null,
|
aiAnalysisTime: report.aiAnalysisTime || null,
|
||||||
generating: false
|
generating: false
|
||||||
|
|
@ -1201,8 +1204,9 @@ export default {
|
||||||
</html>
|
</html>
|
||||||
`;
|
`;
|
||||||
|
|
||||||
// 清理文件名中的非法字符
|
const scaleName = this.extractScaleName(report.reportTitle || '报告');
|
||||||
const safeFileName = `${report.reportTitle || '报告'}_${report.reportId}`
|
const infoNumber = this.sanitizeFilenamePart(report.infoNumber || '-');
|
||||||
|
const safeFileName = `${scaleName}_${infoNumber}_${report.reportId}`
|
||||||
.replace(/[\\/:*?"<>|]/g, '_')
|
.replace(/[\\/:*?"<>|]/g, '_')
|
||||||
.substring(0, 80);
|
.substring(0, 80);
|
||||||
|
|
||||||
|
|
@ -1329,6 +1333,22 @@ export default {
|
||||||
this.batchExportLoading = false;
|
this.batchExportLoading = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
,
|
||||||
|
extractScaleName(title) {
|
||||||
|
const raw = (title || '').toString();
|
||||||
|
let t = raw.replace(/\(次数\d+\)/g, '').trim();
|
||||||
|
t = t.replace(/(测评报告|答题报告|报告)$/g, '').trim();
|
||||||
|
t = t.replace(/[\s\-–—_]+$/g, '').trim();
|
||||||
|
return this.sanitizeFilenamePart(t || raw || '报告');
|
||||||
|
}
|
||||||
|
,
|
||||||
|
sanitizeFilenamePart(value) {
|
||||||
|
const v = (value == null ? '' : String(value)).trim();
|
||||||
|
if (!v) {
|
||||||
|
return '-';
|
||||||
|
}
|
||||||
|
return v.replace(/[\\/:*?"<>|]/g, '_');
|
||||||
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user