فهرست منبع

2022-02-05/Jerry Wang
Action:
1. TCCI data transfer ID_CreditDeductResult message fix.
2. Modify table report_deduct_info column name from 'transactionId' to 'txId'.

File:
1. EVSE/Modularization/ocppfiles/MessageHandler.c
--> Action 1,2
2. EVSE/Modularization/ocppfiles/Module_OcppBackend.c
--> Action 2
3. EVSE/Modularization/ocppph/MessageHandler.c
--> Action 1,2
4. EVSE/Modularization/ocppph/Module_OcppBackend.c
--> Action 2

Jerry Wang 3 سال پیش
والد
کامیت
153b14d15a

+ 7 - 11
EVSE/Modularization/ocppfiles/MessageHandler.c

@@ -1307,7 +1307,7 @@ int OCPP_insert_deduct_info(int txId, char *creditNo, uint8_t deductResult, uint
 	char* errMsg = NULL;
 	char sqlStr[8192];
 
-	sprintf(sqlStr, "insert into report_deduct_info(transactionId, creditNo, deductResult, isDonateInvoice, isUploaded) values('%d', '%s', '%d', '%d', '0');", txId, creditNo, deductResult, isDonateInvoice);
+	sprintf(sqlStr, "insert into report_deduct_info(txId, creditNo, deductResult, isDonateInvoice, isUploaded) values('%d', '%s', '%d', '%d', '0');", txId, creditNo, deductResult, isDonateInvoice);
 
 	if (sqlite3_exec(db, sqlStr, 0, 0, &errMsg) != SQLITE_OK)
 	{
@@ -1344,17 +1344,13 @@ int OCPP_update_deduct_info(int txId, char *creditNo)
 
 int queryDeductCallBack(void *data, int columenCount, char **columnValue, char **columnName)
 {
-	json_object *deductData = json_object_new_object();
-
-	json_object_object_add(deductData, "txId", json_object_new_int(atoi(columnValue[1])));
-	json_object_object_add(deductData, "creditNo", json_object_new_string(columnValue[2]));
-	json_object_object_add(deductData, "deductResult", json_object_new_boolean(atoi(columnValue[3])));
-	json_object_object_add(deductData, "isDonateInvoice", json_object_new_boolean(atoi(columnValue[4])));
-
 	sprintf((char*)ShmOCPP16Data->DataTransfer[0].VendorId, "%s", ShmSysConfigAndInfo->SysConfig.chargePointVendor);
-	sprintf((char*)ShmOCPP16Data->DataTransfer[0].MessageId,"ID_CreditDeductResult");
-	sprintf((char*)ShmOCPP16Data->DataTransfer[0].Data, json_object_to_json_string_ext(deductData, JSON_C_TO_STRING_PLAIN));
-	json_object_put(deductData);
+	sprintf((char*)ShmOCPP16Data->DataTransfer[0].MessageId,"%s","ID_CreditDeductResult");
+	sprintf((char*)ShmOCPP16Data->DataTransfer[0].Data, "{\\\"txId\\\":%d,\\\"creditNo\\\":\\\"%s\\\",\\\"deductResult\\\":%s,\\\"isDonateInvoice\\\":%s}",
+			atoi(columnValue[1]),
+			columnValue[2],
+			atoi(columnValue[3])==1?"true":"false",
+			atoi(columnValue[4])==1?"true":"false");
 
 	ShmOCPP16Data->CsMsg.bits[0].DataTransferReq = 1;
 

+ 1 - 1
EVSE/Modularization/ocppfiles/Module_OcppBackend.c

@@ -100,7 +100,7 @@ static char *sqlPeriodEnergy = "create table if not exists ocpp_period_energy (
 							   "periodEnergy text);";
 
 static char *sqlReportDeduct = "create table if not exists report_deduct_info ( idx integer primary key,"
-							   "transactionId integer UNIQUE,"
+							   "txId integer UNIQUE,"
 							   "creditNo text,"
 							   "deductResult text,"
 							   "isDonateInvoice text,"

+ 7 - 11
EVSE/Modularization/ocppph/MessageHandler.c

@@ -814,7 +814,7 @@ int OCPP_insert_deduct_info(int txId, char *creditNo, uint8_t deductResult, uint
 	char* errMsg = NULL;
 	char sqlStr[8192];
 
-	sprintf(sqlStr, "insert into report_deduct_info(transactionId, creditNo, deductResult, isDonateInvoice, isUploaded) values('%d', '%s', '%d', '%d', '0');", txId, creditNo, deductResult, isDonateInvoice);
+	sprintf(sqlStr, "insert into report_deduct_info(txId, creditNo, deductResult, isDonateInvoice, isUploaded) values('%d', '%s', '%d', '%d', '0');", txId, creditNo, deductResult, isDonateInvoice);
 
 	if (sqlite3_exec(db, sqlStr, 0, 0, &errMsg) != SQLITE_OK)
 	{
@@ -851,17 +851,13 @@ int OCPP_update_deduct_info(int txId, char *creditNo)
 
 int queryDeductCallBack(void *data, int columenCount, char **columnValue, char **columnName)
 {
-	json_object *deductData = json_object_new_object();
-
-	json_object_object_add(deductData, "txId", json_object_new_int(atoi(columnValue[1])));
-	json_object_object_add(deductData, "creditNo", json_object_new_string(columnValue[2]));
-	json_object_object_add(deductData, "deductResult", json_object_new_boolean(atoi(columnValue[3])));
-	json_object_object_add(deductData, "isDonateInvoice", json_object_new_boolean(atoi(columnValue[4])));
-
 	sprintf((char*)ShmOCPP16DataPH->DataTransfer[0].VendorId, "%s", ShmSysConfigAndInfo->SysConfig.chargePointVendor);
-	sprintf((char*)ShmOCPP16DataPH->DataTransfer[0].MessageId,"ID_CreditDeductResult");
-	sprintf((char*)ShmOCPP16DataPH->DataTransfer[0].Data, json_object_to_json_string_ext(deductData, JSON_C_TO_STRING_PLAIN));
-	json_object_put(deductData);
+	sprintf((char*)ShmOCPP16DataPH->DataTransfer[0].MessageId,"%s","ID_CreditDeductResult");
+	sprintf((char*)ShmOCPP16DataPH->DataTransfer[0].Data, "{\\\"txId\\\":%d,\\\"creditNo\\\":\\\"%s\\\",\\\"deductResult\\\":%s,\\\"isDonateInvoice\\\":%s}",
+			atoi(columnValue[1]),
+			columnValue[2],
+			atoi(columnValue[3])==1?"true":"false",
+			atoi(columnValue[4])==1?"true":"false");
 
 	ShmOCPP16DataPH->CsMsg.bits[0].DataTransferReq = 1;
 

+ 1 - 1
EVSE/Modularization/ocppph/Module_OcppBackend.c

@@ -95,7 +95,7 @@ static char *sqlTransaction = "create table if not exists ocpp_transaction_recor
 							  "message_content text);";
 
 static char *sqlReportDeduct = "create table if not exists report_deduct_info ( idx integer primary key,"
-							   "transactionId integer UNIQUE,"
+							   "txId integer UNIQUE,"
 							   "creditNo text,"
 							   "deductResult text,"
 							   "isDonateInvoice text,"