mirror of
https://codeup.aliyun.com/67762337eccfc218f6110e0e/per-boe/java-servers.git
synced 2025-12-09 02:46:50 +08:00
修改发送案例
This commit is contained in:
@@ -187,7 +187,59 @@ public class CasesRecommendPushRecordServiceImpl implements ICasesRecommendPushR
|
|||||||
}
|
}
|
||||||
//修改为推送中
|
//修改为推送中
|
||||||
updateProcessStatus(casesRecommend.getId(), CasesPushStatusEnum.PUSH_ING.getStatus());
|
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) {
|
for (CasesRecommendPushRecord casesRecommendPushRecord : casesRecommendPushRecords) {
|
||||||
|
|
||||||
Integer pushStatus;
|
Integer pushStatus;
|
||||||
@@ -197,7 +249,7 @@ public class CasesRecommendPushRecordServiceImpl implements ICasesRecommendPushR
|
|||||||
message.setMsgType(1);
|
message.setMsgType(1);
|
||||||
message.setAcceptId(casesRecommendPushRecord.getPushUserId());
|
message.setAcceptId(casesRecommendPushRecord.getPushUserId());
|
||||||
message.setAcceptName(casesRecommendPushRecord.getPushUserName());
|
message.setAcceptName(casesRecommendPushRecord.getPushUserName());
|
||||||
message.setContent("案例推荐《" + casesRecommendPushRecord.getCaseTitle() + "》");
|
message.setContent("案例推荐-《" + casesRecommendPushRecord.getCaseTitle() + "》");
|
||||||
message.setIsRead(false);
|
message.setIsRead(false);
|
||||||
message.setMsgTime(LocalDateTime.now());
|
message.setMsgTime(LocalDateTime.now());
|
||||||
message.setRefId(casesRecommendPushRecord.getId());
|
message.setRefId(casesRecommendPushRecord.getId());
|
||||||
@@ -211,10 +263,6 @@ public class CasesRecommendPushRecordServiceImpl implements ICasesRecommendPushR
|
|||||||
message.setPageParams(casesRecommendPushRecord.getCaseId());
|
message.setPageParams(casesRecommendPushRecord.getCaseId());
|
||||||
message.setPageType(3);
|
message.setPageType(3);
|
||||||
messageDao.save(message);
|
messageDao.save(message);
|
||||||
// eventDataSender.send("案例推荐", "recommendCases", "案例推荐【" + casesRecommendPushRecord.getCaseTitle() + "】",
|
|
||||||
// casesRecommendPushRecord.getCaseId(), "99", casesRecommendPushRecord.getCaseTitle(),
|
|
||||||
// casesRecommendPushRecord.getSysCreateAid(), casesRecommendPushRecord.getSysCreateBy(), "");
|
|
||||||
|
|
||||||
pushStatus = CasesPushStatusEnum.PUSH_SUCCESS.getStatus();
|
pushStatus = CasesPushStatusEnum.PUSH_SUCCESS.getStatus();
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
log.error("推荐案例失败", 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()));
|
casesRecommendPushRecordDao.updateMultiFieldById(casesRecommendPushRecord.getId(), UpdateBuilder.create("pushStatus", pushStatus), UpdateBuilder.create("pushTime", new Date()));
|
||||||
}
|
}
|
||||||
//修改为推送完成 --- 无数据 无需推送
|
|
||||||
updateProcessStatus(casesRecommend.getId(), CasesPushStatusEnum.PUSH_SUCCESS.getStatus());
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user