Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
23 commits
Select commit Hold shift + click to select a range
db02e8b
Changed the split up data, added path for analytics in jquery page cl…
Sep 27, 2016
ca23d9e
Merge remote-tracking branch 'upstream/topic-cloud-analytics' into an…
Sep 27, 2016
30a3c3c
Merge pull request #764 from hrushikesh07/analytics
udeshrl Sep 27, 2016
381269d
Integrated API's to get list of managed, assigned & unassigned instan…
divakarkonakalla Sep 27, 2016
fac0183
Merge pull request #767 from divakarkonakalla/topic-cloud-anal
udeshrl Sep 27, 2016
710a9b6
Merge remote-tracking branch 'upstream/topic-cloud-analytics' into an…
Sep 28, 2016
23f5c2a
Service costs aggregation enabled for AWS providers
Sep 28, 2016
12da17c
Entity cost aggregation code refactored
Sep 28, 2016
08e0ea5
resource service refactored
Sep 28, 2016
428c1d1
Merge pull request #770 from kkn/topic-cloud-analytics
liteverge-bot Sep 28, 2016
6cd5895
Merge remote-tracking branch 'upstream/topic-cloud-analytics' into an…
Sep 28, 2016
6ae40ff
Chinged filter and filter event
Sep 28, 2016
d29a140
Changed done for split up
Sep 28, 2016
6ce34da
Changed done for split up
Sep 28, 2016
9362f3a
Merge pull request #771 from hrushikesh07/analytics
udeshrl Sep 29, 2016
10ab38f
API changes
Sep 29, 2016
526cf64
API changes with some lable
Sep 29, 2016
54607f9
usage API and filter for single resource
Sep 29, 2016
e25a7c4
Merge pull request #775 from hrushikesh07/analytics
udeshrl Sep 29, 2016
872eb6b
Cost aggregation enhancements and bug fixes
Sep 29, 2016
ea026b1
Merge pull request #779 from kkn/topic-cloud-analytics
liteverge-bot Sep 29, 2016
e2b0a21
Merge branch 'dev' into topic-cloud-analytics
Sep 29, 2016
ebbdb35
Merge pull request #780 from kkn/topic-cloud-analytics
liteverge-bot Sep 29, 2016
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 12 additions & 0 deletions client/cat3/src/factory/workzoneServices.js
Original file line number Diff line number Diff line change
Expand Up @@ -515,6 +515,18 @@
};
var url ='/aws/providers/describe/vpcs';
return $http.post(fullUrl(url),reqBody, Auth.getHeaderObject());
},
getManagedInstances:function (providerId) {
var url ='/providers/'+providerId+'/managedInstances';
return $http.get(fullUrl(url),Auth.getHeaderObject());
},
getAssignedInstances:function (providerId) {
var url ='/providers/'+providerId+'/unmanagedInstances';
return $http.get(fullUrl(url),Auth.getHeaderObject());
},
getUnassignedInstances:function (providerId) {
var url ='/providers/'+providerId+'/unassigned-instances';
return $http.get(fullUrl(url),Auth.getHeaderObject());
}
};
return serviceInterface;
Expand Down
173 changes: 89 additions & 84 deletions client/cat3/src/partials/sections/dashboard/analytics/analytics.html
Original file line number Diff line number Diff line change
Expand Up @@ -17,80 +17,85 @@
<input type="radio" ng-model="analytic.viewByFilter" name="viewBy" value="ProviderView">Provider
</label>
</div>
<div class="col-lg-12 col-md-12 form-group" ng-show="stateItems.filterView.org">
<label for="">Organization</label>
<select ng-model="organNewEnt.org" class="chooseProjectExisting width-100 form-control">
<option value="">Select</option>
<option ng-repeat="org in organObject" value="{{organObject.indexOf(org)}}" >{{org.name}}</option>
</select>
</div>
<div class="col-lg-12 col-md-12 form-group" ng-show="stateItems.filterView.bus">
<label for="">Business Group</label>
<select id="bgListInputExisting" class="chooseBGExisting width-100 form-control" ng-model="organNewEnt.buss">
<option value="">Select</option>
<option ng-repeat="buss in organObject[organNewEnt.org].businessGroups" value="{{organObject[organNewEnt.org].businessGroups.indexOf(buss)}}" >{{buss.name}}</option>
</select>
</div>
<div class="col-lg-12 col-md-12 form-group" ng-show="stateItems.filterView.proj">
<label >Project</label>
<select class="chooseProjectExisting width-100 form-control" ng-model="organNewEnt.proj">
<option value="">Select</option>
<option ng-repeat="proj in organObject[organNewEnt.org].businessGroups[organNewEnt.buss].projects" value="{{organObject[organNewEnt.org].businessGroups[organNewEnt.buss].projects.indexOf(proj)}}" >{{proj.name}}</option>
</select>
</div>
<div class="col-lg-12 col-md-12 form-group" ng-show="stateItems.filterView.env">
<label >Environment</label>
<select class="chooseProjectExisting width-100 form-control" ng-model="organNewEnt.env">
<option value="">Select</option>
<option ng-repeat="env in organObject[organNewEnt.org].environments" value="{{organObject[organNewEnt.org].environments.indexOf(env)}}" >{{env.name}}</option>
</select>
</div>
<div class="col-lg-12 col-md-12 form-group" ng-show="stateItems.filterView.provi">
<label for="">Provider</label>
<select class="form-control select2 select2-hidden-accessible" id="selectProvider" ng-model="organNewEnt.provider" >
<option value=''>Select</option>
<option ng-repeat="provider in providers" value="{{providers.indexOf(provider)}}">{{provider.providerName}}</option>
</select>
</div>
<div class="col-lg-12 col-md-12 form-group" ng-show="stateItems.filterView.zone">
<label for="">Zone</label>
<select class="form-control select2 select2-hidden-accessible" id="Zone" ng-model="filter.regionId" ng-options="region.region as region.region_name +' | '+region.region for region in regions" ng-change="fnRegionChange()">
<option value=''>Select</option>
</select>
</div>
<div class="col-lg-12 col-md-12 form-group" ng-show="stateItems.filterView.region">
<label for="">Region</label>
<select class="form-control select2 select2-hidden-accessible" id="selectRegion" ng-model="filter.regionId" ng-options="region.region as region.region_name +' | '+region.region for region in regions" ng-change="fnRegionChange()">
<option value=''>Select</option>
</select>
</div>
<div class="col-lg-12 col-md-12 form-group" ng-show="stateItems.filterView.resources">
<label for="">Resources</label>
<div class="panel-group">
<div class="panel panel-default">
<div class="panel-heading">
<div class="search">
<label for="search-input"><i class="fa fa-search" aria-hidden="true"></i><span class="sr-only">Search</span></label>
<input ng-model="searchText.name" class="search-input" class="form-control input-lg" placeholder="Search" autocomplete="off" spellcheck="false" autocorrect="off" tabindex="1">
<a id="search-clear" href="#" class="fa fa-times-circle hide" aria-hidden="true"><span class="sr-only">Clear search</span></a>
</div>
</div>
<div class="panel-body bp-panel-body list-resources">
<ul class="list-group ">
<li class="list-group-item" title="First item">First itemitemitemitem</li>
<li class="list-group-item" title="First item">Second item</li>
<li class="list-group-item" title="First item">Third item</li>
</ul>
</div>
</div>
<div class="col-lg-12 col-md-12 form-group" ng-show="stateItems.filterView.org">
<label for="">Organization</label>
<select ng-model="organNewEnt.org" class="chooseProjectExisting width-100 form-control">
<option value="">Select</option>
<option ng-repeat="org in organObject" value="{{organObject.indexOf(org)}}" >{{org.name}}</option>
</select>
</div>
<div class="col-lg-12 col-md-12 form-group" ng-show="stateItems.filterView.bus">
<label for="">Business Group</label>
<select id="bgListInputExisting" class="chooseBGExisting width-100 form-control" ng-model="organNewEnt.buss">
<option value="">Select</option>
<option ng-repeat="buss in organObject[organNewEnt.org].businessGroups" value="{{organObject[organNewEnt.org].businessGroups.indexOf(buss)}}" >{{buss.name}}</option>
</select>
</div>
<div class="col-lg-12 col-md-12 form-group" ng-show="stateItems.filterView.proj">
<label >Project</label>
<select class="chooseProjectExisting width-100 form-control" ng-model="organNewEnt.proj">
<option value="">Select</option>
<option ng-repeat="proj in organObject[organNewEnt.org].businessGroups[organNewEnt.buss].projects" value="{{organObject[organNewEnt.org].businessGroups[organNewEnt.buss].projects.indexOf(proj)}}" >{{proj.name}}</option>
</select>
</div>
<div class="col-lg-12 col-md-12 form-group" ng-show="stateItems.filterView.env">
<label >Environment</label>
<select class="chooseProjectExisting width-100 form-control" ng-model="organNewEnt.env">
<option value="">Select</option>
<option ng-repeat="env in organObject[organNewEnt.org].environments" value="{{organObject[organNewEnt.org].environments.indexOf(env)}}" >{{env.name}}</option>
</select>
</div>
<div class="col-lg-12 col-md-12 form-group" ng-show="stateItems.filterView.provi || analytic.ViewproviFilter">
<label for="">Provider</label>
<select class="form-control select2 select2-hidden-accessible" id="selectProvider" ng-model="organNewEnt.provider" >
<option value=''>Select</option>
<option ng-repeat="provider in providers" value="{{providers.indexOf(provider)}}">{{provider.providerName}}</option>
</select>
</div>
<div class="col-lg-12 col-md-12 form-group" ng-show="stateItems.filterView.zone">
<label for="">Zone</label>
<select class="form-control select2 select2-hidden-accessible" id="Zone" ng-model="filter.regionId" ng-options="region.region as region.region_name +' | '+region.region for region in regions" ng-change="fnRegionChange()">
<option value=''>Select</option>
</select>
</div>
<div class="col-lg-12 col-md-12 form-group" ng-show="stateItems.filterView.region">
<label for="">Region</label>
<select class="form-control select2 select2-hidden-accessible" id="selectRegion" ng-model="filter.regionId" ng-options="region.region as region.region_name +' | '+region.region for region in regions" ng-change="fnRegionChange()">
<option value=''>Select</option>
</select>
</div>
<div class="col-lg-12 col-md-12 form-group" ng-show="stateItems.filterView.instanceType">
<label for="">Type of Instance</label>
<select class="form-control select2 select2-hidden-accessible" ng-model="organNewEnt.instanceType" ng-change="getResourse(organNewEnt.instanceType)">
<option value=''>Select</option>
<option value='Managed'>Managed</option>
<option value='Assigned'>Assigned</option>
<option value='Unassigned'>Unassigned</option>
</select>
</div>
<div class="col-lg-12 col-md-12 form-group" ng-show="stateItems.filterView.resources">
<label for="">Resources</label>
<div class="panel-group">
<div class="panel panel-default">
<div class="panel-heading">
<div class="search">
<label for="search-input"><i class="fa fa-search" aria-hidden="true"></i><span class="sr-only">Search</span></label>
<input ng-model="searchText.name" ng-model-options="{ debounce: 200 }" class="search-input" class="form-control input-lg" placeholder="Search" autocomplete="off" spellcheck="false" autocorrect="off" tabindex="1" ng-change="doResourceSearch()">
<a id="search-clear" href="#" class="fa fa-times-circle hide" aria-hidden="true"><span class="sr-only">Clear search</span></a>
</div>
</div>
<div class="panel-body bp-panel-body list-resources">
<ul class="list-group">
<li class="list-group-item cursor" ng-repeat="resource in resourceList | filter:searchText.name | filter:{platformId: filters.platformId}" ng-class="{'selected':selectedResources.indexOf(resource._id)>-1}" ng-click="toggleResourceSelection(resource._id);">{{resource.platformId}}</li>
</ul>
</div>
</div>


