Răsfoiți Sursa

2021-03-16 / ct_chen

Actions:
1. Webservice add "isEnableLocalPowerSharging" setting for "AX" series

Files:
1. as list
ct_chen 4 ani în urmă
părinte
comite
28f7a4019c

+ 12 - 0
EVSE/Modularization/WebService.c

@@ -990,6 +990,7 @@ int main(int argc, char *argv[]) {
 			char *OcppServerURL=NULL;
 			char *ChargeBoxId=NULL;
 			char *chargePointVendor=NULL;
+			int isEnableLocalPowerSharging=0;
 
 			if( json_object_object_get_ex(jobj, "BackendConnTimeout", &val_obj) ) {
 				BackendConnTimeout = json_object_get_int(val_obj);
@@ -1019,6 +1020,10 @@ int main(int argc, char *argv[]) {
 				chargePointVendor = (char*)json_object_get_string(val_obj);
 				strcpy((char *)&ShmSysConfigAndInfo->SysConfig.chargePointVendor,chargePointVendor);
 			}
+			if( json_object_object_get_ex(jobj, "isEnableLocalPowerSharging", &val_obj) ) {
+				isEnableLocalPowerSharging = json_object_get_int(val_obj);
+				ShmSysConfigAndInfo->SysConfig.isEnableLocalPowerSharging = isEnableLocalPowerSharging;
+			}
 
 		}
 		struct SysConfigData 	SysConfig;
@@ -1546,6 +1551,7 @@ int main(int argc, char *argv[]) {
 		struct json_object *OcppServerURL;
 		struct json_object *ChargeBoxId;
 		struct json_object *chargePointVendor;
+		struct json_object *isEnableLocalPowerSharging;
 
 		jobj1=json_object_new_object();
 		jobj2=json_object_new_object();
@@ -2087,6 +2093,9 @@ int main(int argc, char *argv[]) {
 		OcppServerURL = json_object_new_string((char *)&ShmSysConfigAndInfo->SysConfig.OcppServerURL);
 		ChargeBoxId = json_object_new_string((char *)&ShmSysConfigAndInfo->SysConfig.ChargeBoxId);
 		chargePointVendor = json_object_new_string((char *)&ShmSysConfigAndInfo->SysConfig.chargePointVendor);
+		if(strcmp(IsDO, "AX") == 0){
+			isEnableLocalPowerSharging = json_object_new_int(ShmSysConfigAndInfo->SysConfig.isEnableLocalPowerSharging);
+		}
 
 		//system
 		json_object_object_add(jobj1,"ModelName",ModelName);
@@ -2421,6 +2430,9 @@ int main(int argc, char *argv[]) {
 		json_object_object_add(jobj4,"OcppServerURL",OcppServerURL);
 		json_object_object_add(jobj4,"ChargeBoxId",ChargeBoxId);
 		json_object_object_add(jobj4,"chargePointVendor",chargePointVendor);
+		if(strcmp(IsDO, "AX") == 0){
+			json_object_object_add(jobj4,"isEnableLocalPowerSharging",isEnableLocalPowerSharging);
+		}
 		printf("%s\n", json_object_to_json_string(jobj4));
 		json_object_put(jobj4);
 	}

+ 32 - 3
EVSE/rootfs/var/www/set_backend.php

@@ -3,6 +3,8 @@
 	$tag_header = 'set';
 	include 'head.php';
 	$obj = json_decode(trim($output[3]));//var_dump($obj);
+	$system = json_decode(trim($output[0]));
+	$ModelName = $system->{'ModelName'};
 	$OcppConnStatus='';
 	switch ($obj->{'OcppConnStatus'}){
 		case 0:
@@ -98,6 +100,15 @@ img {
 											<label>Charge Point Vendor</label>
 											<input type="text" name="chargePointVendor" id="chargePointVendor" class="form-control" value="<?php echo $obj->{'chargePointVendor'};?>">
 										</div>
+<?php if(substr($ModelName,0,2)=="AX"){?>
+										<div class="form-group" style="display:block">
+											<label>Local Loading Balance</label>
+											<select class="form-control" id="isEnableLocalPowerSharging" name="isEnableLocalPowerSharging" onChange="isEnableLocalPowerSharging_changed()">
+												<option value="0" <?php echo $obj->{'isEnableLocalPowerSharging'}=="0"?"selected":""?>>disable</option>
+												<option value="1" <?php echo $obj->{'isEnableLocalPowerSharging'}=="1"?"selected":""?>>enable</option>
+											</select>
+										</div>
+<?php } ?>
 									</section>
 								</article>
 								<article class="envor-sorting-item css">
@@ -116,7 +127,11 @@ img {
 ?>
 
 <script type="text/JavaScript">
-
+<?php if(substr($ModelName,0,2)=="AX"){?>
+	$(document).ready(function(){
+		isEnableLocalPowerSharging_changed();
+	});
+<?php } ?>
 	document.getElementById("save").onclick = function() {
 		if(formCheck())
 		{
@@ -134,7 +149,8 @@ img {
 //						"&OcppConnStatus=" + document.getElementById("OcppConnStatus").value+
 						"&OcppServerURL=" + document.getElementById("OcppServerURL").value+
 						"&ChargeBoxId=" + document.getElementById("ChargeBoxId").value+
-						"&chargePointVendor=" + document.getElementById("chargePointVendor").value;
+						"&chargePointVendor=" + document.getElementById("chargePointVendor").value+
+						"&isEnableLocalPowerSharging=" + document.getElementById("isEnableLocalPowerSharging").value;
 			
 			// POST 請求必須設置表頭在 open() 下面,send() 上面
 			request.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
@@ -186,7 +202,20 @@ img {
 		}
 		return true;
 	}
-
+<?php if(substr($ModelName,0,2)=="AX"){?>
+	function isEnableLocalPowerSharging_changed(){
+		if(document.getElementById("isEnableLocalPowerSharging").selectedIndex==1){
+			document.getElementById("OcppServerURL").setAttribute("readOnly","true");
+			document.getElementById("ChargeBoxId").setAttribute("readOnly","true");
+			document.getElementById("chargePointVendor").setAttribute("readOnly","true");
+		}
+		else{
+			document.getElementById("OcppServerURL").removeAttribute("readOnly");
+			document.getElementById("ChargeBoxId").removeAttribute("readOnly");
+			document.getElementById("chargePointVendor").removeAttribute("readOnly");
+		}
+	}
+<?php } ?>
 	function isNumberKey(evt)
 	{
 		var charCode = (evt.which) ? evt.which : event.keyCode

+ 4 - 0
EVSE/rootfs/var/www/set_backend_action.php

@@ -45,6 +45,10 @@
 		if(isset($_POST['chargePointVendor'])){
 			$json['chargePointVendor']				= $_POST['chargePointVendor'];
 		}
+		if(isset($_POST['isEnableLocalPowerSharging'])){
+			checkValue("isEnableLocalPowerSharging");
+			$json['isEnableLocalPowerSharging']		= (int)$_POST['isEnableLocalPowerSharging'];
+		}
 //		ob_start();
 		
 		shell_exec('sync;sync;sync');