From 2250a274775ba3d14aa233739565edbed987b9b6 Mon Sep 17 00:00:00 2001
From: 南骏 池 <chiffly@163.com>
Date: 星期一, 19 五月 2025 15:00:44 +0800
Subject: [PATCH] 1.携客云接口异常处理模式

---
 service/Warehouse/MesXkyService.cs |   45 +++++++++++++++++++++++----------------------
 1 files changed, 23 insertions(+), 22 deletions(-)

diff --git a/service/Warehouse/MesXkyService.cs b/service/Warehouse/MesXkyService.cs
index e2822f3..7e8b66c 100644
--- a/service/Warehouse/MesXkyService.cs
+++ b/service/Warehouse/MesXkyService.cs
@@ -263,7 +263,7 @@
 
             sendStatus = _responseData.result;
             // 瀵规暟鎹仛澶勭悊瀛樺叆mes
-            if (SaveDeliveryNoticeDetail(_responseData) > 0)
+            if (SaveDeliveryNoticeDetail(_responseData, entity.deliveryNo) > 0)
                 sendStatus = 1;
             else
                 sendStatus = 0;
@@ -294,7 +294,7 @@
                 edtUserGuid: Guid.Parse("11111111-1111-1111-1111-111111111111"),
                 abtGuid: null,
                 abtTable: "DELIVERY_NOTICE_DETAIL",
-                detail: _logMessageDhdDetail,
+                detail: _logMessageDhdDetail + $"绯荤粺寮傚父閿欒锛歿e.Message}\n璺熻釜锛歿e.StackTrace}",
                 orderNo: "",
                 sendJson: _requestJson,
                 rtnJson: JsonConvert.SerializeObject(_responseData),
@@ -309,25 +309,26 @@
     }
 
     //瀵硅幏鍙栧埌鐨勬惡瀹簯閫佽揣鍗曞仛澶勭悊
-    private int SaveDeliveryNoticeDetail(dynamic responseJson)
+    private int SaveDeliveryNoticeDetail(dynamic responseJson,string deliveryNo)
     {
-        var result = 0;
+        var result = 1;
         List<DeliveryNoticeDetail> noticeList = JsonConvert.DeserializeObject<List<DeliveryNoticeDetail>>(responseJson.data.lineList.ToString());
+
+        // 鏂板鍒楄〃绌哄�兼鏌�
+        if (noticeList == null || !noticeList.Any() || noticeList.Count < 1)
+        {
+            _logMessageDhdBar += $"閫佽揣鏄庣粏鏁版嵁涓虹┖锛岄�佽揣鍗曞彿锛歿deliveryNo}";
+            return result;
+        }
+
+
         // 鑾峰彇閫佽揣鍗曞彿骞舵牎楠�
         var deliveryNoObj = responseJson.data.deliveryNo;
         if (deliveryNoObj == null || string.IsNullOrEmpty(deliveryNoObj.ToString()))
         {
-            _logMessageDhdDetail += $"銆愬紓甯搞�戣幏鍙栭�佽揣鍗曞け璐ワ細{responseJson}";
-            return result;
+            throw new Exception($"銆愬紓甯搞�戣幏鍙栭�佽揣鍗曞け璐ワ細{responseJson}");
         }
-        string deliveryNo = deliveryNoObj.ToString();
-
-        // 鏂板鍒楄〃绌哄�兼鏌�
-        if (noticeList == null || !noticeList.Any())
-        {
-            _logMessageDhdBar += $"銆愬紓甯搞�戦�佽揣鏄庣粏鏁版嵁涓虹┖锛岄�佽揣鍗曞彿锛歿deliveryNo}";
-            return result;
-        }
+        deliveryNo = deliveryNoObj.ToString();
 
         //璧嬪�糶uid鍜屽埌璐у崟鍙�
         noticeList.ForEach(n => n.Id = Guid.NewGuid());
@@ -347,8 +348,8 @@
         },
         ex => {
             // 澧炲己寮傚父淇℃伅
-            _logMessageDhdDetail = _logMessageDhdDetail + $"鏁版嵁搴撴搷浣滃け璐ワ細{ex.Message}\n璺熻釜锛歿ex.StackTrace}";
-            //throw new Exception($"鏁版嵁搴撴搷浣滃け璐ワ細{ex.Message}\n璺熻釜锛歿ex.StackTrace}");
+            //_logMessageDhdDetail = _logMessageDhdDetail + $"鏁版嵁搴撴搷浣滃け璐ワ細{ex.Message}\n璺熻釜锛歿ex.StackTrace}";
+            throw new Exception($"鏁版嵁搴撴搷浣滃け璐ワ細{ex.Message}\n璺熻釜锛歿ex.StackTrace}");
         });
 
         return result;
@@ -451,7 +452,7 @@
                 edtUserGuid: Guid.Parse("11111111-1111-1111-1111-111111111111"),
                 abtGuid: null,
                 abtTable: "TBL_BARCODE_INFORMATION",
-                detail: _logMessageDhdBar,
+                detail: _logMessageDhdBar + $"绯荤粺寮傚父閿欒锛歿e.Message}\n璺熻釜锛歿e.StackTrace}",
                 orderNo: "",
                 sendJson: _requestJson,
                 rtnJson: JsonConvert.SerializeObject(_responseData),
@@ -468,13 +469,13 @@
     //瀵硅幏鍙栧埌鐨勬惡瀹簯閫佽揣鍗曟潯鐮佸仛澶勭悊
     private int SaveDeliveryNoticeBar(dynamic responseJson,string deliveryNo)
     {
-        var result = 0;
+        var result = 1;
         List<TblBarcodeInformation> noticeList = JsonConvert.DeserializeObject<List<TblBarcodeInformation>>(responseJson.dataList.ToString());
         
         // 鏂板鍒楄〃绌哄�兼鏌�
-        if (noticeList == null || !noticeList.Any())
+        if (noticeList == null || !noticeList.Any() || noticeList.Count < 1)
         {
-            _logMessageDhdBar += $"銆愬紓甯搞�戞潯鐮佹暟鎹负绌猴紝閫佽揣鍗曞彿锛歿deliveryNo}";
+            _logMessageDhdBar += $"鏉$爜鏁版嵁涓虹┖锛岄�佽揣鍗曞彿锛歿deliveryNo}";
             return result;
         }
 
@@ -496,8 +497,8 @@
         },
         ex => {
             // 澧炲己寮傚父淇℃伅
-            _logMessageDhdBar = _logMessageDhdBar + $"鏁版嵁搴撴搷浣滃け璐ワ細{ex.Message}\n璺熻釜锛歿ex.StackTrace}";
-            //throw new Exception($"鏁版嵁搴撴搷浣滃け璐ワ細{ex.Message}\n璺熻釜锛歿ex.StackTrace}");
+            //_logMessageDhdBar = _logMessageDhdBar + $"鏁版嵁搴撴搷浣滃け璐ワ細{ex.Message}\n璺熻釜锛歿ex.StackTrace}";
+            throw new Exception($"鏁版嵁搴撴搷浣滃け璐ワ細{ex.Message}\n璺熻釜锛歿ex.StackTrace}");
         });
 
         return result;

--
Gitblit v1.9.3