公共处理
This commit is contained in:
@@ -0,0 +1,31 @@
|
|||||||
|
package com.cool.store.enums;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author zhangchenbiao
|
||||||
|
* @FileName: AuditResultTypeEnum
|
||||||
|
* @Description:
|
||||||
|
* @date 2024-03-20 14:55
|
||||||
|
*/
|
||||||
|
public enum AuditResultTypeEnum {
|
||||||
|
|
||||||
|
PASS(0, "通过"),
|
||||||
|
REJECT(1, "拒绝"),
|
||||||
|
CLOSE(2, "结束跟进");
|
||||||
|
|
||||||
|
private Integer code;
|
||||||
|
|
||||||
|
private String name;
|
||||||
|
|
||||||
|
private AuditResultTypeEnum(Integer code, String name) {
|
||||||
|
this.code = code;
|
||||||
|
this.name = name;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Integer getCode() {
|
||||||
|
return code;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getName() {
|
||||||
|
return name;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -1,5 +1,6 @@
|
|||||||
package com.cool.store.dao;
|
package com.cool.store.dao;
|
||||||
|
|
||||||
|
import com.cool.store.entity.LineAuditInfoDO;
|
||||||
import com.cool.store.mapper.LineAuditInfoMapper;
|
import com.cool.store.mapper.LineAuditInfoMapper;
|
||||||
import org.springframework.stereotype.Repository;
|
import org.springframework.stereotype.Repository;
|
||||||
|
|
||||||
@@ -17,4 +18,9 @@ public class LineAuditInfoDAO {
|
|||||||
@Resource
|
@Resource
|
||||||
private LineAuditInfoMapper lineAuditInfoMapper;
|
private LineAuditInfoMapper lineAuditInfoMapper;
|
||||||
|
|
||||||
|
public Long addAuditInfo(LineAuditInfoDO auditInfo){
|
||||||
|
lineAuditInfoMapper.insertSelective(auditInfo);
|
||||||
|
return auditInfo.getId();
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,26 @@
|
|||||||
|
package com.cool.store.request;
|
||||||
|
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author zhangchenbiao
|
||||||
|
* @FileName: AuditRequest
|
||||||
|
* @Description:
|
||||||
|
* @date 2024-03-20 14:28
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class AuditPassRequest {
|
||||||
|
|
||||||
|
@ApiModelProperty("线索ID")
|
||||||
|
private Long lineId;
|
||||||
|
|
||||||
|
@ApiModelProperty("证明文件与凭证")
|
||||||
|
private List<String> certifyFile;
|
||||||
|
|
||||||
|
@ApiModelProperty("通过原因")
|
||||||
|
private String passReason;
|
||||||
|
|
||||||
|
}
|
||||||
@@ -0,0 +1,29 @@
|
|||||||
|
package com.cool.store.request;
|
||||||
|
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author zhangchenbiao
|
||||||
|
* @FileName: AuditRequest
|
||||||
|
* @Description:
|
||||||
|
* @date 2024-03-20 14:28
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class AuditRejectRequest {
|
||||||
|
|
||||||
|
@ApiModelProperty("线索ID")
|
||||||
|
private Long lineId;
|
||||||
|
|
||||||
|
@ApiModelProperty("公开拒绝原因")
|
||||||
|
private String rejectPublicReason;
|
||||||
|
|
||||||
|
@ApiModelProperty("真实拒绝原因")
|
||||||
|
private String rejectRealReason;
|
||||||
|
|
||||||
|
@ApiModelProperty("证明文件与凭证")
|
||||||
|
private List<String> certifyFile;
|
||||||
|
|
||||||
|
}
|
||||||
@@ -0,0 +1,76 @@
|
|||||||
|
package com.cool.store.service;
|
||||||
|
|
||||||
|
import com.alibaba.fastjson.JSONObject;
|
||||||
|
import com.cool.store.dao.LineAuditInfoDAO;
|
||||||
|
import com.cool.store.dao.LineInfoDAO;
|
||||||
|
import com.cool.store.entity.LineAuditInfoDO;
|
||||||
|
import com.cool.store.entity.LineInfoDO;
|
||||||
|
import com.cool.store.enums.AuditResultTypeEnum;
|
||||||
|
import com.cool.store.request.AuditPassRequest;
|
||||||
|
import com.cool.store.request.AuditRejectRequest;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import javax.annotation.Resource;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author zhangchenbiao
|
||||||
|
* @FileName: LineFlowService
|
||||||
|
* @Description:
|
||||||
|
* @date 2024-03-20 14:32
|
||||||
|
*/
|
||||||
|
@Service
|
||||||
|
public abstract class LineFlowService {
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private LineAuditInfoDAO lineAuditInfoDAO;
|
||||||
|
@Resource
|
||||||
|
private LineInfoDAO lineInfoDAO;
|
||||||
|
|
||||||
|
private LineFlowService lineFlowService;
|
||||||
|
|
||||||
|
public Boolean auditPass(LineInfoDO lineInfo, AuditPassRequest request){
|
||||||
|
String partnerId = lineInfo.getPartnerId();
|
||||||
|
LineAuditInfoDO auditInfo = new LineAuditInfoDO();
|
||||||
|
auditInfo.setLineId(request.getLineId());
|
||||||
|
auditInfo.setPartnerId(partnerId);
|
||||||
|
auditInfo.setResultType(AuditResultTypeEnum.PASS.getCode());
|
||||||
|
auditInfo.setPassReason(request.getPassReason());
|
||||||
|
auditInfo.setCertifyFile(JSONObject.toJSONString(request.getCertifyFile()));
|
||||||
|
Long auditId = lineAuditInfoDAO.addAuditInfo(auditInfo);
|
||||||
|
return auditPass(auditId, lineInfo, request);
|
||||||
|
}
|
||||||
|
|
||||||
|
public Boolean auditReject(LineInfoDO lineInfo, AuditRejectRequest request){
|
||||||
|
String partnerId = lineInfo.getPartnerId();
|
||||||
|
LineAuditInfoDO auditInfo = new LineAuditInfoDO();
|
||||||
|
auditInfo.setLineId(request.getLineId());
|
||||||
|
auditInfo.setPartnerId(partnerId);
|
||||||
|
auditInfo.setResultType(AuditResultTypeEnum.REJECT.getCode());
|
||||||
|
auditInfo.setRejectPublicReason(request.getRejectPublicReason());
|
||||||
|
auditInfo.setRejectRealReason(request.getRejectRealReason());
|
||||||
|
auditInfo.setCertifyFile(JSONObject.toJSONString(request.getCertifyFile()));
|
||||||
|
Long auditId = lineAuditInfoDAO.addAuditInfo(auditInfo);
|
||||||
|
return auditReject(auditId, lineInfo, request);
|
||||||
|
}
|
||||||
|
|
||||||
|
public Boolean auditClose(LineInfoDO lineInfo, AuditRejectRequest request){
|
||||||
|
String partnerId = lineInfo.getPartnerId();
|
||||||
|
LineAuditInfoDO auditInfo = new LineAuditInfoDO();
|
||||||
|
auditInfo.setLineId(request.getLineId());
|
||||||
|
auditInfo.setPartnerId(partnerId);
|
||||||
|
auditInfo.setResultType(AuditResultTypeEnum.CLOSE.getCode());
|
||||||
|
auditInfo.setRejectPublicReason(request.getRejectPublicReason());
|
||||||
|
auditInfo.setRejectRealReason(request.getRejectRealReason());
|
||||||
|
auditInfo.setCertifyFile(JSONObject.toJSONString(request.getCertifyFile()));
|
||||||
|
Long auditId = lineAuditInfoDAO.addAuditInfo(auditInfo);
|
||||||
|
return auditClose(auditId, lineInfo, request);
|
||||||
|
}
|
||||||
|
|
||||||
|
protected abstract Boolean auditPass(Long auditId, LineInfoDO lineInfo, AuditPassRequest request);
|
||||||
|
|
||||||
|
protected abstract Boolean auditReject(Long auditId, LineInfoDO lineInfo, AuditRejectRequest request);
|
||||||
|
|
||||||
|
protected abstract Boolean auditClose(Long auditId, LineInfoDO lineInfo, AuditRejectRequest request);
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
@@ -65,4 +65,13 @@ public interface LineInterviewService {
|
|||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
EnterInterviewVO enterInterviewRoom(Long interviewId, String interviewUserId, InterviewUserTypeEnum userType);
|
EnterInterviewVO enterInterviewRoom(Long interviewId, String interviewUserId, InterviewUserTypeEnum userType);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 结束面试
|
||||||
|
* @param interviewId
|
||||||
|
* @param userId
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
Integer finishInterview(Long interviewId, String userId);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -9,10 +9,9 @@ import com.cool.store.entity.LineInterviewDO;
|
|||||||
import com.cool.store.enums.*;
|
import com.cool.store.enums.*;
|
||||||
import com.cool.store.exception.ApiException;
|
import com.cool.store.exception.ApiException;
|
||||||
import com.cool.store.exception.ServiceException;
|
import com.cool.store.exception.ServiceException;
|
||||||
import com.cool.store.request.AppointmentTimeRequest;
|
import com.cool.store.request.*;
|
||||||
import com.cool.store.request.LineInterviewPageRequest;
|
|
||||||
import com.cool.store.request.ModifyInterviewerRequest;
|
|
||||||
import com.cool.store.service.LabelService;
|
import com.cool.store.service.LabelService;
|
||||||
|
import com.cool.store.service.LineFlowService;
|
||||||
import com.cool.store.service.LineInterviewService;
|
import com.cool.store.service.LineInterviewService;
|
||||||
import com.cool.store.utils.TRTCUtils;
|
import com.cool.store.utils.TRTCUtils;
|
||||||
import com.cool.store.utils.UUIDUtils;
|
import com.cool.store.utils.UUIDUtils;
|
||||||
@@ -22,6 +21,7 @@ import com.cool.store.vo.interview.EnterInterviewVO;
|
|||||||
import com.cool.store.vo.interview.LineInterviewPageVO;
|
import com.cool.store.vo.interview.LineInterviewPageVO;
|
||||||
import com.github.pagehelper.Page;
|
import com.github.pagehelper.Page;
|
||||||
import com.github.pagehelper.PageInfo;
|
import com.github.pagehelper.PageInfo;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
import org.apache.commons.lang3.tuple.Pair;
|
import org.apache.commons.lang3.tuple.Pair;
|
||||||
import org.springframework.beans.factory.annotation.Value;
|
import org.springframework.beans.factory.annotation.Value;
|
||||||
@@ -42,8 +42,9 @@ import java.util.stream.Stream;
|
|||||||
* @Description:
|
* @Description:
|
||||||
* @date 2024-03-15 16:04
|
* @date 2024-03-15 16:04
|
||||||
*/
|
*/
|
||||||
|
@Slf4j
|
||||||
@Service
|
@Service
|
||||||
public class LineInterviewServiceImpl implements LineInterviewService {
|
public class LineInterviewServiceImpl extends LineFlowService implements LineInterviewService {
|
||||||
|
|
||||||
@Value("${trtc.sdkAppId}")
|
@Value("${trtc.sdkAppId}")
|
||||||
private Long sdkAppId;
|
private Long sdkAppId;
|
||||||
@@ -224,4 +225,38 @@ public class LineInterviewServiceImpl implements LineInterviewService {
|
|||||||
String userSig = TRTCUtils.genUserSig(sdkAppId, key, interviewUserId);
|
String userSig = TRTCUtils.genUserSig(sdkAppId, key, interviewUserId);
|
||||||
return new EnterInterviewVO(userSig, interviewInfo.getInterviewer(), userName, lineInfo.getUsername());
|
return new EnterInterviewVO(userSig, interviewInfo.getInterviewer(), userName, lineInfo.getUsername());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Integer finishInterview(Long interviewId, String userId) {
|
||||||
|
LineInterviewDO interviewInfo = lineInterviewDAO.getInterviewInfoById(interviewId);
|
||||||
|
if(Objects.isNull(interviewInfo)){
|
||||||
|
throw new ServiceException(ErrorCodeEnum.INTERVIEW_NOT_EXIST);
|
||||||
|
}
|
||||||
|
//已关闭就禁止进入房间了
|
||||||
|
if (interviewInfo.getRoomStatus().equals(RoomStatus.CLOSED.getCode())) {
|
||||||
|
throw new ServiceException(ErrorCodeEnum.ROOM_STATUS_ERROR);
|
||||||
|
}
|
||||||
|
interviewInfo.setRoomStatus(RoomStatus.CLOSED.getCode());
|
||||||
|
interviewInfo.setActualEndTime(new Date());
|
||||||
|
//更新线索状态
|
||||||
|
LineInfoDO lineInfo = new LineInfoDO();
|
||||||
|
lineInfoDAO.updateLineInfo(lineInfo);
|
||||||
|
return lineInterviewDAO.updateInterviewInfo(interviewInfo);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected Boolean auditPass(Long auditId, LineInfoDO lineInfo, AuditPassRequest request) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected Boolean auditReject(Long auditId, LineInfoDO lineInfo, AuditRejectRequest request) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected Boolean auditClose(Long auditId, LineInfoDO lineInfo, AuditRejectRequest request) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,73 @@
|
|||||||
|
package com.cool.store.controller.webb;
|
||||||
|
|
||||||
|
import com.cool.store.dao.LineInfoDAO;
|
||||||
|
import com.cool.store.entity.LineInfoDO;
|
||||||
|
import com.cool.store.request.AuditPassRequest;
|
||||||
|
import com.cool.store.request.AuditRejectRequest;
|
||||||
|
import com.cool.store.response.ResponseResult;
|
||||||
|
import com.cool.store.service.LineFlowService;
|
||||||
|
import com.cool.store.service.impl.LineInterviewServiceImpl;
|
||||||
|
import io.swagger.annotations.Api;
|
||||||
|
import io.swagger.annotations.ApiOperation;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.context.ApplicationContext;
|
||||||
|
import org.springframework.web.bind.annotation.PostMapping;
|
||||||
|
import org.springframework.web.bind.annotation.RequestBody;
|
||||||
|
import org.springframework.web.bind.annotation.RequestMapping;
|
||||||
|
import org.springframework.web.bind.annotation.RestController;
|
||||||
|
|
||||||
|
import javax.annotation.Resource;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author zhangchenbiao
|
||||||
|
* @FileName: LineOperationController
|
||||||
|
* @Description:
|
||||||
|
* @date 2024-03-20 14:20
|
||||||
|
*/
|
||||||
|
@Api(tags = "线索审核")
|
||||||
|
@RestController
|
||||||
|
@RequestMapping({"/audit"})
|
||||||
|
public class LineAuditController {
|
||||||
|
|
||||||
|
private LineFlowService lineFlowService;
|
||||||
|
@Resource
|
||||||
|
private LineInfoDAO lineInfoDAO;
|
||||||
|
@Autowired
|
||||||
|
private ApplicationContext applicationContext;
|
||||||
|
|
||||||
|
@ApiOperation("审核通过")
|
||||||
|
@PostMapping("/pass")
|
||||||
|
public ResponseResult<Boolean> auditPass(@RequestBody AuditPassRequest request){
|
||||||
|
LineInfoDO lineInfo = lineInfoDAO.getLineInfo(request.getLineId());
|
||||||
|
initLineFlowService(lineInfo);
|
||||||
|
return ResponseResult.success(lineFlowService.auditPass(lineInfo, request));
|
||||||
|
}
|
||||||
|
|
||||||
|
@ApiOperation("审核拒绝")
|
||||||
|
@PostMapping("/reject")
|
||||||
|
public ResponseResult<Boolean> auditReject(@RequestBody AuditRejectRequest request){
|
||||||
|
LineInfoDO lineInfo = lineInfoDAO.getLineInfo(request.getLineId());
|
||||||
|
initLineFlowService(lineInfo);
|
||||||
|
return ResponseResult.success(lineFlowService.auditReject(lineInfo, request));
|
||||||
|
}
|
||||||
|
|
||||||
|
@ApiOperation("结束跟进")
|
||||||
|
@PostMapping("/close")
|
||||||
|
public ResponseResult<Boolean> auditClose(@RequestBody AuditRejectRequest request){
|
||||||
|
LineInfoDO lineInfo = lineInfoDAO.getLineInfo(request.getLineId());
|
||||||
|
initLineFlowService(lineInfo);
|
||||||
|
return ResponseResult.success(lineFlowService.auditClose(lineInfo, request));
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
private void initLineFlowService(LineInfoDO lineInfo){
|
||||||
|
Integer workflowSubStage = lineInfo.getWorkflowSubStage();
|
||||||
|
if(workflowSubStage == 1){
|
||||||
|
this.lineFlowService = (LineFlowService)applicationContext.getBean(LineInterviewServiceImpl.class);
|
||||||
|
}else{
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
@@ -2,27 +2,22 @@ package com.cool.store.controller.webb;
|
|||||||
|
|
||||||
import com.cool.store.context.CurrentUserHolder;
|
import com.cool.store.context.CurrentUserHolder;
|
||||||
import com.cool.store.enums.InterviewUserTypeEnum;
|
import com.cool.store.enums.InterviewUserTypeEnum;
|
||||||
|
import com.cool.store.exception.ApiException;
|
||||||
import com.cool.store.request.AppointmentTimeRequest;
|
import com.cool.store.request.AppointmentTimeRequest;
|
||||||
import com.cool.store.request.LineInterviewPageRequest;
|
import com.cool.store.request.LineInterviewPageRequest;
|
||||||
import com.cool.store.request.ModifyInterviewerRequest;
|
import com.cool.store.request.ModifyInterviewerRequest;
|
||||||
import com.cool.store.response.ResponseResult;
|
import com.cool.store.response.ResponseResult;
|
||||||
import com.cool.store.service.LineInterviewService;
|
import com.cool.store.service.LineInterviewService;
|
||||||
import com.cool.store.vo.interview.AppointmentTimeVO;
|
|
||||||
import com.cool.store.vo.interview.EnterInterviewVO;
|
import com.cool.store.vo.interview.EnterInterviewVO;
|
||||||
import com.cool.store.vo.interview.LineInterviewPageVO;
|
import com.cool.store.vo.interview.LineInterviewPageVO;
|
||||||
import com.github.pagehelper.PageInfo;
|
import com.github.pagehelper.PageInfo;
|
||||||
import io.swagger.annotations.Api;
|
import io.swagger.annotations.Api;
|
||||||
import io.swagger.annotations.ApiImplicitParam;
|
|
||||||
import io.swagger.annotations.ApiImplicitParams;
|
|
||||||
import io.swagger.annotations.ApiOperation;
|
import io.swagger.annotations.ApiOperation;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.springframework.format.annotation.DateTimeFormat;
|
|
||||||
import org.springframework.validation.annotation.Validated;
|
import org.springframework.validation.annotation.Validated;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
import javax.annotation.Resource;
|
||||||
import java.time.LocalDate;
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author zhangchenbiao
|
* @author zhangchenbiao
|
||||||
@@ -32,7 +27,7 @@ import java.util.List;
|
|||||||
*/
|
*/
|
||||||
@RestController
|
@RestController
|
||||||
@RequestMapping("/pc/interview/")
|
@RequestMapping("/pc/interview/")
|
||||||
@Api(tags = "PC端面试&面谈")
|
@Api(tags = "PC端-面试&面谈")
|
||||||
@Slf4j
|
@Slf4j
|
||||||
public class PCLineInterviewController {
|
public class PCLineInterviewController {
|
||||||
|
|
||||||
@@ -46,21 +41,29 @@ public class PCLineInterviewController {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@ApiOperation("修改面试官")
|
@ApiOperation("修改面试官")
|
||||||
@PostMapping("/interviewer/modify")
|
@PostMapping("/modify")
|
||||||
public ResponseResult<Boolean> modifyInterviewer(@RequestBody @Validated ModifyInterviewerRequest request) {
|
public ResponseResult<Boolean> modifyInterviewer(@RequestBody @Validated ModifyInterviewerRequest request) {
|
||||||
return ResponseResult.success(lineInterviewService.modifyInterviewer(request));
|
return ResponseResult.success(lineInterviewService.modifyInterviewer(request));
|
||||||
}
|
}
|
||||||
|
|
||||||
@ApiOperation("面试列表")
|
@ApiOperation("面试列表")
|
||||||
@PostMapping("/interviewer/page")
|
@PostMapping("/page")
|
||||||
public ResponseResult<PageInfo<LineInterviewPageVO>> getInterviewerPage(@RequestBody LineInterviewPageRequest request) {
|
public ResponseResult<PageInfo<LineInterviewPageVO>> getInterviewerPage(@RequestBody LineInterviewPageRequest request) {
|
||||||
return ResponseResult.success(lineInterviewService.getInterviewerPage(request));
|
return ResponseResult.success(lineInterviewService.getInterviewerPage(request));
|
||||||
}
|
}
|
||||||
|
|
||||||
@ApiOperation("进入房间")
|
@ApiOperation("进入房间")
|
||||||
@GetMapping("/interviewer/room/enter")
|
@GetMapping("/room/enter")
|
||||||
public ResponseResult<EnterInterviewVO> enterInterviewRoom(@RequestParam("interviewId")Long interviewId) {
|
public ResponseResult<EnterInterviewVO> enterInterviewRoom(@RequestParam("interviewId")Long interviewId) {
|
||||||
String userId = CurrentUserHolder.getUserId();
|
String userId = CurrentUserHolder.getUserId();
|
||||||
return ResponseResult.success(lineInterviewService.enterInterviewRoom(interviewId, userId, InterviewUserTypeEnum.INTERVIEWER));
|
return ResponseResult.success(lineInterviewService.enterInterviewRoom(interviewId, userId, InterviewUserTypeEnum.INTERVIEWER));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@GetMapping("/finish")
|
||||||
|
@ApiOperation("结束面试")
|
||||||
|
public ResponseResult finishInterview(@RequestParam("interviewId")Long interviewId) throws ApiException {
|
||||||
|
String userId = CurrentUserHolder.getUserId();
|
||||||
|
lineInterviewService.finishInterview(interviewId, userId);
|
||||||
|
return ResponseResult.success();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3,15 +3,11 @@ package com.cool.store.controller.webc;
|
|||||||
import com.cool.store.context.PartnerUserHolder;
|
import com.cool.store.context.PartnerUserHolder;
|
||||||
import com.cool.store.enums.InterviewUserTypeEnum;
|
import com.cool.store.enums.InterviewUserTypeEnum;
|
||||||
import com.cool.store.request.AppointmentTimeRequest;
|
import com.cool.store.request.AppointmentTimeRequest;
|
||||||
import com.cool.store.request.LineInterviewPageRequest;
|
|
||||||
import com.cool.store.request.ModifyInterviewerRequest;
|
|
||||||
import com.cool.store.response.ResponseResult;
|
import com.cool.store.response.ResponseResult;
|
||||||
import com.cool.store.service.LineInterviewService;
|
import com.cool.store.service.LineInterviewService;
|
||||||
import com.cool.store.vo.PartnerUserInfoVO;
|
import com.cool.store.vo.PartnerUserInfoVO;
|
||||||
import com.cool.store.vo.interview.AppointmentTimeVO;
|
import com.cool.store.vo.interview.AppointmentTimeVO;
|
||||||
import com.cool.store.vo.interview.EnterInterviewVO;
|
import com.cool.store.vo.interview.EnterInterviewVO;
|
||||||
import com.cool.store.vo.interview.LineInterviewPageVO;
|
|
||||||
import com.github.pagehelper.PageInfo;
|
|
||||||
import io.swagger.annotations.Api;
|
import io.swagger.annotations.Api;
|
||||||
import io.swagger.annotations.ApiImplicitParam;
|
import io.swagger.annotations.ApiImplicitParam;
|
||||||
import io.swagger.annotations.ApiImplicitParams;
|
import io.swagger.annotations.ApiImplicitParams;
|
||||||
@@ -33,7 +29,7 @@ import java.util.List;
|
|||||||
*/
|
*/
|
||||||
@RestController
|
@RestController
|
||||||
@RequestMapping("/interview")
|
@RequestMapping("/interview")
|
||||||
@Api(tags = "加盟商端面试&面谈")
|
@Api(tags = "加盟商端-面试&面谈")
|
||||||
@Slf4j
|
@Slf4j
|
||||||
public class LineInterviewController {
|
public class LineInterviewController {
|
||||||
|
|
||||||
@@ -60,7 +56,7 @@ public class LineInterviewController {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@ApiOperation("进入房间")
|
@ApiOperation("进入房间")
|
||||||
@GetMapping("/interviewer/room/enter")
|
@GetMapping("/room/enter")
|
||||||
public ResponseResult<EnterInterviewVO> enterInterviewRoom(@RequestParam("interviewId")Long interviewId) {
|
public ResponseResult<EnterInterviewVO> enterInterviewRoom(@RequestParam("interviewId")Long interviewId) {
|
||||||
PartnerUserInfoVO partnerUser = PartnerUserHolder.getUser();
|
PartnerUserInfoVO partnerUser = PartnerUserHolder.getUser();
|
||||||
return ResponseResult.success(lineInterviewService.enterInterviewRoom(interviewId, partnerUser.getPartnerId(), InterviewUserTypeEnum.LINE));
|
return ResponseResult.success(lineInterviewService.enterInterviewRoom(interviewId, partnerUser.getPartnerId(), InterviewUserTypeEnum.LINE));
|
||||||
|
|||||||
Reference in New Issue
Block a user