fix(aihr): align app case permissions with brd

This commit is contained in:
2026-07-14 11:15:07 +08:00
parent 7c3d367421
commit b8be1bb6e4
9 changed files with 51 additions and 3 deletions
@@ -9,6 +9,7 @@ import org.dromara.common.core.enums.UserType;
import org.dromara.common.satoken.utils.LoginHelper;
import org.dromara.aihr.domain.AihrCaseDto.CurateRequest;
import org.dromara.aihr.domain.AihrCaseDto.CurateResponse;
import org.dromara.aihr.domain.AihrCaseDto.CapabilitiesResponse;
import org.dromara.aihr.domain.AihrCaseDto.DetailResponse;
import org.dromara.aihr.domain.AihrCaseDto.OrganizeRequest;
import org.dromara.aihr.domain.AihrCaseDto.OrganizeResponse;
@@ -83,6 +84,11 @@ public class AihrCaseController {
return detail == null ? R.fail("案例不存在或无权访问") : R.ok(detail);
}
@GetMapping("/capabilities")
public R<CapabilitiesResponse> capabilities() {
return R.ok(new CapabilitiesResponse(canManageCases(), canViewCases()));
}
private List<String> currentProjectScopes() {
LoginUser loginUser = LoginHelper.getLoginUser();
if (loginUser != null && UserType.SYS_USER.getUserType().equals(loginUser.getUserType())) {
@@ -26,6 +26,9 @@ public final class AihrCaseDto {
public record CurateResponse(List<String> selectedCaseIds, List<RecordResponse> records, String sampleHint) {
}
public record CapabilitiesResponse(boolean canSubmit, boolean canView) {
}
public record SummaryResponse(String label, String text) {
}
@@ -163,6 +163,7 @@ class AihrCaseServiceTest {
assertTrue(controllerSource.contains("StpUtil.hasRoleOr"));
assertTrue(controllerSource.contains("HR_OPERATOR_ROLE = \"hr_operator\""));
assertTrue(controllerSource.contains("private boolean canViewCases()"));
assertTrue(controllerSource.contains("@GetMapping(\"/capabilities\")"));
}
@Test