fleetmap-reports 1.0.310 → 1.0.311

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "fleetmap-reports",
3
- "version": "1.0.310",
3
+ "version": "1.0.311",
4
4
  "description": "",
5
5
  "main": "src/index.js",
6
6
  "scripts": {
@@ -95,7 +95,7 @@ async function createSpeedingReportByDevice(from, to, devices, userData, traccar
95
95
  }
96
96
  }
97
97
 
98
- async function createSpeedingReportByDriver(from, to) {
98
+ async function createSpeedingReportByDriver(from, to, userData) {
99
99
  const devices = await drivers.devicesByDriver(traccarInstance, from, to, userData.drivers, userData.devices)
100
100
  console.log('Devices with driver',devices.length)
101
101
 
@@ -121,13 +121,13 @@ async function createSpeedingReportByDriver(from, to) {
121
121
  return { drivers: [] }
122
122
  }
123
123
 
124
- return {drivers: await processDrivers(from, to, events, routes)}
124
+ return {drivers: await processDrivers(from, to, events, routes, userData)}
125
125
  }
126
126
 
127
- async function processDrivers(from, to, events, routes) {
127
+ async function processDrivers(from, to, events, routes, userData) {
128
128
  const driversResult = []
129
129
 
130
- await findEventsPosition(from, to, userData.devices, events, routes)
130
+ await findEventsPosition(from, to, userData.devices, events, routes, userData)
131
131
 
132
132
  userData.drivers.forEach(d => {
133
133
  const driverEvents = events.filter(e => e.position && e.position.attributes.driverUniqueId === d.uniqueId)
@@ -148,9 +148,9 @@ async function processDrivers(from, to, events, routes) {
148
148
  return driversResult
149
149
  }
150
150
 
151
- async function processDevices(from, to, devices, events, routes) {
151
+ async function processDevices(from, to, devices, events, routes, userData) {
152
152
  const devicesResult = []
153
- await findEventsPosition(from, to, devices, events, routes)
153
+ await findEventsPosition(from, to, devices, events, routes, userData)
154
154
 
155
155
  for (const d of devices) {
156
156
  const deviceEvents = events.filter(e => e.deviceId === d.id && e.position)
@@ -171,7 +171,7 @@ async function processDevices(from, to, devices, events, routes) {
171
171
  return devicesResult
172
172
  }
173
173
 
174
- async function findEventsPosition(from, to, devices, events, routes){
174
+ async function findEventsPosition(from, to, devices, events, routes, userData){
175
175
  for (const d of devices) {
176
176
  let deviceEvents = events.filter(e => e.deviceId === d.id && e.positionId)
177
177
  if (deviceEvents.length > 0) {
@@ -190,7 +190,7 @@ async function findEventsPosition(from, to, devices, events, routes){
190
190
  }
191
191
 
192
192
  a.position = positions[pIndex]
193
- pIndex = calculateEventData(positions, pIndex, a, d, geofence)
193
+ pIndex = calculateEventData(positions, pIndex, a, d, geofence, userData)
194
194
  positions.slice(pIndex)
195
195
  }
196
196
  }
@@ -198,7 +198,7 @@ async function findEventsPosition(from, to, devices, events, routes){
198
198
  }
199
199
  }
200
200
 
201
- async function getCustomSpeedLimitEvents(devices, routes){
201
+ async function getCustomSpeedLimitEvents(devices, routes, userData){
202
202
  console.log('custom speed limit events')
203
203
  const events = []
204
204
  const maxSpeed = userData.customSpeed / 1.85200
@@ -272,7 +272,7 @@ async function getHereEvents(devices, routes, threshold){
272
272
  return events
273
273
  }
274
274
 
275
- function calculateEventData(positions, pIndex, alert, device, geofence){
275
+ function calculateEventData(positions, pIndex, alert, device, geofence, userData){
276
276
  let endEventPosition = alert.position
277
277
  let maxSpeed = alert.position.speed
278
278
  let dist = 0
@@ -7,35 +7,35 @@ const drivers = require("./util/driver")
7
7
  const {getUserPartner} = require("fleetmap-partners")
8
8
  const {headerFromUser, addTable} = require("./util/pdfDocument")
9
9
  const {getStyle} = require("./reportStyle")
10
- const traccar = require("./util/traccar")
10
+ const traccarHelper = require("./util/traccar")
11
11
  const trips = require("./util/trips");
12
12
  const {isInsideTimetable, addNearestPOIs, isPartialInsideTimetable} = require("./util/trips")
13
13
 
14
14
  const fileName = 'TripReport'
15
15
 
16
- async function createTripReport(from, to, userData, traccarInstance) {
16
+ async function createTripReport(from, to, userData, traccar) {
17
17
  console.log('Create TripReport')
18
18
  const reportData = []
19
19
 
20
20
  if (userData.byDriver) {
21
21
  console.log("ByDriver")
22
- const report = await createTripReportByDriver(from, to, userData, traccarInstance)
22
+ const report = await createTripReportByDriver(from, to, userData, traccar)
23
23
  reportData.push(report)
24
24
  }
25
25
  else if (userData.byGroup) {
26
26
  console.log("ByGroup")
27
- const allData = await createTripReportByGroup(from, to, userData, traccarInstance)
27
+ const allData = await createTripReportByGroup(from, to, userData, traccar)
28
28
  reportData.push(...allData)
29
29
  } else {
30
30
  console.log("ByDevice")
31
- const report = await createTripReportByDevice(from, to, userDatauserData, traccarInstance)
31
+ const report = await createTripReportByDevice(from, to, userData, traccar)
32
32
  reportData.push(report)
33
33
  }
34
34
 
35
35
  return reportData
36
36
  }
37
37
 
38
- async function createTripReportByDevice(from, to, userData, traccarInstance) {
38
+ async function createTripReportByDevice(from, to, userData, traccar) {
39
39
  const devices = userData.devices
40
40
  const allData = {
41
41
  devices: [],
@@ -45,21 +45,21 @@ async function createTripReportByDevice(from, to, userData, traccarInstance) {
45
45
  devices.sort((a, b) => (a.name > b.name) ? 1 : -1)
46
46
 
47
47
  const devicesToSlice = devices.slice()
48
- const tripsData = await traccar.getTrips(traccarInstance, from, to, devicesToSlice)
49
- const stopsData = await traccar.getStops(traccarInstance, from, to, devicesToSlice)
50
- const routeData = await traccar.getRoute(traccarInstance, from, to, devicesToSlice)
48
+ const tripsData = await traccarHelper.getTrips(traccar, from, to, devicesToSlice)
49
+ const stopsData = await traccarHelper.getStops(traccar, from, to, devicesToSlice)
50
+ const routeData = await traccarHelper.getRoute(traccar, from, to, devicesToSlice)
51
51
 
52
52
  console.log('Trips:' + tripsData.length)
53
53
 
54
54
  if (tripsData.length > 0) {
55
- trips.checkTripsKms(traccarInstance, from, to, devices, {trips: tripsData, route: routeData})
55
+ trips.checkTripsKms(traccar, from, to, devices, {trips: tripsData, route: routeData})
56
56
  allData.devices = processDevices(from, to, devices, {trips: tripsData, stops: stopsData, route: routeData}, userData)
57
57
  }
58
58
 
59
59
  return allData
60
60
  }
61
61
 
62
- async function createTripReportByGroup(from, to, userData, traccarInstance) {
62
+ async function createTripReportByGroup(from, to, userData, traccar) {
63
63
  const reportData = []
64
64
  for (const g of userData.groups) {
65
65
  const devices = userData.devices.filter(d => d.groupId === g.id)
@@ -71,13 +71,13 @@ async function createTripReportByGroup(from, to, userData, traccarInstance) {
71
71
  xpert: devices.filter(d => d.attributes.xpert).length > 0
72
72
  }
73
73
 
74
- const response = await traccarInstance.reports.reportsTripsGet(from, to, null, [g.id])
74
+ const response = await traccar.reports.reportsTripsGet(from, to, null, [g.id])
75
75
  const tripsData = response.data
76
76
 
77
- const stopsResponse = await traccarInstance.reports.reportsStopsGet(from, to, null, [g.id])
77
+ const stopsResponse = await traccar.reports.reportsStopsGet(from, to, null, [g.id])
78
78
  const stopsData = stopsResponse.data
79
79
 
80
- const routeResponse = await traccarInstance.reports.reportsRouteGet(from, to, null, [g.id])
80
+ const routeResponse = await traccar.reports.reportsRouteGet(from, to, null, [g.id])
81
81
  const routeData = routeResponse.data
82
82
 
83
83
  devices.sort((a, b) => (a.name > b.name) ? 1 : -1)
@@ -100,8 +100,8 @@ async function createTripReportByGroup(from, to, userData, traccarInstance) {
100
100
  return reportData
101
101
  }
102
102
 
103
- async function createTripReportByDriver(from, to, userData, traccarInstance){
104
- const devices = await drivers.devicesByDriver(traccarInstance, from, to, userData.drivers, userData.devices)
103
+ async function createTripReportByDriver(from, to, userData, traccar){
104
+ const devices = await drivers.devicesByDriver(traccar, from, to, userData.drivers, userData.devices)
105
105
  console.log(devices.length)
106
106
 
107
107
  if(!devices.length){
@@ -109,8 +109,8 @@ async function createTripReportByDriver(from, to, userData, traccarInstance){
109
109
  return { drivers:[] }
110
110
  }
111
111
 
112
- const tripsData = await traccar.getTrips(traccarInstance, from, to, devices)
113
- const routeData = await traccar.getRoute(traccarInstance, from, to, devices)
112
+ const tripsData = await traccarHelper.getTrips(traccar, from, to, devices)
113
+ const routeData = await traccarHelper.getRoute(traccar, from, to, devices)
114
114
 
115
115
  return { drivers: processDrivers(from, to, userData, {trips: tripsData, route: routeData})}
116
116
  }