From 10776dd6f7f9ef9e47419427fcb1b692ed73d54d Mon Sep 17 00:00:00 2001
From: zhou zhou <3272660260@qq.com>
Date: 星期二, 03 二月 2026 14:34:20 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/devlop-phyz' into devlop-phyz
---
rsf-open-api/src/main/java/com/vincent/rsf/openApi/feign/wms/fallback/WmsServerFeignClientFallback.java | 85 +++++++++++++++++++++++++++++++++++++++++-
1 files changed, 83 insertions(+), 2 deletions(-)
diff --git a/rsf-open-api/src/main/java/com/vincent/rsf/openApi/feign/wms/fallback/WmsServerFeignClientFallback.java b/rsf-open-api/src/main/java/com/vincent/rsf/openApi/feign/wms/fallback/WmsServerFeignClientFallback.java
index 0c846f7..2e33cf4 100644
--- a/rsf-open-api/src/main/java/com/vincent/rsf/openApi/feign/wms/fallback/WmsServerFeignClientFallback.java
+++ b/rsf-open-api/src/main/java/com/vincent/rsf/openApi/feign/wms/fallback/WmsServerFeignClientFallback.java
@@ -15,7 +15,88 @@
@Override
public R queryInventoryDetails(InventoryQueryCondition condition) {
- log.error("璋冪敤WMS Server搴撳瓨鏌ヨ鏄庣粏鎺ュ彛澶辫触锛岃Е鍙戦檷绾у鐞�");
- return R.error("鏈嶅姟璋冪敤澶辫触锛岃绋嶅悗閲嶈瘯");
+ return queryInventoryDetails(condition, null);
+ }
+
+ /**
+ * 搴撳瓨鏌ヨ鏄庣粏闄嶇骇澶勭悊锛堝甫寮傚父淇℃伅锛�
+ * @param condition 鏌ヨ鏉′欢
+ * @param throwable 寮傚父淇℃伅锛堝彲閫夛級
+ * @return 閿欒鍝嶅簲
+ */
+ public R queryInventoryDetails(InventoryQueryCondition condition, Throwable throwable) {
+ log.error("璋冪敤WMS Server搴撳瓨鏌ヨ鏄庣粏鎺ュ彛澶辫触锛岃Е鍙戦檷绾у鐞�", throwable);
+ String errorMessage = filterErrorMessage(throwable);
+ return R.error(errorMessage);
+ }
+
+ @Override
+ public R queryInventorySummary(InventoryQueryCondition condition) {
+ return queryInventorySummary(condition, null);
+ }
+
+ /**
+ * 搴撳瓨鏌ヨ姹囨�婚檷绾у鐞嗭紙甯﹀紓甯镐俊鎭級
+ * @param condition 鏌ヨ鏉′欢
+ * @param throwable 寮傚父淇℃伅锛堝彲閫夛級
+ * @return 閿欒鍝嶅簲
+ */
+ public R queryInventorySummary(InventoryQueryCondition condition, Throwable throwable) {
+ log.error("璋冪敤WMS Server搴撳瓨鏌ヨ姹囨�绘帴鍙eけ璐ワ紝瑙﹀彂闄嶇骇澶勭悊", throwable);
+ String errorMessage = filterErrorMessage(throwable);
+ return R.error(errorMessage);
+ }
+
+ /**
+ * 杩囨护閿欒娑堟伅涓殑URL锛屽彧淇濈暀閿欒绫诲瀷
+ * @param throwable 寮傚父瀵硅薄锛堝彲閫夛級
+ * @return 杩囨护鍚庣殑瀹屾暣閿欒娑堟伅锛堝寘鍚�"鏌ヨ澶辫触锛�"鍓嶇紑锛�
+ */
+ public static String filterErrorMessage(Throwable throwable) {
+ if (throwable == null) {
+ return "鏌ヨ澶辫触锛氭湇鍔¤皟鐢ㄥけ璐ワ紝璇风◢鍚庨噸璇�";
+ }
+ return filterErrorMessage(throwable.getMessage());
+ }
+
+ /**
+ * 杩囨护閿欒娑堟伅涓殑URL锛屽彧淇濈暀閿欒绫诲瀷
+ * @param errorMessage 閿欒娑堟伅瀛楃涓诧紙鍙�夛級
+ * @return 杩囨护鍚庣殑瀹屾暣閿欒娑堟伅锛堝寘鍚�"鏌ヨ澶辫触锛�"鍓嶇紑锛�
+ */
+ public static String filterErrorMessage(String errorMessage) {
+ if (errorMessage == null || errorMessage.isEmpty()) {
+ return "鏌ヨ澶辫触锛氭湭鐭ラ敊璇�";
+ }
+
+ String filteredMessage = errorMessage;
+
+ // 濡傛灉鍖呭惈"executing"锛岃鏄庢槸HTTP璇锋眰閿欒锛屽幓鎺塙RL閮ㄥ垎
+ if (filteredMessage.contains("executing")) {
+ int executingIndex = filteredMessage.indexOf("executing");
+ if (executingIndex > 0) {
+ // 鎻愬彇"executing"涔嬪墠鐨勯儴鍒嗭紙濡�"Read timed out"锛�
+ filteredMessage = filteredMessage.substring(0, executingIndex).trim();
+ } else {
+ // 濡傛灉"executing"鍦ㄥ紑澶达紝浣跨敤榛樿閿欒娑堟伅
+ filteredMessage = "璇锋眰瓒呮椂";
+ }
+ }
+ // 濡傛灉鍖呭惈"http://"鎴�"https://"锛屼篃灏濊瘯鍘绘帀URL閮ㄥ垎
+ else if (filteredMessage.contains("http://") || filteredMessage.contains("https://")) {
+ // 浣跨敤姝e垯琛ㄨ揪寮忓幓鎺塙RL
+ filteredMessage = filteredMessage.replaceAll("https?://[^\\s]+", "").trim();
+ if (filteredMessage.isEmpty()) {
+ filteredMessage = "璇锋眰澶辫触";
+ }
+ }
+
+ // 濡傛灉杩囨护鍚庣殑娑堟伅涓虹┖锛屼娇鐢ㄩ粯璁ら敊璇秷鎭�
+ if (filteredMessage.isEmpty()) {
+ filteredMessage = "鏈煡閿欒";
+ }
+
+ // 杩斿洖鍖呭惈"鏌ヨ澶辫触锛�"鍓嶇紑鐨勫畬鏁撮敊璇秷鎭�
+ return "鏌ヨ澶辫触锛�" + filteredMessage;
}
}
--
Gitblit v1.9.1