1.添加pc岗位收藏

2.添加pc岗位申请
This commit is contained in:
sh
2025-11-01 13:00:30 +08:00
parent eddb66df56
commit fe48208f21
5 changed files with 69 additions and 10 deletions

View File

@@ -42,8 +42,6 @@ public class AppJobController extends BaseController
private IESJobSearchService esJobSearchService; private IESJobSearchService esJobSearchService;
@Autowired @Autowired
private SensitiveWordChecker sensitiveWordChecker; private SensitiveWordChecker sensitiveWordChecker;
@Autowired
private ICompanyService companyService;
/** /**
* 查询岗位列表 * 查询岗位列表

View File

@@ -3,10 +3,13 @@ package com.ruoyi.cms.controller.cms;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
import com.ruoyi.cms.domain.ESJobDocument; import com.ruoyi.cms.domain.ESJobDocument;
import com.ruoyi.cms.domain.Job; import com.ruoyi.cms.domain.Job;
import com.ruoyi.cms.domain.JobCollection;
import com.ruoyi.cms.domain.query.ESJobSearch; import com.ruoyi.cms.domain.query.ESJobSearch;
import com.ruoyi.cms.domain.vo.CandidateVO; import com.ruoyi.cms.domain.vo.CandidateVO;
import com.ruoyi.cms.domain.vo.CompanyVo; import com.ruoyi.cms.domain.vo.CompanyVo;
import com.ruoyi.cms.service.IAppUserService;
import com.ruoyi.cms.service.ICompanyService; import com.ruoyi.cms.service.ICompanyService;
import com.ruoyi.cms.service.IJobCollectionService;
import com.ruoyi.cms.service.IJobService; import com.ruoyi.cms.service.IJobService;
import com.ruoyi.cms.util.RoleUtils; import com.ruoyi.cms.util.RoleUtils;
import com.ruoyi.cms.util.StringUtil; import com.ruoyi.cms.util.StringUtil;
@@ -15,9 +18,11 @@ import com.ruoyi.common.annotation.Anonymous;
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.domain.entity.Company;
import com.ruoyi.common.core.page.TableDataInfo; import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.common.enums.BusinessType; import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.common.utils.bean.BeanUtils; import com.ruoyi.common.utils.bean.BeanUtils;
import com.ruoyi.common.utils.poi.ExcelUtil; import com.ruoyi.common.utils.poi.ExcelUtil;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
@@ -49,6 +54,10 @@ public class CmsJobController extends BaseController
SensitiveWordChecker sensitiveWordChecker; SensitiveWordChecker sensitiveWordChecker;
@Autowired @Autowired
private ICompanyService companyService; private ICompanyService companyService;
@Autowired
private IJobCollectionService jobCollectionService;
@Autowired
private IAppUserService appUserService;
/** /**
* 查询岗位列表 * 查询岗位列表
*/ */
@@ -177,4 +186,26 @@ public class CmsJobController extends BaseController
List<Job> jobList = jobService.selectAllJob(); List<Job> jobList = jobService.selectAllJob();
return success(jobList); return success(jobList);
} }
@PostMapping("/collection")
@ApiOperation("用户收藏")
public AjaxResult jobCollection(@RequestBody JobCollection jobCollection)
{
if(jobCollection.getJobId()==null){
return AjaxResult.error("岗位id为空");
}
if(!SecurityUtils.isLogin()){
return AjaxResult.error("用户未登录!");
}
if(jobCollection.getUserId()==null){
String idCard=RoleUtils.getCurrentUseridCard();
AppUser appUser=appUserService.selectAppuserByIdcard(idCard);
if(appUser==null){
return AjaxResult.error("用户信息未完善,请完善身份证信息!");
}else{
jobCollection.setUserId(appUser.getUserId());
}
}
return toAjax(jobCollectionService.pcJobCollection(jobCollection));
}
} }

View File

