+ var getMsoE2ERequest = function(parameterList) {\r
+ var modelInfo = DataService.getModelInfo(_this.componentId);\r
+\r
+ //region id\r
+ var lcpRegion = getValueFromList(FIELD.ID.LCP_REGION, parameterList);\r
+ if (lcpRegion === FIELD.KEY.LCP_REGION_TEXT) {\r
+ lcpRegion = getValueFromList(FIELD.ID.LCP_REGION_TEXT,\r
+ parameterList);\r
+ }\r
+ var cloudOwner = _.find(DataService.getCloudRegionTenantList(), function(region){\r
+ return region.cloudRegionId === lcpRegion;\r
+ }).cloudOwner;\r
+\r
+ var params = [];\r
+ var displayInputs = modelInfo.displayInputs;\r
+ var groupBy = _.groupBy(displayInputs, "templateUUID");\r
+\r
+ _.forEach(groupBy, function(nodeTemplateInputs, nodeTemplateUUID) {\r
+ var reqParas = {};\r
+ var vfLocations = [];\r
+\r
+ nodeTemplateInputs.forEach(function(parameter){\r
+ if(parameter.type === 'vf_location') {\r
+ var loc = {\r
+ vnfProfileId: parameter.displayName,\r
+ locationConstraints : {\r
+ vimId: cloudOwner + '_' + lcpRegion\r
+ }\r
+ };\r
+ vfLocations.push(loc);\r
+ } else if(parameter.type === 'sdn_controller') {\r
+ if(parameter.value === undefined || parameter.value === null) {\r
+ reqParas[parameter.name] = '';\r
+ } else {\r
+ reqParas[parameter.name] = parameter.value.value;\r
+ }\r
+ } else {\r
+ var name;\r
+ _.forEach(displayInputs, function(item, key){\r
+ if(item === parameter) {\r
+ name = key;\r
+ }\r
+ });\r
+ var value = _.find(parameterList, function(item){\r
+ return item.id === name;\r
+ }).value;\r
+ reqParas[parameter.displayName] = value;\r
+ }\r
+ });\r
+\r
+ params.push({\r
+ resourceName: nodeTemplateInputs[0].templateName,\r
+ resourceInvariantUuid: nodeTemplateInputs[0].templateInvariantUUID,\r
+ resourceUuid: nodeTemplateInputs[0].templateUUID,\r
+ resourceCustomizationUuid: nodeTemplateInputs[0].templateCustomizationUUID,\r
+ parameters: {\r
+ locationConstraints: vfLocations,\r
+ //TODO resources: [],\r
+ requestInputs: reqParas\r
+ }\r
+ });\r
+ });\r
+\r
+ var requestBody = {\r
+ service: {\r
+ name: getValueFromList(FIELD.ID.INSTANCE_NAME, parameterList),\r
+ description: modelInfo["description"],\r
+ serviceInvariantUuid: modelInfo["modelInvariantId"],\r
+ serviceUuid: modelInfo["modelNameVersionId"],\r
+ globalSubscriberId: DataService.getGlobalCustomerId(),\r
+ serviceType: getValueFromList(FIELD.ID.SERVICE_TYPE, parameterList) || modelInfo["serviceTypeName"],\r
+ parameters: {\r
+ locationConstraints: [],\r
+ resources: params,\r
+ requestInputs: {} //TODO\r
+ }\r
+ }\r
+ };\r
+\r
+ return requestBody;\r
+ };\r
+\r