From 8f9e9aadb79db1ad349e4988a2e302b02c3b962b Mon Sep 17 00:00:00 2001
From: cl <1442464845@qq.com>
Date: 星期四, 30 四月 2026 16:00:34 +0800
Subject: [PATCH] #上报 过滤
---
rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/CloudWmsNotifyLogServiceImpl.java | 7 +++++--
rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/CloudWmsNotifySchedule.java | 13 ++++++-------
2 files changed, 11 insertions(+), 9 deletions(-)
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/CloudWmsNotifySchedule.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/CloudWmsNotifySchedule.java
index 471dd8a..56defcf 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/CloudWmsNotifySchedule.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/CloudWmsNotifySchedule.java
@@ -109,11 +109,9 @@
responseJson = String.valueOf(res);
}
Object codeObj = res != null ? res.get("code") : null;
- boolean success = Integer.valueOf(200).equals(codeObj);
- int status = success ? cloudWmsNotifyLogService.getNotifyStatusSuccess() : cloudWmsNotifyLogService.getNotifyStatusPending();
- if (!success && !isInfiniteRetry(effectiveMaxRetry) && nextRetry >= effectiveMaxRetry) {
- status = cloudWmsNotifyLogService.getNotifyStatusFail();
- }
+ Object statusObj = res != null ? res.get("status") : null;
+ boolean success = Integer.valueOf(200).equals(codeObj) || Integer.valueOf(200).equals(statusObj);
+ int status = success ? cloudWmsNotifyLogService.getNotifyStatusSuccess() : cloudWmsNotifyLogService.getNotifyStatusFail();
logRecord.setLastRequestBody(requestBody);
logRecord.setLastResponseBody(responseJson);
logRecord.setLastNotifyTime(now);
@@ -131,9 +129,10 @@
logRecord.setLastNotifyTime(now);
logRecord.setRetryCount(nextRetry);
// logRecord.setNotifyStatus(nextRetry >= effectiveMaxRetry ? cloudWmsNotifyLogService.getNotifyStatusFail() : cloudWmsNotifyLogService.getNotifyStatusPending());
- logRecord.setNotifyStatus(!isInfiniteRetry(effectiveMaxRetry) && nextRetry >= effectiveMaxRetry
+ int status = !isInfiniteRetry(effectiveMaxRetry) && nextRetry >= effectiveMaxRetry
? cloudWmsNotifyLogService.getNotifyStatusFail()
- : cloudWmsNotifyLogService.getNotifyStatusPending());
+ : cloudWmsNotifyLogService.getNotifyStatusPending();
+ logRecord.setNotifyStatus(status);
logRecord.setUpdateTime(now);
cloudWmsNotifyLogService.updateById(logRecord);
log.warn("浜戜粨涓婃姤澶辫触锛宨d={}锛宐izRef={}锛宎ttempt={}锛宯otifyStatus={}锛宔rror={}",
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/CloudWmsNotifyLogServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/CloudWmsNotifyLogServiceImpl.java
index 846a947..5f83bad 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/CloudWmsNotifyLogServiceImpl.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/CloudWmsNotifyLogServiceImpl.java
@@ -23,9 +23,11 @@
@Override
public List<CloudWmsNotifyLog> listPending(int limit, int maxRetry) {
Page<CloudWmsNotifyLog> page = new Page<>(1, Math.max(1, limit));
- // .lt(CloudWmsNotifyLog::getRetryCount, maxRetry)
LambdaQueryWrapper<CloudWmsNotifyLog> wrapper = new LambdaQueryWrapper<CloudWmsNotifyLog>()
- .eq(CloudWmsNotifyLog::getNotifyStatus, getNotifyStatusPending())
+ // 浠呮煡璇㈡暟鎹簱閰嶇疆鐘舵�侊細寰呴�氱煡 + 澶辫触锛堝彲閲嶈瘯锛�
+ .in(CloudWmsNotifyLog::getNotifyStatus, getNotifyStatusPending(), getNotifyStatusFail())
+ // 浠呮煡璇㈠彲閲嶈瘯鏁版嵁锛氭棤闄愰噸璇曘�佹湭閰嶇疆涓婇檺銆佹垨鏈揪鍒颁笂闄�
+ .apply("(max_retry_count IS NULL OR max_retry_count = -1 OR retry_count < max_retry_count)")
.orderByAsc(CloudWmsNotifyLog::getId);
if (maxRetry >= 0) {
wrapper.lt(CloudWmsNotifyLog::getRetryCount, maxRetry);
@@ -75,6 +77,7 @@
public void fillFromConfig(CloudWmsNotifyLog log) {
Integer maxRetry = getConfigInt(GlobalConfigCode.CLOUD_WMS_NOTIFY_MAX_RETRY);
Integer interval = getConfigInt(GlobalConfigCode.CLOUD_WMS_NOTIFY_RETRY_INTERVAL_SECONDS);
+ log.setNotifyStatus(getNotifyStatusPending());
log.setMaxRetryCount(maxRetry);
log.setRetryIntervalSeconds(interval);
}
--
Gitblit v1.9.1