浏览代码

1. CDFA 收據格式調整 時間12 小時制
2. 加LOG 找 Unpack fail 原因 & SSL 失敗問題

Jessica Tseng 3 年之前
父节点
当前提交
3d65acb470

+ 1 - 1
EVCB_OCPP.WSServer/App.config

@@ -15,7 +15,7 @@
    </connectionStrings>
   <appSettings>   
      <add key="LocalAuthAPI" value="http://172.1.2.187/PortalApi/1" />
-    <add key="WSPort" value="2015" />
+    <add key="WSPort" value="2012" />
     <add key="WSSPort" value="2016" />  
   </appSettings>
   <startup>

+ 3 - 3
EVCB_OCPP.WSServer/Dto/ChargingPrice.cs

@@ -17,9 +17,9 @@ namespace EVCB_OCPP.WSServer.Dto
             {
                 _StartTime = value;
                 if(!value.Contains("M"))
-                {
+                {                    
                     DateTime dt = new DateTime(2021, 01, 01, int.Parse(_StartTime.Split(':')[0]), int.Parse(_StartTime.Split(':')[1]), 0, DateTimeKind.Utc);
-                    _StartTime = dt.ToString("HH:mm tt", new CultureInfo("en-us"));
+                    _StartTime = dt.ToString("hh:mm tt", new CultureInfo("en-us"));
                 }
                
             }
@@ -35,7 +35,7 @@ namespace EVCB_OCPP.WSServer.Dto
                 if (!value.Contains("M"))
                 {
                     DateTime dt = new DateTime(2021, 01, 01, int.Parse(_EndTime.Split(':')[0]), int.Parse(_EndTime.Split(':')[1]), 0, DateTimeKind.Utc);
-                    _EndTime = dt.ToString("HH:mm tt", new CultureInfo("en-us"));
+                    _EndTime = dt.ToString("hh:mm tt", new CultureInfo("en-us"));
                 }
                 
             }

+ 9 - 9
EVCB_OCPP.WSServer/Message/CoreProfileHandler.cs

