From 0bff6bbfa6629e5e298e5ad0f17abd05b3d2965a Mon Sep 17 00:00:00 2001 From: let5sne Date: Thu, 9 Jul 2026 13:08:54 +0800 Subject: [PATCH] fix(aihr): keep demo question verification read-only --- .../java/org/dromara/aihr/service/AihrSopSeedService.java | 6 +++++- .../org/dromara/aihr/service/AihrSopSeedServiceTest.java | 7 +++++++ scripts/verify-demo-questions.mjs | 3 ++- 3 files changed, 14 insertions(+), 2 deletions(-) diff --git a/backend/ruoyi-modules/ruoyi-aihr/src/main/java/org/dromara/aihr/service/AihrSopSeedService.java b/backend/ruoyi-modules/ruoyi-aihr/src/main/java/org/dromara/aihr/service/AihrSopSeedService.java index f0721f90..7075b03a 100644 --- a/backend/ruoyi-modules/ruoyi-aihr/src/main/java/org/dromara/aihr/service/AihrSopSeedService.java +++ b/backend/ruoyi-modules/ruoyi-aihr/src/main/java/org/dromara/aihr/service/AihrSopSeedService.java @@ -1788,7 +1788,7 @@ public class AihrSopSeedService { } private SearchResponse withReviewId(SearchResponse response, String source) { - Long reviewId = createSopReview(response, source); + Long reviewId = skipSopReview(source) ? null : createSopReview(response, source); return new SearchResponse( response.queryText(), response.category(), @@ -1804,6 +1804,10 @@ public class AihrSopSeedService { ); } + static boolean skipSopReview(String source) { + return "verify_demo_questions".equals(source); + } + private Long createSopReview(SearchResponse response, String source) { try { ensureSopReviewTable(); diff --git a/backend/ruoyi-modules/ruoyi-aihr/src/test/java/org/dromara/aihr/service/AihrSopSeedServiceTest.java b/backend/ruoyi-modules/ruoyi-aihr/src/test/java/org/dromara/aihr/service/AihrSopSeedServiceTest.java index f1738b04..3bad265a 100644 --- a/backend/ruoyi-modules/ruoyi-aihr/src/test/java/org/dromara/aihr/service/AihrSopSeedServiceTest.java +++ b/backend/ruoyi-modules/ruoyi-aihr/src/test/java/org/dromara/aihr/service/AihrSopSeedServiceTest.java @@ -26,4 +26,11 @@ public class AihrSopSeedServiceTest { assertTrue(response.reference().contains("1 份文档 / 1 个片段")); assertTrue(response.cautions().contains("未生成结构化概要,已返回命中原文片段。")); } + + @Test + @Tag("dev") + public void verifyDemoQuestionsSourceSkipsSopReviewSample() { + assertTrue(AihrSopSeedService.skipSopReview("verify_demo_questions")); + assertFalse(AihrSopSeedService.skipSopReview("knowledge_search")); + } } diff --git a/scripts/verify-demo-questions.mjs b/scripts/verify-demo-questions.mjs index 6481d972..9b689ebd 100755 --- a/scripts/verify-demo-questions.mjs +++ b/scripts/verify-demo-questions.mjs @@ -171,7 +171,8 @@ for (const item of questions) { const response = await request('POST', '/api/knowledge/search', { queryText: item.question, category: 'sop', - position: '生活顾问' + position: '生活顾问', + source: 'verify_demo_questions' }, token); const data = response.data?.data || {}; const docs = data.docs || [];