create nfvo service instance

Change-Id: Ibdbced9c22fcc70742afd1c4ea96f9ba1839ab32
Signed-off-by: Luji7 <lu.ji3@zte.com.cn>
diff --git a/openo-portal/portal-lifecyclemgr/js/gsolcm.js b/openo-portal/portal-lifecyclemgr/js/gsolcm.js
index b3fc64f..338616a 100644
--- a/openo-portal/portal-lifecyclemgr/js/gsolcm.js
+++ b/openo-portal/portal-lifecyclemgr/js/gsolcm.js
@@ -45,3 +45,67 @@
     });
     return serviceInstanceId;
 }
+
+function createNfvoServiceInstance(s1ServiceUrl, serviceInstance) {
+    var nfvoLcmNsUrl = '/openoapi/nslcm/v1.0/ns';
+    createServiceInstance(s1ServiceUrl, nfvoLcmNsUrl, serviceInstance);
+}
+
+function createServiceInstance(s1ServiceUrl, gatewayUri, serviceInstance) {
+    var nsInstanceId = createNetworkService(s1ServiceUrl, gatewayUri, serviceInstance);
+    if(nsInstanceId === undefined) {
+        return;
+    }
+    instantiateNetworkService(gatewayUri, nsInstanceId, serviceInstance);
+}
+
+function createNetworkService(s1ServiceUrl, gatewayUri, serviceInstance) {
+    var parameter = {
+        'nsdId': serviceInstance.serviceTemplateId,
+        'nsName': serviceInstance.serviceName,
+        'description': serviceInstance.serviceDescription,
+        'gatewayUri': gatewayUri,
+        'parameters': serviceInstance.serviceParameters
+    };
+    var nsInstanceId;
+    $.ajax({
+        type : "POST",
+        async: false,
+        url : s1ServiceUrl,
+        contentType : "application/json",
+        dataType : "json",
+        data : JSON.stringify(parameter),
+        success : function(jsonResp) {
+            nsInstanceId = jsonResp.nsInstanceId;
+        },
+        error : function(xhr, ajaxOptions, thrownError) {
+            alert("Error on page : " + xhr.responseText);
+        }
+    });
+    return nsInstanceId;
+}
+
+function instantiateNetworkService(gatewayUri, nsInstanceId, serviceInstance) {
+    var initNsUrl = gatewayUri + '/' + nsInstanceId + '/Instantiate'
+    var parameter = {
+        'gatewayUri': initNsUrl,
+        'nsInstanceId': nsInstanceId,
+        'additionalParamForNs': serviceInstance.serviceParameters
+    };
+    var result = false;
+    $.ajax({
+        type : "POST",
+        async: false,
+        url : s1ServiceUrl,
+        contentType : "application/json",
+        dataType : "json",
+        data : JSON.stringify(parameter),
+        success : function(jsonResp) {
+            result = true;
+        },
+        error : function(xhr, ajaxOptions, thrownError) {
+            alert("Error on page : " + xhr.responseText);
+        }
+    });
+    return result;
+}