1.修改es(返回企业描述、企业联系人list)信息

2.添加pc端投简历接口
3.添加pc端查询简历、编辑简历接口
This commit is contained in:
sh
2025-10-29 19:10:46 +08:00
parent a592435926
commit a63bb88460
18 changed files with 290 additions and 17 deletions

View File

@@ -62,4 +62,8 @@ public interface IAppUserService
public AppUser selectAppuserByIdcard(String idCard);
public AppUserLky selectAppUserInfo(AppUser appUser);
public AppUser getUserInfo();
public int editRegisterUser(RegisterBody registerBody);
}

View File

@@ -1,6 +1,6 @@
package com.ruoyi.cms.service;
import com.ruoyi.cms.domain.File;
import com.ruoyi.common.core.domain.entity.File;
import com.ruoyi.common.core.domain.AjaxResult;
import org.springframework.web.multipart.MultipartFile;

View File

@@ -65,4 +65,7 @@ public interface IJobApplyService
List<CandidateVO> selectAppUserList(Job job);
List<CandidateVO> selectApplyJobUserList(AppUser appUser);
public int applyComJob(JobApply jobApply);
}

View File

@@ -94,4 +94,6 @@ public interface IJobService
List<AppUser> selectApplyJobUserList(Long jobId);
List<ESJobDocument> sysRecommend(ESJobSearch esJobSearch);
List<Job> selectAllJob();
}

View File

@@ -1,18 +1,17 @@
package com.ruoyi.cms.service.impl;
import java.util.HashMap;
import java.util.List;
import java.util.Arrays;
import java.util.Map;
import java.util.*;
import java.util.stream.Collectors;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.ruoyi.common.core.domain.entity.File;
import com.ruoyi.cms.domain.vo.AppSkillVo;
import com.ruoyi.cms.mapper.*;
import com.ruoyi.cms.util.StringUtil;
import com.ruoyi.common.core.domain.entity.*;
import com.ruoyi.cms.domain.vo.AppUserLky;
import com.ruoyi.common.core.domain.model.LoginUser;
import com.ruoyi.common.core.domain.model.RegisterBody;
import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.common.utils.SiteSecurityUtils;
@@ -43,6 +42,9 @@ public class AppUserServiceImpl extends ServiceImpl<AppUserMapper,AppUser> imple
private AppSkillMapper appSkillMapper;
@Autowired
private CompanyMapper companyMapper;
@Autowired
private FileMapper fileMapper;
/**
* 查询APP用户
*
@@ -118,6 +120,12 @@ public class AppUserServiceImpl extends ServiceImpl<AppUserMapper,AppUser> imple
@Override
public int updateAppUser(AppUser appUser)
{
if(appUser.getExperiencesList()!=null&&appUser.getExperiencesList().size()>0){
userWorkExperiencesMapper.batchInsert(appUser.getExperiencesList());
}
if(appUser.getAppSkillsList()!=null&&appUser.getAppSkillsList().size()>0){
appSkillMapper.batchInsert(appUser.getAppSkillsList());
}
return appUserMapper.updateById(appUser);
}
@@ -236,4 +244,78 @@ public class AppUserServiceImpl extends ServiceImpl<AppUserMapper,AppUser> imple
lky.setAppSkillsList(skillList);
return lky;
}
@Override
public AppUser getUserInfo() {
//查询用户信息
LoginUser loginUser=SecurityUtils.getLoginUser();
SysUser sysUser=loginUser.getUser();
AppUser appUser=selectAppuserByIdcard(sysUser.getIdCard());
if(appUser!=null&&appUser.getUserId()!=null){
//查询工作经历信息
UserWorkExperiences parm=new UserWorkExperiences();
parm.setUserId(appUser.getUserId());
List<UserWorkExperiences> experiencesList=userWorkExperiencesMapper.getWorkExperiencesList(parm);
appUser.setExperiencesList(experiencesList);
//查询用户技能
AppSkill parmsk=new AppSkill();
parmsk.setUserId(appUser.getUserId());
List<AppSkill> skillList=appSkillMapper.getList(parmsk);
appUser.setAppSkillsList(skillList);
File fileParm=new File();
fileParm.setBussinessId(appUser.getUserId());
List<File> files=fileMapper.selectFileList(fileParm);
appUser.setFileList(files);
}
return appUser;
}
@Override
public int editRegisterUser(RegisterBody registerBody) {
//保存或修改工作经历
List<UserWorkExperiences> userWorkExperiencesList=registerBody.getExperiencesList();
editUserWorkExperiences(userWorkExperiencesList);
//修改技能
List<AppSkill> skillList=registerBody.getAppSkillsList();
editSkill(skillList);
//修改用户信息
AppUser appUser=registerBody.getAppUser();
if(appUser!=null&&appUser.getUserId()!=null){
appUserMapper.updateById(appUser);
}
return 1;
}
/**
* 修改技能
* @param list
*/
public void editSkill(List<AppSkill> list){
if(list!=null&&list.size()>0){
List<AppSkill> add=new ArrayList<>();
list.forEach(it->{
if(it.getId()!=null){appSkillMapper.updateById(it);}else{add.add(it);}
});
if(add.size()>0){
appSkillMapper.batchInsert(add);
}
}
}
/**
* 修改工作经历
* @param list
*/
public void editUserWorkExperiences(List<UserWorkExperiences> list){
if(list!=null&&list.size()>0){
List<UserWorkExperiences> add=new ArrayList<>();
list.forEach(it->{
if(it.getId()!=null){userWorkExperiencesMapper.updateById(it);}else{add.add(it);}
});
if(add.size()>0){
userWorkExperiencesMapper.batchInsert(add);
}
}
}
}

