modify local workflow parameters to much native ones
[vid.git] / vid-app-common / src / main / webapp / app / vid / scripts / modals / new-change-management / new-change-management.controller.js
index 246834c..c6a5b31 100644 (file)
                                                }
                                        }else if(workflowType=="VNF In Place Software Update"){
                                                var payloadObj = {
-                                                       'existing_software_version':vm.getInternalWorkFlowParameter(workflowType, 'STRING', 'Existing software version').value,
-                                                       'new_software_version':vm.getInternalWorkFlowParameter(workflowType, 'STRING', 'New software version').value,
-                                                       'operations_timeout':vm.getInternalWorkFlowParameter(workflowType, 'STRING', 'Operations timeout').value
+                                                       'existing_software_version':vm.getInternalWorkFlowParameter(workflowType, 'text', 'Existing software version').value,
+                                                       'new_software_version':vm.getInternalWorkFlowParameter(workflowType, 'text', 'New software version').value,
+                                                       'operations_timeout':vm.getInternalWorkFlowParameter(workflowType, 'text', 'Operations timeout').value
                                                };
                                                requestParametersData = {
                             payload: JSON.stringify(payloadObj)
 
                                }else if(workflowType=="VNF In Place Software Update"){
                                        var payloadObj = {
-                                               'existing_software_version':vm.getInternalWorkFlowParameter(workflowType, 'STRING', 'Existing software version').value,
-                                               'new_software_version':vm.getInternalWorkFlowParameter(workflowType, 'STRING', 'New software version').value,
-                                               'operations_timeout':vm.getInternalWorkFlowParameter(workflowType, 'STRING', 'Operations timeout').value
+                                               'existing_software_version':vm.getInternalWorkFlowParameter(workflowType, 'text', 'Existing software version').value,
+                                               'new_software_version':vm.getInternalWorkFlowParameter(workflowType, 'text', 'New software version').value,
+                                               'operations_timeout':vm.getInternalWorkFlowParameter(workflowType, 'text', 'Operations timeout').value
                                        };
                                        requestParametersData = {
                                                payload: JSON.stringify(payloadObj)
                         requestInfo: requestInfoData,
                         relatedInstanceList: [],
                         requestParameters:requestParametersData,
-                        configurationParameters: JSON.parse(vm.getInternalWorkFlowParameter("VNF Scale Out", "STRING", "Configuration Parameters").value)
+                        configurationParameters: JSON.parse(vm.getInternalWorkFlowParameter("VNF Scale Out", "text", "Configuration Parameters").value)
                     };
                     requestInfoData.instanceName = vnf.name + "_" + (moduleToScale.currentCount + 1);
                 }else{
         };
 
         vm.executeWorkflow = function () {
-            if (vm.localWorkflows && vm.localWorkflows.length > 0) {
+            if ( vm.localWorkflows && vm.localWorkflows.length > 0 ) {
                 vm.triggerLocalWorkflow();
             } else {
-                vm.triggerRemoteWorkflow();
+                let source = vm.getRemoteWorkflowSource(vm.changeManagement.workflow);
+                if( source === "NATIVE"){
+                    vm.localWorkflowsParameters = vm.remoteWorkflowsParameters;
+                    vm.triggerLocalWorkflow();
+                }else {
+                    vm.triggerRemoteWorkflow();
+                }
             }
         };
 
         vm.loadLocalWorkFlowParameters = function (workflow) {
           changeManagementService.getLocalWorkflowParameter(workflow)
           .then(function (response) {
-            let fileParameters = response.data.parameterDefinitions.filter(item => item.type === 'FILE');
-            let textParameters = response.data.parameterDefinitions.filter(item => item.type === 'STRING');
-            let parameters = new Map();
-            parameters.set('FILE', fileParameters);
-            parameters.set('STRING', textParameters);
-            vm.localWorkflowsParameters.set(workflow, parameters);
+              vm.localWorkflowsParameters.set(workflow, response.data.parameterDefinitions);
           })
           .catch(function (error) {
             $log.error(error);
                             workflowParams.pattern = validation.allowableChars;
                         }
                     }
+                    workflowParams.type = param.inputType;
+
                     parameters.push(workflowParams);
                 }
             );
         };
 
         vm.getInternalWorkFlowParameters = function (workflow, type) {
-          if (workflow && vm.localWorkflowsParameters.has(workflow) && vm.localWorkflowsParameters.get(workflow).has(type)) {
-            return vm.localWorkflowsParameters.get(workflow).get(type)
+            if (workflow && vm.localWorkflowsParameters.has(workflow) && vm.localWorkflowsParameters.get(workflow).filter(parameter => parameter.type==type) != []) {
+                return vm.localWorkflowsParameters.get(workflow).filter(parameter => parameter.type==type)
           }
           return [];
         };
 
         vm.getInternalWorkFlowParameter = function (workflow, type, parameterName) {
-          if (workflow && vm.localWorkflowsParameters.has(workflow) && vm.localWorkflowsParameters.get(workflow).has(type)) {
-            return vm.localWorkflowsParameters.get(workflow).get(type).filter(parameter => parameter.name === parameterName)[0]
+            if (workflow && vm.localWorkflowsParameters.has(workflow) && vm.localWorkflowsParameters.get(workflow).filter(parameter => parameter.type==type) != []) {
+                return vm.localWorkflowsParameters.get(workflow).filter(parameter => parameter.type==type).filter(parameter => parameter.name === parameterName)[0]
           }
         };
 
+        vm.getRemoteWorkflowSource = (workflow) => {
+            return vm.getCachedWorkflowDetails(workflow)[0].source;
+        };
+
         vm.getCachedWorkflowDetails = function (workflow) {
             return vm.remoteWorkflows.filter( function (remoteWorkflow) {
                 return remoteWorkflow.name === workflow;