<div class="col-lg-12 col-md-12 marginbottom5">
<button type="button" class="btn btn-primary" ng-click="analytic.applyFilter(true);isOpenSidebar=false;"><i class="fa fa-filter fa-2 white" aria-hidden="true"></i>&nbsp;Apply</button>
<button type="button" class="btn btn-default" ng-click="analytic.applyFilter(false);isOpenSidebar=false;"><i class="fa fa-times fa-2" aria-hidden="true"></i>&nbsp;Clear</button>
</div>
</div>
<div class="col-lg-12 col-md-12 marginbottom5">
<button type="button" class="btn btn-primary" ng-click="applyFilter(true,filterNewEnt.period);isOpenSidebar=false;"><i class="fa fa-filter fa-2 white" aria-hidden="true"></i>&nbsp;Apply</button>
<button type="button" class="btn btn-default" ng-click="applyFilter(false,filterNewEnt.period);isOpenSidebar=false;"><i class="fa fa-times fa-2" aria-hidden="true"></i>&nbsp;Clear</button>
</div>
</fieldset>
</form>
<br/>
Expand All @@ -100,30 +105,30 @@
<div id='rightPanel' class='container-fluid'>
<ul class="nav nav-tabs" >
<li ng-class="{'active':analytic.tabShowChat === true}"><a ng-click="analytic.tabShow(true,false)" ><i class="fa fa-area-chart fa-2" aria-hidden="true"></i> Dashboard</a></li>
<li ng-class="{'active':analytic.tabShowReport === true}"><a ng-click="analytic.tabShow(false,true)" ><i class="fa fa-file-text fa-2" aria-hidden="true"></i> Reports</a></li>
<li ng-show="!stateItems.filterView.report" ng-class="{'active':analytic.tabShowReport === true}"><a ng-click="analytic.tabShow(false,true)" ><i class="fa fa-file-text fa-2" aria-hidden="true"></i> Reports</a></li>
<li class="form-group pull-right filter-btn" >
<button type="button" class="btn btn-xs cat-btn-update ng-scope pull-right margin-left6" ng-click="isOpenSidebar = !isOpenSidebar">
<i class="fa fa-filter fa-2 white" aria-hidden="true"></i>&nbsp;Filter
</button>
</li>
</ul>
<div class="well" id="well">
<div class="btn-group" role="group" aria-label="...">
<button type="button" class="btn btn-sm btn-primary cat-btn-update" ng-click="">DAY</button>
<button type="button" class="btn btn-sm btn-primary cat-btn-update" ng-click="">WEEK</button>
<button type="button" class="btn btn-sm btn-primary cat-btn-update active" ng-click="">MONTH</button>
<button type="button" class="btn btn-sm btn-primary cat-btn-update" ng-click="">YEAR</button>
<select ng-show="stateItems.filterView.splitUpType && splitUpCosts.length > 0" class="form-control select2 select2-hidden-accessible" style="width: auto;height: 31px;" ng-model="analytic.splitUp"
ng-options="value as value for (key , value) in splitUpCosts">
</select>
</div>
<div class="btn-group" role="group" aria-label="...">
<button type="button" class="btn btn-sm btn-primary cat-btn-update" ng-class="{'active':filterNewEnt.period === 'day'}" ng-click="analytic.applyFilter(true,'day')">DAY</button>
<button type="button" class="btn btn-sm btn-primary cat-btn-update" ng-class=" {'active':filterNewEnt.period === 'week'}" ng-click="analytic.applyFilter(true,'week')">WEEK</button>
<button type="button" class="btn btn-sm btn-primary cat-btn-update" ng-class=" {'active':filterNewEnt.period === 'month'}" ng-click="analytic.applyFilter(true,'month')">MONTH</button>
<button type="button" class="btn btn-sm btn-primary cat-btn-update" ng-class=" {'active':filterNewEnt.period === 'year'}" ng-click="analytic.applyFilter(true,'year')">YEAR</button>
<select ng-show="stateItems.filterView.splitUpType && splitUpCosts.length > 0" class="form-control select2 select2-hidden-accessible" style="width: auto;height: 31px;" ng-model="analytic.splitUp"
ng-options="sp.id as sp.val for sp in splitUpCosts" >
</select>
</div>
<div class="col-lg-7 col-md-7 col-sm-12 pull-right" >
<span ng-repeat="filter in filterNewEnt">
<span ng-repeat="filt in filterNewEnt" ng-if="filt !== '' && filt.title">
<!--data-toggle="tooltip" onmouseenter="$(this).tooltip('show')"-->
<span ng-if="filter !== '' " class="label label-success " title="{{filter.title}}">{{filter.title}} :{{filter.name}} </span>
<span class="label label-success " title="{{filt.title}}">{{filt.title}} :{{filt.name}}
</span>
</span>
</div>

</div>
<div ui-view></div>
</div>
Expand Down
Loading