修改发送案例

This commit is contained in:
Guava
2023-07-03 11:08:25 +08:00
parent 4112b3a268
commit 8076718d04

View File

@@ -187,7 +187,59 @@ public class CasesRecommendPushRecordServiceImpl implements ICasesRecommendPushR
}
//修改为推送中
updateProcessStatus(casesRecommend.getId(), CasesPushStatusEnum.PUSH_ING.getStatus());
List<String> caseIds = casesRecommendPushRecords.stream().map(CasesRecommendPushRecord::getCaseId).collect(Collectors.toList());
if (caseIds.size() > 1) {
sendMixCaseRecommend(casesRecommendPushRecords);
} else {
sendSingleCaseRecommend(casesRecommendPushRecords);
}
//修改为推送完成 --- 无数据 无需推送
updateProcessStatus(casesRecommend.getId(), CasesPushStatusEnum.PUSH_SUCCESS.getStatus());
}
private void sendMixCaseRecommend(List<CasesRecommendPushRecord> casesRecommendPushRecords) {
Map<String, List<CasesRecommendPushRecord>> caseMap = casesRecommendPushRecords.stream().collect(Collectors.groupingBy(CasesRecommendPushRecord::getPushUserId));
Map<String, String> userMap = casesRecommendPushRecords.stream().collect(Collectors.toMap(CasesRecommendPushRecord::getPushUserId, CasesRecommendPushRecord::getPushUserName));
for (String userId : caseMap.keySet()) {
List<CasesRecommendPushRecord> pushRecords = caseMap.get(userId);
try {
Message message = new Message();
message.setMsgType(1);
message.setAcceptId(userId);
message.setAcceptName(userMap.get(userId));
message.setContent("案例推荐-《" + pushRecords.get(0).getCaseTitle() + "》等" + pushRecords.size() + "个案例");
message.setIsRead(false);
message.setMsgTime(LocalDateTime.now());
message.setRefId(null);
message.setRefType("99");
message.setSendName(pushRecords.get(0).getSysCreateBy());
message.setSendType(1);
message.setTitle("案例推荐");
message.setSendAid(pushRecords.get(0).getSysCreateAid());
message.setSource(1);
// message.setPageUrl(domain + "/pc/case/detail?id=" + casesRecommendPushRecord.getCaseId());
// message.setPageParams(casesRecommendPushRecord.getCaseId());
message.setPageType(3);
messageDao.save(message);
updatePushStatus(casesRecommendPushRecords, CasesPushStatusEnum.PUSH_SUCCESS.getStatus());
} catch (Exception e) {
log.error("推荐案例失败", e);
updatePushStatus(casesRecommendPushRecords, CasesPushStatusEnum.PUSH_SUCCESS.getStatus());
}
}
}
private void updatePushStatus(List<CasesRecommendPushRecord> pushRecords, Integer pushStatus) {
for (CasesRecommendPushRecord pushRecord : pushRecords) {
casesRecommendPushRecordDao.updateMultiFieldById(pushRecord.getId(), UpdateBuilder.create("pushStatus", pushStatus), UpdateBuilder.create("pushTime", new Date()));
}
}
private void sendSingleCaseRecommend(List<CasesRecommendPushRecord> casesRecommendPushRecords) {
for (CasesRecommendPushRecord casesRecommendPushRecord : casesRecommendPushRecords) {
Integer pushStatus;
@@ -197,7 +249,7 @@ public class CasesRecommendPushRecordServiceImpl implements ICasesRecommendPushR
message.setMsgType(1);
message.setAcceptId(casesRecommendPushRecord.getPushUserId());
message.setAcceptName(casesRecommendPushRecord.getPushUserName());
message.setContent("案例推荐《" + casesRecommendPushRecord.getCaseTitle() + "");
message.setContent("案例推荐-" + casesRecommendPushRecord.getCaseTitle() + "");
message.setIsRead(false);
message.setMsgTime(LocalDateTime.now());
message.setRefId(casesRecommendPushRecord.getId());
@@ -211,10 +263,6 @@ public class CasesRecommendPushRecordServiceImpl implements ICasesRecommendPushR
message.setPageParams(casesRecommendPushRecord.getCaseId());
message.setPageType(3);
messageDao.save(message);
// eventDataSender.send("案例推荐", "recommendCases", "案例推荐【" + casesRecommendPushRecord.getCaseTitle() + "】",
// casesRecommendPushRecord.getCaseId(), "99", casesRecommendPushRecord.getCaseTitle(),
// casesRecommendPushRecord.getSysCreateAid(), casesRecommendPushRecord.getSysCreateBy(), "");
pushStatus = CasesPushStatusEnum.PUSH_SUCCESS.getStatus();
} catch (Exception e) {
log.error("推荐案例失败", e);
@@ -222,8 +270,6 @@ public class CasesRecommendPushRecordServiceImpl implements ICasesRecommendPushR
}
casesRecommendPushRecordDao.updateMultiFieldById(casesRecommendPushRecord.getId(), UpdateBuilder.create("pushStatus", pushStatus), UpdateBuilder.create("pushTime", new Date()));
}
//修改为推送完成 --- 无数据 无需推送
updateProcessStatus(casesRecommend.getId(), CasesPushStatusEnum.PUSH_SUCCESS.getStatus());
}