@golemio/pid 5.19.1-dev.2799089619 → 5.19.1-dev.2809129013
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/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/BasePositionsManager.d.ts +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/BasePositionsManager.js +5 -54
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/BasePositionsManager.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/DPPUtils.d.ts +2 -2
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/PositionsManager.js +3 -11
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/PositionsManager.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/compute-positions/ComputeDelayHelper.js +35 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/compute-positions/ComputeDelayHelper.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/compute-positions/strategy/AbstractDelayAtStop.js +35 -5
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/compute-positions/strategy/AbstractDelayAtStop.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/compute-positions/strategy/CommonDelayAtStop.js +37 -5
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/compute-positions/strategy/CommonDelayAtStop.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/compute-positions/strategy/MetroDelayAtStop.js +37 -5
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/compute-positions/strategy/MetroDelayAtStop.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/regional-bus/RegionalBusPositionsManager.js +3 -11
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/regional-bus/RegionalBusPositionsManager.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/regional-bus/compute-positions/RegionalBusComputeDelayHelper.js +35 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/regional-bus/compute-positions/RegionalBusComputeDelayHelper.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/regional-bus/compute-positions/strategy/BusDelayAtStop.js +37 -5
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/regional-bus/compute-positions/strategy/BusDelayAtStop.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/trip-context/TripContextHelper.d.ts +68 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/trip-context/TripContextHelper.js +213 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/trip-context/TripContextHelper.js.map +1 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/abstract/AbstractPropagateDelayTask.js +37 -11
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/abstract/AbstractPropagateDelayTask.js.map +1 -1
- package/dist/schema-definitions/vehicle-positions/models/VPTripsModel.js +22 -10
- package/dist/schema-definitions/vehicle-positions/models/VPTripsModel.js.map +1 -1
- package/dist/schema-definitions/vehicle-positions/models/interfaces/VPTripsLastPositionInterfaces.d.ts +8 -8
- package/docs/asyncapi.yaml +0 -9
- package/docs/cache/types/psql.md +6 -11
- package/docs/processing/index.md +1 -0
- package/docs/processing/trip_context/index.md +85 -0
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RegionalBusPositionsManager.js","sourceRoot":"","sources":["../../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/regional-bus/RegionalBusPositionsManager.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2EAAuD;AACvD,uEAA8E;AAG9E,iEAAwE;AACxE,iDAAmC;AAEnC,mDAAgE;AAShE,gEAA6D;AAC7D,4DAAyD;AACzD,2FAAwF;AACxF,qGAAkG;AAClG,kEAA+D;AAI/D,wEAAqE;
|
|
1
|
+
{"version":3,"file":"RegionalBusPositionsManager.js","sourceRoot":"","sources":["../../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/regional-bus/RegionalBusPositionsManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,16 +1,50 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
2
35
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
36
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
37
|
};
|
|
5
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
39
|
exports.RegionalBusComputeDelayHelper = void 0;
|
|
40
|
+
const TripContextHelper = __importStar(require("../../trip-context/TripContextHelper"));
|
|
7
41
|
const FactoryDelayAtStop_1 = __importDefault(require("./strategy/FactoryDelayAtStop"));
|
|
8
42
|
class RegionalBusComputeDelayHelper {
|
|
9
43
|
/**
|
|
10
44
|
* Saves relevant information to calculate delays in future vehicle position iterations.
|
|
11
45
|
*/
|
|
12
46
|
static updateContext(context, positionToUpdate, position, gtfsRouteType) {
|
|
13
|
-
context
|
|
47
|
+
TripContextHelper.setLastPositionDelay(context, positionToUpdate, position);
|
|
14
48
|
return (FactoryDelayAtStop_1.default.getInstance().getStrategy(gtfsRouteType)?.updateContext(context, positionToUpdate, position) ??
|
|
15
49
|
context);
|
|
16
50
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RegionalBusComputeDelayHelper.js","sourceRoot":"","sources":["../../../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/regional-bus/compute-positions/RegionalBusComputeDelayHelper.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"RegionalBusComputeDelayHelper.js","sourceRoot":"","sources":["../../../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/regional-bus/compute-positions/RegionalBusComputeDelayHelper.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,wFAA0E;AAC1E,uFAA+D;AAE/D,MAAa,6BAA6B;IACtC;;OAEG;IACI,MAAM,CAAC,aAAa,CACvB,OAAoC,EACpC,gBAA0C,EAC1C,QAAoC,EACpC,aAAgC;QAEhC,iBAAiB,CAAC,oBAAoB,CAAC,OAAO,EAAE,gBAAgB,EAAE,QAAQ,CAAC,CAAC;QAE5E,OAAO,CACH,4BAAkB,CAAC,WAAW,EAAE,CAAC,WAAW,CAAC,aAAa,CAAC,EAAE,aAAa,CAAC,OAAO,EAAE,gBAAgB,EAAE,QAAQ,CAAC;YAC/G,OAAO,CACV,CAAC;IACN,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,sBAAsB,CAChC,OAAoC,EACpC,gBAAmC,EACnC,QAAoC,EACpC,aAAgC;QAEhC,OAAO,CACH,4BAAkB,CAAC,WAAW,EAAE,CAAC,WAAW,CAAC,aAAa,CAAC,EAAE,cAAc,CAAC,OAAO,EAAE,gBAAgB,EAAE,QAAQ,CAAC;YAChH,gBAAgB,CACnB,CAAC;IACN,CAAC;CACJ;AAhCD,sEAgCC"}
|
|
@@ -1,10 +1,44 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
2
35
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
36
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
37
|
};
|
|
5
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
39
|
exports.BusDelayAtStop = void 0;
|
|
7
40
|
const const_1 = require("../../../../../../../../const");
|
|
41
|
+
const TripContextHelper = __importStar(require("../../../trip-context/TripContextHelper"));
|
|
8
42
|
const AbstractDelayAtStop_1 = __importDefault(require("../../../compute-positions/strategy/AbstractDelayAtStop"));
|
|
9
43
|
class BusDelayAtStop extends AbstractDelayAtStop_1.default {
|
|
10
44
|
updateContext(context, positionToUpdate, position) {
|
|
@@ -12,14 +46,12 @@ class BusDelayAtStop extends AbstractDelayAtStop_1.default {
|
|
|
12
46
|
return context;
|
|
13
47
|
}
|
|
14
48
|
context = this.resetContext(context, positionToUpdate, position);
|
|
15
|
-
|
|
16
|
-
context.lastPositionLastStop.sequence = positionToUpdate.last_stop_sequence ?? position.last_stop_sequence ?? null;
|
|
17
|
-
}
|
|
49
|
+
TripContextHelper.updateLastStopSequenceIfUnset(context, positionToUpdate, position);
|
|
18
50
|
if (positionToUpdate.state_position === const_1.StatePositionEnum.AT_STOP ||
|
|
19
51
|
positionToUpdate.state_position === const_1.StatePositionEnum.ON_TRACK ||
|
|
20
52
|
this.isValidUntrackedPosition(positionToUpdate)) {
|
|
21
|
-
context
|
|
22
|
-
context
|
|
53
|
+
TripContextHelper.setLastStopArrivalDelay(context, positionToUpdate.delay_stop_arrival ?? null);
|
|
54
|
+
TripContextHelper.setLastStopDepartureDelay(context, positionToUpdate.delay_stop_departure ?? null);
|
|
23
55
|
}
|
|
24
56
|
return context;
|
|
25
57
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BusDelayAtStop.js","sourceRoot":"","sources":["../../../../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/regional-bus/compute-positions/strategy/BusDelayAtStop.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"BusDelayAtStop.js","sourceRoot":"","sources":["../../../../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/regional-bus/compute-positions/strategy/BusDelayAtStop.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA,yDAAoE;AACpE,2FAA6E;AAC7E,kHAA0F;AAE1F,MAAa,cAAe,SAAQ,6BAAmB;IAC5C,aAAa,CAChB,OAAoC,EACpC,gBAA0C,EAC1C,QAAoC;QAEpC,IAAI,CAAC,gBAAgB,IAAI,CAAC,CAAC,QAAQ,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,wBAAwB,CAAC,gBAAgB,CAAC,CAAC,EAAE,CAAC;YAClG,OAAO,OAAO,CAAC;QACnB,CAAC;QAED,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,gBAAgB,EAAE,QAAQ,CAAC,CAAC;QAEjE,iBAAiB,CAAC,6BAA6B,CAAC,OAAO,EAAE,gBAAgB,EAAE,QAAQ,CAAC,CAAC;QAErF,IACI,gBAAgB,CAAC,cAAc,KAAK,yBAAiB,CAAC,OAAO;YAC7D,gBAAgB,CAAC,cAAc,KAAK,yBAAiB,CAAC,QAAQ;YAC9D,IAAI,CAAC,wBAAwB,CAAC,gBAAgB,CAAC,EACjD,CAAC;YACC,iBAAiB,CAAC,uBAAuB,CAAC,OAAO,EAAE,gBAAgB,CAAC,kBAAkB,IAAI,IAAI,CAAC,CAAC;YAChG,iBAAiB,CAAC,yBAAyB,CAAC,OAAO,EAAE,gBAAgB,CAAC,oBAAoB,IAAI,IAAI,CAAC,CAAC;QACxG,CAAC;QAED,OAAO,OAAO,CAAC;IACnB,CAAC;IAEM,cAAc,CACjB,OAAoC,EACpC,gBAAmC,EACnC,QAAgD;QAEhD,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAC,QAAQ,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,wBAAwB,CAAC,gBAAgB,CAAC,CAAC,EAAE,CAAC;YAC1F,OAAO,gBAAgB,CAAC;QAC5B,CAAC;QAED,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,gBAAgB,EAAE,QAAQ,CAAC,CAAC;QACjE,gBAAgB,CAAC,kBAAkB,GAAG,OAAO,CAAC,oBAAoB,CAAC,aAAa,CAAC;QACjF,gBAAgB,CAAC,oBAAoB,GAAG,OAAO,CAAC,oBAAoB,CAAC,eAAe,CAAC;QAErF,IAAI,IAAI,CAAC,6BAA6B,CAAC,gBAAgB,EAAE,OAAO,CAAC,EAAE,CAAC;YAChE,gBAAgB,CAAC,kBAAkB,GAAG,IAAI,CAAC,eAAe,CACtD,QAAQ,CAAC,gBAAgB,CAAC,OAAO,EAAE,EACnC,gBAAgB,CAAC,sBAAsB,CAC1C,CAAC;QACN,CAAC;aAAM,IAAI,gBAAgB,CAAC,cAAc,KAAK,yBAAiB,CAAC,OAAO,EAAE,CAAC;YACvE,MAAM,cAAc,GAAG,gBAAgB,CAAC,KAAK,IAAI,QAAQ,CAAC,KAAK,IAAI,IAAI,CAAC;YAExE,IAAI,OAAO,CAAC,YAAY,CAAC,aAAa,KAAK,IAAI,EAAE,CAAC;gBAC9C,gBAAgB,CAAC,kBAAkB,GAAG,cAAc,CAAC;YACzD,CAAC;iBAAM,IAAI,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACzC,gBAAgB,CAAC,oBAAoB,GAAG,cAAc,CAAC;YAC3D,CAAC;QACL,CAAC;QAED,OAAO,gBAAgB,CAAC;IAC5B,CAAC;IAEO,gBAAgB,CAAC,QAAoC;QACzD,OAAO,QAAQ,CAAC,UAAU,IAAI,QAAQ,CAAC,SAAS,KAAK,4BAAoB,CAAC,UAAU,CAAC;IACzF,CAAC;CACJ;AA5DD,wCA4DC"}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import { IPositionToUpdate } from "../../interfaces/VPInterfaces";
|
|
2
|
+
import { IVPTripsPositionAttributes } from "../../../../../../schema-definitions/vehicle-positions/models/interfaces/IVPTripsPositionAttributes";
|
|
3
|
+
import { IVPTripsLastPositionContext } from "../../../../../../schema-definitions/vehicle-positions/models/interfaces/VPTripsLastPositionInterfaces";
|
|
4
|
+
import { StatePositionEnum } from "../../../../../../const";
|
|
5
|
+
export interface ITransitionStateOptions {
|
|
6
|
+
forceTimestamp?: boolean;
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Builds a fresh trip context for a trip that has no persisted context yet.
|
|
10
|
+
*/
|
|
11
|
+
export declare function createInitial(tripId: string): IVPTripsLastPositionContext;
|
|
12
|
+
/**
|
|
13
|
+
* Commits a successfully processed position into the context - id, coordinates, canceled flag,
|
|
14
|
+
* origin timestamp, last stop sequence and the position state transition.
|
|
15
|
+
*/
|
|
16
|
+
export declare function commitValidPosition(context: IVPTripsLastPositionContext, position: IVPTripsPositionAttributes, positionToUpdate: IPositionToUpdate, canceled: boolean): void;
|
|
17
|
+
/**
|
|
18
|
+
* Transitions the position state. By default only stamps `lastPositionStateChange` when the state
|
|
19
|
+
* actually changes; `forceTimestamp` always restamps regardless of whether the state changed.
|
|
20
|
+
*/
|
|
21
|
+
export declare function transitionState(context: IVPTripsLastPositionContext, state: StatePositionEnum, options?: ITransitionStateOptions): void;
|
|
22
|
+
/**
|
|
23
|
+
* Records the last known tracking point (only for AT_STOP/ON_TRACK positions).
|
|
24
|
+
*/
|
|
25
|
+
export declare function recordTracking(context: IVPTripsLastPositionContext, position: IVPTripsPositionAttributes, positionToUpdate: IPositionToUpdate | null): void;
|
|
26
|
+
/**
|
|
27
|
+
* Records the sticky BEFORE_TRACK_DELAYED position. Stores the timestamp as-is (Date), never calls
|
|
28
|
+
* `.getTime()` on it.
|
|
29
|
+
*/
|
|
30
|
+
export declare function recordBeforeTrackDelayed(context: IVPTripsLastPositionContext, position: IVPTripsPositionAttributes, positionToUpdate: IPositionToUpdate | null): void;
|
|
31
|
+
/**
|
|
32
|
+
* Starts a new at-stop streak when the stop sequence changed.
|
|
33
|
+
*/
|
|
34
|
+
export declare function updateAtStopStreak(context: IVPTripsLastPositionContext, position: IVPTripsPositionAttributes, positionToUpdate: IPositionToUpdate | null): void;
|
|
35
|
+
/**
|
|
36
|
+
* Disrupts the at-stop streak. Zeroes ONLY `stop_sequence` - `firstPositionTimestamp` and
|
|
37
|
+
* `firstPositionDelay` are intentionally left untouched (persisted as-is).
|
|
38
|
+
*/
|
|
39
|
+
export declare function clearAtStopStreak(context: IVPTripsLastPositionContext): void;
|
|
40
|
+
/**
|
|
41
|
+
* Resets all last-stop-delay bookkeeping (sequence, arrival delay, departure delay).
|
|
42
|
+
*/
|
|
43
|
+
export declare function resetLastStopDelay(context: IVPTripsLastPositionContext): void;
|
|
44
|
+
/**
|
|
45
|
+
* Sets the last-stop sequence only when it is currently unset, falling back from `positionToUpdate`
|
|
46
|
+
* to `position` to `null`.
|
|
47
|
+
*/
|
|
48
|
+
export declare function updateLastStopSequenceIfUnset(context: IVPTripsLastPositionContext, positionToUpdate: IPositionToUpdate | null, position: IVPTripsPositionAttributes | undefined): void;
|
|
49
|
+
/**
|
|
50
|
+
* Verbatim pass-through - `undefined` must remain `undefined` (dropped by `JSON.stringify`), never
|
|
51
|
+
* coerced to `null`, since that would change the persisted bytes.
|
|
52
|
+
*/
|
|
53
|
+
export declare function setLastStopArrivalDelay(context: IVPTripsLastPositionContext, delay: number | null | undefined): void;
|
|
54
|
+
/**
|
|
55
|
+
* Verbatim pass-through - `undefined` must remain `undefined` (dropped by `JSON.stringify`), never
|
|
56
|
+
* coerced to `null`, since that would change the persisted bytes.
|
|
57
|
+
*/
|
|
58
|
+
export declare function setLastStopDepartureDelay(context: IVPTripsLastPositionContext, delay: number | null | undefined): void;
|
|
59
|
+
/**
|
|
60
|
+
* Verbatim pass-through - `undefined` must remain `undefined` (dropped by `JSON.stringify`), never
|
|
61
|
+
* coerced to `null`, since that would change the persisted bytes.
|
|
62
|
+
*/
|
|
63
|
+
export declare function setLastPositionDelay(context: IVPTripsLastPositionContext, positionToUpdate: IPositionToUpdate | null, position: IVPTripsPositionAttributes): void;
|
|
64
|
+
/**
|
|
65
|
+
* Force-restamps the context for a propagated delay (mutation site #12): coordinates, forced state
|
|
66
|
+
* transition to BEFORE_TRACK_DELAYED and the sticky before-track-delayed snapshot.
|
|
67
|
+
*/
|
|
68
|
+
export declare function recordPropagatedDelay(context: IVPTripsLastPositionContext, lat: number | string, lng: number | string, delay: number, originTimestamp: Date): void;
|
|
@@ -0,0 +1,213 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.createInitial = createInitial;
|
|
37
|
+
exports.commitValidPosition = commitValidPosition;
|
|
38
|
+
exports.transitionState = transitionState;
|
|
39
|
+
exports.recordTracking = recordTracking;
|
|
40
|
+
exports.recordBeforeTrackDelayed = recordBeforeTrackDelayed;
|
|
41
|
+
exports.updateAtStopStreak = updateAtStopStreak;
|
|
42
|
+
exports.clearAtStopStreak = clearAtStopStreak;
|
|
43
|
+
exports.resetLastStopDelay = resetLastStopDelay;
|
|
44
|
+
exports.updateLastStopSequenceIfUnset = updateLastStopSequenceIfUnset;
|
|
45
|
+
exports.setLastStopArrivalDelay = setLastStopArrivalDelay;
|
|
46
|
+
exports.setLastStopDepartureDelay = setLastStopDepartureDelay;
|
|
47
|
+
exports.setLastPositionDelay = setLastPositionDelay;
|
|
48
|
+
exports.recordPropagatedDelay = recordPropagatedDelay;
|
|
49
|
+
const turf = __importStar(require("@turf/turf"));
|
|
50
|
+
const const_1 = require("../../../../../../const");
|
|
51
|
+
/**
|
|
52
|
+
* Builds a fresh trip context for a trip that has no persisted context yet.
|
|
53
|
+
*/
|
|
54
|
+
function createInitial(tripId) {
|
|
55
|
+
return {
|
|
56
|
+
atStopStreak: {
|
|
57
|
+
stop_sequence: null,
|
|
58
|
+
firstPositionTimestamp: null,
|
|
59
|
+
firstPositionDelay: null,
|
|
60
|
+
},
|
|
61
|
+
lastPositionLastStop: {
|
|
62
|
+
sequence: null,
|
|
63
|
+
arrival_delay: null,
|
|
64
|
+
departure_delay: null,
|
|
65
|
+
},
|
|
66
|
+
lastPositionDelay: null,
|
|
67
|
+
lastPositionId: null,
|
|
68
|
+
lastPositionLat: null,
|
|
69
|
+
lastPositionLng: null,
|
|
70
|
+
lastPositionOriginTimestamp: null,
|
|
71
|
+
lastPositionTracking: null,
|
|
72
|
+
lastPositionCanceled: null,
|
|
73
|
+
lastPositionBeforeTrackDelayed: null,
|
|
74
|
+
lastPositionState: null,
|
|
75
|
+
lastStopSequence: null,
|
|
76
|
+
lastPositionStateChange: null,
|
|
77
|
+
tripId,
|
|
78
|
+
};
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* Commits a successfully processed position into the context - id, coordinates, canceled flag,
|
|
82
|
+
* origin timestamp, last stop sequence and the position state transition.
|
|
83
|
+
*/
|
|
84
|
+
function commitValidPosition(context, position, positionToUpdate, canceled) {
|
|
85
|
+
context.lastPositionId = position.id;
|
|
86
|
+
context.lastPositionLat = position.lat;
|
|
87
|
+
context.lastPositionLng = position.lng;
|
|
88
|
+
context.lastPositionCanceled = canceled;
|
|
89
|
+
context.lastPositionOriginTimestamp = position.origin_timestamp.getTime();
|
|
90
|
+
context.lastStopSequence = positionToUpdate.last_stop_sequence ?? context.lastStopSequence ?? null;
|
|
91
|
+
transitionState(context, positionToUpdate.state_position);
|
|
92
|
+
}
|
|
93
|
+
/**
|
|
94
|
+
* Transitions the position state. By default only stamps `lastPositionStateChange` when the state
|
|
95
|
+
* actually changes; `forceTimestamp` always restamps regardless of whether the state changed.
|
|
96
|
+
*/
|
|
97
|
+
function transitionState(context, state, options) {
|
|
98
|
+
const forceTimestamp = options?.forceTimestamp ?? false;
|
|
99
|
+
if (forceTimestamp || context.lastPositionState !== state) {
|
|
100
|
+
context.lastPositionState = state;
|
|
101
|
+
context.lastPositionStateChange = new Date().toISOString();
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* Records the last known tracking point (only for AT_STOP/ON_TRACK positions).
|
|
106
|
+
*/
|
|
107
|
+
function recordTracking(context, position, positionToUpdate) {
|
|
108
|
+
if (positionToUpdate?.state_position === const_1.StatePositionEnum.AT_STOP ||
|
|
109
|
+
positionToUpdate?.state_position === const_1.StatePositionEnum.ON_TRACK ||
|
|
110
|
+
position.state_position === const_1.StatePositionEnum.AT_STOP ||
|
|
111
|
+
position.state_position === const_1.StatePositionEnum.ON_TRACK) {
|
|
112
|
+
const mergedPosition = { ...position, ...positionToUpdate };
|
|
113
|
+
// Explicit literal with `?? null` per field: any field that would otherwise merge in as
|
|
114
|
+
// `undefined` now persists as `null` instead. This is an intentional, documented behavior
|
|
115
|
+
// change - `undefined` keys get dropped by `JSON.stringify`, `null` keys are kept.
|
|
116
|
+
context.lastPositionTracking = turf.point([position.lng, position.lat], {
|
|
117
|
+
bearing: mergedPosition.bearing ?? null,
|
|
118
|
+
shape_dist_traveled: mergedPosition.shape_dist_traveled ?? null,
|
|
119
|
+
tcp_event: mergedPosition.tcp_event ?? null,
|
|
120
|
+
last_stop_sequence: mergedPosition.last_stop_sequence ?? null,
|
|
121
|
+
last_stop_id: mergedPosition.last_stop_id ?? null,
|
|
122
|
+
last_stop_arrival_time: mergedPosition.last_stop_arrival_time ?? null,
|
|
123
|
+
last_stop_departure_time: mergedPosition.last_stop_departure_time ?? null,
|
|
124
|
+
});
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
/**
|
|
128
|
+
* Records the sticky BEFORE_TRACK_DELAYED position. Stores the timestamp as-is (Date), never calls
|
|
129
|
+
* `.getTime()` on it.
|
|
130
|
+
*/
|
|
131
|
+
function recordBeforeTrackDelayed(context, position, positionToUpdate) {
|
|
132
|
+
if (position.state_position === const_1.StatePositionEnum.BEFORE_TRACK_DELAYED) {
|
|
133
|
+
context.lastPositionBeforeTrackDelayed = {
|
|
134
|
+
delay: positionToUpdate?.delay ?? position.delay,
|
|
135
|
+
origin_timestamp: positionToUpdate?.origin_timestamp ?? position.origin_timestamp,
|
|
136
|
+
};
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
/**
|
|
140
|
+
* Starts a new at-stop streak when the stop sequence changed.
|
|
141
|
+
*/
|
|
142
|
+
function updateAtStopStreak(context, position, positionToUpdate) {
|
|
143
|
+
const stopSequenceChanged = positionToUpdate
|
|
144
|
+
? positionToUpdate.this_stop_sequence && context.atStopStreak.stop_sequence !== positionToUpdate.this_stop_sequence
|
|
145
|
+
: position.this_stop_sequence && context.atStopStreak.stop_sequence !== position.this_stop_sequence;
|
|
146
|
+
if (stopSequenceChanged) {
|
|
147
|
+
context.atStopStreak.stop_sequence = positionToUpdate
|
|
148
|
+
? positionToUpdate.this_stop_sequence
|
|
149
|
+
: position.this_stop_sequence;
|
|
150
|
+
context.atStopStreak.firstPositionTimestamp = position.origin_timestamp.getTime();
|
|
151
|
+
context.atStopStreak.firstPositionDelay = positionToUpdate ? positionToUpdate.delay : position.delay;
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
/**
|
|
155
|
+
* Disrupts the at-stop streak. Zeroes ONLY `stop_sequence` - `firstPositionTimestamp` and
|
|
156
|
+
* `firstPositionDelay` are intentionally left untouched (persisted as-is).
|
|
157
|
+
*/
|
|
158
|
+
function clearAtStopStreak(context) {
|
|
159
|
+
context.atStopStreak.stop_sequence = null;
|
|
160
|
+
}
|
|
161
|
+
/**
|
|
162
|
+
* Resets all last-stop-delay bookkeeping (sequence, arrival delay, departure delay).
|
|
163
|
+
*/
|
|
164
|
+
function resetLastStopDelay(context) {
|
|
165
|
+
context.lastPositionLastStop.arrival_delay = null;
|
|
166
|
+
context.lastPositionLastStop.sequence = null;
|
|
167
|
+
context.lastPositionLastStop.departure_delay = null;
|
|
168
|
+
}
|
|
169
|
+
/**
|
|
170
|
+
* Sets the last-stop sequence only when it is currently unset, falling back from `positionToUpdate`
|
|
171
|
+
* to `position` to `null`.
|
|
172
|
+
*/
|
|
173
|
+
function updateLastStopSequenceIfUnset(context, positionToUpdate, position) {
|
|
174
|
+
if (context.lastPositionLastStop.sequence === null) {
|
|
175
|
+
context.lastPositionLastStop.sequence = positionToUpdate?.last_stop_sequence ?? position?.last_stop_sequence ?? null;
|
|
176
|
+
}
|
|
177
|
+
}
|
|
178
|
+
/**
|
|
179
|
+
* Verbatim pass-through - `undefined` must remain `undefined` (dropped by `JSON.stringify`), never
|
|
180
|
+
* coerced to `null`, since that would change the persisted bytes.
|
|
181
|
+
*/
|
|
182
|
+
function setLastStopArrivalDelay(context, delay) {
|
|
183
|
+
context.lastPositionLastStop.arrival_delay = delay;
|
|
184
|
+
}
|
|
185
|
+
/**
|
|
186
|
+
* Verbatim pass-through - `undefined` must remain `undefined` (dropped by `JSON.stringify`), never
|
|
187
|
+
* coerced to `null`, since that would change the persisted bytes.
|
|
188
|
+
*/
|
|
189
|
+
function setLastStopDepartureDelay(context, delay) {
|
|
190
|
+
context.lastPositionLastStop.departure_delay = delay;
|
|
191
|
+
}
|
|
192
|
+
/**
|
|
193
|
+
* Verbatim pass-through - `undefined` must remain `undefined` (dropped by `JSON.stringify`), never
|
|
194
|
+
* coerced to `null`, since that would change the persisted bytes.
|
|
195
|
+
*/
|
|
196
|
+
function setLastPositionDelay(context, positionToUpdate, position) {
|
|
197
|
+
context.lastPositionDelay = (positionToUpdate ? positionToUpdate.delay : position.delay);
|
|
198
|
+
}
|
|
199
|
+
/**
|
|
200
|
+
* Force-restamps the context for a propagated delay (mutation site #12): coordinates, forced state
|
|
201
|
+
* transition to BEFORE_TRACK_DELAYED and the sticky before-track-delayed snapshot.
|
|
202
|
+
*/
|
|
203
|
+
function recordPropagatedDelay(context, lat, lng, delay, originTimestamp) {
|
|
204
|
+
// Sequelize DECIMAL columns come back as strings.
|
|
205
|
+
context.lastPositionLat = typeof lat === "string" ? parseFloat(lat) : lat;
|
|
206
|
+
context.lastPositionLng = typeof lng === "string" ? parseFloat(lng) : lng;
|
|
207
|
+
transitionState(context, const_1.StatePositionEnum.BEFORE_TRACK_DELAYED, { forceTimestamp: true });
|
|
208
|
+
context.lastPositionBeforeTrackDelayed = {
|
|
209
|
+
delay,
|
|
210
|
+
origin_timestamp: originTimestamp,
|
|
211
|
+
};
|
|
212
|
+
}
|
|
213
|
+
//# sourceMappingURL=TripContextHelper.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TripContextHelper.js","sourceRoot":"","sources":["../../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/trip-context/TripContextHelper.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAaA,sCAyBC;AAMD,kDAcC;AAMD,0CAWC;AAKD,wCA0BC;AAMD,4DAWC;AAKD,gDAgBC;AAMD,8CAEC;AAKD,gDAIC;AAMD,sEAQC;AAMD,0DAEC;AAMD,8DAEC;AAMD,oDAMC;AAMD,sDAiBC;AA/ND,iDAAmC;AACnC,mDAA8C;AAM9C;;GAEG;AACH,SAAgB,aAAa,CAAC,MAAc;IACxC,OAAO;QACH,YAAY,EAAE;YACV,aAAa,EAAE,IAAI;YACnB,sBAAsB,EAAE,IAAI;YAC5B,kBAAkB,EAAE,IAAI;SAC3B;QACD,oBAAoB,EAAE;YAClB,QAAQ,EAAE,IAAI;YACd,aAAa,EAAE,IAAI;YACnB,eAAe,EAAE,IAAI;SACxB;QACD,iBAAiB,EAAE,IAAI;QACvB,cAAc,EAAE,IAAI;QACpB,eAAe,EAAE,IAAI;QACrB,eAAe,EAAE,IAAI;QACrB,2BAA2B,EAAE,IAAI;QACjC,oBAAoB,EAAE,IAAI;QAC1B,oBAAoB,EAAE,IAAI;QAC1B,8BAA8B,EAAE,IAAI;QACpC,iBAAiB,EAAE,IAAI;QACvB,gBAAgB,EAAE,IAAI;QACtB,uBAAuB,EAAE,IAAI;QAC7B,MAAM;KACT,CAAC;AACN,CAAC;AAED;;;GAGG;AACH,SAAgB,mBAAmB,CAC/B,OAAoC,EACpC,QAAoC,EACpC,gBAAmC,EACnC,QAAiB;IAEjB,OAAO,CAAC,cAAc,GAAG,QAAQ,CAAC,EAAE,CAAC;IACrC,OAAO,CAAC,eAAe,GAAG,QAAQ,CAAC,GAAG,CAAC;IACvC,OAAO,CAAC,eAAe,GAAG,QAAQ,CAAC,GAAG,CAAC;IACvC,OAAO,CAAC,oBAAoB,GAAG,QAAQ,CAAC;IACxC,OAAO,CAAC,2BAA2B,GAAG,QAAQ,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC;IAC1E,OAAO,CAAC,gBAAgB,GAAG,gBAAgB,CAAC,kBAAkB,IAAI,OAAO,CAAC,gBAAgB,IAAI,IAAI,CAAC;IAEnG,eAAe,CAAC,OAAO,EAAE,gBAAgB,CAAC,cAAc,CAAC,CAAC;AAC9D,CAAC;AAED;;;GAGG;AACH,SAAgB,eAAe,CAC3B,OAAoC,EACpC,KAAwB,EACxB,OAAiC;IAEjC,MAAM,cAAc,GAAG,OAAO,EAAE,cAAc,IAAI,KAAK,CAAC;IAExD,IAAI,cAAc,IAAI,OAAO,CAAC,iBAAiB,KAAK,KAAK,EAAE,CAAC;QACxD,OAAO,CAAC,iBAAiB,GAAG,KAAK,CAAC;QAClC,OAAO,CAAC,uBAAuB,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC/D,CAAC;AACL,CAAC;AAED;;GAEG;AACH,SAAgB,cAAc,CAC1B,OAAoC,EACpC,QAAoC,EACpC,gBAA0C;IAE1C,IACI,gBAAgB,EAAE,cAAc,KAAK,yBAAiB,CAAC,OAAO;QAC9D,gBAAgB,EAAE,cAAc,KAAK,yBAAiB,CAAC,QAAQ;QAC/D,QAAQ,CAAC,cAAc,KAAK,yBAAiB,CAAC,OAAO;QACrD,QAAQ,CAAC,cAAc,KAAK,yBAAiB,CAAC,QAAQ,EACxD,CAAC;QACC,MAAM,cAAc,GAAG,EAAE,GAAG,QAAQ,EAAE,GAAG,gBAAgB,EAAgC,CAAC;QAE1F,wFAAwF;QACxF,0FAA0F;QAC1F,mFAAmF;QACnF,OAAO,CAAC,oBAAoB,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,GAAG,CAAC,EAAE;YACpE,OAAO,EAAE,cAAc,CAAC,OAAO,IAAI,IAAI;YACvC,mBAAmB,EAAE,cAAc,CAAC,mBAAmB,IAAI,IAAI;YAC/D,SAAS,EAAE,cAAc,CAAC,SAAS,IAAI,IAAI;YAC3C,kBAAkB,EAAE,cAAc,CAAC,kBAAkB,IAAI,IAAI;YAC7D,YAAY,EAAE,cAAc,CAAC,YAAY,IAAI,IAAI;YACjD,sBAAsB,EAAE,cAAc,CAAC,sBAAsB,IAAI,IAAI;YACrE,wBAAwB,EAAE,cAAc,CAAC,wBAAwB,IAAI,IAAI;SAC5E,CAAC,CAAC;IACP,CAAC;AACL,CAAC;AAED;;;GAGG;AACH,SAAgB,wBAAwB,CACpC,OAAoC,EACpC,QAAoC,EACpC,gBAA0C;IAE1C,IAAI,QAAQ,CAAC,cAAc,KAAK,yBAAiB,CAAC,oBAAoB,EAAE,CAAC;QACrE,OAAO,CAAC,8BAA8B,GAAG;YACrC,KAAK,EAAE,gBAAgB,EAAE,KAAK,IAAI,QAAQ,CAAC,KAAK;YAChD,gBAAgB,EAAE,gBAAgB,EAAE,gBAAgB,IAAI,QAAQ,CAAC,gBAAgB;SACpF,CAAC;IACN,CAAC;AACL,CAAC;AAED;;GAEG;AACH,SAAgB,kBAAkB,CAC9B,OAAoC,EACpC,QAAoC,EACpC,gBAA0C;IAE1C,MAAM,mBAAmB,GAAG,gBAAgB;QACxC,CAAC,CAAC,gBAAgB,CAAC,kBAAkB,IAAI,OAAO,CAAC,YAAY,CAAC,aAAa,KAAK,gBAAgB,CAAC,kBAAkB;QACnH,CAAC,CAAC,QAAQ,CAAC,kBAAkB,IAAI,OAAO,CAAC,YAAY,CAAC,aAAa,KAAK,QAAQ,CAAC,kBAAkB,CAAC;IAExG,IAAI,mBAAmB,EAAE,CAAC;QACtB,OAAO,CAAC,YAAY,CAAC,aAAa,GAAG,gBAAgB;YACjD,CAAC,CAAC,gBAAgB,CAAC,kBAAmB;YACtC,CAAC,CAAC,QAAQ,CAAC,kBAAkB,CAAC;QAClC,OAAO,CAAC,YAAY,CAAC,sBAAsB,GAAG,QAAQ,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC;QAClF,OAAO,CAAC,YAAY,CAAC,kBAAkB,GAAG,gBAAgB,CAAC,CAAC,CAAC,gBAAgB,CAAC,KAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;IAC1G,CAAC;AACL,CAAC;AAED;;;GAGG;AACH,SAAgB,iBAAiB,CAAC,OAAoC;IAClE,OAAO,CAAC,YAAY,CAAC,aAAa,GAAG,IAAI,CAAC;AAC9C,CAAC;AAED;;GAEG;AACH,SAAgB,kBAAkB,CAAC,OAAoC;IACnE,OAAO,CAAC,oBAAoB,CAAC,aAAa,GAAG,IAAI,CAAC;IAClD,OAAO,CAAC,oBAAoB,CAAC,QAAQ,GAAG,IAAI,CAAC;IAC7C,OAAO,CAAC,oBAAoB,CAAC,eAAe,GAAG,IAAI,CAAC;AACxD,CAAC;AAED;;;GAGG;AACH,SAAgB,6BAA6B,CACzC,OAAoC,EACpC,gBAA0C,EAC1C,QAAgD;IAEhD,IAAI,OAAO,CAAC,oBAAoB,CAAC,QAAQ,KAAK,IAAI,EAAE,CAAC;QACjD,OAAO,CAAC,oBAAoB,CAAC,QAAQ,GAAG,gBAAgB,EAAE,kBAAkB,IAAI,QAAQ,EAAE,kBAAkB,IAAI,IAAI,CAAC;IACzH,CAAC;AACL,CAAC;AAED;;;GAGG;AACH,SAAgB,uBAAuB,CAAC,OAAoC,EAAE,KAAgC;IAC1G,OAAO,CAAC,oBAAoB,CAAC,aAAa,GAAG,KAAsB,CAAC;AACxE,CAAC;AAED;;;GAGG;AACH,SAAgB,yBAAyB,CAAC,OAAoC,EAAE,KAAgC;IAC5G,OAAO,CAAC,oBAAoB,CAAC,eAAe,GAAG,KAAsB,CAAC;AAC1E,CAAC;AAED;;;GAGG;AACH,SAAgB,oBAAoB,CAChC,OAAoC,EACpC,gBAA0C,EAC1C,QAAoC;IAEpC,OAAO,CAAC,iBAAiB,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAkB,CAAC;AAC9G,CAAC;AAED;;;GAGG;AACH,SAAgB,qBAAqB,CACjC,OAAoC,EACpC,GAAoB,EACpB,GAAoB,EACpB,KAAa,EACb,eAAqB;IAErB,kDAAkD;IAClD,OAAO,CAAC,eAAe,GAAG,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;IAC1E,OAAO,CAAC,eAAe,GAAG,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;IAE1E,eAAe,CAAC,OAAO,EAAE,yBAAiB,CAAC,oBAAoB,EAAE,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC,CAAC;IAE3F,OAAO,CAAC,8BAA8B,GAAG;QACrC,KAAK;QACL,gBAAgB,EAAE,eAAe;KACpC,CAAC;AACN,CAAC"}
|
|
@@ -1,10 +1,43 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
2
18
|
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
19
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
20
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
21
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
22
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
23
|
};
|
|
24
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
25
|
+
var ownKeys = function(o) {
|
|
26
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
27
|
+
var ar = [];
|
|
28
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
29
|
+
return ar;
|
|
30
|
+
};
|
|
31
|
+
return ownKeys(o);
|
|
32
|
+
};
|
|
33
|
+
return function (mod) {
|
|
34
|
+
if (mod && mod.__esModule) return mod;
|
|
35
|
+
var result = {};
|
|
36
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
37
|
+
__setModuleDefault(result, mod);
|
|
38
|
+
return result;
|
|
39
|
+
};
|
|
40
|
+
})();
|
|
8
41
|
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
42
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
43
|
};
|
|
@@ -19,6 +52,7 @@ const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
|
|
|
19
52
|
const const_1 = require("../../../../../../const");
|
|
20
53
|
const PositionsRepository_1 = require("../../data-access/PositionsRepository");
|
|
21
54
|
const constants_1 = require("../../constants");
|
|
55
|
+
const TripContextHelper = __importStar(require("../../helpers/trip-context/TripContextHelper"));
|
|
22
56
|
let AbstractPropagateDelayTask = class AbstractPropagateDelayTask extends integration_engine_1.AbstractTask {
|
|
23
57
|
constructor(tripsRepository, positionsRepository) {
|
|
24
58
|
super(constants_1.WORKER_NAME);
|
|
@@ -54,20 +88,12 @@ let AbstractPropagateDelayTask = class AbstractPropagateDelayTask extends integr
|
|
|
54
88
|
}
|
|
55
89
|
delayInSeconds = Math.max(0, delayInSeconds - turnTimeAcc);
|
|
56
90
|
}
|
|
91
|
+
const context = { ...(trip.last_position_context ?? TripContextHelper.createInitial(trip.id)) };
|
|
92
|
+
TripContextHelper.recordPropagatedDelay(context, lastPosition.lat, lastPosition.lng, delayInSeconds, lastPosition.origin_timestamp);
|
|
57
93
|
tripsToUpdate.set(trip.id, {
|
|
58
94
|
id: trip.id,
|
|
59
95
|
last_position_id: lastPosition.id,
|
|
60
|
-
last_position_context:
|
|
61
|
-
...trip.last_position_context,
|
|
62
|
-
lastPositionLat: typeof lastPosition.lat === "string" ? parseFloat(lastPosition.lat) : lastPosition.lat,
|
|
63
|
-
lastPositionLng: typeof lastPosition.lng === "string" ? parseFloat(lastPosition.lng) : lastPosition.lng,
|
|
64
|
-
lastPositionState: const_1.StatePositionEnum.BEFORE_TRACK_DELAYED,
|
|
65
|
-
lastPositionStateChange: new Date().toISOString(),
|
|
66
|
-
lastPositionBeforeTrackDelayed: {
|
|
67
|
-
delay: delayInSeconds,
|
|
68
|
-
origin_timestamp: lastPosition.origin_timestamp,
|
|
69
|
-
},
|
|
70
|
-
},
|
|
96
|
+
last_position_context: context,
|
|
71
97
|
});
|
|
72
98
|
positionsToUpdate.push({
|
|
73
99
|
id: lastPosition.id,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AbstractPropagateDelayTask.js","sourceRoot":"","sources":["../../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/abstract/AbstractPropagateDelayTask.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"AbstractPropagateDelayTask.js","sourceRoot":"","sources":["../../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/abstract/AbstractPropagateDelayTask.ts"],"names":[],"mappings":"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"}
|
|
@@ -215,7 +215,28 @@ VPTripsModel.jsonSchema = {
|
|
|
215
215
|
},
|
|
216
216
|
properties: {
|
|
217
217
|
type: "object",
|
|
218
|
-
|
|
218
|
+
properties: {
|
|
219
|
+
bearing: {
|
|
220
|
+
type: ["number", "null"],
|
|
221
|
+
},
|
|
222
|
+
shape_dist_traveled: {
|
|
223
|
+
type: ["number", "null"],
|
|
224
|
+
},
|
|
225
|
+
tcp_event: {
|
|
226
|
+
type: ["string", "null"],
|
|
227
|
+
},
|
|
228
|
+
last_stop_sequence: {
|
|
229
|
+
type: ["number", "null"],
|
|
230
|
+
},
|
|
231
|
+
last_stop_id: {
|
|
232
|
+
type: ["string", "null"],
|
|
233
|
+
},
|
|
234
|
+
// last_stop_arrival_time/last_stop_departure_time are written as Date
|
|
235
|
+
// instances (see TripContextHelper.recordTracking) before JSON
|
|
236
|
+
// serialization turns them into strings, so they are left unvalidated
|
|
237
|
+
// here rather than typed as "string" only.
|
|
238
|
+
},
|
|
239
|
+
required: [],
|
|
219
240
|
},
|
|
220
241
|
geometry: {
|
|
221
242
|
$ref: "#/definitions/geometry",
|
|
@@ -234,18 +255,9 @@ VPTripsModel.jsonSchema = {
|
|
|
234
255
|
lastPositionLastStop: {
|
|
235
256
|
type: "object",
|
|
236
257
|
properties: {
|
|
237
|
-
id: {
|
|
238
|
-
type: ["string", "null"],
|
|
239
|
-
},
|
|
240
258
|
sequence: {
|
|
241
259
|
type: ["number", "null"],
|
|
242
260
|
},
|
|
243
|
-
arrival_time: {
|
|
244
|
-
type: ["number", "null"],
|
|
245
|
-
},
|
|
246
|
-
departure_time: {
|
|
247
|
-
type: ["number", "null"],
|
|
248
|
-
},
|
|
249
261
|
},
|
|
250
262
|
required: [],
|
|
251
263
|
},
|