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 b713320..52044c5 100644 --- a/client-api/src/main/java/org/jiayunet/controller/RecruitAnnouncementController.java +++ b/client-api/src/main/java/org/jiayunet/controller/RecruitAnnouncementController.java @@ -11,6 +11,7 @@ import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; import java.time.Instant; @@ -48,6 +49,24 @@ public class RecruitAnnouncementController { return recruitAnnouncementService.pageAnnouncement(param); } + /** 根据公告id查询公告地址 */ + @GetMapping("/announcementUrl") + public String getAnnouncementUrl(@RequestParam Long id) { + return recruitAnnouncementService.getAnnouncementUrl(id); + } + + /** 根据公告id查询岗位投递地址 */ + @GetMapping("/applyUrl") + public String getApplyUrl(@RequestParam Long id) { + return recruitAnnouncementService.getApplyUrl(id); + } + + /** 根据公告id查询投递邮箱 */ + @GetMapping("/applyEmail") + public String getApplyEmail(@RequestParam Long id) { + return recruitAnnouncementService.getApplyEmail(id); + } + /** 查询公告批次列表(去重) */ @GetMapping("/batch") public List listBatchName() { diff --git a/client-api/src/main/java/org/jiayunet/service/RecruitAnnouncementService.java b/client-api/src/main/java/org/jiayunet/service/RecruitAnnouncementService.java index aa68b01..894f841 100644 --- a/client-api/src/main/java/org/jiayunet/service/RecruitAnnouncementService.java +++ b/client-api/src/main/java/org/jiayunet/service/RecruitAnnouncementService.java @@ -15,6 +15,7 @@ import org.jiayunet.pojo.PageResult; import org.jiayunet.pojo.dto.recruitAnnouncement.RecruitAnnouncementDto; import org.jiayunet.pojo.dto.recruitAnnouncement.RecruitAnnouncementStatisticsDto; import org.jiayunet.pojo.param.recruitAnnouncement.RecruitAnnouncementQueryParam; +import org.jiayunet.pojo.po.RecruitAnnouncement; import org.jiayunet.pojo.po.RecruitAnnouncementBatch; import org.jiayunet.pojo.po.RecruitAnnouncementCategory; import org.jiayunet.pojo.po.RecruitAnnouncementCity; @@ -123,6 +124,33 @@ public class RecruitAnnouncementService { return new PageResult<>(page.getCurrent(), page.getSize(), page.getTotal(), dtoList); } + /** + * 根据公告id查询公告地址 + *

只查单列,公告不存在时返回null

+ */ + public String getAnnouncementUrl(Long id) { + RecruitAnnouncement po = recruitAnnouncementMapper.selectOne(new LambdaQueryWrapper().select(RecruitAnnouncement::getAnnouncementUrl).eq(RecruitAnnouncement::getId, id)); + return po == null ? null : po.getAnnouncementUrl(); + } + + /** + * 根据公告id查询岗位投递地址 + *

只查单列,公告不存在时返回null

+ */ + public String getApplyUrl(Long id) { + RecruitAnnouncement po = recruitAnnouncementMapper.selectOne(new LambdaQueryWrapper().select(RecruitAnnouncement::getApplyUrl).eq(RecruitAnnouncement::getId, id)); + return po == null ? null : po.getApplyUrl(); + } + + /** + * 根据公告id查询投递邮箱 + *

只查单列,公告不存在时返回null

+ */ + public String getApplyEmail(Long id) { + RecruitAnnouncement po = recruitAnnouncementMapper.selectOne(new LambdaQueryWrapper().select(RecruitAnnouncement::getApplyEmail).eq(RecruitAnnouncement::getId, id)); + return po == null ? null : po.getApplyEmail(); + } + /** * 统计公告数量(今日新增/本月新增/累计) *

1. 按东八区算出今日零点、本月1号零点 2. 一次SQL条件聚合出三个计数 3. 转DTO返回