Skip to content

Commit 28c3ee4

Browse files
Merge pull request #1 from davidwatkins73/waltz-320-pie-more
waltz-320 entity-stat pie 'more' button can get overwritten
2 parents 659f638 + 086dab9 commit 28c3ee4

9 files changed

Lines changed: 102 additions & 26 deletions

File tree

waltz-data/src/main/java/com/khartec/waltz/data/entity_statistic/EntityStatisticDefinitionDao.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -137,4 +137,10 @@ private List<EntityStatisticDefinition> find(SelectConditionStep<Record1<Long>>
137137
.fetch(TO_DEFINITION_MAPPER);
138138
}
139139

140+
public EntityStatisticDefinition getDefinition(long id) {
141+
return dsl.select(esd.fields())
142+
.from(esd)
143+
.where(esd.ID.eq(id))
144+
.fetchOne(TO_DEFINITION_MAPPER);
145+
}
140146
}

waltz-ng/client/common/services/icon_names.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ export const ragIconNames = {
6161
export const entityStatisticCategoryIconNames = {
6262
COMPLIANCE: 'exclamation-triangle',
6363
GOVERNANCE: 'balance-scale',
64-
SECURITY: 'lock',
64+
SECURITY: 'unlock-alt',
6565
REGULATORY: 'registered',
6666
DATA_QUALITY: 'exchange'
6767
};
Lines changed: 35 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,38 @@
11
<div class="waltz-entity-statistic-summary-card">
2-
<a class='clickable wessc-link small'
3-
title="Refocus on this statistic"
4-
ng-click="$ctrl.goToStatistic($ctrl.definition)">
5-
More &raquo;
6-
</a>
7-
<waltz-pie-table data="$ctrl.pie.data"
8-
config="$ctrl.pie.config"
9-
title="{{$ctrl.definition.name}}"
10-
sub-title="{{ $ctrl.subTitle }}">
11-
</waltz-pie-table>
2+
3+
<div class="row">
4+
<div class="col-sm-offset-1 col-sm-5">
5+
<h5>
6+
</waltz-icon>
7+
<span ng-bind="$ctrl.definition.name">
8+
</span>
9+
</h5>
10+
<div class='small'>
11+
<span ng-bind="$ctrl.definition.category | toDisplayName:'entityStatistic'">
12+
</span>
13+
<waltz-icon name="{{ $ctrl.definition.category | toIconName:'entityStatistic' }}">
14+
</waltz-icon>
15+
</div>
16+
<a class='clickable small'
17+
title="Refocus on this statistic"
18+
ng-click="$ctrl.goToStatistic($ctrl.definition)">
19+
Explore &raquo;
20+
</a>
21+
</div>
22+
<div class="col-sm-5 text-center">
23+
<waltz-pie data="$ctrl.pie.data"
24+
config="$ctrl.pie.config">
25+
</waltz-pie>
26+
</div>
27+
</div>
28+
29+
<div class="row">
30+
<div class="col-md-12">
31+
<waltz-pie-segment-table data="$ctrl.pie.data"
32+
config="$ctrl.pie.config">
33+
</waltz-pie-segment-table>
34+
</div>
35+
</div>
36+
1237

1338
</div>
Lines changed: 4 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,7 @@
11
.waltz-entity-statistic-summary-card {
22

3-
&:hover {
4-
.wessc-link {
5-
color: blue;
6-
opacity: 1;
7-
}
8-
}
9-
10-
.wessc-link {
11-
position: relative;
12-
left: 80%;
13-
top: 25px;
14-
opacity: 0.6;
15-
color: grey;
16-
}
3+
border: 1px solid #ddd;
4+
background-color: #fafafa;
5+
padding: 6px;
6+
border-radius: 3px;
177
}

waltz-ng/client/entity-statistics/services/entity-statistic-store.js

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,11 @@ function store($http, BaseApiUrl) {
3131
const BASE = `${BaseApiUrl}/entity-statistic`;
3232

3333
const findTopLevelDefinitions = (options) => $http
34-
.get(`${BASE}/definition`, options)
34+
.get(`${BASE}/definition`)
35+
.then(r => r.data);
36+
37+
const findStatDefinition = (id) => $http
38+
.get(`${BASE}/definition/${id}`)
3539
.then(r => r.data);
3640

3741
const findStatValuesByIdSelector = (statId, options) => $http
@@ -60,6 +64,7 @@ function store($http, BaseApiUrl) {
6064

6165
return {
6266
findTopLevelDefinitions,
67+
findStatDefinition,
6368
findStatValuesByIdSelector,
6469
findRelatedStatDefinitions,
6570
findStatTallies

waltz-ng/client/playpen/3/playpen3.html

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,5 +22,38 @@
2222

2323

2424

25+
<waltz-section>
26+
<div class="row">
27+
<div class="col-md-3">
28+
<waltz-entity-statistic-summary-card definition='ctrl.statistic.definition'
29+
parentRef='ctrl.entityRef'
30+
subTitle="Sub"
31+
summary='ctrl.statistic.summary'>
32+
</waltz-entity-statistic-summary-card>
33+
</div>
34+
<div class="col-md-3">
35+
<waltz-entity-statistic-summary-card definition='ctrl.statistic.definition'
36+
parentRef='ctrl.entityRef'
37+
subTitle="Sub"
38+
summary='ctrl.statistic.summary'>
39+
</waltz-entity-statistic-summary-card>
40+
</div>
41+
<div class="col-md-3">
42+
<waltz-entity-statistic-summary-card definition='ctrl.statistic.definition'
43+
parentRef='ctrl.entityRef'
44+
subTitle="Sub"
45+
summary='ctrl.statistic.summary'>
46+
</waltz-entity-statistic-summary-card>
47+
</div>
48+
<div class="col-md-3">
49+
<waltz-entity-statistic-summary-card definition='ctrl.statistic.definition'
50+
parentRef='ctrl.entityRef'
51+
subTitle="Sub"
52+
summary='ctrl.statistic.summary'>
53+
</waltz-entity-statistic-summary-card>
54+
</div>
55+
</div>
56+
57+
</waltz-section>
2558

2659
</div>

waltz-ng/client/playpen/3/playpen3.js

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,13 +28,20 @@ function controller(entityStatisticStore) {
2828
}
2929
};
3030

31+
entityStatisticStore
32+
.findStatDefinition(statId)
33+
.then(d => vm.statistic.definition = d);
3134

35+
entityStatisticStore
36+
.findStatTallies([statId], selector)
37+
.then(s => vm.statistic.summary = s[0]);
3238

3339
entityStatisticStore
3440
.findStatValuesByIdSelector(statId, selector)
3541
.then(stats => vm.statistic.values = stats)
3642
.then(stats => perpareBars(stats));
3743

44+
3845
}
3946

4047

waltz-service/src/main/java/com/khartec/waltz/service/entity_statistic/EntityStatisticService.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -87,4 +87,9 @@ public List<TallyPack<String>> findStatTallies(List<Long> statisticIds, Applicat
8787
Select<Record1<Long>> appIdSelector = factory.apply(options);
8888
return summaryDao.findStatTallies(statisticIds, appIdSelector);
8989
}
90+
91+
public EntityStatisticDefinition findDefinition(long id) {
92+
return definitionDao.getDefinition(id);
93+
94+
}
9095
}

waltz-web/src/main/java/com/khartec/waltz/web/endpoints/api/EntityStatisticEndpoint.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -69,13 +69,17 @@ private List<TallyPack<String>> findStatTalliesRoute(Request request, Response r
6969
public void register() {
7070

7171
String findTopLevelDefinitionsPath = mkPath(BASE_URL, "definition");
72+
String findDefinitionPath = mkPath(BASE_URL, "definition", ":id");
7273
String findRelatedStatDefinitionsPath = mkPath(BASE_URL, "definition" , ":statId", "related");
7374
String findStatValuesBySelectorPath = mkPath(BASE_URL, "value", ":statId");
7475
String findStatTalliesPath = mkPath(BASE_URL, "tally");
7576

7677
ListRoute<EntityStatisticDefinition> findTopLevelDefinitionsRoute = (request, response)
7778
-> entityStatisticService.findTopLevelDefinitions();
7879

80+
DatumRoute<EntityStatisticDefinition> findDefinitionRoute = (request, response)
81+
-> entityStatisticService.findDefinition(getId(request));
82+
7983
ListRoute<EntityStatisticValue> findStatValuesForAppSelectorRoute = (request, response)
8084
-> entityStatisticService.getStatisticValuesForAppIdSelector(getLong(request, "statId"), readOptionsFromBody(request));
8185

@@ -86,6 +90,7 @@ public void register() {
8690
postForList(findStatValuesBySelectorPath, findStatValuesForAppSelectorRoute);
8791
postForList(findStatTalliesPath, this::findStatTalliesRoute);
8892
getForDatum(findRelatedStatDefinitionsPath, findRelatedStatDefinitionsRoute);
93+
getForDatum(findDefinitionPath, findDefinitionRoute);
8994
}
9095

9196
}

0 commit comments

Comments
 (0)