fix(aihr): preserve tenant context for model calls

This commit is contained in:
2026-07-14 11:56:21 +08:00
parent e655eec8bb
commit 6e7a0938ab
3 changed files with 30 additions and 2 deletions
@@ -15,7 +15,7 @@ import org.dromara.aihr.domain.AihrModelDto.ProviderRequest;
import org.dromara.aihr.domain.AihrModelDto.ProviderResponse;
import org.dromara.aihr.domain.AihrModelDto.ProviderStatusRequest;
import org.dromara.aihr.domain.AihrModelDto.ModelUsage;
import org.dromara.common.satoken.utils.LoginHelper;
import org.dromara.common.tenant.helper.TenantHelper;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.dao.DataAccessException;
import org.springframework.jdbc.core.JdbcTemplate;
@@ -478,7 +478,7 @@ public class AihrModelSeedService {
}
private String tenantId() {
return fallback(LoginHelper.getTenantId(), TENANT_ID);
return fallback(TenantHelper.getTenantId(), TENANT_ID);
}
private static String normalizeBaseUrl(String baseUrl) {
@@ -0,0 +1,27 @@
package org.dromara.aihr.service;
import org.junit.jupiter.api.Tag;
import org.junit.jupiter.api.Test;
import java.nio.file.Files;
import java.nio.file.Path;
import static org.junit.jupiter.api.Assertions.assertFalse;
import static org.junit.jupiter.api.Assertions.assertTrue;
@Tag("dev")
class AihrModelSeedServiceTest {
@Test
void modelRuntimeUsesDynamicTenantContext() throws Exception {
Path source = Path.of("src/main/java/org/dromara/aihr/service/AihrModelSeedService.java");
if (!Files.exists(source)) {
source = Path.of("ruoyi-modules/ruoyi-aihr/src/main/java/org/dromara/aihr/service/AihrModelSeedService.java");
}
String code = Files.readString(source);
assertTrue(code.contains("import org.dromara.common.tenant.helper.TenantHelper;"));
assertTrue(code.contains("fallback(TenantHelper.getTenantId(), TENANT_ID)"));
assertFalse(code.contains("fallback(LoginHelper.getTenantId(), TENANT_ID)"));
}
}