fleetmap-reports 1.0.983 → 1.0.985

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.
Files changed (2) hide show
  1. package/package.json +1 -1
  2. package/src/kms-report.js +12 -7
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "fleetmap-reports",
3
- "version": "1.0.983",
3
+ "version": "1.0.985",
4
4
  "description": "",
5
5
  "main": "src/index.js",
6
6
  "scripts": {
package/src/kms-report.js CHANGED
@@ -55,12 +55,14 @@ async function createKmsReportByDevice (from, to, userData, traccarInstance) {
55
55
  dates.forEach(date => {
56
56
  const summaryByDay = summary.find(a => a.date === date).summary
57
57
  const summaryByDevice = summaryByDay.find(a => a.deviceId === device.id)
58
- days.push({
59
- date,
60
- kms: summaryByDevice.distance,
61
- startOdometer: summaryByDevice.startOdometer,
62
- endOdometer: summaryByDevice.endOdometer
63
- })
58
+ if (summaryByDevice) {
59
+ days.push({
60
+ date,
61
+ kms: summaryByDevice.distance,
62
+ startOdometer: summaryByDevice.startOdometer,
63
+ endOdometer: summaryByDevice.endOdometer
64
+ })
65
+ }
64
66
  })
65
67
  const daysWithOdometer = days.filter(a => a.startOdometer > 0)
66
68
  allData.devices.push({
@@ -161,7 +163,10 @@ async function createKmsReportByGroup (from, to, userData, traccarInstance) {
161
163
 
162
164
  function processDrivers (from, to, userData, data) {
163
165
  const driversResult = []
164
- userData.drivers.forEach(d => {
166
+ const driversOnRoute = data.route ? new Set(data.route.map(p => p.attributes.driverUniqueId)) : new Set([])
167
+ const driverToProcess = userData.drivers.filter(d => driversOnRoute.has(d.uniqueId))
168
+
169
+ driverToProcess.forEach(d => {
165
170
  const { route, trips } = getDriverData(d, data)
166
171
  const filteredTrips = trips.filter(t => (userData.allWeek || !userData.weekDays || isInsideTimetable(t, userData) || isPartialInsideTimetable(t, userData, route)))
167
172