Explorar o código

1、优化推荐人才接口

rayson hai 9 meses
pai
achega
2928b14216

+ 5 - 4
menduner/menduner-system-api/src/main/java/com/citu/module/menduner/system/api/python/GraphApi.java

@@ -5,7 +5,6 @@ import com.citu.module.menduner.system.enums.ApiConstants;
 import io.swagger.v3.oas.annotations.Operation;
 import io.swagger.v3.oas.annotations.tags.Tag;
 import org.springframework.cloud.openfeign.FeignClient;
-import org.springframework.scheduling.annotation.Async;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestBody;
 
@@ -15,18 +14,16 @@ public interface GraphApi {
 
     @PostMapping("/rocket/receive/data")
     @Operation(summary = "发送数据到知识图谱")
-     CommonResult<Boolean> send(@RequestBody GraphSendDTO sendDTO);
+    CommonResult<Boolean> send(@RequestBody GraphSendDTO sendDTO);
 
     @PostMapping("/rocket/query/graph")
     @Operation(summary = "查询知识图谱数据")
     CommonResult<Long[]> query(@RequestBody GraphQueryDTO queryDTO);
 
-
     @PostMapping("/rocket/match/job")
     @Operation(summary = "基于职位查找相似职位")
     CommonResult<Long[]> queryMatchJob(@RequestBody GraphQueryPageDTO queryDTO);
 
-
     @PostMapping("/rocket/recommend/job")
     @Operation(summary = "推荐职位")
     CommonResult<Long[]> queryRecommendJob(@RequestBody GraphQueryPageDTO queryDTO);
@@ -34,4 +31,8 @@ public interface GraphApi {
     @PostMapping("/rocket/recommend/person")
     @Operation(summary = "推荐人才")
     CommonResult<Long[]> queryRecommendPerson(@RequestBody GraphQueryPageDTO queryDTO);
+
+    @PostMapping("/rocket/receive/data")
+    @Operation(summary = "删除图谱数据")
+    CommonResult<Boolean> receiveData(@RequestBody GraphQueryPageDTO queryDTO);
 }

+ 1 - 1
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/controller/app/recruit/person/AppRecruitPersonController.java

@@ -47,7 +47,7 @@ public class AppRecruitPersonController {
     @GetMapping("/person-recommend/page")
     @Operation(summary = "分页推荐人才信息")
     public CommonResult<PageResult<PersonInfoRespVO>> query(@Valid PersonRecommendQueryReqVO reqVO) {
-        return success(personIntegrationService.queryRecommendJob(reqVO));
+        return success(personIntegrationService.queryRecommendPerson(reqVO));
     }
 
 

+ 1 - 1
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/service/person/PersonIntegrationService.java

@@ -50,7 +50,7 @@ public interface PersonIntegrationService {
      * @param reqVO 发布职位id
      * @return PageResult<PersonInfoRespVO>
      **/
-    PageResult<PersonInfoRespVO> queryRecommendJob(PersonRecommendQueryReqVO reqVO);
+    PageResult<PersonInfoRespVO> queryRecommendPerson(PersonRecommendQueryReqVO reqVO);
 
 
     /**

+ 7 - 2
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/service/person/PersonIntegrationServiceImpl.java

@@ -1,5 +1,6 @@
 package com.citu.module.menduner.system.service.person;
 
+import cn.hutool.core.collection.CollUtil;
 import com.citu.framework.common.pojo.PageResult;
 import com.citu.framework.dict.core.DictFrameworkUtils;
 import com.citu.module.menduner.common.util.LoginUserContext;
@@ -124,6 +125,9 @@ public class PersonIntegrationServiceImpl implements PersonIntegrationService {
     public void syncGraph() {
         List<PersonDetailRespVO> list = new ArrayList<>();
         List<PersonInfoDO> personList = personInfoMapper.selectList();
+        if(CollUtil.isNotEmpty(personList)) {
+            graphApi.receiveData(GraphQueryPageDTO.builder().type(SyncConstants.PERSON).build());
+        }
         for (PersonInfoDO person : personList) {
             PersonDetailRespVO resp = new PersonDetailRespVO();
 
@@ -253,14 +257,15 @@ public class PersonIntegrationServiceImpl implements PersonIntegrationService {
     }
 
     @Override
-    public PageResult<PersonInfoRespVO> queryRecommendJob(PersonRecommendQueryReqVO reqVO) {
+    public PageResult<PersonInfoRespVO> queryRecommendPerson(PersonRecommendQueryReqVO reqVO) {
         Long[] ids = null;
         if (null != reqVO.getJobId()) {
             try {
                 GraphQueryPageDTO condition = GraphQueryPageDTO.builder().type(SyncConstants.PERSON).build();
                 condition.setCurrent(reqVO.getPageNo());
                 condition.setSize(reqVO.getPageSize());
-                ids = graphApi.queryRecommendJob(condition).getCheckedData();
+                condition.setId(reqVO.getJobId());
+                ids = graphApi.queryRecommendPerson(condition).getCheckedData();
             } catch (Exception e) {
                 e.printStackTrace();
             }