1.推荐岗位时,企业只查询自己发布的岗位

This commit is contained in:
sh
2025-10-23 18:57:53 +08:00
parent 115f47118f
commit d4683f1299
9 changed files with 54 additions and 9 deletions

View File

@@ -12,7 +12,6 @@ import com.ruoyi.cms.util.sensitiveWord.SensitiveWordChecker;
import com.ruoyi.common.annotation.BussinessLog; import com.ruoyi.common.annotation.BussinessLog;
import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.domain.entity.Company;
import com.ruoyi.common.core.page.TableDataInfo; import com.ruoyi.common.core.page.TableDataInfo;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
@@ -23,7 +22,6 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import java.util.List; import java.util.List;
import java.util.Objects;
/** /**
* 岗位Controller * 岗位Controller
@@ -77,8 +75,7 @@ public class AppJobController extends BaseController
public AjaxResult recommend(ESJobSearch esJobSearch) public AjaxResult recommend(ESJobSearch esJobSearch)
{ {
if (RoleUtils.getAppCurrentUseridCard() != null) { if (RoleUtils.getAppCurrentUseridCard() != null) {
Company company = companyService.queryCodeCompany(RoleUtils.getAppCurrentUseridCard()); esJobSearch.setCode(RoleUtils.getAppCurrentUseridCard());
esJobSearch.setCompanyId(Objects.nonNull(company) ? company.getCompanyId() : null);
} }
List<ESJobDocument> jobList = jobService.recommend(esJobSearch); List<ESJobDocument> jobList = jobService.recommend(esJobSearch);
return success(jobList); return success(jobList);

View File

@@ -4,9 +4,13 @@ import com.ruoyi.cms.domain.Job;
import com.ruoyi.cms.domain.JobApply; import com.ruoyi.cms.domain.JobApply;
import com.ruoyi.cms.domain.vo.CandidateVO; import com.ruoyi.cms.domain.vo.CandidateVO;
import com.ruoyi.cms.service.IJobApplyService; import com.ruoyi.cms.service.IJobApplyService;
import com.ruoyi.cms.util.RoleUtils;
import com.ruoyi.common.annotation.Log; import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.domain.entity.AppUser;
import com.ruoyi.common.core.domain.entity.Company;
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.common.enums.BusinessType; import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.common.utils.poi.ExcelUtil; import com.ruoyi.common.utils.poi.ExcelUtil;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
@@ -47,4 +51,18 @@ public class JobApplyController extends BaseController {
ExcelUtil<CandidateVO> util = new ExcelUtil<CandidateVO>(CandidateVO.class); ExcelUtil<CandidateVO> util = new ExcelUtil<CandidateVO>(CandidateVO.class);
util.exportExcel(response, list, "APP用户数据"); util.exportExcel(response, list, "APP用户数据");
} }
@ApiOperation("获取求职者列表")
@PreAuthorize("@ss.hasPermi('cms:jobApply:applyJobUserList')")
@GetMapping("/applyJobUserList")
public TableDataInfo applyJobList(AppUser appUser)
{
if (RoleUtils.isCompanyAdmin()) {
Company company=new Company();
company.setCode(RoleUtils.getCurrentUseridCard());
}
startPage();
List<CandidateVO> list = iJobApplyService.selectApplyJobUserList(appUser);
return getDataTable(list);
}
} }

View File

@@ -146,4 +146,7 @@ public class ESJobDocument
@ApiModelProperty("类型 0常规岗位 1就业见习岗位 2实习实训岗位 3社区实践岗位 对应字段字典position_type") @ApiModelProperty("类型 0常规岗位 1就业见习岗位 2实习实训岗位 3社区实践岗位 对应字段字典position_type")
private String type; private String type;
@ApiModelProperty("信用代码")
private String code;
} }

View File

@@ -8,6 +8,7 @@ import java.util.List;
import com.ruoyi.cms.domain.Job; import com.ruoyi.cms.domain.Job;
import com.ruoyi.cms.domain.JobApply; import com.ruoyi.cms.domain.JobApply;
import com.ruoyi.cms.domain.vo.CandidateVO; import com.ruoyi.cms.domain.vo.CandidateVO;
import com.ruoyi.common.core.domain.entity.AppUser;
/** /**
* 岗位申请Mapper接口 * 岗位申请Mapper接口
@@ -32,4 +33,6 @@ public interface JobApplyMapper extends BaseMapper<JobApply>
HashMap<String,Integer> trendChart(JobApply jobApply); HashMap<String,Integer> trendChart(JobApply jobApply);
List<CandidateVO> selectAppUserList(Job job); List<CandidateVO> selectAppUserList(Job job);
List<CandidateVO> selectApplyJobUserList(AppUser appUser);
} }

View File

@@ -6,6 +6,7 @@ import java.util.List;
import com.ruoyi.cms.domain.Job; import com.ruoyi.cms.domain.Job;
import com.ruoyi.cms.domain.JobApply; import com.ruoyi.cms.domain.JobApply;
import com.ruoyi.cms.domain.vo.CandidateVO; import com.ruoyi.cms.domain.vo.CandidateVO;
import com.ruoyi.common.core.domain.entity.AppUser;
/** /**
* 岗位申请Service接口 * 岗位申请Service接口
@@ -62,4 +63,6 @@ public interface IJobApplyService
HashMap<String,Integer> trendChart(JobApply jobApply); HashMap<String,Integer> trendChart(JobApply jobApply);
List<CandidateVO> selectAppUserList(Job job); List<CandidateVO> selectAppUserList(Job job);
List<CandidateVO> selectApplyJobUserList(AppUser appUser);
} }

View File

@@ -184,8 +184,8 @@ public class ESJobSearchImpl implements IESJobSearchService
if(!StringUtil.isEmptyOrNull(esJobSearch.getCompanyNature())){ if(!StringUtil.isEmptyOrNull(esJobSearch.getCompanyNature())){
newSearch.setCompanyNature(esJobSearch.getCompanyNature()); newSearch.setCompanyNature(esJobSearch.getCompanyNature());
} }
if(esJobSearch.getCompanyId()!=null){ if(!StringUtil.isEmptyOrNull(esJobSearch.getCode())){
newSearch.setCompanyId(esJobSearch.getCompanyId()); newSearch.setCode(esJobSearch.getCode());
} }
} }
@@ -420,8 +420,8 @@ public class ESJobSearchImpl implements IESJobSearchService
if(!StringUtil.isEmptyOrNull(esJobSearch.getCompanyNature())){ if(!StringUtil.isEmptyOrNull(esJobSearch.getCompanyNature())){
wrapper.and(x->x.eq(ESJobDocument::getCompanyNature,esJobSearch.getCompanyNature())); wrapper.and(x->x.eq(ESJobDocument::getCompanyNature,esJobSearch.getCompanyNature()));
} }
if(esJobSearch.getCompanyId()!=null){ if(!StringUtil.isEmptyOrNull(esJobSearch.getCode())){
wrapper.and(x->x.eq(ESJobDocument::getCompanyId,esJobSearch.getCompanyId())); wrapper.and(x->x.eq(ESJobDocument::getCode,esJobSearch.getCode()));
} }
if(Objects.nonNull(esJobSearch.getOrder())){ if(Objects.nonNull(esJobSearch.getOrder())){
if(esJobSearch.getOrder()==1){ if(esJobSearch.getOrder()==1){

View File

@@ -9,6 +9,7 @@ import com.ruoyi.cms.domain.query.MineJobQuery;
import com.ruoyi.cms.domain.vo.CandidateVO; import com.ruoyi.cms.domain.vo.CandidateVO;
import com.ruoyi.cms.mapper.*; import com.ruoyi.cms.mapper.*;
import com.ruoyi.cms.service.IJobApplyService; import com.ruoyi.cms.service.IJobApplyService;
import com.ruoyi.common.core.domain.entity.AppUser;
import com.ruoyi.common.utils.SiteSecurityUtils; import com.ruoyi.common.utils.SiteSecurityUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
@@ -127,4 +128,9 @@ public class JobApplyServiceImpl extends ServiceImpl<JobApplyMapper,JobApply> im
public List<CandidateVO> selectAppUserList(Job job) { public List<CandidateVO> selectAppUserList(Job job) {
return jobApplyMapper.selectAppUserList(job); return jobApplyMapper.selectAppUserList(job);
} }
@Override
public List<CandidateVO> selectApplyJobUserList(AppUser appUser) {
return jobApplyMapper.selectApplyJobUserList(appUser);
}
} }

View File

@@ -101,4 +101,19 @@
</if> </if>
</select> </select>
<select id="selectApplyJobUserList" parameterType="com.ruoyi.common.core.domain.entity.AppUser" resultType="com.ruoyi.cms.domain.vo.CandidateVO">
select b.job_title jobName,l.name companyName,e.* from job_apply a
INNER join job b on a.job_id=b.job_id and b.del_flag='0'
INNER join app_user e on a.user_id =e.user_id and e.del_flag='0'
INNER join company l on b.company_id =l.company_id and l.del_flag='0'
where a.del_flag='0'
<if test="company != null and company.jobTitle != null and company.jobTitle != ''"> and b.job_title like concat('%', cast(#{company.jobTitle, jdbcType=VARCHAR} as varchar), '%')</if>
<if test="company != null and company.education != null and company.education != ''"> and b.education = #{company.education}</if>
<if test="company != null and company.experience != null and company.experience != ''"> and b.experience = #{company.experience}</if>
<if test="company != null and company.companyName != null and company.companyName != ''"> and b.company_name like concat('%', cast(#{company.companyName, jdbcType=VARCHAR} as varchar), '%')</if>
<if test="company != null and company.companyId != null "> and b.company_id = #{company.companyId}</if>
<if test="company != null and company.code != null "> and l.code =#{company.code}</if>
<if test="name != null and name != '' "> and b.job_title like concat('%', cast(#{name, jdbcType=VARCHAR} as varchar), '%')</if>
</select>
</mapper> </mapper>

View File

@@ -215,7 +215,7 @@
) )
</select> </select>
<select id="selectAllJob" resultType="com.ruoyi.cms.domain.Job"> <select id="selectAllJob" resultType="com.ruoyi.cms.domain.Job">
SELECT j.*,c.industry,c.scale,c.nature as company_nature FROM job as j SELECT j.*,c.industry,c.scale,c.nature as company_nature,c.code FROM job as j
left join company as c on c.company_id = j.company_id limit #{offset},#{batchSize} left join company as c on c.company_id = j.company_id limit #{offset},#{batchSize}
</select> </select>
<select id="selectAllInsertRowWork" resultType="com.ruoyi.cms.domain.RowWork"> <select id="selectAllInsertRowWork" resultType="com.ruoyi.cms.domain.RowWork">