From 64b2b21ae1b44f541ffc59c4cac13fcdf409055e Mon Sep 17 00:00:00 2001 From: wxp01309236 Date: Sun, 25 Jun 2023 17:41:13 +0800 Subject: [PATCH 1/4] =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/cool/store/http/WechatRest.java | 3 +- .../impl/PartnerUserInfoServiceImpl.java | 28 +++++++++++-------- 2 files changed, 17 insertions(+), 14 deletions(-) diff --git a/coolstore-partner-service/src/main/java/com/cool/store/http/WechatRest.java b/coolstore-partner-service/src/main/java/com/cool/store/http/WechatRest.java index b46c983e6..f27614d0c 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/http/WechatRest.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/http/WechatRest.java @@ -68,9 +68,8 @@ public class WechatRest { return accessToken; } String reqUrl = String.format(ACCESS_TOKEN, appId, secret); - JSONObject jsonObject = null; try { - jsonObject = httpRestTemplateService.getForObject(reqUrl, JSONObject.class, new HashMap()); + JSONObject jsonObject = httpRestTemplateService.getForObject(reqUrl, JSONObject.class, new HashMap()); log.info("WechatRest#getAccessToken, reqUrl:{}, response:{}", reqUrl, JSONObject.toJSONString(jsonObject)); String token = jsonObject.getString("access_token"); if (StringUtils.isBlank(token)) { diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/PartnerUserInfoServiceImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/PartnerUserInfoServiceImpl.java index 245eed02b..f59267b10 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/PartnerUserInfoServiceImpl.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/PartnerUserInfoServiceImpl.java @@ -81,18 +81,7 @@ public class PartnerUserInfoServiceImpl implements PartnerUserInfoService { throw new ServiceException(ErrorCodeEnum.PARTNER_USER_NOT_EXIST); } ApplyBaseInfoVO applyBaseInfoVO = new ApplyBaseInfoVO(); - hyPartnerUserInfoDO.setUsername(partnerUserInfoRequest.getUsername()); - hyPartnerUserInfoDO.setMobile(partnerUserInfoRequest.getMobile()); - hyPartnerUserInfoDO.setLiveArea(partnerUserInfoRequest.getLiveArea()); - hyPartnerUserInfoDO.setWantShopArea(partnerUserInfoRequest.getWantShopArea()); - hyPartnerUserInfoDO.setAcceptAdjustType(partnerUserInfoRequest.getAcceptAdjustType()); - hyPartnerUserInfoDO.setInviteCode(partnerUserInfoRequest.getInviteCode()); - hyPartnerUserInfoDO.setShopCode(partnerUserInfoRequest.getShopCode()); - hyPartnerUserInfoDO.setShopName(partnerUserInfoRequest.getShopName()); - hyPartnerUserInfoDO.setShopId(partnerUserInfoRequest.getShopId()); - hyPartnerUserInfoDO.setRecommendPartnerId(partnerUserInfoRequest.getRecommendPartnerId()); - hyPartnerUserInfoDO.setRecommendPartnerName(partnerUserInfoRequest.getRecommendPartnerName()); - hyPartnerUserInfoDO.setRecommendPartnerMobile(partnerUserInfoRequest.getRecommendPartnerMobile()); + fillUserInfoDOByRequest(hyPartnerUserInfoDO, partnerUserInfoRequest); hyPartnerUserInfoDAO.updateByPrimaryKeySelective(hyPartnerUserInfoDO); // 生成一条线索 HyPartnerLineInfoDO hyPartnerLineInfoDO = hyPartnerLineInfoService.generateDefaultLineInfo(hyPartnerUserInfoDO.getPartnerId(), partnerUserInfoRequest.getWantShopArea(), partnerUserInfoRequest.getAcceptAdjustType()); @@ -112,4 +101,19 @@ public class PartnerUserInfoServiceImpl implements PartnerUserInfoService { } return applyBaseInfoVO; } + + private void fillUserInfoDOByRequest(HyPartnerUserInfoDO hyPartnerUserInfoDO, PartnerUserInfoRequest partnerUserInfoRequest) { + hyPartnerUserInfoDO.setUsername(partnerUserInfoRequest.getUsername()); + hyPartnerUserInfoDO.setMobile(partnerUserInfoRequest.getMobile()); + hyPartnerUserInfoDO.setLiveArea(partnerUserInfoRequest.getLiveArea()); + hyPartnerUserInfoDO.setWantShopArea(partnerUserInfoRequest.getWantShopArea()); + hyPartnerUserInfoDO.setAcceptAdjustType(partnerUserInfoRequest.getAcceptAdjustType()); + hyPartnerUserInfoDO.setInviteCode(partnerUserInfoRequest.getInviteCode()); + hyPartnerUserInfoDO.setShopCode(partnerUserInfoRequest.getShopCode()); + hyPartnerUserInfoDO.setShopName(partnerUserInfoRequest.getShopName()); + hyPartnerUserInfoDO.setShopId(partnerUserInfoRequest.getShopId()); + hyPartnerUserInfoDO.setRecommendPartnerId(partnerUserInfoRequest.getRecommendPartnerId()); + hyPartnerUserInfoDO.setRecommendPartnerName(partnerUserInfoRequest.getRecommendPartnerName()); + hyPartnerUserInfoDO.setRecommendPartnerMobile(partnerUserInfoRequest.getRecommendPartnerMobile()); + } } From fb6122c961ad19fd0217732a1e52ca3b87e0210c Mon Sep 17 00:00:00 2001 From: pserimal Date: Sun, 25 Jun 2023 18:28:29 +0800 Subject: [PATCH 2/4] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E9=9D=A2=E8=AF=95?= =?UTF-8?q?=E7=8A=B6=E6=80=81=E5=90=8C=E6=97=B6=E4=BF=AE=E6=94=B9=E5=AF=B9?= =?UTF-8?q?=E5=BA=94=E5=AD=90=E6=B5=81=E7=A8=8B=E7=8A=B6=E6=80=81=E5=8F=8A?= =?UTF-8?q?=E6=A0=B9=E6=8D=AE=E9=9D=A2=E8=AF=95=E6=88=BF=E9=97=B4=E7=8A=B6?= =?UTF-8?q?=E6=80=81=E9=99=90=E5=88=B6=E9=83=A8=E5=88=86=E9=9D=A2=E8=AF=95?= =?UTF-8?q?=E6=93=8D=E4=BD=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/cool/store/dao/HyInterviewDAO.java | 34 +++++++++++++++++++ .../HyPartnerCertificationInfoMapper.java | 8 +++++ .../mapper/HyPartnerInterviewMapper.java | 13 +++++++ .../mapper/HyPartnerInterviewPlanMapper.java | 7 ++++ .../store/mapper/HyPartnerLineInfoMapper.java | 7 ++-- .../HyPartnerCertificationInfoMapper.xml | 12 +++++++ .../mapper/HyPartnerInterviewMapper.xml | 27 ++++++++++++++- .../mapper/HyPartnerInterviewPlanMapper.xml | 7 ++++ .../mapper/HyPartnerLineInfoMapper.xml | 17 ++++++++++ .../store/service/impl/FlowServiceImpl.java | 23 +++++++------ .../service/impl/InterviewServiceImpl.java | 32 ++++++++++++++--- .../impl/PartnerInterviewServiceImpl.java | 12 ++++++- 12 files changed, 180 insertions(+), 19 deletions(-) create mode 100644 coolstore-partner-dao/src/main/java/com/cool/store/dao/HyInterviewDAO.java diff --git a/coolstore-partner-dao/src/main/java/com/cool/store/dao/HyInterviewDAO.java b/coolstore-partner-dao/src/main/java/com/cool/store/dao/HyInterviewDAO.java new file mode 100644 index 000000000..c0ebcce7f --- /dev/null +++ b/coolstore-partner-dao/src/main/java/com/cool/store/dao/HyInterviewDAO.java @@ -0,0 +1,34 @@ +package com.cool.store.dao; + +import com.cool.store.enums.WorkflowStatusEnum; +import com.cool.store.mapper.HyPartnerInterviewMapper; +import com.cool.store.mapper.HyPartnerLineInfoMapper; +import org.springframework.stereotype.Repository; +import org.springframework.transaction.annotation.Transactional; + +import javax.annotation.Resource; + +@Repository +public class HyInterviewDAO { + + @Resource + private HyPartnerInterviewMapper interviewMapper; + + @Resource + private HyPartnerLineInfoMapper lineInfoMapper; + + /** + * 更新面试状态必须使用该方法 + * 需要同步更新面试状态和线索表中的子流程状态 + */ + @Transactional + public void updateInterviewWorkflowStatus(String interviewPlanId, WorkflowStatusEnum status) { + //修改面试状态 + interviewMapper.updateInterviewStatus(interviewPlanId, status.getCode()); + //获取对应的lineId + String lineId = interviewMapper.getLineId(interviewPlanId); + //修改线索表子流程状态 + lineInfoMapper.updateWorkflowStatus(lineId, status.getCode()); + } + +} diff --git a/coolstore-partner-dao/src/main/java/com/cool/store/mapper/HyPartnerCertificationInfoMapper.java b/coolstore-partner-dao/src/main/java/com/cool/store/mapper/HyPartnerCertificationInfoMapper.java index ae1c3a009..d0d5cb52a 100644 --- a/coolstore-partner-dao/src/main/java/com/cool/store/mapper/HyPartnerCertificationInfoMapper.java +++ b/coolstore-partner-dao/src/main/java/com/cool/store/mapper/HyPartnerCertificationInfoMapper.java @@ -29,4 +29,12 @@ public interface HyPartnerCertificationInfoMapper { * @return 面试会议 id */ String getInterviewIdByQualifyVerifyId(@Param("qualifyVerifyId") String qualifyVerifyId); + + /** + * 根据资质审核流程 id 获取面试会议 id + * @param qualifyVerifyId 资质审核流程 id + * @return 面试会议计划 id + */ + String getInterviewPlanIdByQualifyVerifyId(String qualifyVerifyId); + } \ No newline at end of file diff --git a/coolstore-partner-dao/src/main/java/com/cool/store/mapper/HyPartnerInterviewMapper.java b/coolstore-partner-dao/src/main/java/com/cool/store/mapper/HyPartnerInterviewMapper.java index d2ca53cba..8a55371ab 100644 --- a/coolstore-partner-dao/src/main/java/com/cool/store/mapper/HyPartnerInterviewMapper.java +++ b/coolstore-partner-dao/src/main/java/com/cool/store/mapper/HyPartnerInterviewMapper.java @@ -70,4 +70,17 @@ public interface HyPartnerInterviewMapper { */ List getInterviewBaseInfoList(@Param("record") GetInterviewListReq request); void batchUpdateInterviewStatus(@Param("interviewIds") List interviewIdList, @Param("interviewStatus") Integer interviewStatus); + + HyPartnerInterviewDO getInterviewInfoByInterviewPlanId(@Param("interviewPlanId") String interviewPlanId); + + /** + * 修改面试状态 + */ + void updateInterviewStatus(@Param("interviewPlanId") String interviewPlanId, @Param("status") String status); + + /** + * 获取面试对应的线索id + */ + String getLineId(@Param("interviewPlanId") String interviewPlanId); + } \ No newline at end of file diff --git a/coolstore-partner-dao/src/main/java/com/cool/store/mapper/HyPartnerInterviewPlanMapper.java b/coolstore-partner-dao/src/main/java/com/cool/store/mapper/HyPartnerInterviewPlanMapper.java index 45d95b56f..71280f73f 100644 --- a/coolstore-partner-dao/src/main/java/com/cool/store/mapper/HyPartnerInterviewPlanMapper.java +++ b/coolstore-partner-dao/src/main/java/com/cool/store/mapper/HyPartnerInterviewPlanMapper.java @@ -135,4 +135,11 @@ public interface HyPartnerInterviewPlanMapper { * 修改面试实际开始时间 */ void updateActualStartTime(@Param("id") Long id, @Param("now") String now); + + /** + * 获取面试房间状态 + * @param interviewPlanId + */ + Integer getRoomStatus(@Param("interviewPlanId") String interviewPlanId); + } \ No newline at end of file diff --git a/coolstore-partner-dao/src/main/java/com/cool/store/mapper/HyPartnerLineInfoMapper.java b/coolstore-partner-dao/src/main/java/com/cool/store/mapper/HyPartnerLineInfoMapper.java index dd6d151dd..666d50413 100644 --- a/coolstore-partner-dao/src/main/java/com/cool/store/mapper/HyPartnerLineInfoMapper.java +++ b/coolstore-partner-dao/src/main/java/com/cool/store/mapper/HyPartnerLineInfoMapper.java @@ -208,8 +208,11 @@ public interface HyPartnerLineInfoMapper { /** * 根据面试计划 id 查询战区 id - * @param interviewPlanId - * @return */ String getAffiliationZoneIdByInterviewPlanId(String interviewPlanId); + + /** + * 修改线索状态 + */ + void updateWorkflowStatus(@Param("lineId") String lineId, @Param("status") String status); } \ No newline at end of file diff --git a/coolstore-partner-dao/src/main/resources/mapper/HyPartnerCertificationInfoMapper.xml b/coolstore-partner-dao/src/main/resources/mapper/HyPartnerCertificationInfoMapper.xml index 254aaa261..ac4c6dc15 100644 --- a/coolstore-partner-dao/src/main/resources/mapper/HyPartnerCertificationInfoMapper.xml +++ b/coolstore-partner-dao/src/main/resources/mapper/HyPartnerCertificationInfoMapper.xml @@ -238,4 +238,16 @@ from hy_partner_certification_info where qualify_verify_id = #{qualifyVerifyId} + + + \ No newline at end of file diff --git a/coolstore-partner-dao/src/main/resources/mapper/HyPartnerInterviewMapper.xml b/coolstore-partner-dao/src/main/resources/mapper/HyPartnerInterviewMapper.xml index 21f331a51..29edaeaa1 100644 --- a/coolstore-partner-dao/src/main/resources/mapper/HyPartnerInterviewMapper.xml +++ b/coolstore-partner-dao/src/main/resources/mapper/HyPartnerInterviewMapper.xml @@ -373,7 +373,7 @@ - + + + + + + + + UPDATE hy_partner_interview + SET status = #{status} + WHERE interview_plan_id = #{interviewPlanId} + + + + + \ No newline at end of file diff --git a/coolstore-partner-dao/src/main/resources/mapper/HyPartnerInterviewPlanMapper.xml b/coolstore-partner-dao/src/main/resources/mapper/HyPartnerInterviewPlanMapper.xml index 938afccc2..4a6ee975e 100644 --- a/coolstore-partner-dao/src/main/resources/mapper/HyPartnerInterviewPlanMapper.xml +++ b/coolstore-partner-dao/src/main/resources/mapper/HyPartnerInterviewPlanMapper.xml @@ -462,4 +462,11 @@ from enterprise_user where user_id = #{userId} + + + \ No newline at end of file diff --git a/coolstore-partner-dao/src/main/resources/mapper/HyPartnerLineInfoMapper.xml b/coolstore-partner-dao/src/main/resources/mapper/HyPartnerLineInfoMapper.xml index 92b418ef9..53a3c7070 100644 --- a/coolstore-partner-dao/src/main/resources/mapper/HyPartnerLineInfoMapper.xml +++ b/coolstore-partner-dao/src/main/resources/mapper/HyPartnerLineInfoMapper.xml @@ -562,4 +562,21 @@ and partner_id = #{partner_id} + + + + + UPDATE hy_partner_line_info + SET workflow_status = #{status} + WHERE id = #{lineId} + + \ No newline at end of file diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/FlowServiceImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/FlowServiceImpl.java index e808423f2..b9a73f109 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/FlowServiceImpl.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/FlowServiceImpl.java @@ -1,11 +1,11 @@ package com.cool.store.service.impl; -import cn.hutool.core.date.DateTime; import cn.hutool.core.date.DateUtil; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.TypeReference; import com.cool.store.dao.EnterpriseUserDAO; +import com.cool.store.dao.HyInterviewDAO; import com.cool.store.dto.mdm.AccessTokenDTO; import com.cool.store.dto.response.MDMResultDTO; import com.cool.store.entity.*; @@ -81,6 +81,9 @@ public class FlowServiceImpl implements FlowService { @Autowired private OSSServer ossServer; + @Autowired + private HyInterviewDAO interviewDAO; + @Override @Transactional public void createQualifyVerify(CreateQualifyVerifyReq request) throws ApiException { @@ -155,8 +158,9 @@ public class FlowServiceImpl implements FlowService { throw new ServiceException(ErrorCodeEnum.INTERVIEW_NOT_EXIST); } hyPartnerInterviewDO.setUpdateTime(new Date()); - //更新 - hyPartnerInterviewDO.setStatus(Integer.valueOf(WorkflowStatusEnum.INTERVIEW_5.getCode())); + //更新面试信息 + //更新面试状态 + interviewDAO.updateInterviewWorkflowStatus(request.getInterviewPlanId(), WorkflowStatusEnum.INTERVIEW_5); hyPartnerInterviewDO.setAuthCode(authCode); hyPartnerInterviewMapper.updateByPrimaryKeySelective(hyPartnerInterviewDO); @@ -177,16 +181,16 @@ public class FlowServiceImpl implements FlowService { log.error("MDM回调入参缺失,request{}", JSON.toJSONString(request)); throw new ServiceException("MDM回调错误!"); } - //根据审核流程 id 获取面试会议 id + //根据审核流程 id 获取面试会议相关 id String interviewId = hyPartnerCertificationInfoMapper.getInterviewIdByQualifyVerifyId(request.getInstanceId()); - if (StringUtils.isEmpty(interviewId)) { + String interviewPlanId = hyPartnerCertificationInfoMapper.getInterviewPlanIdByQualifyVerifyId(request.getInstanceId()); + if (StringUtils.isEmpty(interviewPlanId)) { throw new ServiceException(ErrorCodeEnum.INTERVIEW_NOT_EXIST); } - HyPartnerInterviewDO interviewDO = new HyPartnerInterviewDO(); - interviewDO.setId(Long.parseLong(interviewId)); //审核通过 if ("FINISHED".equals(request.getSequenceStatus())) { - interviewDO.setStatus(Integer.valueOf(WorkflowStatusEnum.INTERVIEW_6.getCode())); + //更新面试状态 + interviewDAO.updateInterviewWorkflowStatus(interviewPlanId, WorkflowStatusEnum.INTERVIEW_6); //2. 准备需要的信息 String partnerName = request.getIntendedSigner(); String verifyCity = hyPartnerInterviewMapper.getVerifyCityByInterviewId(interviewId); @@ -207,9 +211,8 @@ public class FlowServiceImpl implements FlowService { genPassLetterAndUpdateDB(partnerName, verifyCity, passDate, interviewId); //审核未通过 } else if ("CANCELED".equals(request.getSequenceStatus())) { - interviewDO.setStatus(Integer.valueOf(WorkflowStatusEnum.INTERVIEW_7.getCode())); + interviewDAO.updateInterviewWorkflowStatus(interviewPlanId, WorkflowStatusEnum.INTERVIEW_7); } - hyPartnerInterviewMapper.updateByPrimaryKeySelective(interviewDO); } diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/InterviewServiceImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/InterviewServiceImpl.java index f810c92f6..f052a8aa9 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/InterviewServiceImpl.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/InterviewServiceImpl.java @@ -5,6 +5,7 @@ import cn.hutool.core.date.DatePattern; import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.ObjectUtil; import com.alibaba.fastjson.JSON; +import com.cool.store.dao.HyInterviewDAO; import com.cool.store.dto.calendar.*; import com.cool.store.dto.message.SendCardMessageDTO; import com.cool.store.dto.partner.EnterInterviewDto; @@ -86,6 +87,9 @@ public class InterviewServiceImpl implements InterviewService { @Autowired private HyPartnerLineInfoService hyPartnerLineInfoService; + @Autowired + private HyInterviewDAO interviewDAO; + @Override public List getInterviewList(GetInterviewListReq request) { List interviewList = hyPartnerInterviewPlanMapper.getInterviewList(request); @@ -134,7 +138,11 @@ public class InterviewServiceImpl implements InterviewService { @Override @Transactional public void entrustOthers(EntrustOthersReq request) throws ApiException { - + //只有房间状态是待开放才可以委托他人 + Integer roomStatus = hyPartnerInterviewPlanMapper.getRoomStatus(request.getInterviewPlanId()); + if (!roomStatus.equals(RoomStatus.WAIT_FOR_OPEN.getCode())) { + throw new ApiException(ErrorCodeEnum.ROOM_STATUS_ERROR); + } InterviewVO interviewInfo = hyPartnerInterviewPlanMapper.getInterviewInfo(request.getInterviewPlanId()); //如果面试信息为空,抛出异常 if (interviewInfo == null) { @@ -188,6 +196,11 @@ public class InterviewServiceImpl implements InterviewService { */ @Override public void modifyInterviewTime(ModifyInterviewTimeReq request) throws ApiException { + //只有房间状态是待开放才可以修改时间 + Integer roomStatus = hyPartnerInterviewPlanMapper.getRoomStatus(request.getInterviewPlanId()); + if (!roomStatus.equals(RoomStatus.WAIT_FOR_OPEN.getCode())) { + throw new ApiException(ErrorCodeEnum.ROOM_STATUS_ERROR); + } InterviewVO interviewInfo = hyPartnerInterviewPlanMapper.getInterviewInfo(request.getInterviewPlanId()); //如果面试信息为空,抛出异常 if (interviewInfo == null) { @@ -223,7 +236,8 @@ public class InterviewServiceImpl implements InterviewService { //更新面试信息 HyPartnerInterviewDO hyPartnerInterviewDO = new HyPartnerInterviewDO(); hyPartnerInterviewDO.setInterviewPlanId(Long.valueOf(interviewInfo.getInterviewPlanId())); - hyPartnerInterviewDO.setStatus(Integer.parseInt(WorkflowStatusEnum.INTERVIEW_4.getCode())); + interviewDAO.updateInterviewWorkflowStatus(interviewInfo.getInterviewPlanId(), WorkflowStatusEnum.INTERVIEW_4); +// hyPartnerInterviewDO.setStatus(Integer.parseInt(WorkflowStatusEnum.INTERVIEW_4.getCode())); hyPartnerInterviewDO.setUpdateTime(now); hyPartnerInterviewMapper.updateByPrimaryKeySelective(hyPartnerInterviewDO); } @@ -239,10 +253,16 @@ public class InterviewServiceImpl implements InterviewService { @Transactional public EnterInterviewVO enterInterviewRoom(EnterInterviewDto dto) { try { + //如果面试间状态不是已开放,就不让进 + Integer roomStatus = hyPartnerInterviewPlanMapper.getRoomStatus(dto.getInterviewPlanId()); + if (!roomStatus.equals(RoomStatus.OPEN.getCode())) { + throw new RuntimeException(); + } HyPartnerInterviewDO hyPartnerInterviewDO = new HyPartnerInterviewDO(); hyPartnerInterviewDO.setInterviewPlanId(Long.parseLong(dto.getInterviewPlanId())); //1. 将面试状态改为 --> 2已开始 - hyPartnerInterviewDO.setStatus(2); + interviewDAO.updateInterviewWorkflowStatus(dto.getInterviewPlanId(), WorkflowStatusEnum.INTERVIEW_3); +// hyPartnerInterviewDO.setStatus(Integer.parseInt(WorkflowStatusEnum.INTERVIEW_3.getCode())); //2. 修改加盟商或面试官进入面试时间 //加盟商 if (dto.getUserType().equals(2)) { @@ -392,7 +412,9 @@ public class InterviewServiceImpl implements InterviewService { //更新面试信息 HyPartnerInterviewDO hyPartnerInterviewDO = new HyPartnerInterviewDO(); hyPartnerInterviewDO.setId(Long.valueOf(interviewVO.getInterviewId())); - hyPartnerInterviewDO.setStatus(Integer.valueOf(WorkflowStatusEnum.INTERVIEW_2.getCode())); + //更新面试状态和线索子流程状态 + interviewDAO.updateInterviewWorkflowStatus(request.getInterviewPlanId(), WorkflowStatusEnum.INTERVIEW_2); +// hyPartnerInterviewDO.setStatus(Integer.valueOf(WorkflowStatusEnum.INTERVIEW_2.getCode())); hyPartnerInterviewDO.setUpdateTime(new Date()); hyPartnerInterviewMapper.updateByPrimaryKeySelective(hyPartnerInterviewDO); @@ -400,7 +422,7 @@ public class InterviewServiceImpl implements InterviewService { HyPartnerLineInfoDO hyPartnerLineDO = new HyPartnerLineInfoDO(); hyPartnerLineDO.setId(request.getPartnerLineId()); hyPartnerLineDO.setWorkflowStage(WorkflowStageEnum.INTERVIEW.getCode()); - hyPartnerLineDO.setWorkflowStatus(WorkflowStatusEnum.INTERVIEW_2.getCode()); +// hyPartnerLineDO.setWorkflowStatus(WorkflowStatusEnum.INTERVIEW_2.getCode()); hyPartnerLineDO.setUpdateTime(new Date()); hyPartnerLineInfoMapper.updateByPrimaryKeySelective(hyPartnerLineDO); //异步发送短信给加盟商 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 18284b7eb..6893d66fd 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 @@ -3,6 +3,7 @@ package com.cool.store.service.impl; import cn.hutool.core.convert.Convert; import cn.hutool.core.date.DateTime; import cn.hutool.core.date.DateUtil; +import com.cool.store.dao.HyInterviewDAO; import com.cool.store.dto.partner.EnterInterviewDto; import com.cool.store.entity.HyPartnerInterviewDO; import com.cool.store.entity.HyPartnerInterviewPlanDO; @@ -39,6 +40,9 @@ public class PartnerInterviewServiceImpl implements PartnerInterviewService { @Autowired private HyPartnerInterviewPlanMapper interviewPlanMapper; + @Autowired + private HyInterviewDAO interviewDAO; + @Value("${trtc.sdkAppId}") private Long sdkAppId; @@ -67,10 +71,16 @@ public class PartnerInterviewServiceImpl implements PartnerInterviewService { @Transactional public EnterInterviewVO enterInterviewRoom(EnterInterviewDto dto) { try { + //如果面试间状态不是已开放,就不让进 + Integer roomStatus = interviewPlanMapper.getRoomStatus(dto.getInterviewPlanId()); + if (!roomStatus.equals(RoomStatus.OPEN.getCode())) { + throw new RuntimeException(); + } HyPartnerInterviewDO hyPartnerInterviewDO = new HyPartnerInterviewDO(); hyPartnerInterviewDO.setInterviewPlanId(Long.parseLong(dto.getInterviewPlanId())); //1. 将面试状态改为 --> 2已开始 - hyPartnerInterviewDO.setStatus(2); + interviewDAO.updateInterviewWorkflowStatus(dto.getInterviewPlanId(), WorkflowStatusEnum.INTERVIEW_3); +// hyPartnerInterviewDO.setStatus(Integer.parseInt(WorkflowStatusEnum.INTERVIEW_3.getCode())); //2. 修改加盟商或面试官进入面试时间 //加盟商 if (dto.getUserType().equals(2)) { From ef44873f6626f7e373a56e29657307aaec0f55ee Mon Sep 17 00:00:00 2001 From: wxp01309236 Date: Sun, 25 Jun 2023 18:40:33 +0800 Subject: [PATCH 3/4] fix --- .../store/service/impl/HyPartnerClerkServiceImpl.java | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerClerkServiceImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerClerkServiceImpl.java index ae78d625e..993ec77d1 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerClerkServiceImpl.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerClerkServiceImpl.java @@ -66,12 +66,12 @@ public class HyPartnerClerkServiceImpl implements HyPartnerClerkService { redisUtilPool.setString(cacheKey, JSONObject.toJSONString(request), RedisConstant.ONE_DAY_SECONDS); return Boolean.TRUE; } - if (StringUtil.isBlank(request.getPartnerId()) || Objects.isNull(request.getPartnerLineId()) || CollectionUtils.isEmpty(request.getPartnerClerkRequestList())){ + if (StringUtil.isBlank(request.getPartnerId()) || Objects.isNull(request.getPartnerLineId())){ throw new ServiceException(ErrorCodeEnum.PARAMS_REQUIRED); } hyPartnerClerkDAO.deleteByPartnerIdAndLineId(request.getPartnerId(), request.getPartnerLineId()); List clerkDOList = new ArrayList<>(); - request.getPartnerClerkRequestList().stream().forEach(x->{ + ListUtils.emptyIfNull(request.getPartnerClerkRequestList()).stream().forEach(x->{ HyPartnerClerkDO clerkDO = new HyPartnerClerkDO(); clerkDO.setPartnerLineId(request.getPartnerLineId()); clerkDO.setPartnerId(request.getPartnerId()); @@ -81,7 +81,9 @@ public class HyPartnerClerkServiceImpl implements HyPartnerClerkService { clerkDO.setChooseReason(x.getChooseReason()); clerkDOList.add(clerkDO); }); - hyPartnerClerkDAO.batchInsert(clerkDOList); + if (CollectionUtils.isNotEmpty(clerkDOList)){ + hyPartnerClerkDAO.batchInsert(clerkDOList); + } redisUtilPool.delKey(cacheKey); return true; } From 5bd0932531de4e75d8443361027e045858b87811 Mon Sep 17 00:00:00 2001 From: wxp01309236 Date: Sun, 25 Jun 2023 18:45:45 +0800 Subject: [PATCH 4/4] setWorkExp --- .../cool/store/service/impl/HyPartnerIntentInfoServiceImpl.java | 1 + 1 file changed, 1 insertion(+) diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerIntentInfoServiceImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerIntentInfoServiceImpl.java index 4caa7d296..f4d008098 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerIntentInfoServiceImpl.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerIntentInfoServiceImpl.java @@ -228,6 +228,7 @@ public class HyPartnerIntentInfoServiceImpl implements HyPartnerIntentInfoServic Lists.newArrayList(): JSONObject.parseArray(hyPartnerIntentInfoDO.getMoneyProve(),String.class)); partnerIntentInfoVO.setMoneySource(hyPartnerIntentInfoDO.getMoneySource()); partnerIntentInfoVO.setWorkYear(hyPartnerIntentInfoDO.getWorkYear()); + partnerIntentInfoVO.setWorkExp(hyPartnerIntentInfoDO.getWorkExp()); partnerIntentInfoVO.setWeakness(hyPartnerIntentInfoDO.getWeakness()); partnerIntentInfoVO.setCreateTime(hyPartnerIntentInfoDO.getCreateTime()); partnerIntentInfoVO.setOtherBand(hyPartnerIntentInfoDO.getOtherBand());