-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathadditionalUtilities.js
More file actions
90 lines (68 loc) · 3.41 KB
/
Copy pathadditionalUtilities.js
File metadata and controls
90 lines (68 loc) · 3.41 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
import fetch from 'node-fetch';
export function fetchSummary(data: any): Promise<any> {
var venue_count: number = data.totalVenueCount;
var promises = [];
for (let i = 0; i < venue_count; i++) {
var tem: any = data.Venues[i];
tem.totalAttended = 0;
tem.Devices;
if(tem.events==null)
{
continue;
}
for (let j = 0; j < tem.events.length; j++) {
var tem_event_id: string = tem.events[j];
var myhash: any = {};
var clearsky_url = 'http://presence.clearsky.preprod.prod-tmaws.io/event/' + tem_event_id;
promises.push(fetch(clearsky_url).then(
function (response) {
if (response.status !== 200) {
console.log('Looks like there was a problem. Status Code: ' + response.status);
return;
}
return response.json().then(function (data) {
tem.totalAttended += parseInt(data.totalAttended);
if(data.devices==null)
{
return ;
}
if (tem.Devices != null) {
for (var device_cnt = 0; device_cnt < data.devices.length; device_cnt++) {
if(data.devices[device_cnt].horizonId in myhash)
{
var scan_cnt = myhash[data.devices[device_cnt].horizonId];
scan_cnt+=data.devices[device_cnt].total;
myhash[data.devices[device_cnt].horizonId] = scan_cnt;
data.devices[device_cnt].total = scan_cnt;
tem.Devices.push(data.devices[device_cnt]);
}
else{
myhash[data.devices[device_cnt].horizonId] = data.devices[device_cnt].total;
tem.Devices.push(data.devices[device_cnt]);
}
}
}
else {
for (var device_cnt = 0; device_cnt < data.devices.length; device_cnt++)
{
myhash[data.devices[device_cnt].horizonId] = data.devices[device_cnt].total;
}
tem.Devices = data.devices;
//console.log(tem.Devices);
}
})
.catch(function (err) {
console.log('Error1 :-S', err);
});
}
)
.catch(function (err) {
console.log('Error 2 :-S', err);
})
)
}
}
return Promise.all(promises).then(function () {
return data;
})
}