Browse Source

1. fix reconnect EVSE ghosted
2. fix dappper select range error
3. get default log file keepFileOpen

Robert 1 year ago
parent
commit
4cb624f982

+ 2 - 0
Dev_Build.bat

@@ -0,0 +1,2 @@
+docker build ./ -t evdevcontainerregistry.azurecr.io/server:test
+docker push evdevcontainerregistry.azurecr.io/server:test

+ 15 - 7
EVCB_OCPP.WSServer/ProtalServer.cs

@@ -592,15 +592,23 @@ namespace EVCB_OCPP.WSServer
                 }
                 //ClientData _removeClient = null;
 
-                var addedClient = clientDic.GetOrAdd(session.ChargeBoxId, session);
-
-                //clientDic.TryGetValue(session.ChargeBoxId, out _removeClient);
-                if (addedClient != session)
+                //var addedClient = clientDic.GetOrAdd(session.ChargeBoxId, session);
+                if (clientDic.ContainsKey(session.ChargeBoxId))
                 {
-                    WriteMachineLog(addedClient, "Duplicate Logins", "Connection", "");
-                    addedClient.Close(CloseReason.ServerShutdown);
-                    RemoveClient(addedClient);
+                    var oldSession = clientDic[session.ChargeBoxId];
+                    WriteMachineLog(oldSession, "Duplicate Logins", "Connection", "");
+                    oldSession.Close(CloseReason.ServerShutdown);
+                    RemoveClient(oldSession);
                 }
+                clientDic[session.ChargeBoxId] = session;
+
+                //clientDic.TryGetValue(session.ChargeBoxId, out _removeClient);
+                //if (addedClient != session)
+                //{
+                //    WriteMachineLog(addedClient, "Duplicate Logins", "Connection", "");
+                //    addedClient.Close(CloseReason.ServerShutdown);
+                //    RemoveClient(addedClient);
+                //}
 
                 //clientDic.add.Add(session.ChargeBoxId, session);
                 session.m_ReceiveData += ReceivedMessageTimeLimited;

+ 6 - 2
EVCB_OCPP.WSServer/Service/LoadingBalanceService.cs

@@ -283,7 +283,9 @@ namespace EVCB_OCPP.WSServer.Service
             using (SqlConnection conn = await mainDbConnectionFactory.CreateAsync())
             {
                 string onlineChargerSql = "Select ChargeBoxId from [dbo].[Machine] where Id in @machineIds and [Online]=1; ";
-                var onlineResult = await conn.QueryAsync<string>(onlineChargerSql, new { machineIds = machineIds.ToArray() });
+                var sqlParams = new DynamicParameters();
+                sqlParams.Add("@machineIds", machineIds, DbType.String, ParameterDirection.Input, 36);
+                var onlineResult = await conn.QueryAsync<string>(onlineChargerSql, sqlParams);
                 chargeboxids = onlineResult.ToList();
                 foreach (var chargeboxid in chargeboxids)
                 {
@@ -316,7 +318,9 @@ namespace EVCB_OCPP.WSServer.Service
             {
 
                 string offlineChargerSql = "Select ChargeBoxId from [dbo].[Machine] where Id in @machineIds and [Online]=0; ";
-                result = (await conn.QueryAsync<string>(offlineChargerSql, new { machineIds = machineIds })).ToList();
+                var sqlParams = new DynamicParameters();
+                sqlParams.Add("@machineIds", machineIds, DbType.String, ParameterDirection.Input, 36);
+                result = (await conn.QueryAsync<string>(offlineChargerSql, sqlParams)).ToList();
                 foreach (var charger in result)
                 {
                     string txSql = "SELECT TOP(1) [Id] from [dbo].[TransactionRecord] where ChargeBoxId=@ChargeBoxId and StopTime = '1991-01-01 00:00:00.000'; ";

+ 3 - 0
EVCB_OCPP.WSServer/appsettings.json

@@ -43,11 +43,13 @@
       "async": true,
       "f": {
         "type": "File",
+        "keepFileOpen":  false,
         "fileName": "/home/logs/server/${shortdate}.log",
         "layout": "${longdate} ${uppercase:${level}} ${message}"
       },
       "ws": {
         "type": "File",
+        "keepFileOpen": false,
         "fileName": "/home/logs/server/WS_${shortdate}.log",
         "layout": "${longdate} ${uppercase:${level}} ${message}"
       },
@@ -57,6 +59,7 @@
       },
       "auth": {
         "type": "File",
+        "keepFileOpen": false,
         "fileName": "/home/logs/server/Auth_${shortdate}.log",
         "layout": "${longdate} ${callsite} ${uppercase:${level}} ${message}"
       }

+ 2 - 2
build.bat

@@ -1,5 +1,5 @@
 for /f %%i in ('git rev-parse --short HEAD') do set ssha=%%i
 docker build ./ -t 172.1.2.214:5000/server:test --label "git-commit=%ssha%"
 ::docker push 172.1.2.214:5000/server:test
-docker tag 172.1.2.214:5000/server:test evdevcontainerregistry.azurecr.io/server:test
-docker push evdevcontainerregistry.azurecr.io/server:test
+docker tag 172.1.2.214:5000/server:test evdevcontainerregistry.azurecr.io/server:%ssha%
+docker push evdevcontainerregistry.azurecr.io/server:%ssha%