fleetmap-reports 2.0.42 → 2.0.44
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 +2 -2
- package/src/speeding-report.js +5 -2
- package/src/util/index.js +6 -0
- package/src/util/traccar.js +1 -1
- package/src/util/utils.js +2 -1
- package/src/zone-report.js +8 -10
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "fleetmap-reports",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.44",
|
|
4
4
|
"description": "",
|
|
5
5
|
"main": "src/index.js",
|
|
6
6
|
"scripts": {
|
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
"country-reverse-geocoding": "^0.2.2",
|
|
19
19
|
"docx": "^7.3.0",
|
|
20
20
|
"file-saver": "^2.0.5",
|
|
21
|
-
"fleetmap-partners": "1.0.
|
|
21
|
+
"fleetmap-partners": "1.0.164",
|
|
22
22
|
"json-as-xlsx": "2.5.6",
|
|
23
23
|
"jspdf": "^2.5.1",
|
|
24
24
|
"jspdf-autotable": "3.8.1",
|
package/src/speeding-report.js
CHANGED
|
@@ -8,7 +8,9 @@ require('jspdf-autotable')
|
|
|
8
8
|
const { getStyle } = require('./reportStyle')
|
|
9
9
|
const drivers = require('./util/driver')
|
|
10
10
|
const here = require('./here')
|
|
11
|
-
const {
|
|
11
|
+
const {
|
|
12
|
+
getUserPartner
|
|
13
|
+
} = require('fleetmap-partners')
|
|
12
14
|
const traccarHelper = require('./util/traccar')
|
|
13
15
|
const { devicesToProcess } = require('./util/device')
|
|
14
16
|
const { point } = require('@turf/helpers')
|
|
@@ -18,6 +20,7 @@ const booleanPointInPolygon = require('@turf/boolean-point-in-polygon')
|
|
|
18
20
|
const automaticReports = require('./automaticReports')
|
|
19
21
|
const { default: axios } = require('axios')
|
|
20
22
|
const { getDriverName, getDriverData } = require('./util/driver')
|
|
23
|
+
const { getServerHost } = require('./util')
|
|
21
24
|
|
|
22
25
|
const fileName = 'SpeedingReport'
|
|
23
26
|
const eventTypes = ['deviceOverspeed']
|
|
@@ -123,7 +126,7 @@ async function createSpeedingReportByDriver (from, to, userData, traccarInstance
|
|
|
123
126
|
|
|
124
127
|
async function getEvents (traccarInstance, from, to, devices, userData, deviceCount, totalDevices, sliceSize) {
|
|
125
128
|
if (processServerSide()) {
|
|
126
|
-
const url = `https://${
|
|
129
|
+
const url = `https://${getServerHost()}/reports/speeding-report/getEvents`
|
|
127
130
|
return axios.post(url, { from, to, devices, userData, deviceCount, totalDevices, sliceSize }, { withCredentials: true }).then(d => d.data)
|
|
128
131
|
} else {
|
|
129
132
|
const geofencesFeatures = userData.geofences.filter(g => g.area.startsWith('POLYGON') &&
|
package/src/util/index.js
CHANGED
|
@@ -1,7 +1,13 @@
|
|
|
1
1
|
const { devicesToProcess } = require('./device')
|
|
2
2
|
const { isClientSide } = require('./utils')
|
|
3
|
+
const { newDomains } = require('fleetmap-partners')
|
|
3
4
|
|
|
4
5
|
exports.processServerSide = (userData) => {
|
|
5
6
|
const devices = devicesToProcess(userData)
|
|
6
7
|
return devices.length > 100 && isClientSide()
|
|
7
8
|
}
|
|
9
|
+
|
|
10
|
+
exports.getServerHost = () =>
|
|
11
|
+
isClientSide() && newDomains.includes(window.location.hostname)
|
|
12
|
+
? `${window.location.hostname}/pinmeapi`
|
|
13
|
+
: process.env.SERVER_HOST
|
package/src/util/traccar.js
CHANGED
|
@@ -81,7 +81,7 @@ async function getAllInOne (
|
|
|
81
81
|
devicesPerRequest = 1,
|
|
82
82
|
counter = undefined,
|
|
83
83
|
ignorePercentage = false) {
|
|
84
|
-
let url = `/reports/
|
|
84
|
+
let url = `/reports/allinone?from=${from.toISOString()}&to=${to.toISOString()}`
|
|
85
85
|
if (getRoutes) url += '&type=route'
|
|
86
86
|
if (getTrips) url += '&type=trips'
|
|
87
87
|
if (getStops) url += '&type=stops'
|
package/src/util/utils.js
CHANGED
|
@@ -2,6 +2,7 @@ const turf = require('@turf/helpers')
|
|
|
2
2
|
const { getUserPartner } = require('fleetmap-partners')
|
|
3
3
|
const messages = require('../../lang')
|
|
4
4
|
const distance = require('@turf/distance')
|
|
5
|
+
const { getServerHost } = require('./index')
|
|
5
6
|
|
|
6
7
|
exports.getTranslations = (userData) => {
|
|
7
8
|
const lang = this.getLanguage(userData)
|
|
@@ -234,7 +235,7 @@ async function executeServerSide (type, sliced, from, to, userData, totalItems,
|
|
|
234
235
|
for (let i = 0; i < sliced.length; i += maxRequests) {
|
|
235
236
|
const _sliced = sliced.slice(i, i + maxRequests)
|
|
236
237
|
await Promise.all(_sliced.map(async items => {
|
|
237
|
-
const url = `https://${
|
|
238
|
+
const url = `https://${getServerHost()}/reports/${type}`
|
|
238
239
|
try {
|
|
239
240
|
const data = await axios.post(url, {
|
|
240
241
|
from,
|
package/src/zone-report.js
CHANGED
|
@@ -12,8 +12,7 @@ const traccarHelper = require('./util/traccar')
|
|
|
12
12
|
const { headerFromUser, addTable } = require('./util/pdfDocument')
|
|
13
13
|
const { getStyle } = require('./reportStyle')
|
|
14
14
|
const {
|
|
15
|
-
getUserPartner
|
|
16
|
-
newDomains
|
|
15
|
+
getUserPartner
|
|
17
16
|
} = require('fleetmap-partners')
|
|
18
17
|
const { devicesToProcess } = require('./util/device')
|
|
19
18
|
const {
|
|
@@ -23,6 +22,7 @@ const {
|
|
|
23
22
|
const { checkGeofenceIn } = require('./util/geofence')
|
|
24
23
|
const { parallel } = require('./util/parallel')
|
|
25
24
|
const { getDataByDay } = require('./util/trips')
|
|
25
|
+
const { getServerHost } = require('./util')
|
|
26
26
|
const sliceSize = 100
|
|
27
27
|
const deviceChunk = 5
|
|
28
28
|
const fileName = 'ZoneReport'
|
|
@@ -35,12 +35,8 @@ async function createZoneReport (from, to, userData, traccar) {
|
|
|
35
35
|
xpert: devices.filter(d => d.attributes.xpert).length > 0
|
|
36
36
|
}
|
|
37
37
|
|
|
38
|
-
const serverHost = isClientSide() && newDomains.includes(window.location.hostname)
|
|
39
|
-
? `${window.location.hostname}/pinmeapi`
|
|
40
|
-
: process.env.SERVER_HOST
|
|
41
|
-
|
|
42
38
|
if (isClientSide()) {
|
|
43
|
-
const url = `https://${
|
|
39
|
+
const url = `https://${getServerHost()}/reports/zone-report/`
|
|
44
40
|
return traccar.axios.post(url, { from, to, userData }, { withCredentials: true })
|
|
45
41
|
.then(d => d.data)
|
|
46
42
|
}
|
|
@@ -714,9 +710,11 @@ function exportZoneReportToExcel (userData, reportData) {
|
|
|
714
710
|
{ label: translations.report.vehicle, value: 'name' },
|
|
715
711
|
{ label: translations.report.date, value: 'date' }
|
|
716
712
|
])
|
|
717
|
-
reportData.devices
|
|
718
|
-
|
|
719
|
-
|
|
713
|
+
if (reportData.devices.length) {
|
|
714
|
+
reportData.devices[0].days[0].geofences.forEach(g =>
|
|
715
|
+
headers.push({ label: g.geofenceName, value: '' + g.geofenceId })
|
|
716
|
+
)
|
|
717
|
+
}
|
|
720
718
|
headers.push({ label: translations.report.distanceOut || 'Kms Afuera', value: 'distanceOut', format: '0' })
|
|
721
719
|
} else if (userData.tripsBetweenZones) {
|
|
722
720
|
headers.push(...[
|