View File

@@ -4,16 +4,12 @@ import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.Date;
import java.util.List;
import java.util.Arrays;
import com.ruoyi.cms.domain.File;
import com.ruoyi.common.core.domain.entity.File;
import com.ruoyi.cms.mapper.FileMapper;
import com.ruoyi.cms.service.IFileService;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.SiteSecurityUtils;
import com.ruoyi.common.utils.uuid.IdUtils;
import com.ruoyi.common.utils.uuid.UUID;
import org.springframework.beans.factory.annotation.Autowired;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;

View File

@@ -17,6 +17,7 @@ import org.springframework.stereotype.Service;
import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
import java.util.stream.Collectors;
/**
* 岗位申请Service业务层处理
@@ -133,4 +134,17 @@ public class JobApplyServiceImpl extends ServiceImpl<JobApplyMapper,JobApply> im
public List<CandidateVO> selectApplyJobUserList(AppUser appUser) {
return jobApplyMapper.selectApplyJobUserList(appUser);
}
@Override
public int applyComJob(JobApply jobApply) {
//todo 计算匹配度
jobApply.setMatchingDegree(1L);
List<JobApply> jobApplies = jobApplyMapper.selectList(Wrappers.<JobApply>lambdaQuery().eq(JobApply::getJobId, jobApply.getJobId()).eq(JobApply::getUserId, jobApply.getUserId()));
if(jobApplies.size()>0){
List<Long> ids = jobApplies.stream().map(JobApply::getId).collect(Collectors.toList());
jobApplyMapper.deleteBatchIds(ids);
}
jobApplyMapper.insert(jobApply);
return 0;
}
}

View File

@@ -9,7 +9,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.ruoyi.cms.domain.*;
import com.ruoyi.cms.domain.File;
import com.ruoyi.common.core.domain.entity.File;
import com.ruoyi.cms.domain.query.ESJobSearch;
import com.ruoyi.cms.domain.vo.CandidateVO;
import com.ruoyi.cms.mapper.*;
@@ -853,4 +853,13 @@ public class JobServiceImpl extends ServiceImpl<JobMapper,Job> implements IJobSe
List<ESJobDocument> esJobDocuments = sysUserCollection(jobListResult);
return esJobDocuments;
}
public List<Job> selectAllJob(){
int batchSize = 1000; // 每批次处理的数据量
int offset = 0;
Map<String,Object> params=new HashMap<>();
params.put("batchSize", batchSize);
params.put("offset", offset*batchSize);
return jobMapper.selectAllJob(params);
}
}