From 0b844e64b668bdc318ecc726c383d4e4ead2906e Mon Sep 17 00:00:00 2001 From: "feng.li" Date: Wed, 25 Oct 2023 13:22:31 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8F=91=E9=80=81=E9=A3=9E=E4=B9=A6=E6=B6=88?= =?UTF-8?q?=E6=81=AF=E7=9A=84=E5=9C=B0=E6=96=B9=E6=9B=B4=E6=94=B9=E4=B8=BA?= =?UTF-8?q?=E4=BD=BF=E7=94=A8feishu=5Fuser=5Fid?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/FollowTaskServiceImpl.java | 9 +++++--- .../impl/HyPartnerIntentInfoServiceImpl.java | 10 +++++++-- .../impl/HyPartnerLineInfoServiceImpl.java | 21 ++++++++++++------- 3 files changed, 27 insertions(+), 13 deletions(-) diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/FollowTaskServiceImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/FollowTaskServiceImpl.java index c999f3928..3050e238b 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/FollowTaskServiceImpl.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/FollowTaskServiceImpl.java @@ -206,6 +206,7 @@ public class FollowTaskServiceImpl implements FollowTaskService { String endTime = DateUtil.format(DateUtils.addMinutes(new Date(), CommonConstants.SIXTY_FIVE), CoolDateUtils.DATE_FORMAT_SEC); while (hasNext){ Page undoTaskList = hyFollowTaskDAO.getUndoTaskPage(startTime, endTime, pageNum, pageSize); + Map feishuUserIdsByUserIds = enterpriseUserDAO.getFeishuUserIdsByUserIds(undoTaskList.stream().map(HyFollowTaskDO::getFollowUserId).distinct().collect(Collectors.toList())); if(CollectionUtils.isEmpty(undoTaskList)){ break; } @@ -228,7 +229,7 @@ public class FollowTaskServiceImpl implements FollowTaskService { } String dateline = DateUtil.format(followTask.getDeadline(), CoolDateUtils.DATE_FORMAT_SEC_7); String content = MessageFormat.format(MessageConstants.FOLLOW_TASK_MESSAGE_CONTENT, dateline, partnerInfo.getUsername(), partnerInfo.getMobile()); - eventCenterHttpRequest.sendFeiShuNotice(FeiShuNoticeMsgEnum.FOLLOW_TASK, Arrays.asList(followTask.getFollowUserId()), content); + eventCenterHttpRequest.sendFeiShuNotice(FeiShuNoticeMsgEnum.FOLLOW_TASK, Arrays.asList(feishuUserIdsByUserIds.get(followTask.getFollowUserId())), content); } } } @@ -241,6 +242,7 @@ public class FollowTaskServiceImpl implements FollowTaskService { Date today = new Date(); while (hasNext){ Page remindFollowUserIds = hyFollowTaskDAO.getRemindFollowUserIds(today, pageNum, pageSize); + Map feishuUserIdsByUserIds = enterpriseUserDAO.getFeishuUserIdsByUserIds(remindFollowUserIds); if(CollectionUtils.isEmpty(remindFollowUserIds)){ break; } @@ -250,7 +252,7 @@ public class FollowTaskServiceImpl implements FollowTaskService { pageNum++; List followTaskList = hyFollowTaskDAO.getUserTaskNum(remindFollowUserIds, today); for (FollowTaskNumDTO followTask : followTaskList) { - eventCenterHttpRequest.sendFeiShuNotice(FeiShuNoticeMsgEnum.FOLLOW_TASK, Arrays.asList(followTask.getFollowUserId()), FollowTaskNumDTO.getMessageContent(followTask)); + eventCenterHttpRequest.sendFeiShuNotice(FeiShuNoticeMsgEnum.FOLLOW_TASK, Arrays.asList(feishuUserIdsByUserIds.get(followTask.getFollowUserId())), FollowTaskNumDTO.getMessageContent(followTask)); } } } @@ -274,11 +276,12 @@ public class FollowTaskServiceImpl implements FollowTaskService { private void sendMessage(HyFollowTaskDO task) throws ApiException { PartnerSimpleInfoDTO partnerInfo = hyPartnerLineInfoDAO.getPartnerSimpleInfoByLineId(task.getPartnerLineId()); + Map feishuUserIdsByUserIds = enterpriseUserDAO.getFeishuUserIdsByUserIds(Arrays.asList(task.getFollowUserId())); if(Objects.isNull(partnerInfo)){ return; } String dateline = DateUtil.format(task.getDeadline(), CoolDateUtils.DATE_FORMAT_SEC_7); String content = MessageFormat.format(MessageConstants.FOLLOW_TASK_MESSAGE_CONTENT, dateline, partnerInfo.getUsername(), partnerInfo.getMobile()); - eventCenterHttpRequest.sendFeiShuNotice(FeiShuNoticeMsgEnum.FOLLOW_TASK, Arrays.asList(task.getFollowUserId()), content); + eventCenterHttpRequest.sendFeiShuNotice(FeiShuNoticeMsgEnum.FOLLOW_TASK, Arrays.asList(feishuUserIdsByUserIds.get(task.getFollowUserId())), content); } } 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 4da877ba9..b242f7d31 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 @@ -84,6 +84,8 @@ public class HyPartnerIntentInfoServiceImpl implements HyPartnerIntentInfoServic HyPartnerUserChannelDAO hyPartnerUserChannelDAO; @Autowired EventCenterHttpRequest eventCenterHttpRequest; + @Resource + EnterpriseUserDAO enterpriseUserDAO; @Override public PageInfo getPartnerIntentApplyList(String userId, String type, Integer pageSize, Integer pageNumber,String keyword, Integer callStatus, @@ -255,7 +257,9 @@ public class HyPartnerIntentInfoServiceImpl implements HyPartnerIntentInfoServic if(flag){//分配招商经理成功才发送分配招商经理的飞书工作通知 String dateTime = DateUtil.format(new Date(), CoolDateUtils.DATE_FORMAT_SEC_7); - eventCenterHttpRequest.sendFeiShuNotice(FeiShuNoticeMsgEnum.ALLOCATION_INVESTMENT_MANAGER,userIdList,dateTime,hyPartnerUserInfoDO.getUsername(),hyPartnerUserInfoDO.getMobile()); + Map feishuUserIdsByUserIds = enterpriseUserDAO.getFeishuUserIdsByUserIds(userIdList); + List feishuUserIds = new ArrayList<>(feishuUserIdsByUserIds.values()); + eventCenterHttpRequest.sendFeiShuNotice(FeiShuNoticeMsgEnum.ALLOCATION_INVESTMENT_MANAGER,feishuUserIds,dateTime,hyPartnerUserInfoDO.getUsername(),hyPartnerUserInfoDO.getMobile()); } } if(!isUpdateIntentInfo){ @@ -263,7 +267,9 @@ public class HyPartnerIntentInfoServiceImpl implements HyPartnerIntentInfoServic userIdList.add(hyPartnerLineInfoDO.getInvestmentManager()); } String dateTime = DateUtil.format(new Date(), CoolDateUtils.DATE_FORMAT_SEC_7); - eventCenterHttpRequest.sendFeiShuNotice(FeiShuNoticeMsgEnum.INTENTION_APPLY,userIdList,hyPartnerUserInfoDO.getUsername(),hyPartnerUserInfoDO.getMobile(), dateTime); + Map feishuUserIdsByUserIds = enterpriseUserDAO.getFeishuUserIdsByUserIds(userIdList); + List feishuUserIds = new ArrayList<>(feishuUserIdsByUserIds.values()); + eventCenterHttpRequest.sendFeiShuNotice(FeiShuNoticeMsgEnum.INTENTION_APPLY,feishuUserIds,hyPartnerUserInfoDO.getUsername(),hyPartnerUserInfoDO.getMobile(), dateTime); } //记录日志 PartnerUserInfoVO operator = PartnerUserHolder.getUser(); diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerLineInfoServiceImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerLineInfoServiceImpl.java index 68d732ae6..e6caffbb1 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerLineInfoServiceImpl.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerLineInfoServiceImpl.java @@ -205,16 +205,19 @@ public class HyPartnerLineInfoServiceImpl implements HyPartnerLineInfoService { hyPartnerLineInfoDAO.updateInvestmentManager(request.getUserId(), Arrays.asList(request.getLineId())); String dateTime = DateUtil.format(new Date(), CoolDateUtils.DATE_FORMAT_SEC_7); HyPartnerUserInfoDO hyPartnerUserInfoDO = hyPartnerUserInfoDAO.selectByPartnerId(hyPartnerLineInfoDO.getPartnerId()); + List userIds = Arrays.asList(request.getUserId()); + Map feishuUserIdsByUserIds = enterpriseUserDAO.getFeishuUserIdsByUserIds(userIds); + List feishuUserIds = new ArrayList<>(feishuUserIdsByUserIds.values()); //发送飞书工作通知 if (sendFlag){ - eventCenterHttpRequest.sendFeiShuNotice(FeiShuNoticeMsgEnum.TRANS_INVESTMENT_MANAGER,Arrays.asList(request.getUserId()),dateTime,hyPartnerUserInfoDO.getUsername(),hyPartnerUserInfoDO.getMobile()); + eventCenterHttpRequest.sendFeiShuNotice(FeiShuNoticeMsgEnum.TRANS_INVESTMENT_MANAGER,feishuUserIds,dateTime,hyPartnerUserInfoDO.getUsername(),hyPartnerUserInfoDO.getMobile()); } //如果是面试预约待审批阶段还要发送面试预约申请通知 if (WorkflowStageEnum.RESERVATION.getCode().equals(hyPartnerLineInfoDO.getWorkflowStage()) && WorkflowStatusEnum.RESERVATION_1.getCode().equals(hyPartnerLineInfoDO.getWorkflowStatus())) { HyPartnerInterviewPlanDO interviewPlanByLine = hyPartnerInterviewPlanDAO.getInterviewPlanByLineId(request.getLineId()); if (interviewPlanByLine!=null && interviewPlanByLine.getStartTime()!=null ){ String startTime = DateUtil.format(interviewPlanByLine.getStartTime(), CoolDateUtils.DATE_FORMAT_SEC_7); - eventCenterHttpRequest.sendFeiShuNotice(FeiShuNoticeMsgEnum.INTERVIEW_APPOINTMENT, Arrays.asList(request.getUserId()),hyPartnerUserInfoDO.getUsername(),hyPartnerUserInfoDO.getMobile(),startTime); + eventCenterHttpRequest.sendFeiShuNotice(FeiShuNoticeMsgEnum.INTERVIEW_APPOINTMENT, feishuUserIds, hyPartnerUserInfoDO.getUsername(), hyPartnerUserInfoDO.getMobile(),startTime); } } @@ -270,13 +273,15 @@ public class HyPartnerLineInfoServiceImpl implements HyPartnerLineInfoService { result.add(batchTransferVO); } } + Map feishuUserIdsByUserIds = enterpriseUserDAO.getFeishuUserIdsByUserIds(Arrays.asList(request.getUserId())); + ArrayList feishuUserIds = new ArrayList<>(feishuUserIdsByUserIds.values()); try { if (successLineIds.size()>1){ - eventCenterHttpRequest.sendFeiShuNotice(FeiShuNoticeMsgEnum.BATCH_TRANS_INVESTMENT_MANAGER,Arrays.asList(request.getUserId()),successLineIds.size(),DateUtil.format(new Date(),CoolDateUtils.DATE_FORMAT_SEC_7)); + eventCenterHttpRequest.sendFeiShuNotice(FeiShuNoticeMsgEnum.BATCH_TRANS_INVESTMENT_MANAGER,feishuUserIds,successLineIds.size(),DateUtil.format(new Date(),CoolDateUtils.DATE_FORMAT_SEC_7)); }else if (successLineIds.size()==1){ String dateTime = DateUtil.format(new Date(), CoolDateUtils.DATE_FORMAT_SEC_7); HyPartnerUserInfoDO hyPartnerUserInfoDO = partnerUserInfoDOMap.get(partnerMap.get(successLineIds.get(0))); - eventCenterHttpRequest.sendFeiShuNotice(FeiShuNoticeMsgEnum.TRANS_INVESTMENT_MANAGER,Arrays.asList(request.getUserId()),dateTime,hyPartnerUserInfoDO.getUsername(),hyPartnerUserInfoDO.getMobile()); + eventCenterHttpRequest.sendFeiShuNotice(FeiShuNoticeMsgEnum.TRANS_INVESTMENT_MANAGER,feishuUserIds,dateTime,hyPartnerUserInfoDO.getUsername(),hyPartnerUserInfoDO.getMobile()); } } catch (Exception e) { log.info("batchTransferInvestmentManager_error:{}",e.getMessage()); @@ -328,12 +333,10 @@ public class HyPartnerLineInfoServiceImpl implements HyPartnerLineInfoService { //添加日志 partnerLineInfoList.forEach(x->{ //给招商经理发送飞书工作通知 - List userIdList = new ArrayList<>(); - userIdList.add(userId); HyPartnerUserInfoDO hyPartnerUserInfoDO = hyPartnerUserInfoDAO.selectByPartnerId(x.getPartnerId()); String dateTime = DateUtil.format(new Date(), CoolDateUtils.DATE_FORMAT_SEC_7); try { - eventCenterHttpRequest.sendFeiShuNotice(FeiShuNoticeMsgEnum.ALLOCATION_INVESTMENT_MANAGER,userIdList,dateTime,hyPartnerUserInfoDO.getUsername(),hyPartnerUserInfoDO.getMobile()); + eventCenterHttpRequest.sendFeiShuNotice(FeiShuNoticeMsgEnum.ALLOCATION_INVESTMENT_MANAGER, Arrays.asList(userId), dateTime, hyPartnerUserInfoDO.getUsername(), hyPartnerUserInfoDO.getMobile()); } catch (ApiException e) { throw new RuntimeException(e); } @@ -879,9 +882,11 @@ public class HyPartnerLineInfoServiceImpl implements HyPartnerLineInfoService { if(flag){ List userIdList = new ArrayList<>(); userIdList.add(investmentManager); + Map feishuUserIdsByUserIds = enterpriseUserDAO.getFeishuUserIdsByUserIds(userIdList); + ArrayList feishuUserIds = new ArrayList<>(feishuUserIdsByUserIds.values()); HyPartnerUserInfoDO hyPartnerUserInfoDO = hyPartnerUserInfoDAO.selectByPartnerId(partnerId); String dateTime = DateUtil.format(new Date(), CoolDateUtils.DATE_FORMAT_SEC_7); - eventCenterHttpRequest.sendFeiShuNotice(FeiShuNoticeMsgEnum.ALLOCATION_INVESTMENT_MANAGER,userIdList,dateTime,hyPartnerUserInfoDO.getUsername(),hyPartnerUserInfoDO.getMobile()); + eventCenterHttpRequest.sendFeiShuNotice(FeiShuNoticeMsgEnum.ALLOCATION_INVESTMENT_MANAGER,feishuUserIds,dateTime,hyPartnerUserInfoDO.getUsername(),hyPartnerUserInfoDO.getMobile()); } return hyPartnerLineInfoDO; }