Skip to content

Commit bb0c27e

Browse files
Merge pull request #344 from kamransaleem/waltz-339-ent-stats-view-refresh
- fix for old values in person ent stat view spilling over to new criteria
2 parents a47bfb6 + 65c4e5c commit bb0c27e

1 file changed

Lines changed: 29 additions & 9 deletions

File tree

waltz-ng/client/entity-statistics/person-entity-statistic-view.js

Lines changed: 29 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import _ from "lodash";
2-
2+
import {kindToViewState, initialiseData} from "../common";
33

44
const initData = {
55
statistic: {
@@ -30,7 +30,7 @@ function controller($q,
3030
entityStatisticStore,
3131
personStore) {
3232

33-
const vm = Object.assign(this, initData);
33+
const vm = initialiseData(this, initData);
3434
const statId = $stateParams.statId;
3535
const personId = $stateParams.id;
3636

@@ -47,7 +47,16 @@ function controller($q,
4747
$q.all([personPromise, definitionPromise])
4848
.then(([person, definitions]) => vm.onSelectPerson(person));
4949

50+
51+
function resetValueData() {
52+
const clearData = initialiseData({}, initData);
53+
vm.statistic.summary = clearData.statistic.summary;
54+
vm.statistic.values = clearData.statistic.values;
55+
vm.summaries = clearData.summaries;
56+
}
57+
5058
vm.onSelectPerson = (person) => {
59+
resetValueData();
5160
vm.person = person;
5261

5362
const entityReference = {
@@ -62,9 +71,23 @@ function controller($q,
6271
};
6372

6473
entityStatisticStore
65-
.findStatTallies(vm.relatedDefinitions, selector)
66-
.then(summaries => vm.summaries = summaries)
67-
.then(summaries => vm.statistic.summary = _.find(summaries, { entityReference: { id: statId }}));
74+
.findStatTallies([statId], selector)
75+
.then(summaries => vm.statistic.summary = summaries[0])
76+
.then(() => {
77+
const related = [
78+
vm.relatedDefinitions.parent,
79+
...vm.relatedDefinitions.siblings,
80+
...vm.relatedDefinitions.children ];
81+
82+
const relatedIds = _.chain(related)
83+
.filter(s => s != null)
84+
.map('id')
85+
.value();
86+
87+
return entityStatisticStore.findStatTallies(relatedIds, selector);
88+
})
89+
.then(summaries => vm.summaries = summaries);
90+
6891

6992
entityStatisticStore
7093
.findStatValuesByIdSelector(statId, selector)
@@ -105,7 +128,4 @@ const page = {
105128
};
106129

107130

108-
export default page;
109-
110-
111-
// http://localhost:8000/#/entity-statistic/PERSON/mwpHhjMzq/34
131+
export default page;

0 commit comments

Comments
 (0)