From 364b9d0ff42330a91c0f8fb870997ddd60cec7ce Mon Sep 17 00:00:00 2001 From: ljq <2660820526@qq.com> Date: Thu, 7 Dec 2023 09:51:52 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8A=95=E9=80=92=E7=AE=80=E5=8E=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../config/CorsFilterConfig.java | 2 +- .../VxController/VxInterviewController.java | 20 ++++++++-- .../vxEntity/VxInterviewApplication.java | 30 +++++++++++++++ .../entity/vxEntity/VxInterviewNotice.java | 30 +++++++++++++++ .../VxMapper/InterviewNoticeMapper.java | 9 +++++ .../VxInterviewApplicationMapper.java | 9 +++++ .../VxService/InterviewNoticeService.java | 8 ++++ .../VxInterviewApplicationService.java | 8 ++++ .../VxInterviewApplicationServiceImpl.java | 38 +++++++++++++++++++ .../VxService/impl/VxInterviewNoticeImpl.java | 11 ++++++ 10 files changed, 161 insertions(+), 4 deletions(-) create mode 100644 src/main/java/com/yzdx/AiInterviewer/entity/vxEntity/VxInterviewApplication.java create mode 100644 src/main/java/com/yzdx/AiInterviewer/entity/vxEntity/VxInterviewNotice.java create mode 100644 src/main/java/com/yzdx/AiInterviewer/mapper/VxMapper/InterviewNoticeMapper.java create mode 100644 src/main/java/com/yzdx/AiInterviewer/mapper/VxMapper/VxInterviewApplicationMapper.java create mode 100644 src/main/java/com/yzdx/AiInterviewer/service/VxService/InterviewNoticeService.java create mode 100644 src/main/java/com/yzdx/AiInterviewer/service/VxService/VxInterviewApplicationService.java create mode 100644 src/main/java/com/yzdx/AiInterviewer/service/VxService/impl/VxInterviewApplicationServiceImpl.java create mode 100644 src/main/java/com/yzdx/AiInterviewer/service/VxService/impl/VxInterviewNoticeImpl.java diff --git a/src/main/java/com/yzdx/AiInterviewer/config/CorsFilterConfig.java b/src/main/java/com/yzdx/AiInterviewer/config/CorsFilterConfig.java index ce1d3b7..507649d 100644 --- a/src/main/java/com/yzdx/AiInterviewer/config/CorsFilterConfig.java +++ b/src/main/java/com/yzdx/AiInterviewer/config/CorsFilterConfig.java @@ -10,7 +10,7 @@ import org.springframework.web.filter.CorsFilter; * 解决跨域 */ @Configuration -public class CorsFilterConfig { +public class CorsFilterConfig { /** diff --git a/src/main/java/com/yzdx/AiInterviewer/controller/VxController/VxInterviewController.java b/src/main/java/com/yzdx/AiInterviewer/controller/VxController/VxInterviewController.java index f832c0f..7113d40 100644 --- a/src/main/java/com/yzdx/AiInterviewer/controller/VxController/VxInterviewController.java +++ b/src/main/java/com/yzdx/AiInterviewer/controller/VxController/VxInterviewController.java @@ -2,10 +2,9 @@ package com.yzdx.AiInterviewer.controller.VxController; import com.yzdx.AiInterviewer.comment.R; import com.yzdx.AiInterviewer.service.VxService.VxCarouselChartService; +import com.yzdx.AiInterviewer.service.VxService.VxInterviewApplicationService; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; @RestController @RequestMapping("/vx_interview") @@ -13,10 +12,25 @@ public class VxInterviewController { @Autowired private VxCarouselChartService vxCarouselChartService; + @Autowired + private VxInterviewApplicationService vxInterviewApplicationService; @GetMapping("/getCarouselChart") public R getCarouselChart(){ return R.success(vxCarouselChartService.getVxCarouselChartService()); } + @PostMapping("addInterviewApplication") + public R addInterviewApplication( @RequestParam(value = "jobId")Integer jobId, + @RequestParam(value = "userId")Integer userId, + @RequestParam(value = "resumeId")Integer resumeId, + @RequestParam(value = "postingId")Integer postingId, + @RequestParam(value = "companyEncoding")String companyEncoding, + @RequestParam(value = "status")Integer status){ + Integer rows=vxInterviewApplicationService.addInterviewApplication(jobId,userId,resumeId,postingId,companyEncoding,status); + if(rows==-2){ + return R.error("申请失败"); + } + return R.success("申请成功"); + } } diff --git a/src/main/java/com/yzdx/AiInterviewer/entity/vxEntity/VxInterviewApplication.java b/src/main/java/com/yzdx/AiInterviewer/entity/vxEntity/VxInterviewApplication.java new file mode 100644 index 0000000..6fa8dfb --- /dev/null +++ b/src/main/java/com/yzdx/AiInterviewer/entity/vxEntity/VxInterviewApplication.java @@ -0,0 +1,30 @@ +package com.yzdx.AiInterviewer.entity.vxEntity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.yzdx.AiInterviewer.entity.BaseEntity; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +@ApiModel("面试申请表") +@TableName("interview_application") +public class VxInterviewApplication extends BaseEntity { + @ApiModelProperty("申请表id") + @TableId(type = IdType.AUTO) + private Integer id; + @ApiModelProperty("用户id ") + private Integer userId; + @ApiModelProperty("招聘id") + private Integer postingId; + @ApiModelProperty("公司编码") + private String companyEncoding; + @ApiModelProperty("岗位id") + private Integer jobId; + @ApiModelProperty("简历id") + private Integer resumeId; + @ApiModelProperty("状态") + private Integer status; +} diff --git a/src/main/java/com/yzdx/AiInterviewer/entity/vxEntity/VxInterviewNotice.java b/src/main/java/com/yzdx/AiInterviewer/entity/vxEntity/VxInterviewNotice.java new file mode 100644 index 0000000..ccd76b8 --- /dev/null +++ b/src/main/java/com/yzdx/AiInterviewer/entity/vxEntity/VxInterviewNotice.java @@ -0,0 +1,30 @@ +package com.yzdx.AiInterviewer.entity.vxEntity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.yzdx.AiInterviewer.entity.BaseEntity; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +@ApiModel("微信面试通知类") +@TableName("interview_notice") +public class VxInterviewNotice extends BaseEntity { + @TableId(type = IdType.AUTO) + @ApiModelProperty("面试通知id") + private Integer id; + @ApiModelProperty("公司编码") + private String companyEncoding; + @ApiModelProperty("通知内容") + private String detail; + @ApiModelProperty("注意事项") + private String attention; + @ApiModelProperty("接收人id") + private Integer recipient; + @ApiModelProperty("岗位id") + private Integer jobId; + @ApiModelProperty("招聘面试id") + private Integer postId; +} diff --git a/src/main/java/com/yzdx/AiInterviewer/mapper/VxMapper/InterviewNoticeMapper.java b/src/main/java/com/yzdx/AiInterviewer/mapper/VxMapper/InterviewNoticeMapper.java new file mode 100644 index 0000000..b7ae9c7 --- /dev/null +++ b/src/main/java/com/yzdx/AiInterviewer/mapper/VxMapper/InterviewNoticeMapper.java @@ -0,0 +1,9 @@ +package com.yzdx.AiInterviewer.mapper.VxMapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.yzdx.AiInterviewer.entity.vxEntity.VxInterviewNotice; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface InterviewNoticeMapper extends BaseMapper { +} diff --git a/src/main/java/com/yzdx/AiInterviewer/mapper/VxMapper/VxInterviewApplicationMapper.java b/src/main/java/com/yzdx/AiInterviewer/mapper/VxMapper/VxInterviewApplicationMapper.java new file mode 100644 index 0000000..c11a9e7 --- /dev/null +++ b/src/main/java/com/yzdx/AiInterviewer/mapper/VxMapper/VxInterviewApplicationMapper.java @@ -0,0 +1,9 @@ +package com.yzdx.AiInterviewer.mapper.VxMapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.yzdx.AiInterviewer.entity.vxEntity.VxInterviewApplication; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface VxInterviewApplicationMapper extends BaseMapper { +} diff --git a/src/main/java/com/yzdx/AiInterviewer/service/VxService/InterviewNoticeService.java b/src/main/java/com/yzdx/AiInterviewer/service/VxService/InterviewNoticeService.java new file mode 100644 index 0000000..974a342 --- /dev/null +++ b/src/main/java/com/yzdx/AiInterviewer/service/VxService/InterviewNoticeService.java @@ -0,0 +1,8 @@ +package com.yzdx.AiInterviewer.service.VxService; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.yzdx.AiInterviewer.entity.vxEntity.VxFeedBack; +import com.yzdx.AiInterviewer.entity.vxEntity.VxInterviewNotice; + +public interface InterviewNoticeService extends IService { +} diff --git a/src/main/java/com/yzdx/AiInterviewer/service/VxService/VxInterviewApplicationService.java b/src/main/java/com/yzdx/AiInterviewer/service/VxService/VxInterviewApplicationService.java new file mode 100644 index 0000000..ceaa0b4 --- /dev/null +++ b/src/main/java/com/yzdx/AiInterviewer/service/VxService/VxInterviewApplicationService.java @@ -0,0 +1,8 @@ +package com.yzdx.AiInterviewer.service.VxService; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.yzdx.AiInterviewer.entity.vxEntity.VxInterviewApplication; + +public interface VxInterviewApplicationService extends IService { + Integer addInterviewApplication(Integer jobId, Integer userId, Integer resumeId, Integer postingId, String companyEncoding, Integer status); +} diff --git a/src/main/java/com/yzdx/AiInterviewer/service/VxService/impl/VxInterviewApplicationServiceImpl.java b/src/main/java/com/yzdx/AiInterviewer/service/VxService/impl/VxInterviewApplicationServiceImpl.java new file mode 100644 index 0000000..ec3b54a --- /dev/null +++ b/src/main/java/com/yzdx/AiInterviewer/service/VxService/impl/VxInterviewApplicationServiceImpl.java @@ -0,0 +1,38 @@ +package com.yzdx.AiInterviewer.service.VxService.impl; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.yzdx.AiInterviewer.entity.vxEntity.VxInterviewApplication; +import com.yzdx.AiInterviewer.mapper.VxMapper.VxInterviewApplicationMapper; +import com.yzdx.AiInterviewer.service.VxService.VxInterviewApplicationService; +import com.yzdx.AiInterviewer.utiles.TimeUtil; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +@Service +public class VxInterviewApplicationServiceImpl extends ServiceImpl implements VxInterviewApplicationService { + @Autowired + private VxInterviewApplicationMapper vxInterviewApplicationMapper; + @Override + public Integer addInterviewApplication(Integer jobId, Integer userId, Integer resumeId, Integer postingId, String companyEncoding, Integer status) { + LambdaQueryWrapper queryWrapper=new LambdaQueryWrapper<>(); + queryWrapper.eq(VxInterviewApplication::getJobId,jobId).eq(VxInterviewApplication::getPostingId,postingId); + VxInterviewApplication vxInterviewApplication = vxInterviewApplicationMapper.selectOne(queryWrapper); + if(vxInterviewApplication!=null){ + return -2; + } + VxInterviewApplication vxInterviewApplication1=new VxInterviewApplication(); + vxInterviewApplication1.setJobId(jobId); + vxInterviewApplication1.setCompanyEncoding(companyEncoding); + vxInterviewApplication1.setPostingId(postingId); + vxInterviewApplication1.setUserId(userId); + vxInterviewApplication1.setResumeId(resumeId); + vxInterviewApplication1.setStatus(status); + vxInterviewApplication1.setCreateTime(TimeUtil.getTime()); + vxInterviewApplication1.setUpdateTime(TimeUtil.getTime()); + vxInterviewApplication1.setCreateUser(userId); + vxInterviewApplication1.setUpdateUser(userId); + int insert = vxInterviewApplicationMapper.insert(vxInterviewApplication1); + return insert; + } +} diff --git a/src/main/java/com/yzdx/AiInterviewer/service/VxService/impl/VxInterviewNoticeImpl.java b/src/main/java/com/yzdx/AiInterviewer/service/VxService/impl/VxInterviewNoticeImpl.java new file mode 100644 index 0000000..e3ecd2a --- /dev/null +++ b/src/main/java/com/yzdx/AiInterviewer/service/VxService/impl/VxInterviewNoticeImpl.java @@ -0,0 +1,11 @@ +package com.yzdx.AiInterviewer.service.VxService.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.yzdx.AiInterviewer.entity.vxEntity.VxInterviewNotice; +import com.yzdx.AiInterviewer.mapper.VxMapper.InterviewNoticeMapper; +import com.yzdx.AiInterviewer.service.VxService.InterviewNoticeService; +import org.springframework.stereotype.Service; + +@Service +public class VxInterviewNoticeImpl extends ServiceImpl implements InterviewNoticeService { +}