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

364 lines
16 KiB
Java
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

package com.yzdx.AiInterviewer.controller;
import com.yzdx.AiInterviewer.comment.R;
import com.yzdx.AiInterviewer.entity.Company;
import com.yzdx.AiInterviewer.entity.JobEntity;
import com.yzdx.AiInterviewer.entity.dto.JobDto;
import com.yzdx.AiInterviewer.entity.dto.JobSettingDto;
import com.yzdx.AiInterviewer.service.CompanyService;
import com.yzdx.AiInterviewer.service.InterviewSettingService;
import com.yzdx.AiInterviewer.service.JobListService;
import io.swagger.annotations.*;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.*;
@RestController
@RequestMapping("/recruitment")
public class RecruitmentController {
@Autowired
private JobListService jobListService;
@Autowired
private InterviewSettingService interviewSettingService;
@Autowired
private CompanyService companyService;
@ApiImplicitParams({
@ApiImplicitParam(name = "address",required = true),
@ApiImplicitParam(name = "addressDetail",required = true),
@ApiImplicitParam(name = "details",required = true),
@ApiImplicitParam(name = "jobName",required = true),
@ApiImplicitParam(name = "startTime",required = true),
@ApiImplicitParam(name = "endTime",required = true),
@ApiImplicitParam(name = "jobTips",required = true),
@ApiImplicitParam(name = "jobType",required = true),
@ApiImplicitParam(name = "minSalary",required = true),
@ApiImplicitParam(name = "maxSalary",required = true),
@ApiImplicitParam(name = "minNumber",required = true),
@ApiImplicitParam(name = "maxNumber",required = true),
@ApiImplicitParam(name = "requirement",required = true),
@ApiImplicitParam(name = "userId",required = true),
@ApiImplicitParam(name = "encoding",required = true),
})
@PostMapping("/add_job")
@ApiOperation(value = "添加岗位",notes = "")
public R addJob(@RequestBody Map<String,Object> addInfo){
List<String> address=(List<String>) addInfo.get("address");
String encoding=(String) addInfo.get("encoding");
String address_detail=(String) addInfo.get("address_detail");
Integer jobType=(Integer) addInfo.get("jobType");
Integer userId=(Integer) addInfo.get("userId");
String details=(String) addInfo.get("details");
String jobName=(String) addInfo.get("jobName");
String startTime=(String) addInfo.get("startTime");
String endTime=(String) addInfo.get("endTime");
String min_salary=(String) addInfo.get("min_salary");
String max_salary=(String) addInfo.get("max_salary");
String min_number=(String) addInfo.get("min_number");
String max_number=(String) addInfo.get("max_number");
List<String> jobTips=(List<String>) addInfo.get("jobTips");
Integer requirement=(Integer) addInfo.get("requirement");
Integer rows=jobListService.addJob(address,address_detail,details,jobName,startTime,endTime,
jobTips,jobType,min_salary,max_salary,min_number,max_number,requirement,userId,encoding);
if(rows==-2){
return R.error("岗位名称已存在!");
}
return R.success("添加岗位成功");
}
@GetMapping("/get_jobList")
@ApiOperation(value = "根据公司编码获取岗位列表",notes = "")
public R getJobList(@ApiParam("String encoding") String encoding){
if (encoding==null){
return R.error(401,"身份验证失败,请重新登陆");
}
List<JobDto> jobList = jobListService.getJobList(encoding);
return R.success(jobList);
}
@GetMapping("/search_job")
@ApiOperation(value = "搜索岗位",notes = "")
public R searchJob(@ApiParam("(String) jobName,(String) jobType,(String) encoding 注释jobName和jobType可选填一个encoding必填")String jobName,String jobType,String encoding){
List<JobDto> jobEntities = jobListService.searchJob(jobName, jobType, encoding);
return R.success(jobEntities);
}
@GetMapping("/get_jobById")
@ApiOperation(value = "根据岗位ID获取岗位信息",notes = "")
public R getJobById(@ApiParam("Integer id") Integer id){
if(id==null){
return R.error("获取失败");
}
JobEntity jobById = jobListService.getJobById(id);
if(jobById==null){
return R.error("出错了,请联系管理员!");
}
return R.success(jobById);
}
@ApiImplicitParams({
@ApiImplicitParam(name = "id",required = true),
@ApiImplicitParam(name = "address",required = true),
@ApiImplicitParam(name = "address_detail",required = true),
@ApiImplicitParam(name = "details",required = true),
@ApiImplicitParam(name = "jobName",required = true),
@ApiImplicitParam(name = "startTime",required = true),
@ApiImplicitParam(name = "endTime",required = true),
@ApiImplicitParam(name = "jobTips",required = true),
@ApiImplicitParam(name = "jobType",required = true),
@ApiImplicitParam(name = "min_salary",required = true),
@ApiImplicitParam(name = "maxSalary",required = true),
@ApiImplicitParam(name = "min_number",required = true),
@ApiImplicitParam(name = "max_number",required = true),
@ApiImplicitParam(name = "requirement",required = true),
@ApiImplicitParam(name = "userId",required = true),
@ApiImplicitParam(name = "encoding",required = true),
})
@PostMapping("/update_job")
@ApiOperation(value = "更新岗位信息",notes = "")
public R updateJob(@RequestBody Map<String,Object> updateInfo){
Integer id=(Integer) updateInfo.get("id");
List<String> address=(List<String>) updateInfo.get("address");
String encoding=(String) updateInfo.get("encoding");
String address_detail=(String) updateInfo.get("addressDetail");
Integer jobType=(Integer) updateInfo.get("jobType");
Integer userId=(Integer) updateInfo.get("userId");
String details=(String) updateInfo.get("details");
String jobName=(String) updateInfo.get("jobName");
String startTime=(String) updateInfo.get("startTime");
String endTime=(String) updateInfo.get("endTime");
String min_salary=(String) updateInfo.get("minSalary");
String max_salary=(String) updateInfo.get("maxSalary");
String min_number=(String) updateInfo.get("minNumber");
String max_number=(String) updateInfo.get("maxNumber");
List<String> jobTips=(List<String>) updateInfo.get("jobTips");
Integer requirement=(Integer) updateInfo.get("requirement");
Integer rows=jobListService.updateJob(id,address,address_detail,details,jobName,startTime,endTime,jobTips,jobType,min_salary,max_salary,min_number,max_number,requirement,userId,encoding);
if (rows==-1){
return R.error("获取岗位信息失败,请稍后再试!");
}
if(rows==-2){
return R.error("岗位名称已存在!");
}
return R.success("修改岗位成功");
}
@ApiImplicitParams({
@ApiImplicitParam(name = "id",required = true),
@ApiImplicitParam(name = "userId",required = true),
})
@PostMapping("/update_jobStatus")
@ApiOperation(value = "更新岗位状态",notes = "")
public R changeJobStatus(@RequestBody Map<String,Object> updateInfo){
Integer id=(Integer) updateInfo.get("id");
Integer userId=(Integer) updateInfo.get("userId");
Integer row = jobListService.changeJobStatus(id, userId);
if (row==-1){
return R.error("修改失败,请联系管理员!");
}
return R.success("修改岗位状态成功");
}
@DeleteMapping("/delete_job")
@ApiOperation(value = "删除岗位",notes = "")
public R deleteJob(@ApiParam("Integer id") Integer id) {
if (id == null) {
return R.error("出错了,请联系管理员!");
}
Integer rows = jobListService.deleteJob(id);
if (rows != 1) {
return R.error("删除失败! 请联系管理员!");
}
return R.success("删除岗位成功!");
}
@ApiImplicitParams({
@ApiImplicitParam(name = "jobId",required = true),
@ApiImplicitParam(name = "imagesId",required = true),
@ApiImplicitParam(name = "backgroundId",required = true),
@ApiImplicitParam(name = "logoId",required = true),
@ApiImplicitParam(name = "Professional",required = true),
@ApiImplicitParam(name = "Comprehensive",required = true),
@ApiImplicitParam(name = "Psychology",required = true),
@ApiImplicitParam(name = "userId",required = true),
@ApiImplicitParam(name = "jobPromote",required = true),
@ApiImplicitParam(name = "encoding",required = true),
})
@PostMapping("/add_jobSetting")
@ApiOperation(value = "添加面试设置",notes = "")
public R addJobSetting(@RequestBody Map<String,Object> addInfo){
String encoding=(String) addInfo.get("encoding");
Integer jobId=(Integer) addInfo.get("jobId");
Integer imagesId=(Integer) addInfo.get("imagesId");
Integer backgroundId=(Integer) addInfo.get("backgroundId");
Integer logoId=(Integer) addInfo.get("logoId");
Integer userId=(Integer) addInfo.get("userId");
Integer Professional=(Integer) addInfo.get("Professional");
Integer Comprehensive=(Integer) addInfo.get("Comprehensive");
Integer Psychology=(Integer) addInfo.get("Psychology");
String jobPromote=(String) addInfo.get("jobPromote");
Integer rows = interviewSettingService.addJobSetting(jobId, imagesId, backgroundId, logoId, Professional, Comprehensive,
Psychology, userId, jobPromote, encoding);
if(rows==-1){
return R.error("添加设置失败,岗位的设置已存在!");
}
return R.success("添加岗位设置成功!");
}
@GetMapping("/get_jobSettingList")
@ApiOperation(value = "获取面试设置",notes = "")
public R getJobSettingList(@ApiParam("String encoding") String encoding){
List<JobSettingDto> jobSettingList = interviewSettingService.getJobSettingList(encoding);
return R.success(jobSettingList);
}
@GetMapping("/search_setting")
@ApiOperation(value = "搜索面试设置",notes = "")
public R searchJobSettings(@ApiParam("String jobName,String encoding")String jobName,String encoding){
List<JobSettingDto> jobSettingDtos = interviewSettingService.searchJobSetting(jobName, encoding);
return R.success(jobSettingDtos);
}
@DeleteMapping("/delete_jobJobSetting")
@ApiOperation(value = "删除面试设置",notes = "")
public R deleteJobSetting(Integer id){
Integer rows = interviewSettingService.deleteJobSetting(id);
if(rows==-1){
R.error("删除失败,请联系管理员");
}
return R.success("删除成功!");
}
@ApiImplicitParams({
@ApiImplicitParam(name = "jobId",required = true),
@ApiImplicitParam(name = "id",required = true),
@ApiImplicitParam(name = "imagesId",required = true),
@ApiImplicitParam(name = "backgroundId",required = true),
@ApiImplicitParam(name = "logoId",required = true),
@ApiImplicitParam(name = "Professional",required = true),
@ApiImplicitParam(name = "Comprehensive",required = true),
@ApiImplicitParam(name = "Psychology",required = true),
@ApiImplicitParam(name = "userId",required = true),
@ApiImplicitParam(name = "jobPromote",required = true),
@ApiImplicitParam(name = "encoding",required = true),
})
@PostMapping("/update_jobJobSetting")
@ApiOperation(value = "更新面试设置",notes = "")
public R updateJobSetting(@RequestBody Map<String,Object> updateInfo){
String encoding=(String) updateInfo.get("encoding");
Integer jobId=(Integer) updateInfo.get("jobId");
Integer imagesId=(Integer) updateInfo.get("imagesId");
Integer backgroundId=(Integer) updateInfo.get("backgroundId");
Integer logoId=(Integer) updateInfo.get("logoId");
Integer id=(Integer)updateInfo.get("id");
Integer userId=(Integer) updateInfo.get("userId");
Integer Professional=(Integer) updateInfo.get("Professional");
Integer Comprehensive=(Integer) updateInfo.get("Comprehensive");
Integer Psychology=(Integer) updateInfo.get("Psychology");
String jobPromote=(String) updateInfo.get("jobPromote");
Integer rows= interviewSettingService.updateJobSetting(id,jobId, imagesId, backgroundId, logoId,
Professional, Comprehensive, Psychology, userId, jobPromote, encoding);
if(rows==-1){
return R.error("修改失败");
}
return R.success("修改成功");
}
@GetMapping("/get_companyDetail")
@ApiOperation(value = "获取公司详情",notes = "")
public R getCompanyDetail(@ApiParam ("String encoding") String encoding){
if(encoding==null){
return R.error("获取失败");
}
Company companyDetail = companyService.getCompanyDetail(encoding);
if(companyDetail==null){
return R.error("获取失败");
}
return R.success(companyDetail);
}
@ApiImplicitParams({
@ApiImplicitParam(name = "jobId",required = true),
@ApiImplicitParam(name = "id",required = true),
@ApiImplicitParam(name = "imagesId",required = true),
@ApiImplicitParam(name = "backgroundId",required = true),
@ApiImplicitParam(name = "logoId",required = true),
@ApiImplicitParam(name = "Professional",required = true),
@ApiImplicitParam(name = "Comprehensive",required = true),
@ApiImplicitParam(name = "Psychology",required = true),
@ApiImplicitParam(name = "userId",required = true),
@ApiImplicitParam(name = "jobPromote",required = true),
@ApiImplicitParam(name = "encoding",required = true),
})
@PostMapping("/update_companyDetail")
@ApiOperation(value = "更新公司详情",notes = "")
public R UpdateCompanyDetail(@RequestBody Map<String,Object> updateInfo){
String encoding=(String) updateInfo.get("encoding");
String type=(String) updateInfo.get("type");
List<String> address=(List<String>) updateInfo.get("address");
Integer userId=(Integer) updateInfo.get("userId");
String companyAllName=(String) updateInfo.get("companyAllName");
String addressDetail=(String) updateInfo.get("addressDetail");
String companyDetail=(String) updateInfo.get("companyDetail");
String companyName=(String) updateInfo.get("companyName");
String creditCode=(String) updateInfo.get("creditCode");
String established=(String) updateInfo.get("established");
String legalRepresentative=(String) updateInfo.get("legalRepresentative");
String treatment=(String) updateInfo.get("treatment");
String registeredCapital=(String) updateInfo.get("registeredCapital");
String images=(String) updateInfo.get("images");
String companyLogo=(String) updateInfo.get("companyLogo");
String staffNumber=(String) updateInfo.get("staffNumber");
System.out.println(address.toString());
Integer row = companyService.updateCompanyDetail(address.toString(), addressDetail,type,companyAllName,
companyDetail, companyName,
creditCode, encoding, established,
images, legalRepresentative,
treatment, registeredCapital, userId,
companyLogo,staffNumber);
if (row==-1){
return R.error("更新失败");
}
return R.success("更新成功");
}
}