diff --git a/ruoyi-bussiness/src/main/java/com/ruoyi/cms/controller/app/AppJobController.java b/ruoyi-bussiness/src/main/java/com/ruoyi/cms/controller/app/AppJobController.java index 4550713..b21fe29 100644 --- a/ruoyi-bussiness/src/main/java/com/ruoyi/cms/controller/app/AppJobController.java +++ b/ruoyi-bussiness/src/main/java/com/ruoyi/cms/controller/app/AppJobController.java @@ -42,8 +42,6 @@ public class AppJobController extends BaseController private IESJobSearchService esJobSearchService; @Autowired private SensitiveWordChecker sensitiveWordChecker; - @Autowired - private ICompanyService companyService; /** * 查询岗位列表 diff --git a/ruoyi-bussiness/src/main/java/com/ruoyi/cms/controller/cms/CmsJobController.java b/ruoyi-bussiness/src/main/java/com/ruoyi/cms/controller/cms/CmsJobController.java index ba17bcf..b712fa8 100644 --- a/ruoyi-bussiness/src/main/java/com/ruoyi/cms/controller/cms/CmsJobController.java +++ b/ruoyi-bussiness/src/main/java/com/ruoyi/cms/controller/cms/CmsJobController.java @@ -3,10 +3,13 @@ package com.ruoyi.cms.controller.cms; import com.alibaba.fastjson.JSON; import com.ruoyi.cms.domain.ESJobDocument; import com.ruoyi.cms.domain.Job; +import com.ruoyi.cms.domain.JobCollection; import com.ruoyi.cms.domain.query.ESJobSearch; import com.ruoyi.cms.domain.vo.CandidateVO; import com.ruoyi.cms.domain.vo.CompanyVo; +import com.ruoyi.cms.service.IAppUserService; import com.ruoyi.cms.service.ICompanyService; +import com.ruoyi.cms.service.IJobCollectionService; import com.ruoyi.cms.service.IJobService; import com.ruoyi.cms.util.RoleUtils; 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.core.controller.BaseController; 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.utils.SecurityUtils; import com.ruoyi.common.utils.bean.BeanUtils; import com.ruoyi.common.utils.poi.ExcelUtil; import io.swagger.annotations.Api; @@ -49,6 +54,10 @@ public class CmsJobController extends BaseController SensitiveWordChecker sensitiveWordChecker; @Autowired private ICompanyService companyService; + @Autowired + private IJobCollectionService jobCollectionService; + @Autowired + private IAppUserService appUserService; /** * 查询岗位列表 */ @@ -177,4 +186,26 @@ public class CmsJobController extends BaseController List jobList = jobService.selectAllJob(); 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)); + } } diff --git a/ruoyi-bussiness/src/main/java/com/ruoyi/cms/controller/cms/JobApplyController.java b/ruoyi-bussiness/src/main/java/com/ruoyi/cms/controller/cms/JobApplyController.java index 831bc80..c34af0b 100644 --- a/ruoyi-bussiness/src/main/java/com/ruoyi/cms/controller/cms/JobApplyController.java +++ b/ruoyi-bussiness/src/main/java/com/ruoyi/cms/controller/cms/JobApplyController.java @@ -3,6 +3,7 @@ package com.ruoyi.cms.controller.cms; import com.ruoyi.cms.domain.Job; import com.ruoyi.cms.domain.JobApply; import com.ruoyi.cms.domain.vo.CandidateVO; +import com.ruoyi.cms.service.IAppUserService; import com.ruoyi.cms.service.IJobApplyService; import com.ruoyi.cms.util.RoleUtils; import com.ruoyi.common.annotation.Log; @@ -16,7 +17,6 @@ import com.ruoyi.common.utils.SecurityUtils; import com.ruoyi.common.utils.poi.ExcelUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; -import io.swagger.annotations.ApiParam; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.web.bind.annotation.*; @@ -32,6 +32,8 @@ public class JobApplyController extends BaseController { @Autowired IJobApplyService iJobApplyService; + @Autowired + private IAppUserService appUserService; @GetMapping("/trendChart") public AjaxResult trendChart(JobApply jobApply) @@ -68,19 +70,26 @@ public class JobApplyController extends BaseController { return getDataTable(list); } - @GetMapping("/apply/{jobId}") + @PutMapping + @Log(title = "岗位", businessType = BusinessType.UPDATE) @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为空"); } if(!SecurityUtils.isLogin()){ return AjaxResult.error("用户未登录!"); } - JobApply jobApply=new JobApply(); - jobApply.setJobId(jobId); - jobApply.setUserId(SecurityUtils.getUserId()); - return toAjax(iJobApplyService.applyComJob(jobApply)); + if(jobApply.getUserId()==null){ + String idCard=RoleUtils.getCurrentUseridCard(); + AppUser appUser=appUserService.selectAppuserByIdcard(idCard); + if(appUser==null){ + return AjaxResult.error("用户信息未完善,请完善身份证信息!"); + }else{ + jobApply.setUserId(appUser.getUserId()); + } + } + return success(iJobApplyService.applyComJob(jobApply)); } } diff --git a/ruoyi-bussiness/src/main/java/com/ruoyi/cms/service/IJobCollectionService.java b/ruoyi-bussiness/src/main/java/com/ruoyi/cms/service/IJobCollectionService.java index 4dfda81..5731ccf 100644 --- a/ruoyi-bussiness/src/main/java/com/ruoyi/cms/service/IJobCollectionService.java +++ b/ruoyi-bussiness/src/main/java/com/ruoyi/cms/service/IJobCollectionService.java @@ -72,4 +72,11 @@ public interface IJobCollectionService List collectionJob(); CompetitivenessResponse competitiveness(Long jobId); + + /** + * pc端岗位收藏 + * @param collection + * @return + */ + int pcJobCollection(JobCollection collection); } diff --git a/ruoyi-bussiness/src/main/java/com/ruoyi/cms/service/impl/JobCollectionServiceImpl.java b/ruoyi-bussiness/src/main/java/com/ruoyi/cms/service/impl/JobCollectionServiceImpl.java index d6bc20d..ac7b9b8 100644 --- a/ruoyi-bussiness/src/main/java/com/ruoyi/cms/service/impl/JobCollectionServiceImpl.java +++ b/ruoyi-bussiness/src/main/java/com/ruoyi/cms/service/impl/JobCollectionServiceImpl.java @@ -154,6 +154,20 @@ public class JobCollectionServiceImpl extends ServiceImpl jobCollections = jobCollectionMapper.selectList(Wrappers.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 public CompetitivenessResponse competitiveness(Long jobId) { // 查询岗位信息