Commit 89a21338 by zwb

修改岗位智推岗位三级分类查询,整理Isys包

parent f5256687
Showing with 104 additions and 47 deletions
package com.bkty.system.controller;
import cn.hutool.extra.spring.SpringUtil;
import com.bkty.system.init.*;
import com.bkty.system.service.jobRecommend.JobRecommendService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
import lombok.RequiredArgsConstructor;
......@@ -8,6 +10,7 @@ import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils;
import org.dromara.common.core.domain.R;
import org.dromara.common.core.utils.StringUtils;
import org.jetbrains.annotations.NotNull;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
......@@ -29,6 +32,9 @@ public class JobRecommendController {
@Autowired
private CategoryCacheManager categoryCacheManager;
@Autowired
private JobRecommendService jobRecommendService;
@Operation(summary = "岗位三级分类查询")
@GetMapping("/positions")
public R<List<Level1Group>> getAllPositions(@RequestParam(value = "level1", required = false) String level1) {
......@@ -37,33 +43,7 @@ public class JobRecommendController {
return new R<>(categoryCacheManager.getPositionCache());
}
// 根据岗位名称过滤,创建新的数据结构而不修改原始缓存
List<Level1Group> positionCache = categoryCacheManager.getPositionCache();
List<Level1Group> result = new ArrayList<>();
for (Level1Group level1Group : positionCache) {
if (level1Group.getName().toLowerCase().contains(level1.toLowerCase())){
result.add(level1Group);
continue;
}
List<Level2Group> level2Groups = new ArrayList<>();
for (Level2Group level2Group : level1Group.getLevel2Groups()) {
List<Level3Group> level3Groups = new ArrayList<>();
for (Level3Group level3Group : level2Group.getLevel3Groups()) {
if (level3Group.getName().toLowerCase().contains(level1.toLowerCase())){
level3Groups.add(level3Group);
}
}
if (CollectionUtils.isNotEmpty(level3Groups)){
Level2Group level2Group1 = new Level2Group(level2Group.getName());
level2Group1.setLevel3Groups(level3Groups);
level2Groups.add(level2Group1);
}
}
if (CollectionUtils.isNotEmpty(level2Groups)){
Level1Group level1Group1 = new Level1Group(level1Group.getName());
level1Group1.setLevel2Groups(level2Groups);
result.add(level1Group1);
}
}
List<Level1Group> result = jobRecommendService.getLevel1Groups(level1);
return new R<>(result);
}
}
......@@ -47,6 +47,7 @@ public class ResumeBase {
/**简历名称*/
@JxgInitField(value = "ResumeName")
private String resumeName;
// /**生日*/
// @JxgInitField("Age")
// private String birthday;
......@@ -67,7 +68,6 @@ public class ResumeBase {
// @JxgInitField("Status")
// private String workStatus;
// /**参加工作时间*/
// @JxgInitField(value = "WorkTime")
// private String workTime;
......
......@@ -10,8 +10,8 @@ import com.bkty.system.domain.dto.SysUserDto;
import com.bkty.system.domain.entity.SysUser;
import com.bkty.system.domain.vo.SysUserVo;
import com.bkty.system.mapper.SysUserMapper;
import com.bkty.system.service.ISysPermissionService;
import com.bkty.system.service.ISysUserService;
import com.bkty.system.service.Isys.ISysPermissionService;
import com.bkty.system.service.Isys.ISysUserService;
import lombok.RequiredArgsConstructor;
import org.apache.dubbo.config.annotation.DubboService;
import org.dromara.common.core.enums.UserStatus;
......
package com.bkty.system.service.impl;
package com.bkty.system.service.Isys.impl;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.lang.tree.Tree;
......@@ -16,7 +16,7 @@ import com.bkty.system.domain.vo.SysMenuVo;
import com.bkty.system.mapper.SysMenuMapper;
import com.bkty.system.mapper.SysRoleMapper;
import com.bkty.system.mapper.SysRoleMenuMapper;
import com.bkty.system.service.ISysMenuService;
import com.bkty.system.service.Isys.ISysMenuService;
import lombok.RequiredArgsConstructor;
import org.dromara.common.core.constant.UserConstants;
import org.dromara.common.core.utils.MapstructUtils;
......
package com.bkty.system.service.impl;
package com.bkty.system.service.Isys.impl;
import com.bkty.system.service.ISysMenuService;
import com.bkty.system.service.ISysPermissionService;
import com.bkty.system.service.ISysRoleService;
import com.bkty.system.service.Isys.ISysMenuService;
import com.bkty.system.service.Isys.ISysPermissionService;
import com.bkty.system.service.Isys.ISysRoleService;
import lombok.RequiredArgsConstructor;
import org.dromara.common.core.constant.TenantConstants;
import org.dromara.common.satoken.utils.LoginHelper;
......
package com.bkty.system.service.impl;
package com.bkty.system.service.Isys.impl;
import cn.dev33.satoken.exception.NotLoginException;
import cn.dev33.satoken.stp.StpUtil;
......@@ -22,7 +22,7 @@ import com.bkty.system.mapper.SysRoleDeptMapper;
import com.bkty.system.mapper.SysRoleMapper;
import com.bkty.system.mapper.SysRoleMenuMapper;
import com.bkty.system.mapper.SysUserRoleMapper;
import com.bkty.system.service.ISysRoleService;
import com.bkty.system.service.Isys.ISysRoleService;
import lombok.RequiredArgsConstructor;
import org.dromara.common.core.constant.TenantConstants;
import org.dromara.common.core.constant.UserConstants;
......
package com.bkty.system.service.impl;
package com.bkty.system.service.Isys.impl;
import cn.dev33.satoken.secure.BCrypt;
import cn.hutool.core.collection.CollUtil;
......@@ -24,7 +24,7 @@ import com.bkty.system.mapper.SysDeptMapper;
import com.bkty.system.mapper.SysRoleMapper;
import com.bkty.system.mapper.SysUserMapper;
import com.bkty.system.mapper.SysUserRoleMapper;
import com.bkty.system.service.ISysUserService;
import com.bkty.system.service.Isys.ISysUserService;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.dromara.common.core.constant.CacheNames;
......
package com.bkty.system.service.jobRecommend;
import com.bkty.system.init.Level1Group;
import java.util.List;
/**
* 岗位智推
*/
public interface JobRecommendService {
/**
* 根据岗位名称过滤,创建新的数据结构而不修改原始岗位缓存
* @param level1
* @return
*/
List<Level1Group> getLevel1Groups(String level1);
}
package com.bkty.system.service.jobRecommend.impl;
import com.bkty.system.init.CategoryCacheManager;
import com.bkty.system.init.Level1Group;
import com.bkty.system.init.Level2Group;
import com.bkty.system.init.Level3Group;
import com.bkty.system.service.jobRecommend.JobRecommendService;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils;
import org.jetbrains.annotations.NotNull;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
/**
* @author Zhang Wenbiao
* @description 岗位智推service层
* @datetime 2025/12/3 14:57
*/
@Slf4j
@RequiredArgsConstructor
@Service
public class JobRecommendServiceImpl implements JobRecommendService {
@Autowired
private CategoryCacheManager categoryCacheManager;
@Override
public List<Level1Group> getLevel1Groups(String level1) {
List<Level1Group> positionCache = categoryCacheManager.getPositionCache();
List<Level1Group> result = new ArrayList<>();
for (Level1Group level1Group : positionCache) {
if (level1Group.getName().toLowerCase().contains(level1.toLowerCase())){
result.add(level1Group);
continue;
}
List<Level2Group> level2Groups = new ArrayList<>();
for (Level2Group level2Group : level1Group.getLevel2Groups()) {
List<Level3Group> level3Groups = new ArrayList<>();
for (Level3Group level3Group : level2Group.getLevel3Groups()) {
if (level3Group.getName().toLowerCase().contains(level1.toLowerCase())){
level3Groups.add(level3Group);
}
}
if (CollectionUtils.isNotEmpty(level3Groups)){
Level2Group level2Group1 = new Level2Group(level2Group.getName());
level2Group1.setLevel3Groups(level3Groups);
level2Groups.add(level2Group1);
}
}
if (CollectionUtils.isNotEmpty(level2Groups)){
Level1Group level1Group1 = new Level1Group(level1Group.getName());
level1Group1.setLevel2Groups(level2Groups);
result.add(level1Group1);
}
}
return result;
}
}
package com.bkty.system.service.resume;
import com.bkty.system.domain.dto.ResumeByPdfDto;
import com.bkty.system.domain.dto.ResumeListItemCache;
import com.bkty.system.domain.dto.ResumeMakeDto;
import com.bkty.system.domain.dto.ResumeModelOptimizationCache;
......@@ -9,7 +7,6 @@ import com.bkty.system.domain.entity.FunctionResumeBase;
import com.bkty.system.domain.entity.FunctionResumeModel;
import com.bkty.system.domain.entity.FunctionResumeModelOptimization;
import com.bkty.system.domain.vo.ResumeBaseVo;
import com.bkty.system.domain.vo.ResumeByPdfVo;
import com.bkty.system.domain.vo.ResumeModelVo;
import java.util.List;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment