Quellcode durchsuchen

[Improve][AW-CCS][main.c]
2022-07-13 / EASON YANG
Action
1. Improve: ocpp_get_auth_result() function. Check MasterPassGroupId logic.

File
1. main.c
Action 1

FIRMWARE VERSION: B0.62.XX.XXXX.PX

8009 vor 2 Jahren
Ursprung
Commit
0cc5df91d6
1 geänderte Dateien mit 6 neuen und 3 gelöschten Zeilen
  1. 6 3
      EVSE/Projects/AW-CCS/Apps/main.c

+ 6 - 3
EVSE/Projects/AW-CCS/Apps/main.c

@@ -791,7 +791,8 @@ uint8_t ocpp_get_auth_result(uint8_t isValidParent, ...)
 				}
 				else if(ShmSysConfigAndInfo->SysInfo.OcppRunningVer == OCPP_RUNNING_VERSION_20)
 				{
-					if((strcmp((char*)ShmOCPP20Data->Authorize.Response_idTokenInfo.status, "Accepted")==0))
+					if((strcmp((char*)ShmOCPP20Data->Authorize.Response_idTokenInfo.status, "Accepted")==0) &&
+					   (strcmp((char*)ShmOCPP20Data->Authorize.Response_idTokenInfo.groupIdToken.idToken, (char*)ShmOCPP20Data->ControllerComponentVariable[AuthCtrlr_MasterPassGroupId].variableAttribute[0].value) != 0))
 						result = PASS;
 				}
 
@@ -823,7 +824,8 @@ uint8_t ocpp_get_auth_result(uint8_t isValidParent, ...)
 					*/
 					
 					if((strcmp((char*)ShmOCPP20Data->Authorize.Response_idTokenInfo.status, "Accepted")==0) &&
-					   (strcmp((char*)ShmOCPP20Data->Authorize.Response_idTokenInfo.groupIdToken.idToken, (char*)ShmOCPP20Data->TransactionEvent[gun_index].Response_idTokenInfo.groupIdToken.idToken)==0))
+					   ((strcmp((char*)ShmOCPP20Data->Authorize.Response_idTokenInfo.groupIdToken.idToken, (char*)ShmOCPP20Data->TransactionEvent[gun_index].Response_idTokenInfo.groupIdToken.idToken) == 0) ||
+						(strcmp((char*)ShmOCPP20Data->Authorize.Response_idTokenInfo.groupIdToken.idToken, (char*)ShmOCPP20Data->ControllerComponentVariable[AuthCtrlr_MasterPassGroupId].variableAttribute[0].value) == 0)))
 						result = PASS;
 				}
 
@@ -841,7 +843,8 @@ uint8_t ocpp_get_auth_result(uint8_t isValidParent, ...)
 		}
 		else if(ShmSysConfigAndInfo->SysInfo.OcppRunningVer == OCPP_RUNNING_VERSION_20)
 		{
-			if((strcmp((char*)ShmOCPP20Data->Authorize.Response_idTokenInfo.status, "Accepted")==0))
+			if((strcmp((char*)ShmOCPP20Data->Authorize.Response_idTokenInfo.status, "Accepted")==0) &&
+			   (strcmp((char*)ShmOCPP20Data->Authorize.Response_idTokenInfo.groupIdToken.idToken, (char*)ShmOCPP20Data->ControllerComponentVariable[AuthCtrlr_MasterPassGroupId].variableAttribute[0].value) != 0))
 				result = PASS;
 		}
 	}