@@ -664,7 +664,7 @@ namespace EVCB_OCPP.WSServer.Message
                                             foreach (var item in txEnergy.PeriodEnergy)
                                             {
                                                 DateTime dt = new DateTime(2021, 01, 01, int.Parse(item.Key), 0, 0, DateTimeKind.Utc);
-                                                string startTime = dt.ToString("HH:mm tt", new CultureInfo("en-us"));
+                                                string startTime = dt.ToString("hh:mm tt", new CultureInfo("en-us"));
                                                 decimal perfee = 0;
 
                                                 //小數點無條件捨去到第三位
@@ -745,21 +745,21 @@ namespace EVCB_OCPP.WSServer.Message
                                                 if (bill.Count == 1)
                                                 {
                                                     confirmbill = bill;
-                                                    receipt += string.Format("| {0}-{1} @ ${2}/kWh=${3}", tx.StartTime.ToString("HH:mm tt", new CultureInfo("en-us")), tx.StopTime.ToString("HH:mm tt", new CultureInfo("en-us")), bill[0].Fee, bill[0].Total);
+                                                    receipt += string.Format("| {0} - {1}:| {2} kWh @ ${3}/kWh=${4}", tx.StartTime.ToString("hh:mm tt", new CultureInfo("en-us")),confirmbill[0].PeriodEnergy.ToString("0.0000"), tx.StopTime.ToString("hh:mm tt", new CultureInfo("en-us")), bill[0].Fee, bill[0].Total);
                                                     break;
                                                 }
                                                 if (bill.Count > 1)
                                                 {
-                                                    var time = startTime.ToString("HH:mm tt", new CultureInfo("en-us"));
+                                                    var time = startTime.ToString("hh:mm tt", new CultureInfo("en-us"));
                                                     var tt = bill.Where(x => x.StartTime ==time).FirstOrDefault();
                                                     confirmbill.Add(tt);
                                                     if (confirmbill.Count == 1)
                                                     {
-                                                        confirmbill[0].StartTime = tx.StartTime.ToString("HH:mm tt", new CultureInfo("en-us"));
+                                                        confirmbill[0].StartTime = tx.StartTime.ToString("hh:mm tt", new CultureInfo("en-us"));
                                                     }
                                                    
 
-                                                    var stopTimeText = tx.StopTime.ToString("HH:mm tt", new CultureInfo("en-us"));
+                                                    var stopTimeText = tx.StopTime.ToString("hh:mm tt", new CultureInfo("en-us"));
                                                     if (confirmbill[confirmbill.Count - 1].StartTime.Contains(stopTimeText.Split(' ')[1]))
                                                     {
                                                         var subHourText = (int.Parse(stopTimeText.Split(':')[0])).ToString();
@@ -770,8 +770,8 @@ namespace EVCB_OCPP.WSServer.Message
                                                         }
                                                       
                                                     }
-                                                    receipt += string.Format("| {0}-{1} @ ${2}/kWh=${3}", confirmbill[confirmbill.Count - 1].StartTime, confirmbill[confirmbill.Count - 1].EndTime,
-                                                         confirmbill[confirmbill.Count - 1].Fee, confirmbill[confirmbill.Count - 1].Total);
+                                                    receipt += string.Format("| {0} - {1}:| {2} kWh @ ${3}/kWh=${4}", confirmbill[confirmbill.Count - 1].StartTime, confirmbill[confirmbill.Count - 1].EndTime,
+                                                        confirmbill[confirmbill.Count - 1].PeriodEnergy.ToString("0.0000"), confirmbill[confirmbill.Count - 1].Fee, confirmbill[confirmbill.Count - 1].Total);
 
                                                     if (confirmbill.Count == 24) break;
 
@@ -783,8 +783,8 @@ namespace EVCB_OCPP.WSServer.Message
                                             {
                                                 receipt += string.Format("|Total Energy Fee : ${0}", confirmbill.Sum(x => x.Total));
                                             }
-                                            receipt += string.Format("|Parking Fee: | {0}-{1} @ ${2}/hr=${3}", feedto.StartTime.ToString("HH:mm tt", new CultureInfo("en-us")),
-                                            feedto.StopTime.ToString("HH:mm tt", new CultureInfo("en-us")), fee, parkingCost);
+                                            receipt += string.Format("|Parking Fee: | {0} - {1} @ ${2}/hr=${3}", feedto.StartTime.ToString("hh:mm tt", new CultureInfo("en-us")),
+                                            feedto.StopTime.ToString("hh:mm tt", new CultureInfo("en-us")), fee, parkingCost);
                                             tx.Cost = sum + parkingCost;
                                             tx.Receipt = receipt;
                                             tx.UploadedtoTTIA = true;

+ 9 - 2
EVCB_OCPP.WSServer/Message/OCPP16MessageHandler.cs

@@ -286,14 +286,19 @@ namespace EVCB_OCPP.WSServer.Message
 
         private BasicMessageResult UnPackPayloadbyCallResult(Queue requestQueue, string uniqueId, string payload)
         {
+            int i = 1;
             BasicMessageResult result = new BasicMessageResult();
             try
             {
+                i = -1 ;
                 IRequest request = requestQueue.RestoreRequest(uniqueId);
+                i = 2;
                 Feature feature = null;
                 foreach (var profile in profiles)
                 {
+                    i = 3;
                     feature = profile.GetFeaturebyType(request.GetType());
+                    i = 4;
                     if (feature == null)
                     {
                         continue;
@@ -303,16 +308,18 @@ namespace EVCB_OCPP.WSServer.Message
                         break;
                     }
                 }
-
+                i = 5;
                 IConfirmation confrim = JsonConvert.DeserializeObject(payload, feature.GetConfirmationType()) as IConfirmation;
+                i = 6;
                 confrim.SetRequest(request);
+                i = 7;
                 result.Confirmation = confrim;
 
             }
             catch (Exception ex)
             {
                 result.Exception = ex;
-                logger.Error(string.Format("UnPackPayloadbyCallResult Data:[{0},{1}] Ex: {2}", uniqueId, payload, ex.ToString()), "UnPack");
+                logger.Error(string.Format(i+"UnPackPayloadbyCallResult Data:[{0},{1}] Ex: {2}", uniqueId, payload, ex.ToString()), "UnPack");
 
             }
             return result;

+ 1 - 1
EVCB_OCPP.WSServer/Properties/AssemblyInfo.cs

@@ -35,4 +35,4 @@ using System.Runtime.InteropServices;
 [assembly: AssemblyVersion("0.1.0.0")]
 [assembly: AssemblyFileVersion("0.1.0.0")]
 
-[assembly: AssemblyInformationalVersion("9bbdb30")]
+[assembly: AssemblyInformationalVersion("2332efe")]

+ 5 - 5
SocketEngine/AsyncStreamSocketSession.cs

@@ -170,7 +170,7 @@ namespace SuperSocket.SocketEngine
         private SslStream CreateSslStream(ICertificateConfig certConfig)
         {
             //Enable client certificate function only if ClientCertificateRequired is true in the configuration
-            if(!certConfig.ClientCertificateRequired)
+            if (!certConfig.ClientCertificateRequired)
                 return new SslStream(new NetworkStream(Client), false);
 
             //Subscribe the client validation callback
@@ -242,7 +242,7 @@ namespace SuperSocket.SocketEngine
             }
             catch (IOException exc)
             {
-                LogError(exc);
+                LogError(Client.RemoteEndPoint.ToString(), exc);
 
                 if (!connect)//Session was already registered
                     this.Close(CloseReason.SocketError);
@@ -252,7 +252,7 @@ namespace SuperSocket.SocketEngine
             }
             catch (Exception e)
             {
-                LogError(e);
+                LogError(Client.RemoteEndPoint.ToString(), e);
 
                 if (!connect)//Session was already registered
                     this.Close(CloseReason.SocketError);
@@ -329,7 +329,7 @@ namespace SuperSocket.SocketEngine
                 OnSendError(queue, CloseReason.SocketError);
                 return;
             }
-            
+
             var nextPos = queue.Position + 1;
 
             //Has more data to send
@@ -375,7 +375,7 @@ namespace SuperSocket.SocketEngine
             }
             catch (Exception e)
             {
-                LogError(e);
+                LogError(Client.RemoteEndPoint.ToString(), e);
                 OnNegotiateCompleted(false);
                 return;
             }