浏览代码

1、增加刷新职位统计

rayson 5 月之前
父节点
当前提交
a1d88163c0

+ 8 - 0
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/admin/analysis/AnalysisController.java

@@ -152,6 +152,14 @@ public class AnalysisController {
         return success(jobAdvertisedService.getJobNum(reqVO));
     }
 
+    @GetMapping("/get/job/refresh/page")
+    @Operation(summary = "获取刷新职位统计分析明细")
+    @PreAuthenticated
+    public CommonResult<PageResult<RecruitJobAnalysisRespVO>> getRefreshJobNum(
+            @Valid RecruitAnalysisPageReqVO reqVO) {
+        return success(jobAdvertisedService.getRefreshJobNum(reqVO));
+    }
+
     @GetMapping("/get/job/count")
     @Operation(summary = "统计发布职位数量")
     @PreAuthenticated

+ 3 - 0
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/base/job/JobAdvertisedSimpleRespVO.java

@@ -63,6 +63,9 @@ public class JobAdvertisedSimpleRespVO {
     @Schema(description = "更新时间")
     private LocalDateTime updateTime;
 
+    @Schema(description = "刷新时间")
+    private LocalDateTime refreshTime;
+
     @Schema(description = "区域")
     private AreaWebRespVO area;
 

+ 29 - 0
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/dal/mysql/job/JobAdvertisedMapper.java

@@ -417,6 +417,35 @@ public interface JobAdvertisedMapper extends BaseMapperX<JobAdvertisedDO> {
 
     }
 
+    /**
+     * 招聘端 - 查询刷新职位数量明细
+     *
+     * @param reqVO     公共条件
+     * @param startTime 开始时间
+     * @param endTime   结束时间
+     **/
+    default PageResult<RecruitJobAnalysisRespVO> getRefreshJobNum(
+            RecruitAnalysisPageReqVO reqVO, LocalDateTime startTime, LocalDateTime endTime) {
+        MPJLambdaWrapperX<JobAdvertisedDO> query = new MPJLambdaWrapperX<>();
+        query.selectAll(JobAdvertisedDO.class);
+        query.selectAs(EnterpriseDO::getName, RecruitJobAnalysisRespVO::getEnterpriseName);
+        query.selectAs(EnterpriseDO::getAnotherName, RecruitJobAnalysisRespVO::getEnterpriseAnotherName);
+
+        query.innerJoin(EnterpriseDO.class, on -> on.eq(EnterpriseDO::getId, JobAdvertisedDO::getEnterpriseId));
+
+        query.eqIfPresent(JobAdvertisedDO::getEnterpriseId, reqVO.getEnterpriseId());
+        query.inIfPresent(JobAdvertisedDO::getUserId, reqVO.getUserId());
+        query.eqIfPresent(JobAdvertisedDO::getId, reqVO.getJobId());
+        query.eqIfPresent(JobAdvertisedDO::getStatus, reqVO.getJobStatus());
+
+        query.betweenIfPresent(JobAdvertisedDO::getRefreshTime, startTime, endTime);
+
+        query.orderByDesc(JobAdvertisedDO::getRefreshTime);
+
+        return selectJoinPage(reqVO, RecruitJobAnalysisRespVO.class, query);
+
+    }
+
 
     /**
      * 根据查询条件、企业id、用户id 查询excel导出的数据结果

+ 5 - 0
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/service/job/JobAdvertisedService.java

@@ -237,6 +237,11 @@ public interface JobAdvertisedService {
      */
     PageResult<RecruitJobAnalysisRespVO> getJobNum(RecruitAnalysisPageReqVO reqVO);
 
+    /**
+     * 获取刷新的职位明细
+     */
+    PageResult<RecruitJobAnalysisRespVO> getRefreshJobNum(RecruitAnalysisPageReqVO reqVO);
+
     /**
      * 前N最多人发布的职位类型
      */

+ 6 - 0
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/service/job/JobAdvertisedServiceImpl.java

@@ -774,6 +774,12 @@ public class JobAdvertisedServiceImpl implements JobAdvertisedService {
         return mapper.getJobNum(reqVO, timeRange[0], timeRange[1]);
     }
 
+    @Override
+    public PageResult<RecruitJobAnalysisRespVO> getRefreshJobNum(RecruitAnalysisPageReqVO reqVO) {
+        LocalDateTime[] timeRange = generateDateTimeRange(reqVO);
+        return mapper.getRefreshJobNum(reqVO, timeRange[0], timeRange[1]);
+    }
+
     @Override
     public Map<String, Object[]> getPositionTypeNumTop(RecruitAnalysisPageReqVO reqVO, Integer topNum) {
         LocalDateTime[] timeRange = generateDateTimeRange(reqVO);