.
This commit is contained in:
@@ -122,8 +122,33 @@ public class ReportController {
|
||||
.map(tuple -> {
|
||||
DeepResearchResponse researchResponse = (DeepResearchResponse) tuple[0];
|
||||
FinalReportPayload payload = (FinalReportPayload) tuple[1];
|
||||
// --- НОВАЯ ЛОГИКА ЗДЕСЬ ---
|
||||
StringBuilder finalMarkdown = new StringBuilder();
|
||||
|
||||
// 1. Добавляем основной синтезированный отчёт от AI
|
||||
if (payload.getMarkdownContent() != null) {
|
||||
finalMarkdown.append(payload.getMarkdownContent());
|
||||
}
|
||||
|
||||
// 2. Добавляем разделитель и новый раздел для "сырых" данных
|
||||
finalMarkdown.append("\n\n---\n\n");
|
||||
finalMarkdown.append("## Приложение: Исходные тезисы (Learnings)\n\n");
|
||||
|
||||
// 3. Добавляем сами learnings в виде списка
|
||||
if (researchResponse.getLearnings() != null
|
||||
&& !researchResponse.getLearnings().isEmpty()) {
|
||||
for (String learning : researchResponse.getLearnings()) {
|
||||
finalMarkdown.append("- ").append(learning).append("\n");
|
||||
}
|
||||
} else {
|
||||
finalMarkdown.append("Исходные тезисы не были найдены.\n");
|
||||
}
|
||||
// --- КОНЕЦ НОВОЙ ЛОГИКИ ---
|
||||
|
||||
// Теперь в PDF передаётся ОБЪЕДИНЕННЫЙ текст
|
||||
byte[] pdfBytes = researchPdfService.generatePdfReport(request.getQuery(),
|
||||
payload.getMarkdownContent(), researchResponse.getVisitedUrls(),
|
||||
finalMarkdown.toString(),
|
||||
researchResponse.getVisitedUrls(),
|
||||
payload.getChartImages());
|
||||
String filename = "research_report_" + System.currentTimeMillis() + ".pdf";
|
||||
saveResearchReportToHistory(request, filename, pdfBytes, researchResponse);
|
||||
|
||||
Reference in New Issue
Block a user