@@ -3,6 +3,7 @@ package com.ruoyi.cms.controller.cms;
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.cms.service.IAppUserService;
import com.ruoyi.cms.service.IJobApplyService; import com.ruoyi.cms.service.IJobApplyService;
import com.ruoyi.cms.util.RoleUtils; import com.ruoyi.cms.util.RoleUtils;
import com.ruoyi.common.annotation.Log; import com.ruoyi.common.annotation.Log;
@@ -16,7 +17,6 @@ import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.common.utils.poi.ExcelUtil; import com.ruoyi.common.utils.poi.ExcelUtil;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
@@ -32,6 +32,8 @@ public class JobApplyController extends BaseController {
@Autowired @Autowired
IJobApplyService iJobApplyService; IJobApplyService iJobApplyService;
@Autowired
private IAppUserService appUserService;
@GetMapping("/trendChart") @GetMapping("/trendChart")
public AjaxResult trendChart(JobApply jobApply) public AjaxResult trendChart(JobApply jobApply)
@@ -68,19 +70,26 @@ public class JobApplyController extends BaseController {
return getDataTable(list); return getDataTable(list);
} }
@GetMapping("/apply/{jobId}") @PutMapping
@Log(title = "岗位", businessType = BusinessType.UPDATE)
@ApiOperation("用户申请岗位") @ApiOperation("用户申请岗位")
public AjaxResult apply(@ApiParam("岗位id") @PathVariable Long jobId) public AjaxResult apply(@RequestBody JobApply jobApply)
{ {
if(jobId==null){ if(jobApply.getJobId()==null){
return AjaxResult.error("岗位id为空"); return AjaxResult.error("岗位id为空");
} }
if(!SecurityUtils.isLogin()){ if(!SecurityUtils.isLogin()){
return AjaxResult.error("用户未登录!"); return AjaxResult.error("用户未登录!");
} }
JobApply jobApply=new JobApply(); if(jobApply.getUserId()==null){
jobApply.setJobId(jobId); String idCard=RoleUtils.getCurrentUseridCard();
jobApply.setUserId(SecurityUtils.getUserId()); AppUser appUser=appUserService.selectAppuserByIdcard(idCard);
return toAjax(iJobApplyService.applyComJob(jobApply)); if(appUser==null){
return AjaxResult.error("用户信息未完善,请完善身份证信息!");
}else{
jobApply.setUserId(appUser.getUserId());
}
}
return success(iJobApplyService.applyComJob(jobApply));
} }
} }

View File

@@ -72,4 +72,11 @@ public interface IJobCollectionService
List<Job> collectionJob(); List<Job> collectionJob();
CompetitivenessResponse competitiveness(Long jobId); CompetitivenessResponse competitiveness(Long jobId);
/**
* pc端岗位收藏
* @param collection
* @return
*/
int pcJobCollection(JobCollection collection);
} }

View File

@@ -154,6 +154,20 @@ public class JobCollectionServiceImpl extends ServiceImpl<JobCollectionMapper,Jo
return jobs; return jobs;
} }
@Override
@Transactional
public int pcJobCollection(JobCollection collection) {
List<JobCollection> jobCollections = jobCollectionMapper.selectList(Wrappers.<JobCollection>lambdaQuery().eq(JobCollection::getJobId, collection.getJobId()).eq(JobCollection::getUserId, collection.getUserId()));
if(jobCollections.size()>0){
jobCollectionMapper.deleteBatchIds(jobCollections.stream().map(JobCollection::getId).collect(Collectors.toList()));
}
JobCollection jobCollection = new JobCollection();
jobCollection.setJobId(collection.getJobId());
jobCollection.setUserId(collection.getUserId());
jobCollectionMapper.insert(jobCollection);
return 1;
}
@Override @Override
public CompetitivenessResponse competitiveness(Long jobId) { public CompetitivenessResponse competitiveness(Long jobId) {
// 查询岗位信息 // 查询岗位信息