\r
"use strict";\r
\r
-appDS2.controller("aaiSubscriberController", ["COMPONENT", "FIELD", "PARAMETER", "DataService", "PropertyService", "$scope", "$http", "$timeout", "$location", "$log", "$route", "$uibModal", "VIDCONFIGURATION", "UtilityService", "vidService", "AaiService", "MsoService", "OwningEntityService", "$q",\r
- function (COMPONENT, FIELD, PARAMETER, DataService, PropertyService, $scope, $http, $timeout, $location, $log, $route, $uibModal, VIDCONFIGURATION, UtilityService, vidService, AaiService, MsoService, OwningEntityService, $q) {\r
+appDS2.controller("aaiSubscriberController", ["COMPONENT", "FIELD", "PARAMETER", "DataService", "PropertyService", "$scope", "$http", "$timeout", "$location", "$log", "$route", "$uibModal", "VIDCONFIGURATION", "UtilityService", "vidService", "AaiService", "MsoService", "OwningEntityService", "AsdcService","featureFlags", "$q", "_",\r
+ function (COMPONENT, FIELD, PARAMETER, DataService, PropertyService, $scope, $http, $timeout, $location, $log, $route, $uibModal, VIDCONFIGURATION, UtilityService, vidService, AaiService, MsoService, OwningEntityService, AsdcService, featureFlags, $q, _) {\r
\r
$scope.showVnfDetails = function (vnf) {\r
console.log("showVnfDetails");\r
$scope.serviceTypes = [FIELD.PROMPT.SELECT_SERVICE, COMPONENT.UCPE_VMS, COMPONENT.SDN_L3_BONDING, COMPONENT.SDN_ETHERNET_INTERNET];\r
$scope.defaultSubscriberName = [FIELD.PROMPT.SELECT_SUB];\r
\r
+ $scope.verifyButtonEnabled = true;\r
+\r
var callbackFunction = function (response) {\r
alert(response);\r
};\r
$scope.createType = "a la carte";\r
var broadcastType = "createComponent";\r
\r
- if (UtilityService.arrayContains(VIDCONFIGURATION.MACRO_SERVICES, serviceModel.service.invariantUuid)) {\r
+ if (AsdcService.isMacro(serviceModel)) {\r
+ DataService.setShouldExcludeMacroFromAsyncInstatiationFlow(AsdcService.shouldExcludeMacroFromAsyncInstatiationFlow(serviceModel));\r
DataService.setALaCarte(false);\r
$scope.createType = "Macro";\r
var convertedAsdcModel = UtilityService.convertModel(serviceModel);\r
$scope.setProgress(2); // Show "a little" progress\r
}\r
\r
+ function getRelatedInstanceGroupsByVnfId(genericVnf) {\r
+ var model = vidService.getModel();\r
+ if (model && model.vnfs && !_.isEmpty(model.vnfs)) {\r
+ Object.keys(model.vnfs).forEach(function (key) {\r
+ var vnf = model.vnfs[key];\r
+ if (vnf.vfcInstanceGroups && !_.isEmpty(vnf.vfcInstanceGroups)) {\r
+ if (vnf.uuid === genericVnf.modelVersionId) {\r
+ AaiService.getInstanceGroupsByVNFInstanceId(genericVnf.nodeId,\r
+ function (response) { //success\r
+ handleGetRelatedInstanceGroupsResponseForVnf(response, genericVnf);\r
+ },\r
+ function (response) { //failure\r
+ $scope.showError(FIELD.ERROR.AAI);\r
+ $scope.errorMsg = FIELD.ERROR.FETCHING_SERVICE_INSTANCE_DATA + response.status;\r
+ $scope.errorDetails = response.data;\r
+ }\r
+ )\r
+ }\r
+ }\r
+ })\r
+ }\r
+ }\r
+\r
+ function resolveModelDataIfMissing(modelVersionId) {\r
+ var model = vidService.getModel();\r
+ if (model && model.service && model.service.uuid === modelVersionId) {\r
+ return $q.resolve(); // no need to resolve anything\r
+ } else {\r
+ // resolve model and value of isPermitted\r
+ return resolveIfIsPermitted()\r
+ .then(function() {\r
+ return getAsdcModelByVersionId(modelVersionId);\r
+ })\r
+ }\r
+ }\r
+\r
+ function resolveIfIsPermitted() {\r
+ var deferred = $q.defer();\r
+ AaiService.searchServiceInstances(\r
+ '?subscriberId=' + $location.search().subscriberId +\r
+ '&serviceInstanceIdentifier=' + $location.search().serviceInstanceId)\r
+ .then(function (response) {\r
+ if (response.displayData && response.displayData.length) {\r
+ var first = response.displayData[0];\r
+ $scope.isPermitted = first.isPermitted;\r
+ deferred.resolve(first.isPermitted);\r
+ } else {\r
+ deferred.reject("some error while resolveIfIsPermitted")\r
+ }\r
+ });\r
+\r
+ return deferred.promise;\r
+ }\r
+\r
+\r
$scope.getComponentList = function (event, request) {\r
\r
$scope.isSpinnerVisible = true;\r
\r
//$scope.getAsdcModel($location.search().modelUuid);\r
\r
- $scope.namedQueryId = VIDCONFIGURATION.COMPONENT_LIST_NAMED_QUERY_ID;\r
- $scope.status = FIELD.STATUS.FETCHING_SERVICE_INST_DATA + $scope.serviceInstanceId;\r
-\r
- AaiService.runNamedQuery($scope.namedQueryId, $scope.globalCustomerId, $scope.serviceType, $scope.serviceInstanceId,\r
- function (response) { //success\r
- $scope.handleInitialResponseInventoryItems(response);\r
- $scope.setProgress(100); // done\r
- $scope.status = FIELD.STATUS.DONE;\r
- $scope.isSpinnerVisible = false;\r
- },\r
- function (response) { //failure\r
- $scope.showError(FIELD.ERROR.AAI);\r
- $scope.errorMsg = FIELD.ERROR.FETCHING_SERVICE_INSTANCE_DATA + response.status;\r
- $scope.errorDetails = response.data;\r
- }\r
- );\r
-\r
- }\r
+ return getModelVersionIdForServiceInstance({\r
+ globalCustomerId: $location.search().subscriberId,\r
+ serviceInstanceId: $location.search().serviceInstanceId,\r
+ aaiModelVersionId: $location.search().aaiModelVersionId\r
+ })\r
+ .then(resolveModelDataIfMissing)\r
+ .then($scope.prepareScopeWithModel)\r
+ .then(function () {\r
+\r
+ $scope.namedQueryId = VIDCONFIGURATION.COMPONENT_LIST_NAMED_QUERY_ID;\r
+ $scope.status = FIELD.STATUS.FETCHING_SERVICE_INST_DATA + $scope.serviceInstanceId;\r
+\r
+ return AaiService.runNamedQuery($scope.namedQueryId, $scope.globalCustomerId, $scope.serviceType, $scope.serviceInstanceId,\r
+ function (response) { //success\r
+ $scope.handleInitialResponseInventoryItems(response);\r
+ $scope.setProgress(100); // done\r
+ $scope.status = FIELD.STATUS.DONE;\r
+ $scope.isSpinnerVisible = false;\r
+ //TODO\r
+ },\r
+ function (response) { //failure\r
+ $scope.showError(FIELD.ERROR.AAI);\r
+ $scope.errorMsg = FIELD.ERROR.FETCHING_SERVICE_INSTANCE_DATA + response.status;\r
+ $scope.errorDetails = response.data;\r
+ }\r
+ )\r
+ })\r
+ };\r
\r
$scope.handleServerError = function (response, status) {\r
alert(response.statusText);\r
}\r
\r
+ function handleGetRelatedInstanceGroupsResponseForVnf(response, genericVnf) {\r
+ _.forEach(response.data, function (instanceGroup) {\r
+ var newInstanceGroup = {\r
+ name: instanceGroup.name,\r
+ type: instanceGroup.type\r
+ };\r
+ genericVnf.instanceGroups.push(newInstanceGroup);\r
+ })\r
+ }\r
+\r
+\r
+\r
function getModelVersionIdForServiceInstance(instance) {\r
if (UtilityService.hasContents(instance.aaiModelVersionId)) {\r
return $q.resolve(instance.aaiModelVersionId);\r
+ } else if ($scope.modelVersionIdForServiceInstance\r
+ && $scope.modelVersionIdForServiceInstance.globalCustomerId === instance.globalCustomerId\r
+ && $scope.modelVersionIdForServiceInstance.serviceInstanceId === instance.serviceInstanceId\r
+ ) {\r
+ return $q.resolve($scope.modelVersionIdForServiceInstance.aaiModelVersionId);\r
} else {\r
- return AaiService.getModelVersionId(instance.globalCustomerId, instance.serviceInstanceId);\r
+ $scope.status = FIELD.STATUS.FETCHING_SERVICE_INST_DATA + $scope.serviceInstanceId;\r
+ return AaiService.getModelVersionId(instance.globalCustomerId, instance.serviceInstanceId)\r
+ .then(function (aaiModelVersionId) {\r
+ $scope.modelVersionIdForServiceInstance = {\r
+ globalCustomerId: instance.globalCustomerId,\r
+ serviceInstanceId: instance.serviceInstanceId,\r
+ aaiModelVersionId: aaiModelVersionId\r
+ };\r
+ return $q.resolve(aaiModelVersionId);\r
+ });\r
}\r
}\r
\r
COMPONENT.SUBSCRIBERNAME_SUB_PATH + disData.subscriberName +\r
COMPONENT.SERVICETYPE_SUB_PATH + disData.serviceType +\r
COMPONENT.SERVICEINSTANCEID_SUB_PATH + disData.serviceInstanceId +\r
+ COMPONENT.MODELVERSIONID_SUB_PATH + disData.aaiModelVersionId +\r
COMPONENT.IS_PERMITTED_SUB_PATH + disData.isPermitted;\r
}\r
};\r
method: 'GET',\r
url: pathQuery\r
}).then(function successCallback(response) {\r
- vidService.setModel(response.data);\r
- console.log("aaiSubscriber getAsdcModel DONE!!!!");\r
- }, function errorCallback(response) {\r
+ if (response.headers()['content-type'].includes('json')) {\r
+ vidService.setModel(response.data);\r
+ console.log("aaiSubscriber getAsdcModel DONE!!!!");\r
+ } else {\r
+ // the response is erroneous\r
+ console.log("aaiSubscriber getAsdcModel BAD RESPONSE");\r
+ errorCallback(response);\r
+ return $q.reject()\r
+ }\r
+ }, errorCallback);\r
+\r
+ function errorCallback(response) {\r
$log.error("aaiSubscriber getAsdcModel - " + FIELD.ERROR.NO_MATCHING_MODEL_AAI + aaiModelVersionId);\r
$scope.errorMsg = FIELD.ERROR.NO_MATCHING_MODEL_AAI + aaiModelVersionId;\r
alert($scope.errorMsg);\r
- });\r
+ }\r
}\r
\r
function returnMatchingServiceSubscription(serviceSubs, serviceId){\r
});\r
}\r
\r
+ $scope.isConfigurationDataAvailiable = function (configuration) {\r
+ $log.debug(configuration);\r
+ return configuration.configData && (!configuration.configData.errorDescription);\r
+ }\r
+\r
$scope.isActivateDeactivateEnabled = function(btnType) {\r
- if ($scope.serviceOrchestrationStatus && $scope.service.model.service.serviceType.toLowerCase().indexOf('transport') != -1) {\r
+ if ($scope.serviceOrchestrationStatus) {\r
+ var status = $scope.serviceOrchestrationStatus.toLowerCase();\r
switch (btnType) {\r
case "activate":\r
- return $scope.serviceOrchestrationStatus === 'Created' ||\r
- $scope.serviceOrchestrationStatus.toLowerCase() === 'pendingdelete' || $scope.serviceOrchestrationStatus.toLowerCase() === 'pending-delete';\r
+ return _.includes(COMPONENT.ACTIVATE_SERVICE_STATUSES, status);\r
break;\r
case "deactivate":\r
- return $scope.serviceOrchestrationStatus === 'Active';\r
+ return status === 'active';\r
break;\r
}\r
}\r
return false;\r
};\r
\r
+ $scope.isShowVerifyService = function () {\r
+ return featureFlags.isOn(COMPONENT.FEATURE_FLAGS.FLAG_SHOW_VERIFY_SERVICE);\r
+ }\r
+\r
+ $scope.isEnableVerifyService = function () {\r
+ //Button should only be enabled when the service type is A la carte\r
+ if (DataService.getALaCarte()) {\r
+ return $scope.verifyButtonEnabled;\r
+ }\r
+ return false;\r
+ };\r
+\r
+ $scope.activateVerifyService = function () {\r
+ $scope.verifyButtonEnabled = false;\r
+ let url = COMPONENT.VERIFY_SERVICE_URL;\r
+\r
+ let config = {\r
+ headers: {\r
+ 'Content-Type': 'application/json'\r
+ }\r
+ };\r
+\r
+ let data = {\r
+ "serviceInstanceList": [\r
+ {\r
+ "serviceInstanceId": $scope.serviceInstanceId,\r
+ "modelVersionId": $scope.service.model.service.uuid,\r
+ "modelInvariantId": $scope.service.model.service.invariantUuid,\r
+ "customerId": $scope.globalCustomerId,\r
+ "serviceType": $scope.service.instance.serviceType,\r
+ }\r
+ ]\r
+ };\r
+ AaiService.postPOMBAverificationRequest(url, data, config);\r
+\r
+ };\r
+\r
+ $scope.isShowAssignmentsEnabled = function () {\r
+ if (featureFlags.isOn(COMPONENT.FEATURE_FLAGS.FLAG_SHOW_ASSIGNMENTS)) {\r
+ if ($scope.serviceOrchestrationStatus) {\r
+ return $scope.serviceOrchestrationStatus.toLowerCase() === 'assigned';\r
+ }\r
+ }\r
+ return false;\r
+ };\r
+\r
+ $scope.isResumeShown = function (status) {\r
+ var vfModuleStatus = status.toLowerCase();\r
+ var serviceStatus = $scope.serviceOrchestrationStatus && $scope.serviceOrchestrationStatus.toLowerCase();\r
+ return _.includes(['pendingactivation', 'assigned'], vfModuleStatus) && !$scope.isActivateDeactivateEnabled("activate");\r
+ };\r
+\r
$scope.handleInitialResponseInventoryItems = function (response) {\r
\r
$scope.inventoryResponseItemList = response.data[FIELD.ID.INVENTORY_RESPONSE_ITEM]; // get data from json\r
"configurations": []\r
};\r
\r
+ var portMirroringConfigurationIds = [];\r
if (inventoryResponseItem[FIELD.ID.INVENTORY_RESPONSE_ITEMS] != null) {\r
\r
angular.forEach(inventoryResponseItem[FIELD.ID.INVENTORY_RESPONSE_ITEMS][FIELD.ID.INVENTORY_RESPONSE_ITEM], function (subInventoryResponseItem, key) {\r
"nodeType": genericVnfObject[FIELD.ID.VNF_TYPE],\r
"nodeId": genericVnfObject[FIELD.ID.VNF_ID],\r
"nodeStatus": genericVnfObject[FIELD.ID.ORCHESTRATION_STATUS],\r
+ "modelVersionId" : genericVnfObject[FIELD.ID.MODEL_VERSION_ID],\r
"object": genericVnfObject,\r
"vfModules": [],\r
"volumeGroups": [],\r
+ "instanceGroups": [],\r
"availableVolumeGroups": []\r
};\r
+ if (featureFlags.isOn(COMPONENT.FEATURE_FLAGS.FLAG_VLAN_TAGGING_VIEW_EDIT)) {\r
+\r
+ //TODO should be changed after integration\r
+ genericVnf["instanceGroups"] = [{"name":"a2"}];\r
+\r
+ }\r
$scope.service.instance[FIELD.ID.VNFS].push(genericVnf);\r
+ getRelatedInstanceGroupsByVnfId(genericVnf);\r
+\r
+\r
\r
// look for volume-groups\r
if (subInventoryResponseItem[FIELD.ID.INVENTORY_RESPONSE_ITEMS] != null) {\r
}\r
}\r
\r
+\r
if (subInventoryResponseItem[FIELD.ID.GENERIC_CONFIGURATION] != null) {\r
var configObject = subInventoryResponseItem[FIELD.ID.GENERIC_CONFIGURATION];\r
var config = {\r
"modelVersionId": configObject[FIELD.ID.MODEL_VERSION_ID],\r
"modelCustomizationId": configObject[FIELD.ID.MODEL_CUSTOMIZATION_ID],\r
"object": configObject,\r
- "ports": []\r
+ "ports": [],\r
+ "configData" : null\r
};\r
+ portMirroringConfigurationIds.push(configObject[FIELD.ID.CONFIGURATION_ID]);\r
\r
$scope.allowConfigurationActions = [FIELD.STATUS.AAI_ACTIVE, FIELD.STATUS.AAI_INACTIVE, FIELD.STATUS.AAI_CREATED].indexOf(config.nodeStatus) != -1;\r
\r
- if (subInventoryResponseItem[FIELD.ID.INVENTORY_RESPONSE_ITEMS] != null) {\r
- angular.forEach(subInventoryResponseItem[FIELD.ID.INVENTORY_RESPONSE_ITEMS][FIELD.ID.INVENTORY_RESPONSE_ITEM], function (subSubInventoryResponseItem, key) {\r
- var port = {};\r
- var portObject;\r
- if (subSubInventoryResponseItem[FIELD.ID.PORT] != null) {\r
- portObject = subSubInventoryResponseItem[FIELD.ID.PORT];\r
- port = {\r
- "portId": portObject[FIELD.ID.PORT_ID],\r
- "portName": portObject[FIELD.ID.PORT_NAME],\r
- "portStatus": portObject[FIELD.ID.PORT_MIRRORED] === true ? FIELD.STATUS.AAI_ENABLED : FIELD.ID.AAI_DISABLED,\r
- "object": portObject\r
- };\r
- config.ports.push(port);\r
- }\r
- });\r
- }\r
$scope.service.instance[FIELD.ID.CONFIGURATIONS].push(config);\r
}\r
\r
});\r
+\r
+ AaiService.getPortMirroringData(portMirroringConfigurationIds).then(function(result){\r
+ angular.forEach($scope.service.instance[FIELD.ID.CONFIGURATIONS], function(config){\r
+ config['configData'] = result.data[config['nodeId']]\r
+\r
+ if (config.configData && config.configData.errorDescription) {\r
+ $scope.errorMsg = ($scope.errorMsg ? $scope.errorMsg + "\n" : "") +\r
+ "Cannot read cloud-region for configuration \"" + config.name + "\": " +\r
+ config.configData.errorDescription;\r
+ }\r
+ });\r
+ });\r
+\r
+ AaiService.getPortMirroringSourcePorts(portMirroringConfigurationIds).then(function(result){\r
+ angular.forEach($scope.service.instance[FIELD.ID.CONFIGURATIONS], function(config){\r
+ angular.forEach(result.data[config['nodeId']], function(port){\r
+ if (port.errorDescription) {\r
+ $scope.errorMsg = ($scope.errorMsg ? $scope.errorMsg + "\n" : "") +\r
+ "Cannot read a source port for configuration \"" + config.name + "\": " +\r
+ port.errorDescription;\r
+ } else {\r
+ config.ports.push({\r
+ "portId": port[FIELD.ID.PORT_ID],\r
+ "portName": port[FIELD.ID.PORT_NAME],\r
+ "portStatus": port[FIELD.ID.PORT_MIRRORED] === true ? FIELD.STATUS.AAI_ENABLED : FIELD.STATUS.AAI_DISABLED\r
+ });\r
+ }\r
+ });\r
+ });\r
+ });\r
+\r
}\r
});\r
+\r
});\r
+\r
+\r
+\r
}\r
\r
+\r
+\r
+\r
$scope.handleInitialResponse = function (response) {\r
try {\r
$scope.enableCloseButton(true);\r
});\r
};\r
\r
- var activateDeactivateServiceInstance = function(msoType) {\r
+ var activateDeactivateServiceInstance = function (msoType) {\r
var requestParams = {\r
model: $scope.service.model,\r
instance: $scope.service.instance\r
}\r
};\r
\r
- $scope.activateMSOInstance = function() {\r
+ $scope.showAssignmentsSDNC = function () {\r
+\r
+ if ($scope.service && $scope.service.instance) {\r
+ return VIDCONFIGURATION.SDNC_SHOW_ASSIGNMENTS_URL.replace("<SERVICE_INSTANCE_ID>" , $scope.service.instance.id);\r
+ }\r
+ return null;\r
+ };\r
+\r
+ $scope.activateMSOInstance = function () {\r
\r
activateDeactivateServiceInstance(COMPONENT.MSO_ACTIVATE_SERVICE_REQ);\r
};\r
\r
- $scope.deactivateMSOInstance = function() {\r
+ $scope.deactivateMSOInstance = function () {\r
\r
activateDeactivateServiceInstance(COMPONENT.MSO_DEACTIVATE_SERVICE_REQ);\r
};\r
\r
- $scope.toggleConfigurationStatus = function (serviceObject, configuration) {\r
-\r
\r
+ $scope.deleteConfiguration = function (serviceObject, configuration) {\r
AaiService.getLoggedInUserID(function (response) {\r
- DataService.setLoggedInUserId(response.data);\r
- var requestParams = {\r
- serviceModel: {\r
- "modelType": "service",\r
- "modelInvariantId": serviceObject.model.service.invariantUuid,\r
- "modelVersionId": "uuid",\r
- "modelName": serviceObject.model.service.name,\r
- "modelVersion": serviceObject.model.service.version\r
- },\r
- configurationModel: {\r
- "modelType": "configuration",\r
- "modelInvariantId": configuration.modelInvariantId,\r
- "modelVersionId": configuration.modelVersionId,\r
- "modelCustomizationId": configuration.modelCustomizationId\r
- },\r
- serviceInstanceId: serviceObject.instance.serviceInstanceId,\r
- configurationId: configuration.nodeId,\r
- configStatus: configuration.nodeStatus,\r
- userId: DataService.getLoggedInUserId()\r
- };\r
+ DataService.setLoggedInUserId(response.data);\r
+ var requestParams = {\r
+ serviceModel: {\r
+ "modelType": "configuration",\r
+ "modelInvariantId": serviceObject.model.service.invariantUuid,\r
+ "modelVersionId": serviceObject.model.service.uuid,\r
+ "modelName": serviceObject.model.service.name,\r
+ "modelVersion": serviceObject.model.service.version\r
+ },\r
+ configurationModel: {\r
+ "modelType": "configuration",\r
+ "modelInvariantId": configuration.modelInvariantId,\r
+ "modelVersionId": configuration.modelVersionId,\r
+ "modelCustomizationId": configuration.modelCustomizationId\r
+ },\r
+ serviceInstanceId: serviceObject.instance.serviceInstanceId,\r
+ configurationId: configuration.nodeId,\r
+ configStatus: configuration.DELETE,\r
+ userId: DataService.getLoggedInUserId()\r
+ };\r
\r
- openMsoModal(COMPONENT.MSO_CHANGE_CONFIG_STATUS_REQ, requestParams);\r
- });\r
+ openMsoModal(COMPONENT.MSO_DELETE_CONFIGURATION_REQ, requestParams, configuration);\r
+ });\r
\r
};\r
\r
- $scope.togglePortStatus = function(serviceObject, configuration, port) {\r
+ $scope.toggleConfigurationStatus = function (serviceObject, configuration) {\r
+ AaiService.getLoggedInUserID(function (response) {\r
+ DataService.setLoggedInUserId(response.data);\r
+ var requestParams = {\r
+ serviceModel: {\r
+ "modelType": "service",\r
+ "modelInvariantId": serviceObject.model.service.invariantUuid,\r
+ "modelVersionId": serviceObject.model.service.uuid,\r
+ "modelName": serviceObject.model.service.name,\r
+ "modelVersion": serviceObject.model.service.version\r
+ },\r
+ configurationModel: {\r
+ "modelType": "configuration",\r
+ "modelInvariantId": configuration.modelInvariantId,\r
+ "modelVersionId": configuration.modelVersionId,\r
+ "modelCustomizationId": configuration.modelCustomizationId\r
+ },\r
+ serviceInstanceId: serviceObject.instance.serviceInstanceId,\r
+ configurationId: configuration.nodeId,\r
+ configStatus: configuration.nodeStatus,\r
+ userId: DataService.getLoggedInUserId()\r
+ };\r
+\r
+ openMsoModal(COMPONENT.MSO_CHANGE_CONFIG_STATUS_REQ, requestParams, configuration);\r
+ });\r
\r
- var requestParams = {\r
- serviceInstanceId: serviceObject.instance.serviceInstanceId,\r
- configurationId: configuration.nodeId,\r
- portId: port.portId,\r
- portStatus: port.portStatus,\r
- serviceModel: {\r
- "modelType": "service",\r
- "modelInvariantId": serviceObject.model.service.invariantUuid,\r
- "modelVersionId": "uuid",\r
- "modelName": serviceObject.model.service.name,\r
- "modelVersion": serviceObject.model.service.version\r
- },\r
- configurationModel: {\r
- "modelType": "configuration",\r
- "modelInvariantId": configuration.modelInvariantId,\r
- "modelVersionId": configuration.modelVersionId,\r
- "modelCustomizationId": configuration.modelCustomizationId\r
- },\r
- userId: DataService.getLoggedInUserId()\r
- };\r
+ };\r
\r
- openMsoModal(COMPONENT.MSO_CHANGE_PORT_STATUS_REQ, requestParams);\r
+ $scope.togglePortStatus = function (serviceObject, configuration, port) {\r
+ AaiService.getLoggedInUserID(function (response) {\r
+ DataService.setLoggedInUserId(response.data);\r
+\r
+ var requestParams = {\r
+ serviceInstanceId: serviceObject.instance.serviceInstanceId,\r
+ configurationId: configuration.nodeId,\r
+ portId: port.portId,\r
+ portStatus: port.portStatus,\r
+ serviceModel: {\r
+ "modelType": "service",\r
+ "modelInvariantId": serviceObject.model.service.invariantUuid,\r
+ "modelVersionId": serviceObject.model.service.uuid,\r
+ "modelName": serviceObject.model.service.name,\r
+ "modelVersion": serviceObject.model.service.version\r
+ },\r
+ configurationModel: {\r
+ "modelType": "configuration",\r
+ "modelInvariantId": configuration.modelInvariantId,\r
+ "modelVersionId": configuration.modelVersionId,\r
+ "modelCustomizationId": configuration.modelCustomizationId\r
+ },\r
+ userId: DataService.getLoggedInUserId()\r
+ };\r
+\r
+ openMsoModal(COMPONENT.MSO_CHANGE_PORT_STATUS_REQ, requestParams, configuration);\r
+ });\r
};\r
\r
- $scope.dissociatePnf = function(pnfName) {\r
+ $scope.dissociatePnf = function (pnfName) {\r
\r
var jobInfo = {\r
status: "confirm",\r
};\r
\r
if (DataService.getLoggedInUserId()) {\r
+ requestParams.userId = DataService.getLoggedInUserId();\r
requestParams.attuuid = DataService.getLoggedInUserId();\r
openMsoModal(COMPONENT.MSO_REMOVE_RELATIONSHIP, requestParams);\r
} else {\r
AaiService.getLoggedInUserID(function (response) {\r
DataService.setLoggedInUserId(response.data);\r
\r
+ requestParams.userId = response.data;\r
requestParams.attuuid = response.data;\r
openMsoModal(COMPONENT.MSO_REMOVE_RELATIONSHIP, requestParams);\r
});\r
\r
};\r
\r
- var openMsoModal = function (msoType, requestParams) {\r
+ var openMsoModal = function (msoType, requestParams, configuration) {\r
var modalInstance = $uibModal.open({\r
templateUrl: 'app/vid/scripts/modals/mso-commit/mso-commit.html',\r
- controller : "msoCommitModalController",\r
+ controller: "msoCommitModalController",\r
backdrop: false,\r
resolve: {\r
msoType: function () {\r
return msoType;\r
},\r
- requestParams: function() {\r
+ requestParams: function () {\r
requestParams.callbackFunction = updateViewCallbackFunction;\r
return requestParams;\r
+ },\r
+ configuration: function () {\r
+ return configuration;\r
}\r
}\r
});\r
};\r
\r
- var updateViewCallbackFunction = function(response) {\r
+ var updateViewCallbackFunction = function (response) {\r
$scope.callbackResults = "";\r
var color = FIELD.ID.COLOR_NONE;\r
$scope.callbackStyle = {\r
- "background-color" : color\r
+ "background-color": color\r
};\r
\r
/*\r
* This 1/2 delay was only added to visually highlight the status\r
* change. Probably not needed in the real application code.\r
*/\r
- $timeout(function() {\r
+ $timeout(function () {\r
$scope.callbackResults = UtilityService.getCurrentTime()\r
+ FIELD.STATUS.IS_SUCCESSFUL + response.isSuccessful;\r
if (response.isSuccessful) {\r
color = FIELD.ID.COLOR_F88;\r
}\r
$scope.callbackStyle = {\r
- "background-color" : color\r
+ "background-color": color\r
};\r
}, 500);\r
};\r
}\r
}\r
};\r
- }]).directive('restrictInput', function () {\r
+ }\r
+]).directive('restrictInput', function () {\r
\r
return {\r
\r