From 24ce28e83cb4faf805a88f0cb4c98a73ed633a57 Mon Sep 17 00:00:00 2001 From: Luji7 Date: Sun, 22 Oct 2017 16:03:20 +0800 Subject: Fix create dialog para issue. Change-Id: I2ec050b14e3b17f73e1b44e18db3d62690dcb75d Issue-id: USECASEUI-53 Signed-off-by: Luji7 --- .../scripts/controller/ServiceTemplateService.js | 68 ++++++++++++++++------ .../uui/fusion/scripts/controller/lcmController.js | 22 ++++--- .../scripts/view-models/create-service-dialog.html | 40 ++++++++----- 3 files changed, 91 insertions(+), 39 deletions(-) (limited to 'usecaseui-lcm/src/main/webapp') diff --git a/usecaseui-lcm/src/main/webapp/app/uui/fusion/scripts/controller/ServiceTemplateService.js b/usecaseui-lcm/src/main/webapp/app/uui/fusion/scripts/controller/ServiceTemplateService.js index 141c012f..908113a2 100644 --- a/usecaseui-lcm/src/main/webapp/app/uui/fusion/scripts/controller/ServiceTemplateService.js +++ b/usecaseui-lcm/src/main/webapp/app/uui/fusion/scripts/controller/ServiceTemplateService.js @@ -126,44 +126,78 @@ }); }, + getAllSdnControllers: function (processFun) { + return $http({ + url: url+'/sdnc-controllers/', + method: 'GET', + data: null, + headers: uuiHeaders + }).then(function(response){ + var sdnControllers = response.data; + var result = sdnControllers.map(function (sdn) { + return { + name: sdn['thirdparty-sdnc-id'], + value: sdn['thirdparty-sdnc-id'] + }; + }); + processFun(result); + }); + }, + createService: function (customer, serviceType, service, template) { - function translateInputs(t, customer,serviceType, c) { + function translateInputs(t, customer,serviceType, c, isE2E) { var reqParas = { - subscriptionServiceType: serviceType.value + subscriptionServiceType: serviceType.id }; + var vfLocations = []; c[t.name].parameters.forEach(function (parameter) { - reqParas[parameter.name] = parameter.value;// todo + if(parameter.type === 'vf_location') { + var loc = {}; + loc[parameter.name] = parameter.value.value; + vfLocations.push(loc); + } else if(parameter.type === 'sdn_controller') { + if(parameter.value === undefined || parameter.value === null) { + reqParas[parameter.name] = ''; + } else { + reqParas[parameter.name] = parameter.value.value; + } + } else { + reqParas[parameter.name] = parameter.value; + } }); + if(t.type === 'VF') { + reqParas.vnfProfileId = vfLocations; + } var nestedSegments = t.nestedTemplates.map(function (nestedTemplate) { - return translateInputs(nestedTemplate,customer,serviceType, c); + return translateInputs(nestedTemplate,customer,serviceType, c, false); }); - return { - domainHost: c[t.name].location.value,// ??? - nodeTemplateName: t.name+':'+t.version, - nodeType: 'service', - 'GLOBALSUBSCIBERID': customer.id, - 'SUBSCIBERNAME': customer.name, - requestParameters: reqParas, - segments: nestedSegments - }; - } + var request = {}; + if(isE2E) { + request.domainHost = 'localhost'; + } + request.nodeTemplateName = t.name+':'+t.version; + request.nodeType = 'service'; + request['GLOBALSUBSCIBERID'] = customer.id; + request['SUBSCIBERNAME'] = customer.name; + request.requestParameters = reqParas; + request.segments = nestedSegments; + return request; + } var cache = {}; cache[template.name] = { - location: service.location.value, parameters: service.parameters }; service.segments.forEach(function (segment) { cache[segment.nodeTemplateName] = { - location: segment.location.value, parameters: segment.parameters } }); console.log('cache ----'); console.log(cache); - var reqPara = translateInputs(template,customer, serviceType, cache); + var reqPara = translateInputs(template,customer, serviceType, cache, true); var requestBody = { service: { name: service.serviceName, diff --git a/usecaseui-lcm/src/main/webapp/app/uui/fusion/scripts/controller/lcmController.js b/usecaseui-lcm/src/main/webapp/app/uui/fusion/scripts/controller/lcmController.js index 3f67584d..498f93e0 100644 --- a/usecaseui-lcm/src/main/webapp/app/uui/fusion/scripts/controller/lcmController.js +++ b/usecaseui-lcm/src/main/webapp/app/uui/fusion/scripts/controller/lcmController.js @@ -110,7 +110,7 @@ app.controller('lcmCtrl', ['$scope', '$uibModal', '$log', '$http', '$timeout', ' function($scope, $uibModalInstance, ServiceTemplateService, customer, serviceType) { var ctrl = this; - ctrl.templates = ServiceTemplateService.getAllServiceTemplates(function (t) { + ServiceTemplateService.getAllServiceTemplates(function (t) { ctrl.templates = t; }); @@ -118,6 +118,7 @@ app.controller('lcmCtrl', ['$scope', '$uibModal', '$log', '$http', '$timeout', ' var paras = serviceTemplate.inputs.map(function (input) { return { name: input.name, + type: input.type, description: input.description, defaultValue: input.defaultValue, isRequired: input.isRequired, @@ -129,6 +130,7 @@ app.controller('lcmCtrl', ['$scope', '$uibModal', '$log', '$http', '$timeout', ' var nestedParas = nestedTemplate.inputs.map(function (input) { return { name: input.name, + type: input.type, description: input.description, defaultValue: input.defaultValue, isRequired: input.isRequired, @@ -137,9 +139,6 @@ app.controller('lcmCtrl', ['$scope', '$uibModal', '$log', '$http', '$timeout', ' }); return { nodeTemplateName: nestedTemplate.name, - location: { - name: nestedTemplate.name + " location",// ??? - }, parameters: nestedParas }; }); @@ -147,14 +146,19 @@ app.controller('lcmCtrl', ['$scope', '$uibModal', '$log', '$http', '$timeout', ' var service = { serviceName: ctrl.service.serviceName, serviceDescription: ctrl.service.serviceDescription, - location: { - name: "local host" // ??? - }, parameters: paras, segments: segmentsPara }; ctrl.service = service; }; + ctrl.service = { + serviceName: '', + serviceDescription: '', + parameters: [], + segments: [] + }; + ctrl.sdnControllers = []; + ctrl.locations = []; ctrl.serviceTemplateChanged = function (template) { console.log('serviceTemplateChanged invoked... ' + template); @@ -190,6 +194,10 @@ app.controller('lcmCtrl', ['$scope', '$uibModal', '$log', '$http', '$timeout', ' ServiceTemplateService.getAllVimInfo(function (vims) { ctrl.locations = vims; }); + + ServiceTemplateService.getAllSdnControllers(function (sdnControllers) { + ctrl.sdnControllers = sdnControllers; + }); }] ).controller('packageOnboardCtrl',['$scope', '$uibModalInstance', 'ServiceTemplateService','onboardPackage', function($scope, $uibModalInstance, ServiceTemplateService, onboardPackage) { diff --git a/usecaseui-lcm/src/main/webapp/app/uui/fusion/scripts/view-models/create-service-dialog.html b/usecaseui-lcm/src/main/webapp/app/uui/fusion/scripts/view-models/create-service-dialog.html index 760a067f..295bcfd0 100644 --- a/usecaseui-lcm/src/main/webapp/app/uui/fusion/scripts/view-models/create-service-dialog.html +++ b/usecaseui-lcm/src/main/webapp/app/uui/fusion/scripts/view-models/create-service-dialog.html @@ -60,43 +60,53 @@
-
- -
- -
-
-
+
+
+ +
+
+ +
{{segment.nodeTemplateName}} -
+
-
+
+
+ +
+
+ +
-- cgit 1.2.3-korg