fix: 评分标准直读 DB,移除缓存层
This commit is contained in:
+11
-22
@@ -262,31 +262,21 @@ export function setupIpc(win: BrowserWindow): void {
|
|||||||
const q = questions[i]
|
const q = questions[i]
|
||||||
insert.run(q.questionTitle || '', q.maxScore ?? 100, q.referenceAnswer || '', q.rubric || '', i)
|
insert.run(q.questionTitle || '', q.maxScore ?? 100, q.referenceAnswer || '', q.rubric || '', i)
|
||||||
}
|
}
|
||||||
rubricPayload = data
|
|
||||||
})
|
})
|
||||||
|
|
||||||
ipcMain.handle('rubric:getData', () => {
|
ipcMain.handle('rubric:getData', () => {
|
||||||
function fromDb() {
|
const d = getDb()
|
||||||
const d = getDb()
|
const rows: any[] = d.prepare('SELECT * FROM rubric ORDER BY sort_order').all()
|
||||||
const rows: any[] = d.prepare('SELECT * FROM rubric ORDER BY sort_order').all()
|
if (rows.length) {
|
||||||
if (rows.length) {
|
return {
|
||||||
return {
|
questions: rows.map(r => ({
|
||||||
questions: rows.map(r => ({
|
questionTitle: r.question_title,
|
||||||
questionTitle: r.question_title,
|
maxScore: r.max_score,
|
||||||
maxScore: r.max_score,
|
referenceAnswer: r.reference_answer,
|
||||||
referenceAnswer: r.reference_answer,
|
rubric: r.rubric
|
||||||
rubric: r.rubric
|
})),
|
||||||
})),
|
currentIndex: 0
|
||||||
currentIndex: 0
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
return null
|
|
||||||
}
|
|
||||||
if (rubricPayload && rubricPayload.questions?.length) return rubricPayload
|
|
||||||
const dbResult = fromDb()
|
|
||||||
if (dbResult) {
|
|
||||||
rubricPayload = dbResult
|
|
||||||
return dbResult
|
|
||||||
}
|
}
|
||||||
return null
|
return null
|
||||||
})
|
})
|
||||||
@@ -300,7 +290,6 @@ export function setupIpc(win: BrowserWindow): void {
|
|||||||
}
|
}
|
||||||
|
|
||||||
const dialogPayloads: Record<string, any> = {}
|
const dialogPayloads: Record<string, any> = {}
|
||||||
let rubricPayload: any = null
|
|
||||||
let gradingPayload: any = null
|
let gradingPayload: any = null
|
||||||
|
|
||||||
async function callAiApi(imageBase64: string, rubric: string, config: { apiKey: string; baseUrl: string; model: string }, extras?: { maxScore?: number; referenceAnswer?: string; questionTitle?: string }): Promise<{
|
async function callAiApi(imageBase64: string, rubric: string, config: { apiKey: string; baseUrl: string; model: string }, extras?: { maxScore?: number; referenceAnswer?: string; questionTitle?: string }): Promise<{
|
||||||
|
|||||||
Reference in New Issue
Block a user