From 5556690788f74e60811ca186de5b7975335c99f3 Mon Sep 17 00:00:00 2001 From: zk Date: Tue, 4 Aug 2026 15:47:22 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=9D=83=E9=99=90=E6=8E=A7?= =?UTF-8?q?=E5=88=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/org/jiayunet/aop/FuncPermissionAspect.java | 8 +++++++- .../main/java/org/jiayunet/controller/JobController.java | 3 +++ .../controller/RecruitAnnouncementController.java | 6 ++++++ 3 files changed, 16 insertions(+), 1 deletion(-) diff --git a/client-api/src/main/java/org/jiayunet/aop/FuncPermissionAspect.java b/client-api/src/main/java/org/jiayunet/aop/FuncPermissionAspect.java index 2ea751f..67e046c 100644 --- a/client-api/src/main/java/org/jiayunet/aop/FuncPermissionAspect.java +++ b/client-api/src/main/java/org/jiayunet/aop/FuncPermissionAspect.java @@ -41,7 +41,13 @@ public class FuncPermissionAspect { @Around("@annotation(funcPermission)") public Object check(ProceedingJoinPoint joinPoint, FuncPermission funcPermission) throws Throwable { - Long userId = UserSecurityTool.getUserId(); + Long userId = 0L; + try { + userId = UserSecurityTool.getUserId(); + } catch (Exception e) { + // 接口允许不登录,未登录用户ID为0 + } + String funcCode = funcPermission.value(); String bizKey = resolveBizKey(joinPoint, funcPermission.key()); diff --git a/client-api/src/main/java/org/jiayunet/controller/JobController.java b/client-api/src/main/java/org/jiayunet/controller/JobController.java index 0bc5159..2f7d4e0 100644 --- a/client-api/src/main/java/org/jiayunet/controller/JobController.java +++ b/client-api/src/main/java/org/jiayunet/controller/JobController.java @@ -1,6 +1,7 @@ package org.jiayunet.controller; import lombok.AllArgsConstructor; +import org.jiayunet.annotation.FuncPermission; import org.jiayunet.pojo.PageResult; import org.jiayunet.pojo.dto.job.JobApplicationDto; import org.jiayunet.pojo.dto.job.JobDetailDto; @@ -32,6 +33,7 @@ public class JobController { *

支持按地区/岗位类型/行业/工作类型筛选,自动排除不感兴趣的岗位/公司/地区/行业,返回匹配度和收藏状态

*/ @PostMapping("/list") + @FuncPermission(value = "job_list", key = "#param.pageNum") public PageResult listJobs(@Validated @RequestBody JobQueryParam param) { Long userId = 0L; @@ -50,6 +52,7 @@ public class JobController { *

返回岗位完整信息、公司信息、匹配度、收藏状态

*/ @GetMapping("/detail") + @FuncPermission(value = "job_detail", key = "#jobId") public JobDetailDto getJobDetail(@RequestParam Long jobId) { Long userId = 0L; diff --git a/client-api/src/main/java/org/jiayunet/controller/RecruitAnnouncementController.java b/client-api/src/main/java/org/jiayunet/controller/RecruitAnnouncementController.java index 071afd6..718b627 100644 --- a/client-api/src/main/java/org/jiayunet/controller/RecruitAnnouncementController.java +++ b/client-api/src/main/java/org/jiayunet/controller/RecruitAnnouncementController.java @@ -1,6 +1,7 @@ package org.jiayunet.controller; import lombok.AllArgsConstructor; +import org.jiayunet.annotation.FuncPermission; import org.jiayunet.pojo.PageResult; import org.jiayunet.pojo.dto.recruitAnnouncement.RecruitAnnouncementDetailDto; import org.jiayunet.pojo.dto.recruitAnnouncement.RecruitAnnouncementDto; @@ -48,6 +49,7 @@ public class RecruitAnnouncementController { /** 分页查询公告列表 */ @PostMapping("/page") + @FuncPermission(value = "ann_list", key = "#param.pageNum") public PageResult pageAnnouncement(@Validated @RequestBody RecruitAnnouncementQueryParam param) { return recruitAnnouncementService.pageAnnouncement(param); } @@ -60,24 +62,28 @@ public class RecruitAnnouncementController { /** 查询公告详情 */ @GetMapping("/detail") + @FuncPermission(value = "ann_detail", key = "#id") public RecruitAnnouncementDetailDto getDetail(@RequestParam Long id) { return recruitAnnouncementService.getDetail(id); } /** 根据公告id查询公告地址 */ @GetMapping("/announcementUrl") + @FuncPermission(value = "ann_url", key = "#id") public String getAnnouncementUrl(@RequestParam Long id) { return recruitAnnouncementService.getAnnouncementUrl(id); } /** 根据公告id查询岗位投递地址 */ @GetMapping("/applyUrl") + @FuncPermission(value = "ann_url", key = "#id") public String getApplyUrl(@RequestParam Long id) { return recruitAnnouncementService.getApplyUrl(id); } /** 根据公告id查询投递邮箱 */ @GetMapping("/applyEmail") + @FuncPermission(value = "ann_url", key = "#id") public String getApplyEmail(@RequestParam Long id) { return recruitAnnouncementService.getApplyEmail(id); }