Переглянути джерело

修正Server呼叫客戶充電完成紀錄API可能crash問題

Robert 1 рік тому
батько
коміт
5d154fa43a
1 змінених файлів з 14 додано та 8 видалено
  1. 14 8
      EVCB_OCPP.WSServer/Message/CoreProfileHandler.cs

+ 14 - 8
EVCB_OCPP.WSServer/Message/CoreProfileHandler.cs

@@ -1161,18 +1161,24 @@ internal partial class ProfileHandler
 
                                             }, request, customerInfo.ApiKey);
 
-                                            var _httpResult = JsonConvert.DeserializeObject<CPOOuterResponse>(response.Response);
+
                                             logger.LogDebug("completed_session Response" + response.Response);
-                                            JObject jo = JObject.Parse(_httpResult.Data);
-                                            if (jo.ContainsKey("CouponPoint"))
+
+                                            if (response.Success && !string.IsNullOrEmpty(response.Response))
                                             {
-                                                couponPoint = jo["CouponPoint"].Value<Decimal>();
+                                                var _httpResult = JsonConvert.DeserializeObject<CPOOuterResponse>(response.Response);
+                                                logger.LogDebug("completed_session Response" + response.Response);
+                                                JObject jo = JObject.Parse(_httpResult.Data);
+                                                if (jo.ContainsKey("CouponPoint"))
+                                                {
+                                                    couponPoint = jo["CouponPoint"].Value<Decimal>();
 
-                                            }
+                                                }
 
-                                            if (jo.ContainsKey("FarewellMessage"))
-                                            {
-                                                farewellMessage = jo["FarewellMessage"].Value<string>();
+                                                if (jo.ContainsKey("FarewellMessage"))
+                                                {
+                                                    farewellMessage = jo["FarewellMessage"].Value<string>();
+                                                }
                                             }
                                         }