From 2aa0d5b2c034b51298231e1e9dae95d46cdbb888 Mon Sep 17 00:00:00 2001 From: Guava Date: Wed, 5 Jul 2023 11:48:31 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8F=90=E4=BA=A4=E6=8E=A8=E9=80=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/AsyncSendCasesRecommendService.java | 2 -- .../impl/CasesRecommendPushRecordServiceImpl.java | 12 ++++++++++++ .../service/impl/CasesRecommendServiceImpl.java | 3 +++ 3 files changed, 15 insertions(+), 2 deletions(-) diff --git a/servers/boe-server-all/src/main/java/com/xboe/module/boecase/service/impl/AsyncSendCasesRecommendService.java b/servers/boe-server-all/src/main/java/com/xboe/module/boecase/service/impl/AsyncSendCasesRecommendService.java index 9c723cd8..c6852a82 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/module/boecase/service/impl/AsyncSendCasesRecommendService.java +++ b/servers/boe-server-all/src/main/java/com/xboe/module/boecase/service/impl/AsyncSendCasesRecommendService.java @@ -52,7 +52,6 @@ public class AsyncSendCasesRecommendService { public void sendCasesRecommend(CasesRecommend casesRecommend) { List pushStatusList = new ArrayList<>(); pushStatusList.add(CasesPushStatusEnum.WAIT_PUSH.getStatus()); - pushStatusList.add(CasesPushStatusEnum.PUSH_REVOKE.getStatus()); List casesRecommendPushRecords = casesRecommendPushRecordDao.getGenericDao() .findList(CasesRecommendPushRecord.class, FieldFilters.in("pushStatus", pushStatusList), FieldFilters.eqField("recommendId", casesRecommend.getId())); if (CollectionUtils.isEmpty(casesRecommendPushRecords)) { @@ -84,7 +83,6 @@ public class AsyncSendCasesRecommendService { } - private static Predicate distinctByKey(Function keyExtractor) { Set seen = ConcurrentHashMap.newKeySet(); return t -> seen.add(keyExtractor.apply(t)); diff --git a/servers/boe-server-all/src/main/java/com/xboe/module/boecase/service/impl/CasesRecommendPushRecordServiceImpl.java b/servers/boe-server-all/src/main/java/com/xboe/module/boecase/service/impl/CasesRecommendPushRecordServiceImpl.java index 5eeeaa6e..4ca4aba5 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/module/boecase/service/impl/CasesRecommendPushRecordServiceImpl.java +++ b/servers/boe-server-all/src/main/java/com/xboe/module/boecase/service/impl/CasesRecommendPushRecordServiceImpl.java @@ -179,10 +179,22 @@ public class CasesRecommendPushRecordServiceImpl implements ICasesRecommendPushR } } else { try { + casesRecommendDao.update(UpdateBuilder.from(CasesRecommend.class) + .addUpdateField("pushProgress", CasesPushStatusEnum.PUSH_ING.getStatus()) + .addFilter(FieldFilters.eq("id", casesRecommend.getId())) + .builder()); //发送推送案例消息 asyncSendCasesRecommendService.sendCasesRecommend(casesRecommend); + casesRecommendDao.update(UpdateBuilder.from(CasesRecommend.class) + .addUpdateField("pushProgress", CasesPushStatusEnum.PUSH_SUCCESS.getStatus()) + .addFilter(FieldFilters.eq("id", casesRecommend.getId())) + .builder()); } catch (Exception e) { log.error("推送失败", e); + casesRecommendDao.update(UpdateBuilder.from(CasesRecommend.class) + .addUpdateField("pushProgress", CasesPushStatusEnum.PUSH_FAIL.getStatus()) + .addFilter(FieldFilters.eq("id", casesRecommend.getId())) + .builder()); } } } diff --git a/servers/boe-server-all/src/main/java/com/xboe/module/boecase/service/impl/CasesRecommendServiceImpl.java b/servers/boe-server-all/src/main/java/com/xboe/module/boecase/service/impl/CasesRecommendServiceImpl.java index 2b131e59..df000314 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/module/boecase/service/impl/CasesRecommendServiceImpl.java +++ b/servers/boe-server-all/src/main/java/com/xboe/module/boecase/service/impl/CasesRecommendServiceImpl.java @@ -5,6 +5,7 @@ import com.xboe.common.PageList; import com.xboe.core.orm.FieldFilters; import com.xboe.core.orm.LikeMatchMode; import com.xboe.core.orm.QueryBuilder; +import com.xboe.core.orm.UpdateBuilder; import com.xboe.enums.CasesPushStatusEnum; import com.xboe.module.boecase.dao.CasesRecommendDao; import com.xboe.module.boecase.entity.CasesRecommend; @@ -79,6 +80,8 @@ public class CasesRecommendServiceImpl implements ICasesRecommendService { } else if (CasesPushStatusEnum.PUSH_FAIL.getStatus().equals(db.getPushProgress()) || CasesPushStatusEnum.PUSH_REVOKE.getStatus().equals(db.getPushProgress())) { // 推送失败或者已撤回时 + + iCasesRecommendPushRecordService.rePushOrWithdraw(false, db); } }