From fcd0b44f34b973556515079a206485b378fc25cc Mon Sep 17 00:00:00 2001 From: "feng.li" Date: Fri, 10 Nov 2023 16:08:02 +0800 Subject: [PATCH] =?UTF-8?q?=E5=B0=8F=E7=A8=8B=E5=BA=8F=E7=AB=AF=E9=A2=84?= =?UTF-8?q?=E7=BA=A6=E6=97=B6=E9=97=B4=E5=88=97=E8=A1=A8=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cool/store/request/GetFreeBusyListReq.java | 8 ++++---- .../store/service/PartnerInterviewService.java | 9 ++++++++- .../impl/PartnerInterviewServiceImpl.java | 18 ++++++++++++++++++ .../store/controller/FeiShuController.java | 6 ++++++ .../store/controller/InterviewController.java | 9 +++++++++ 5 files changed, 45 insertions(+), 5 deletions(-) diff --git a/coolstore-partner-model/src/main/java/com/cool/store/request/GetFreeBusyListReq.java b/coolstore-partner-model/src/main/java/com/cool/store/request/GetFreeBusyListReq.java index 83f97bbaf..d64656c6e 100644 --- a/coolstore-partner-model/src/main/java/com/cool/store/request/GetFreeBusyListReq.java +++ b/coolstore-partner-model/src/main/java/com/cool/store/request/GetFreeBusyListReq.java @@ -16,12 +16,12 @@ public class GetFreeBusyListReq { private String startDate; @ApiModelProperty(value = "结束时间",required = true) private String endDate; - @ApiModelProperty("线索id(C端使用)") + @ApiModelProperty(value = "线索id", required = true) private String lineId; - @ApiModelProperty("加盟商用户ID(C端使用,与面试官id两个字段中必传一个,该字段传值时,线索id必传)") + @ApiModelProperty(value = "加盟商用户ID", required = true) private String partnerId; - @ApiModelProperty("面试官ID(B端使用,如果该字段传了,就查询该面试官的日程忙闲信息,否则查询加盟商对应的面试官的信息)") + @ApiModelProperty(value = "面试官ID", required = false) private String interviewerId; - @ApiModelProperty("是否是PC端请求") + @ApiModelProperty(value = "是否是PC端请求", required = true) private Boolean whetherPC; } diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/PartnerInterviewService.java b/coolstore-partner-service/src/main/java/com/cool/store/service/PartnerInterviewService.java index fc090431c..e196ecba5 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/service/PartnerInterviewService.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/PartnerInterviewService.java @@ -3,10 +3,12 @@ package com.cool.store.service; import com.cool.store.dto.partner.EnterInterviewDto; import com.cool.store.dto.partner.LineQueryInterviewDto; import com.cool.store.exception.ApiException; +import com.cool.store.request.GetFreeBusyListReq; import com.cool.store.request.ModifyInterviewTimeReq; import com.cool.store.vo.EnterInterviewVO; import com.cool.store.vo.PartnerInterviewInfoVO; import com.cool.store.vo.PartnerPassLetterDetailVO; +import com.cool.store.vo.interview.GetFreeBusyListVO; public interface PartnerInterviewService { @@ -39,5 +41,10 @@ public interface PartnerInterviewService { void modifyInterviewTime(ModifyInterviewTimeReq request) throws ApiException; - + /** + * 获取面试预约时间列表 + * @param request {@link GetFreeBusyListReq} + * @return {@link GetFreeBusyListVO} + */ + GetFreeBusyListVO getFreeBusyList(GetFreeBusyListReq request); } diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/PartnerInterviewServiceImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/PartnerInterviewServiceImpl.java index 1d43cc19c..61c3e7f57 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/PartnerInterviewServiceImpl.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/PartnerInterviewServiceImpl.java @@ -8,6 +8,7 @@ import com.cool.store.dao.HyInterviewDAO; import com.cool.store.dto.log.ModifyInterviewTimeDTO; import com.cool.store.dto.partner.EnterInterviewDto; import com.cool.store.dto.partner.LineQueryInterviewDto; +import com.cool.store.entity.HyPartnerInterviewBookSituation; import com.cool.store.entity.HyPartnerInterviewDO; import com.cool.store.entity.HyPartnerInterviewPlanDO; import com.cool.store.enums.ErrorCodeEnum; @@ -18,7 +19,9 @@ import com.cool.store.exception.ApiException; import com.cool.store.exception.ServiceException; import com.cool.store.mapper.HyPartnerInterviewMapper; import com.cool.store.mapper.HyPartnerInterviewPlanMapper; +import com.cool.store.request.GetFreeBusyListReq; import com.cool.store.request.ModifyInterviewTimeReq; +import com.cool.store.service.InterviewService; import com.cool.store.service.LogService; import com.cool.store.service.PartnerInterviewService; import com.cool.store.utils.CoolDateUtils; @@ -27,14 +30,21 @@ import com.cool.store.vo.EnterInterviewVO; import com.cool.store.vo.PartnerInterviewInfoVO; import com.cool.store.vo.PartnerPassLetterDetailVO; import com.cool.store.vo.PartnerUserInfoVO; +import com.cool.store.vo.interview.CalendarInfo; +import com.cool.store.vo.interview.FreeBusyInfo; +import com.cool.store.vo.interview.GetFreeBusyListVO; import com.cool.store.vo.interview.InterviewVO; import lombok.extern.slf4j.Slf4j; +import org.apache.commons.collections4.CollectionUtils; +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import java.text.SimpleDateFormat; import java.util.Date; +import java.util.List; @Service @Slf4j @@ -49,6 +59,9 @@ public class PartnerInterviewServiceImpl implements PartnerInterviewService { @Autowired private HyInterviewDAO interviewDAO; + @Autowired + private InterviewService interviewService; + @Value("${trtc.sdkAppId}") private Long sdkAppId; @@ -204,4 +217,9 @@ public class PartnerInterviewServiceImpl implements PartnerInterviewService { logService.recordPartnerBizLog(operator,interviewInfo.getPartnerLineId(), OperateTypeEnum.MODIFY_INTERVIEW_TIME,log); } + @Override + public GetFreeBusyListVO getFreeBusyList(GetFreeBusyListReq request) { + return interviewService.getFreeBusyList(request); + } + } diff --git a/coolstore-partner-webc/src/main/java/com/cool/store/controller/FeiShuController.java b/coolstore-partner-webc/src/main/java/com/cool/store/controller/FeiShuController.java index 399ac1f5c..5184a8154 100644 --- a/coolstore-partner-webc/src/main/java/com/cool/store/controller/FeiShuController.java +++ b/coolstore-partner-webc/src/main/java/com/cool/store/controller/FeiShuController.java @@ -17,16 +17,22 @@ import org.springframework.web.bind.annotation.RestController; * @Author: young.yu * @Date: 2023-06-16 13:06 * @Description: + * @deprecated {@link InterviewController} */ @Api(tags = "飞书相关接口") @RestController @RequestMapping({"/feishu"}) +@Deprecated public class FeiShuController { + /** + * @deprecated {@link InterviewController#getFreeBusyList(GetFreeBusyListReq)} + */ @Autowired private FeiShuService feiShuService; @PostMapping("/interviewer/freebusy/list") @ApiOperation("查询日程忙闲信息") + @Deprecated public ResponseResult getFreeBusyList(@RequestBody GetFreeBusyListReq request) throws ApiException { GetFreeBusyListVO getFreeBusyListVO= feiShuService.getFreeBusyList(request); return ResponseResult.success(getFreeBusyListVO); diff --git a/coolstore-partner-webc/src/main/java/com/cool/store/controller/InterviewController.java b/coolstore-partner-webc/src/main/java/com/cool/store/controller/InterviewController.java index ad22ef790..1a9d45055 100644 --- a/coolstore-partner-webc/src/main/java/com/cool/store/controller/InterviewController.java +++ b/coolstore-partner-webc/src/main/java/com/cool/store/controller/InterviewController.java @@ -6,6 +6,7 @@ import com.cool.store.dto.partner.PartnerGetPassLetterDetailDto; import com.cool.store.dto.partner.PartnerQueryInterviewDto; import com.cool.store.exception.ApiException; import com.cool.store.request.CreateAppointmentReq; +import com.cool.store.request.GetFreeBusyListReq; import com.cool.store.request.ModifyInterviewTimeReq; import com.cool.store.response.ResponseResult; import com.cool.store.service.InterviewService; @@ -14,6 +15,7 @@ import com.cool.store.vo.EnterInterviewVO; import com.cool.store.vo.PartnerInterviewInfoVO; import com.cool.store.vo.PartnerPassLetterDetailVO; import com.cool.store.vo.interview.CreateAppointmentVO; +import com.cool.store.vo.interview.GetFreeBusyListVO; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; @@ -37,6 +39,13 @@ public class InterviewController { // return ResponseResult.success(interviewService.queryByPartnerId(dto.getPartnerId())); // } + @PostMapping("/freebusy/list") + @ApiOperation("查询各预约时间段情况") + public ResponseResult getFreeBusyList(@RequestBody GetFreeBusyListReq request) throws ApiException { + GetFreeBusyListVO getFreeBusyListVO= interviewService.getFreeBusyList(request); + return ResponseResult.success(getFreeBusyListVO); + } + @PostMapping("/queryByPartnerLineId") @ApiOperation("根据线索id查询面试信息") public ResponseResult queryByPartnerLineId(@RequestBody LineQueryInterviewDto dto) throws ApiException {