[VID-12] Delivery of remaining features for v1.1
[vid.git] / vid-app-common / src / main / webapp / app / vid / scripts / controller / aaiSubscriberController.js
index 5caa329..00c1414 100755 (executable)
@@ -152,20 +152,12 @@ appDS2.controller("aaiSubscriberController", [ "COMPONENT", "FIELD", "PARAMETER"
                                pathQuery = COMPONENT.SERVICES_PATH +globalCustomerId+"/"+$scope.serviceTypeName;\r
                        }\r
                        \r
-                       AaiService.getServiceModels(globalCustomerId,$scope.serviceTypeName,function(response) { // success\r
-                               console.log("service models : "+response.data);\r
-                               DataService.setServiceIdList(response);\r
-                       },  function(response) { // failure\r
-                               $scope.showError(FIELD.ERROR.AAI);\r
-                               $scope.errorMsg = FIELD.ERROR.FETCHING_SERVICES+ response.status;\r
-                               $scope.errorDetails = response.data;\r
-                       });\r
-                       \r
-                       /*$http.get('/aai_get_services/'+globalCustomerId+''+$scope.serviceTypeName)\r
-                       .then(function successCallback(response) {\r
+                       var namedQueryId='6e806bc2-8f9b-4534-bb68-be91267ff6c8';\r
+                       AaiService.getServiceModelsByServiceType(namedQueryId,globalCustomerId,$scope.serviceTypeName,function(response) { // success\r
                                $scope.services = [];\r
-                               if (angular.isArray(response.data)) {\r
-                                       $scope.services = response.data;\r
+                               if (angular.isArray(response.data['inventory-response-item'])) {\r
+                                       $scope.services = response.data['inventory-response-item'][0]['inventory-response-items']['inventory-response-item'];\r
+                                       $scope.serviceType = response.data['inventory-response-item'][0]['service-subscription']['service-type'];\r
                                        $scope.viewPerPage=10;\r
                                        $scope.totalPage=$scope.services.length/$scope.viewPerPage;\r
                                        $scope.sortBy="name";\r
@@ -177,15 +169,100 @@ appDS2.controller("aaiSubscriberController", [ "COMPONENT", "FIELD", "PARAMETER"
                                        $scope.isSpinnerVisible = false;\r
                                        $scope.isProgressVisible = false;\r
                                } else {\r
-                                       $scope.status = "Failed to get service models from SDC.";\r
+                                       $scope.status = "Failed to get service models from ASDC.";\r
                                        $scope.error = true;\r
                                        $scope.isSpinnerVisible = false;\r
                                }\r
-                       }, function errorCallback(response) {\r
-                               console.log("Error: " + response);\r
-                       }); */\r
-               \r
+                               DataService.setServiceIdList(response);\r
+                       },  function(response) { // failure\r
+                               $scope.showError(FIELD.ERROR.AAI);\r
+                               $scope.errorMsg = FIELD.ERROR.FETCHING_SERVICES+ response.status;\r
+                               $scope.errorDetails = response.data;\r
+                       });\r
+                       \r
+                       };\r
                        \r
