Ai-interviewer-system/src/main/java/com/yzdx/AiInterviewer/controller/VxController/VxJobController.java

120 lines
3.4 KiB
Java

package com.yzdx.AiInterviewer.controller.VxController;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yzdx.AiInterviewer.comment.R;
import com.yzdx.AiInterviewer.entity.VxEntityDto.VxCompanyLikeDto;
import com.yzdx.AiInterviewer.entity.VxEntityDto.VxJobLikeDto;
import com.yzdx.AiInterviewer.entity.vxEntity.VxCompanyLike;
import com.yzdx.AiInterviewer.service.CompanyService;
import com.yzdx.AiInterviewer.service.JobListService;
import com.yzdx.AiInterviewer.service.VxService.VxCompanyLikeService;
import com.yzdx.AiInterviewer.service.VxService.VxJobLikeService;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@RestController
@RequestMapping("/vxJob")
public class VxJobController {
@Autowired
private JobListService jobListService;
@Autowired
private VxJobLikeService vxJobLikeService;
@Autowired
private VxCompanyLikeService vxCompanyLikeService;
@Autowired
private CompanyService companyService;
// @GetMapping("/search_job")
// public R searchJobList(String searchName,String address){
//
// jobListService.vxSearchJob( searchName, address);
//
//
// }
/**
* 获取岗位关注列表
* @param userId
* @return R
*/
@GetMapping("/getJobLikeList")
public R getJobLikeList(Integer userId){
List<VxJobLikeDto> VxJobLikeDtos = vxJobLikeService.getJobLikeListById(userId);
return R.success(VxJobLikeDtos);
}
/**
* 收藏岗位关注
*
*/
@ApiImplicitParams({
@ApiImplicitParam(name = "jobId",required = true),
@ApiImplicitParam(name = "userId",required = true),
})
@PostMapping("/addJobLike")
public R addJobLike(@RequestParam(value = "jobId")Integer jobId,
@RequestParam(value = "userId")Integer userId){
Integer rows= vxJobLikeService.addJobLike(jobId,userId);
if(rows!=1){
return R.error("收藏失败");
}
return R.success("收藏成功");
}
/**
* 收藏企业关注
*/
@ApiImplicitParams({
@ApiImplicitParam(name = "companyId",required = true),
@ApiImplicitParam(name = "userId",required = true),
})
@PostMapping("/addCompanyLike")
public R addCompanyLike(@RequestParam(value = "companyId")Integer companyId,
@RequestParam(value = "userId")Integer userId){
Integer rows=vxCompanyLikeService.addCompanyLike(companyId,userId);
if(rows!=-1){
return R.error("收藏失败");
}
return R.success("收藏成功");
}
/**
* vx搜索岗位和企业
* @param searchName
* @param address
* @return R
*/
@GetMapping("/VxSearch")
public R searchList(String searchName,String address){
List<VxJobLikeDto> VxJobLikeDtos = jobListService.searchJobList(searchName,address);
List<VxCompanyLikeDto> VxCompanyLikeDtos = companyService.searchCompanyList(searchName,address);
Map<String ,Object> result=new HashMap<>();
result.put("company",VxCompanyLikeDtos);
result.put("job",VxJobLikeDtos);
return R.success(result);
}
}