diff --git a/src/main/resources/static/index.html b/src/main/resources/static/index.html index 745b1fa..6e3e6aa 100644 --- a/src/main/resources/static/index.html +++ b/src/main/resources/static/index.html @@ -103,7 +103,7 @@ - + diff --git a/src/main/resources/static/src/controller.js b/src/main/resources/static/src/controller.js index fbf041d..8d5d5d2 100644 --- a/src/main/resources/static/src/controller.js +++ b/src/main/resources/static/src/controller.js @@ -311,16 +311,16 @@ app.controller('dashboardCtrl', ['$scope','$rootScope','$translate','$filter','N var callback = function (resp) { $scope.barChart.hideLoading(); if (resp.status == 0) { - var clusterMap = resp.data.clusterInfo.clusterAddrTable; + var clusterAddrTable = resp.data.clusterInfo.clusterAddrTable; var brokerMap = resp.data.clusterInfo.brokerAddrTable; var brokerDetail = resp.data.brokerServer; - var clusterMap = tools.generateBrokerMap(brokerDetail,clusterMap,brokerMap); + var clusterMap = tools.generateBrokerMap(brokerDetail,clusterAddrTable,brokerMap); $scope.brokerArray = []; $.each(clusterMap,function(clusterName,brokers){ $.each(brokers,function(i,broker){ $scope.brokerArray.push(broker) }) - }) + }); //sort the brokerArray $scope.brokerArray.sort(function(firstBroker,lastBroker){ diff --git a/src/main/resources/static/src/tools/tools.js b/src/main/resources/static/src/tools/tools.js index 780f088..9ab5ae7 100644 --- a/src/main/resources/static/src/tools/tools.js +++ b/src/main/resources/static/src/tools/tools.js @@ -20,30 +20,28 @@ app.service('tools', ['$http', function ($http) { var ctx = ""; var dashboardRefreshTime = 5000; // todo improve. when data size is large,request is too slow - var generateBrokerMap = function(brokerDetail,clusterMap,brokerMap){ + var generateBrokerMap = function (brokerServer, clusterAddrTable, brokerAddrTable) { var map = {}; - $.each(brokerDetail,function(k,v){ - $.each(clusterMap,function (ck, cv) { - if(angular.isUndefined(map[ck])){ - map[ck] = []; + $.each(brokerServer, function (brokerName, brokerStatusList) { // broker + $.each(clusterAddrTable, function (clusterName, brokerNameList) { //clusterAddrTable + if (angular.isUndefined(map[clusterName])) { + map[clusterName] = []; } - $.each(cv,function(cvi,cvv){ - if(cvv == k){ - var index = 0; - $.each(v,function(vi,vv){ - vv.split = k; - vv.index = index; - vv.address = brokerMap[cvv].brokerAddrs[index]; - vv.brokerName = brokerMap[cvv].brokerName; - map[ck].push(vv); - index++; + $.each(brokerNameList, function (listIndex, clusterBrokerName) { + if (clusterBrokerName == brokerName) { + $.each(brokerStatusList, function (index, brokerStatus) { + brokerStatus.split = brokerName; + brokerStatus.index = index; + brokerStatus.address = brokerAddrTable[clusterBrokerName].brokerAddrs[index]; + brokerStatus.brokerName = brokerAddrTable[clusterBrokerName].brokerName; + map[clusterName].push(brokerStatus); }) } }) }) - }) + }); return map; - } + }; var fastSort = function (arrayToSort, propertyToSortWith, sortDirection) { // temporary holder of position and sort-value