mirror of
https://codeup.aliyun.com/67762337eccfc218f6110e0e/per-boe/java-servers.git
synced 2025-12-11 03:46:50 +08:00
提交推送
This commit is contained in:
@@ -52,7 +52,6 @@ public class AsyncSendCasesRecommendService {
|
||||
public void sendCasesRecommend(CasesRecommend casesRecommend) {
|
||||
List<Integer> pushStatusList = new ArrayList<>();
|
||||
pushStatusList.add(CasesPushStatusEnum.WAIT_PUSH.getStatus());
|
||||
pushStatusList.add(CasesPushStatusEnum.PUSH_REVOKE.getStatus());
|
||||
List<CasesRecommendPushRecord> 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 <T> Predicate<T> distinctByKey(Function<? super T, ?> keyExtractor) {
|
||||
Set<Object> seen = ConcurrentHashMap.newKeySet();
|
||||
return t -> seen.add(keyExtractor.apply(t));
|
||||
|
||||
@@ -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());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -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);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user