diff --git a/client/cat3/main.html b/client/cat3/main.html index c2e86ed3b..7aee82223 100644 --- a/client/cat3/main.html +++ b/client/cat3/main.html @@ -112,6 +112,7 @@ + diff --git a/client/cat3/src/partials/sections/dashboard/analytics/controller/discoveryResourcesCtrl.js b/client/cat3/src/partials/sections/dashboard/analytics/controller/discoveryResourcesCtrl.js index 39cc38480..64157ed4e 100644 --- a/client/cat3/src/partials/sections/dashboard/analytics/controller/discoveryResourcesCtrl.js +++ b/client/cat3/src/partials/sections/dashboard/analytics/controller/discoveryResourcesCtrl.js @@ -153,7 +153,9 @@ ]; $scope.instanceType= 'managedInstances'; } else if($rootScope.organNewEnt.instanceType === 'Assigned'){ + $scope.colArray=['platformId','privateIpAddress','os','state']; + disResrc.gridOptionInstances.columnDefs=[ {name: 'InstanceId', field: 'platformId',enableCellEditOnFocus: false, enableCellEdit: false,enableFiltering: true}, @@ -334,7 +336,7 @@ }; disResrc.init(); - }]).controller('instanceManageCtrl',['$scope','$rootScope','items','$modalInstance','genericServices',function ($scope,$rootScope,items,$modalInstance,genericServices) { + }]).controller('instanceManageCtrl',['$scope','$rootScope','items','$modalInstance','genericServices','$modal',function ($scope,$rootScope,items,$modalInstance,genericServices,$modal) { $scope.items=items; var fltrObj=$rootScope.filterNewEnt; var reqBody = {}; @@ -365,6 +367,8 @@ } }; $scope.ok = function() { + $scope.importSpinner = true; + $scope.importSync = true; reqBody.orgId = $scope.IMGNewEnt.org.orgid; reqBody.bgId = $scope.IMGNewEnt.buss.rowid; reqBody.projectId = $scope.IMGNewEnt.proj.rowId; @@ -387,9 +391,36 @@ data:reqBody } genericServices.promisePost(params).then(function (response) { - if(response.data){ - toastr.success('Successfully Imported.','Update'); - $modalInstance.dismiss(response.data); + + if(response.taskId){ + $modalInstance.dismiss(response.taskId); + $scope.importSpinner = false; + $scope.importSync = false; + $modal.open({ + animation: true, + templateUrl: 'src/partials/sections/dashboard/analytics/view/discoverySyncResult.html', + controller: 'discoverySyncResultCtrl', + backdrop: 'static', + keyboard: false, + resolve: { + items: function() { + return { + taskId:response.taskId, + nodeIds:reqBody.instanceIds + }; + } + } + }).result.then(function(response) { + }, function() { + console.log("Dismiss at " + new Date()); + }); + } + },function(response){ + $scope.isStartStopInstanceLoading = false; + if(response.data.message){ + $scope.authMsg = response.data.message; + }else{ + $scope.authMsg = response.data; } }); }; diff --git a/client/cat3/src/partials/sections/dashboard/analytics/controller/discoverySyncResultCtrl.js b/client/cat3/src/partials/sections/dashboard/analytics/controller/discoverySyncResultCtrl.js new file mode 100644 index 000000000..e9668e5ba --- /dev/null +++ b/client/cat3/src/partials/sections/dashboard/analytics/controller/discoverySyncResultCtrl.js @@ -0,0 +1,43 @@ +(function (angular) { + "use strict"; + angular.module('dashboard.analytics') + .controller('discoverySyncResultCtrl', ['$scope','$rootScope', '$state', 'items','analyticsServices', 'genericServices','toastr','$modalInstance','$timeout', function ($scope, $rootScope, $state, items,analyticsServices,genSevs,toastr,$modalInstance,$timeout){ + $scope.cancel = function() { + $modalInstance.dismiss('cancel'); + }; + $scope.isInstanceImporting = true; + $scope.pollTaskStatus = function(timestamp) { + $timeout(function () { + var params={ + url:'/taskstatus/' + items.taskId + '/status?timestamp=' + timestamp + }; + $scope.progressValue = 0; + genSevs.promiseGet(params).then(function (data) { + if (!data.completed) { + if (data.statusList && data.statusList.length) { + $scope.progressValue = data.statusList.length; + for (var i = 0; i < data.statusList.length; i++) { + $scope.statusMessage = data.statusList[i].status.message; + $scope.isInstanceImporting = false; + } + $scope.pollTaskStatus(data.statusList[data.statusList.length - 1].timestamp); + } else { + $scope.pollTaskStatus(timestamp); + } + } else { + if (data.statusList && data.statusList.length) { + $scope.progressValue = data.statusList.length; + for (var i = 0; i < data.statusList.length; i++) { + $scope.statusMessage = data.statusList[i].status.message; + $scope.isInstanceImporting = false; + } + } + $scope.progressValue = items.nodeIds.length; + $scope.instanceLength = items.nodeIds.length; + } + }); + },1000); + }; + $scope.pollTaskStatus(0); + }]) +})(angular); \ No newline at end of file diff --git a/client/cat3/src/partials/sections/dashboard/analytics/view/discoverySyncResult.html b/client/cat3/src/partials/sections/dashboard/analytics/view/discoverySyncResult.html new file mode 100644 index 000000000..22d991b87 --- /dev/null +++ b/client/cat3/src/partials/sections/dashboard/analytics/view/discoverySyncResult.html @@ -0,0 +1,14 @@ + + + \ No newline at end of file diff --git a/client/cat3/src/partials/sections/dashboard/analytics/view/instanceManage.html b/client/cat3/src/partials/sections/dashboard/analytics/view/instanceManage.html index 4c90e7b8c..0713256a5 100644 --- a/client/cat3/src/partials/sections/dashboard/analytics/view/instanceManage.html +++ b/client/cat3/src/partials/sections/dashboard/analytics/view/instanceManage.html @@ -53,7 +53,7 @@ @@ -79,7 +79,7 @@
- +
@@ -97,9 +97,12 @@ - + + +
- +