|
@@ -2421,37 +2421,6 @@ class ExamPdfExportService
|
|
|
])->render();
|
|
])->render();
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- /**
|
|
|
|
|
- * 获取知识点的讲解内容
|
|
|
|
|
- *
|
|
|
|
|
- * @param string $kpCode 知识点代码
|
|
|
|
|
- * @param string $kpName 知识点名称
|
|
|
|
|
- * @return string Markdown 格式的讲解内容
|
|
|
|
|
- */
|
|
|
|
|
- public function buildExplanation(string $kpCode, string $kpName): string
|
|
|
|
|
- {
|
|
|
|
|
- if ($this->shouldUseDefaultExplanations()) {
|
|
|
|
|
- return $this->getDefaultExplanation($kpCode, $kpName);
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- try {
|
|
|
|
|
- // 从数据库获取知识点讲解
|
|
|
|
|
- $kp = \App\Models\KnowledgePoint::where('kp_code', $kpCode)->first();
|
|
|
|
|
-
|
|
|
|
|
- if ($kp && ! empty($kp->explanation)) {
|
|
|
|
|
- return $kp->explanation;
|
|
|
|
|
- }
|
|
|
|
|
- } catch (\Throwable $e) {
|
|
|
|
|
- Log::warning('获取知识点讲解失败', [
|
|
|
|
|
- 'kp_code' => $kpCode,
|
|
|
|
|
- 'error' => $e->getMessage(),
|
|
|
|
|
- ]);
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- // 如果数据库没有,返回默认讲解内容
|
|
|
|
|
- return $this->getDefaultExplanation($kpCode, $kpName);
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
/**
|
|
/**
|
|
|
* 批量获取知识点的讲解内容
|
|
* 批量获取知识点的讲解内容
|
|
|
*
|
|
*
|
|
@@ -2466,23 +2435,22 @@ class ExamPdfExportService
|
|
|
return $result;
|
|
return $result;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- if ($this->shouldUseDefaultExplanations()) {
|
|
|
|
|
- foreach ($kpCodes as $kpCode) {
|
|
|
|
|
- $result[$kpCode] = $this->getDefaultExplanation($kpCode, $kpCode);
|
|
|
|
|
- }
|
|
|
|
|
- return $result;
|
|
|
|
|
- }
|
|
|
|
|
|
|
+// if ($this->shouldUseDefaultExplanations()) {
|
|
|
|
|
+// foreach ($kpCodes as $kpCode) {
|
|
|
|
|
+// $result[$kpCode] = $this->getDefaultExplanation($kpCode, $kpCode);
|
|
|
|
|
+// }
|
|
|
|
|
+// return $result;
|
|
|
|
|
+// }
|
|
|
|
|
|
|
|
try {
|
|
try {
|
|
|
// 批量获取知识点讲解
|
|
// 批量获取知识点讲解
|
|
|
$kps = \App\Models\KnowledgePoint::whereIn('kp_code', $kpCodes)->get()->keyBy('kp_code');
|
|
$kps = \App\Models\KnowledgePoint::whereIn('kp_code', $kpCodes)->get()->keyBy('kp_code');
|
|
|
|
|
|
|
|
|
|
+ // 有多少算多少
|
|
|
foreach ($kpCodes as $kpCode) {
|
|
foreach ($kpCodes as $kpCode) {
|
|
|
$kp = $kps->get($kpCode);
|
|
$kp = $kps->get($kpCode);
|
|
|
if ($kp && ! empty($kp->explanation)) {
|
|
if ($kp && ! empty($kp->explanation)) {
|
|
|
$result[$kpCode] = $kp->explanation;
|
|
$result[$kpCode] = $kp->explanation;
|
|
|
- } else {
|
|
|
|
|
- $result[$kpCode] = $this->getDefaultExplanation($kpCode, $kpCode);
|
|
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
} catch (\Throwable $e) {
|
|
} catch (\Throwable $e) {
|