|
@@ -4539,27 +4539,29 @@ void ChkOcppStatus(byte gunIndex)
|
|
|
ShmOCPP16Data->CsMsg.bits[gunIndex].ChangeAvailabilityReq = NO;
|
|
|
if(strcmp((char *)ShmOCPP16Data->ChangeAvailability[gunIndex].Type, "Operative") == EQUAL)
|
|
|
{
|
|
|
+ if (isDb_ready)
|
|
|
+ DB_Update_Operactive(localDb, gunIndex, true);
|
|
|
+
|
|
|
+ chargingInfo[gunIndex]->IsAvailable = YES;
|
|
|
+
|
|
|
if (chargingInfo[gunIndex]->SystemStatus == S_IDLE ||
|
|
|
chargingInfo[gunIndex]->SystemStatus == S_RESERVATION ||
|
|
|
chargingInfo[gunIndex]->SystemStatus == S_MAINTAIN)
|
|
|
{
|
|
|
- if (isDb_ready)
|
|
|
- DB_Update_Operactive(localDb, gunIndex, true);
|
|
|
-
|
|
|
- chargingInfo[gunIndex]->IsAvailable = YES;
|
|
|
setChargerMode(gunIndex, MODE_IDLE);
|
|
|
}
|
|
|
}
|
|
|
else if (strcmp((char *)ShmOCPP16Data->ChangeAvailability[gunIndex].Type, "Inoperative") == EQUAL)
|
|
|
{
|
|
|
+ if (isDb_ready)
|
|
|
+ DB_Update_Operactive(localDb, gunIndex, false);
|
|
|
+
|
|
|
+ chargingInfo[gunIndex]->IsAvailable = NO;
|
|
|
+
|
|
|
if (chargingInfo[gunIndex]->SystemStatus == S_IDLE ||
|
|
|
chargingInfo[gunIndex]->SystemStatus == S_RESERVATION ||
|
|
|
chargingInfo[gunIndex]->SystemStatus == S_MAINTAIN)
|
|
|
{
|
|
|
- if (isDb_ready)
|
|
|
- DB_Update_Operactive(localDb, gunIndex, false);
|
|
|
-
|
|
|
- chargingInfo[gunIndex]->IsAvailable = NO;
|
|
|
setChargerMode(gunIndex, MODE_MAINTAIN);
|
|
|
}
|
|
|
}
|