+                       $scope.createType = "a la carte";\r
+               $scope.deployService = function(service,hideServiceFields) {\r
+                       hideServiceFields = hideServiceFields|| false;\r
+                       var temp = service;\r
+                       service.uuid = service['service-instance']['model-version-id'];\r
+                       \r
+                       console.log("Instantiating ASDC service " + service.uuid);\r
+                       \r
+                       $http.get('rest/models/services/' + service.uuid)\r
+                               .then(function successCallback(getServiceResponse) {\r
+                                       getServiceResponse.data['service'].serviceTypeName =$scope.serviceTypeName ;\r
+                                       getServiceResponse.data['service'].createSubscriberName =$scope.createSubscriberName ;\r
+                                       var serviceModel = getServiceResponse.data;\r
+                                       DataService.setServiceName(serviceModel.service.name);\r
+                                       \r
+                                       DataService.setModelInfo(COMPONENT.SERVICE, {\r
+                                               "modelInvariantId": serviceModel.service.invariantUuid,\r
+                                               "modelVersion": serviceModel.service.version,\r
+                                               "modelNameVersionId": serviceModel.service.uuid,\r
+                                               "modelName": serviceModel.service.name,\r
+                                               "description": serviceModel.service.description,\r
+                                               "category":serviceModel.service.category,\r
+                                               "serviceTypeName":serviceModel.service.serviceTypeName,\r
+                                               "createSubscriberName":serviceModel.service.createSubscriberName\r
+                                       });\r
+                                       DataService.setHideServiceFields(hideServiceFields);\r
+                                       DataService.setALaCarte (true);\r
+                                       $scope.createType = "a la carte";\r
+                                       var broadcastType = "createComponent";\r
+                                       \r
+                                       if (UtilityService.arrayContains (VIDCONFIGURATION.MACRO_SERVICES, serviceModel.service.invariantUuid )) {\r
+                                               DataService.setALaCarte (false);\r
+                                               $scope.createType = "Macro";\r
+                                               var convertedAsdcModel = UtilityService.convertModel(serviceModel);\r
+                                               \r
+                                               //console.log ("display inputs "); \r
+                                               //console.log (JSON.stringify ( convertedAsdcModel.completeDisplayInputs));\r
+                                               \r
+                                               DataService.setModelInfo(COMPONENT.SERVICE, {\r
+                                                       "modelInvariantId": serviceModel.service.invariantUuid,\r
+                                                       "modelVersion": serviceModel.service.version,\r
+                                                       "modelNameVersionId": serviceModel.service.uuid,\r
+                                                       "modelName": serviceModel.service.name,\r
+                                                       "description": serviceModel.service.description,\r
+                                                       "category":serviceModel.service.category,\r
+                                                       "inputs": serviceModel.service.inputs,\r
+                                                       "displayInputs": convertedAsdcModel.completeDisplayInputs,\r
+                                                       "serviceTypeName":serviceModel.service.serviceTypeName,\r
+                                                       "createSubscriberName":serviceModel.service.createSubscriberName\r
+                                               });\r
+                                       };\r
+                                       \r
+                                       $scope.$broadcast(broadcastType, {\r
+                                           componentId : COMPONENT.SERVICE,\r
+                                           callbackFunction : function(response) {\r
+                                               if (response.isSuccessful) {\r
+                                                               vidService.setModel(serviceModel);\r
+                                                               \r
+                                                               var subscriberId = "Not Found";\r
+                                                               var serviceType = "Not Found";\r
+                                                               \r
+                                                               var serviceInstanceId = response.instanceId;\r
+                                                               \r
+                                                               for (var i = 0; i < response.control.length; i++) {\r
+                                                                       if (response.control[i].id == "subscriberName") {\r
+                                                                               subscriberId = response.control[i].value;\r
+                                                                       } else if (response.control[i].id == "serviceType") {\r
+                                                                               serviceType = response.control[i].value;\r
+                                                                       }\r
+                                                               }\r
+                                                               \r
+                                                               \r
+                                                               $scope.refreshSubs(subscriberId,serviceType,serviceInstanceId);\r
+                                                       \r
+                                               }\r
+                                           }\r
+                                       });\r
+                                       \r
+                               }, function errorCallback(response) {\r
+                                       console.log("Error: " + response);\r
+                               });\r
                };\r
                \r
                 $scope.cancelCreateSIType = function(){\r
@@ -207,6 +284,7 @@ appDS2.controller("aaiSubscriberController", [ "COMPONENT", "FIELD", "PARAMETER"
        }\r
 \r
        $scope.refreshSubs = function() {\r
+               $scope.init();\r
                $scope.fetchSubs(FIELD.PROMPT.REFRESH_SUB_LIST);\r
                $scope.fetchServices();\r
        };\r