fix(aihr): hide knowledge processing errors

This commit is contained in:
2026-07-14 08:40:22 +08:00
parent de4ab805c4
commit e311a18414
5 changed files with 8 additions and 5 deletions
@@ -2993,7 +2993,7 @@ public class AihrSopSeedService {
String text = callVisionOcr(runtime.get(), bytes, guessMimeType(fileName));
return normalizeExtractedText(text);
} catch (Exception e) {
log.warn("image ocr failed for {} via {}: {}", fileName, runtime.get().modelName(), e.getMessage());
log.warn("image ocr failed for {} via {}(处理错误已隐藏)", AihrSensitiveText.forModel(fileName), runtime.get().modelName());
return "";
}
}
@@ -3020,7 +3020,7 @@ public class AihrSopSeedService {
try {
return Optional.of(normalizeExtractedText(callVisionOcr(runtime.get(), bytes, mimeType, FRAME_PROMPT)));
} catch (Exception e) {
log.warn("video frame ocr failed for {}: {}", fileName, e.getMessage());
log.warn("video frame ocr failed for {}(处理错误已隐藏)", AihrSensitiveText.forModel(fileName));
return Optional.empty();
}
});
@@ -3036,7 +3036,7 @@ public class AihrSopSeedService {
String text = callVisionOcr(runtime.get(), bytes, guessMimeType(fileName));
return normalizeExtractedText(text);
} catch (Exception e) {
log.warn("image ocr failed for {} via {}: {}", fileName, runtime.get().modelName(), e.getMessage());
log.warn("image ocr failed for {} via {}(处理错误已隐藏)", AihrSensitiveText.forModel(fileName), runtime.get().modelName());
return "";
}
}
@@ -285,8 +285,8 @@ public class AihrUploadQueueService {
log.info("upload item {} finished but row was re-claimed, skip status write", id);
}
} catch (Exception e) {
log.warn("upload item {} process failed: {}", id, e.getMessage());
markFailed(tenantId, id, e.getMessage());
log.warn("upload item {} process failed(处理错误已隐藏)", id);
markFailed(tenantId, id, "资料加工失败,请重试或联系管理员");
}
}
@@ -49,6 +49,7 @@ class AihrSensitiveTextTest {
assertTrue(modelSource.contains("模型调用失败,已回退内置兜底;请检查模型供应商配置。"));
assertTrue(sopSource.contains("AihrSensitiveText.forModel(renderPrompt(prompt.template(), queryText, context))"));
assertTrue(sopSource.contains("AihrSensitiveText.forModel(\"\"\""));
assertTrue(sopSource.contains("处理错误已隐藏"));
assertTrue(interviewSource.contains("AihrSensitiveText.personName(candidate.name(), \"候选人\")"));
assertTrue(speechSource.contains("AihrSensitiveText.forModel(text.trim())"));
assertTrue(speechSource.contains("asr http {}(外部响应体已隐藏)"));
@@ -26,6 +26,7 @@ class AihrUploadQueueServiceTest {
assertTrue(code.contains("TenantHelper.dynamic(tenantId"));
assertTrue(code.contains("new ItemRow(rs.getString(\"tenant_id\")"));
assertTrue(code.contains("where status = 1\n and ("));
assertTrue(code.contains("资料加工失败,请重试或联系管理员"));
assertFalse(code.contains("where tenant_id = ? and status = 1\n and ("));
}
}
+1
View File
@@ -461,6 +461,7 @@ contains backend/ruoyi-modules/ruoyi-aihr/src/main/java/org/dromara/aihr/service
contains backend/ruoyi-modules/ruoyi-aihr/src/main/java/org/dromara/aihr/service/AihrSopSeedService.java "/embeddings"
contains backend/ruoyi-modules/ruoyi-aihr/src/main/java/org/dromara/aihr/service/AihrSopSeedService.java "aihr_knowledge_gap"
contains backend/ruoyi-modules/ruoyi-aihr/src/main/java/org/dromara/aihr/service/AihrVideoService.java "处理输出已隐藏"
contains backend/ruoyi-modules/ruoyi-aihr/src/main/java/org/dromara/aihr/service/AihrUploadQueueService.java "资料加工失败,请重试或联系管理员"
contains backend/ruoyi-modules/ruoyi-aihr/src/main/java/org/dromara/aihr/service/AihrSensitiveText.java "外部 AI 模型前"
contains backend/ruoyi-modules/ruoyi-aihr/src/main/java/org/dromara/aihr/service/AihrModelSeedService.java "AihrSensitiveText.forModel(prompt)"
contains backend/ruoyi-modules/ruoyi-aihr/src/main/java/org/dromara/aihr/service/AihrModelSeedService.java "外部响应体已隐藏"