@golemio/pid 2.8.9-dev.981491619 → 2.8.9-dev.983877473
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-descriptors/data-access/DescriptorRepository.d.ts +1 -8
- package/dist/integration-engine/vehicle-positions/workers/vehicle-descriptors/data-access/DescriptorRepository.js +2 -22
- package/dist/integration-engine/vehicle-positions/workers/vehicle-descriptors/data-access/DescriptorRepository.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-descriptors/tasks/RefreshDescriptorsTask.d.ts +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-descriptors/tasks/RefreshDescriptorsTask.js +3 -2
- package/dist/integration-engine/vehicle-positions/workers/vehicle-descriptors/tasks/RefreshDescriptorsTask.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/PositionsRepository.d.ts +3 -11
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/PositionsRepository.js +1 -32
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/PositionsRepository.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/TripsRepository.d.ts +1 -75
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/TripsRepository.js +6 -166
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/TripsRepository.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/helpers/TripsMapper.d.ts +3 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/helpers/TripsMapper.js +40 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/helpers/TripsMapper.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/interfaces/PositionRepositoryInterfaces.d.ts +7 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/interfaces/PositionRepositoryInterfaces.js +3 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/interfaces/PositionRepositoryInterfaces.js.map +1 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/interfaces/TripRepositoryInterfaces.d.ts +63 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/interfaces/TripRepositoryInterfaces.js +3 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/interfaces/TripRepositoryInterfaces.js.map +1 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/VPUtils.d.ts +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/gtfs-trip-run/AbstractGTFSTripRunManager.d.ts +3 -3
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/gtfs-trip-run/AbstractGTFSTripRunManager.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/gtfs-trip-run/interfaces/IDelayMessage.d.ts +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/interfaces/IPropagateDelayInput.d.ts +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/interfaces/IUpdateDelayInput.d.ts +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/interfaces/IUpdateGtfsTripIdInput.d.ts +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/interfaces/VPInterfaces.d.ts +6 -6
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/schema/PropagateDelaySchema.d.ts +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/schema/SaveDataToDBSchema.js +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/schema/SaveDataToDBSchema.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/schema/UpdateDelaySchema.d.ts +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/schema/UpdateGtfsTripIdSchema.d.ts +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/PropagateDelayTask.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/SaveDataToDBTask.d.ts +2 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/SaveDataToDBTask.js +31 -11
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/SaveDataToDBTask.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/UpdateDelayTask.d.ts +1 -2
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/UpdateDelayTask.js +24 -20
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/UpdateDelayTask.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/UpdateGtfsTripIdTask.js +4 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/UpdateGtfsTripIdTask.js.map +1 -1
- package/dist/schema-definitions/vehicle-descriptors/models/DescriptorModel.js.map +1 -1
- package/dist/schema-definitions/vehicle-positions/models/PositionDto.js +4 -16
- package/dist/schema-definitions/vehicle-positions/models/PositionDto.js.map +1 -1
- package/dist/schema-definitions/vehicle-positions/models/VPTripsModel.d.ts +2 -2
- package/dist/schema-definitions/vehicle-positions/models/VPTripsModel.js +3 -3
- package/dist/schema-definitions/vehicle-positions/models/VPTripsModel.js.map +1 -1
- package/dist/schema-definitions/vehicle-positions/models/interfaces/IPositionDto.d.ts +3 -3
- package/dist/schema-definitions/vehicle-positions/models/interfaces/IVPTripsModel.d.ts +1 -1
- package/package.json +2 -2
|
@@ -1,13 +1,6 @@
|
|
|
1
|
-
import { DescriptorModel } from "../../../../../schema-definitions/vehicle-descriptors/models";
|
|
2
|
-
import { IDescriptorOutputDto } from "../../../../../schema-definitions/vehicle-descriptors/models/interfaces";
|
|
3
|
-
import { ILogger } from "@golemio/core/dist/helpers";
|
|
4
1
|
import { IModel, PostgresModel } from "@golemio/core/dist/integration-engine/models";
|
|
5
|
-
import { ModelStatic } from "@golemio/core/dist/shared/sequelize";
|
|
6
2
|
export declare class DescriptorRepository extends PostgresModel implements IModel {
|
|
7
|
-
private logger;
|
|
8
3
|
private static REPOSITORY_NAME;
|
|
9
|
-
|
|
10
|
-
constructor(logger: ILogger);
|
|
11
|
-
saveData: (data: IDescriptorOutputDto[], isReturning?: boolean) => Promise<DescriptorModel[]>;
|
|
4
|
+
constructor();
|
|
12
5
|
deleteNHoursOldData: (hours: number) => Promise<number>;
|
|
13
6
|
}
|
|
@@ -31,9 +31,6 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
31
31
|
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
32
32
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
33
33
|
};
|
|
34
|
-
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
35
|
-
return function (target, key) { decorator(target, key, paramIndex); }
|
|
36
|
-
};
|
|
37
34
|
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
38
35
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
39
36
|
return new (P || (P = Promise))(function (resolve, reject) {
|
|
@@ -48,35 +45,19 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
48
45
|
exports.DescriptorRepository = void 0;
|
|
49
46
|
const const_1 = require("../../../../../schema-definitions/const");
|
|
50
47
|
const models_1 = require("../../../../../schema-definitions/vehicle-descriptors/models");
|
|
51
|
-
const ContainerToken_1 = require("@golemio/core/dist/integration-engine/ioc/ContainerToken");
|
|
52
48
|
const models_2 = require("@golemio/core/dist/integration-engine/models");
|
|
53
49
|
const golemio_errors_1 = require("@golemio/core/dist/shared/golemio-errors");
|
|
54
50
|
const golemio_validator_1 = require("@golemio/core/dist/shared/golemio-validator");
|
|
55
51
|
const sequelize_1 = __importStar(require("@golemio/core/dist/shared/sequelize"));
|
|
56
52
|
const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
|
|
57
53
|
let DescriptorRepository = exports.DescriptorRepository = DescriptorRepository_1 = class DescriptorRepository extends models_2.PostgresModel {
|
|
58
|
-
constructor(
|
|
54
|
+
constructor() {
|
|
59
55
|
super(DescriptorRepository_1.REPOSITORY_NAME, {
|
|
60
56
|
pgTableName: models_1.DescriptorModel.tableName,
|
|
61
57
|
pgSchema: const_1.PG_SCHEMA,
|
|
62
58
|
outputSequelizeAttributes: models_1.DescriptorModel.attributeModel,
|
|
63
59
|
savingType: "insertOrUpdate",
|
|
64
60
|
}, new golemio_validator_1.JSONSchemaValidator(DescriptorRepository_1.REPOSITORY_NAME + "Validator", models_1.DescriptorModel.arrayJsonSchema));
|
|
65
|
-
this.logger = logger;
|
|
66
|
-
this.saveData = (data, isReturning = false) => __awaiter(this, void 0, void 0, function* () {
|
|
67
|
-
try {
|
|
68
|
-
yield this.validate(data);
|
|
69
|
-
return yield this.sequelizeModel.bulkCreate(data, {
|
|
70
|
-
updateOnDuplicate: models_1.DescriptorModel.updateAttributes,
|
|
71
|
-
returning: isReturning,
|
|
72
|
-
});
|
|
73
|
-
}
|
|
74
|
-
catch (err) {
|
|
75
|
-
const exception = new golemio_errors_1.GeneralError(`[${DescriptorRepository_1.REPOSITORY_NAME}] Could not save data: ${err.message}`, this.constructor.name, err);
|
|
76
|
-
this.logger.error(exception);
|
|
77
|
-
throw exception;
|
|
78
|
-
}
|
|
79
|
-
});
|
|
80
61
|
this.deleteNHoursOldData = (hours) => __awaiter(this, void 0, void 0, function* () {
|
|
81
62
|
try {
|
|
82
63
|
return yield this.sequelizeModel.destroy({
|
|
@@ -96,7 +77,6 @@ let DescriptorRepository = exports.DescriptorRepository = DescriptorRepository_1
|
|
|
96
77
|
DescriptorRepository.REPOSITORY_NAME = "VPDescriptorRepository";
|
|
97
78
|
exports.DescriptorRepository = DescriptorRepository = DescriptorRepository_1 = __decorate([
|
|
98
79
|
(0, tsyringe_1.injectable)(),
|
|
99
|
-
|
|
100
|
-
__metadata("design:paramtypes", [Object])
|
|
80
|
+
__metadata("design:paramtypes", [])
|
|
101
81
|
], DescriptorRepository);
|
|
102
82
|
//# sourceMappingURL=DescriptorRepository.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DescriptorRepository.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-descriptors/data-access/DescriptorRepository.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"DescriptorRepository.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-descriptors/data-access/DescriptorRepository.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,mEAAuC;AACvC,yFAAkE;AAClE,yEAAqF;AACrF,6EAAwE;AACxE,mFAAkF;AAClF,iFAAoE;AACpE,iEAAgE;AAGzD,IAAM,oBAAoB,2DAA1B,MAAM,oBAAqB,SAAQ,sBAAa;IAGnD;QACI,KAAK,CACD,sBAAoB,CAAC,eAAe,EACpC;YACI,WAAW,EAAE,wBAAe,CAAC,SAAS;YACtC,QAAQ,EAAE,iBAAS;YACnB,yBAAyB,EAAE,wBAAe,CAAC,cAAc;YACzD,UAAU,EAAE,gBAAgB;SAC/B,EACD,IAAI,uCAAmB,CAAC,sBAAoB,CAAC,eAAe,GAAG,WAAW,EAAE,wBAAe,CAAC,eAAe,CAAC,CAC/G,CAAC;QAGC,wBAAmB,GAAG,CAAO,KAAa,EAAmB,EAAE;YAClE,IAAI;gBACA,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC;oBACrC,KAAK,EAAE;wBACH,UAAU,EAAE;4BACR,CAAC,cAAE,CAAC,EAAE,CAAC,EAAE,mBAAS,CAAC,OAAO,CAAC,qBAAqB,KAAK,SAAS,CAAC;yBAClE;qBACJ;iBACJ,CAAC,CAAC;aACN;YAAC,OAAO,GAAG,EAAE;gBACV,MAAM,IAAI,6BAAY,CAAC,8BAA8B,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;aACtF;QACL,CAAC,CAAA,CAAC;IAdF,CAAC;;AAbc,oCAAe,GAAG,wBAAwB,AAA3B,CAA4B;+BADjD,oBAAoB;IADhC,IAAA,qBAAU,GAAE;;GACA,oBAAoB,CA6BhC"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { ILogger } from "@golemio/core/dist/helpers";
|
|
2
2
|
import { AbstractEmptyTask } from "@golemio/core/dist/integration-engine";
|
|
3
|
+
import { DescriptorRepository } from "../data-access/DescriptorRepository";
|
|
3
4
|
import { DescriptorDataSourceFactory } from "../datasources/DescriptorDataSourceFactory";
|
|
4
5
|
import { DescriptorTransformation } from "../transformations/DescriptorTransformation";
|
|
5
|
-
import { DescriptorRepository } from "../data-access/DescriptorRepository";
|
|
6
6
|
export declare class RefreshDescriptorsTask extends AbstractEmptyTask {
|
|
7
7
|
private dataSourceFactory;
|
|
8
8
|
private descriptorRepository;
|
|
@@ -23,13 +23,14 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
23
23
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
24
24
|
exports.RefreshDescriptorsTask = void 0;
|
|
25
25
|
const VPContainerToken_1 = require("../../../ioc/VPContainerToken");
|
|
26
|
+
const models_1 = require("../../../../../schema-definitions/vehicle-descriptors/models");
|
|
26
27
|
const integration_engine_1 = require("@golemio/core/dist/integration-engine");
|
|
27
28
|
const ContainerToken_1 = require("@golemio/core/dist/integration-engine/ioc/ContainerToken");
|
|
28
29
|
const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
|
|
29
30
|
const constants_1 = require("../constants");
|
|
31
|
+
const DescriptorRepository_1 = require("../data-access/DescriptorRepository");
|
|
30
32
|
const DescriptorDataSourceFactory_1 = require("../datasources/DescriptorDataSourceFactory");
|
|
31
33
|
const DescriptorTransformation_1 = require("../transformations/DescriptorTransformation");
|
|
32
|
-
const DescriptorRepository_1 = require("../data-access/DescriptorRepository");
|
|
33
34
|
let RefreshDescriptorsTask = exports.RefreshDescriptorsTask = class RefreshDescriptorsTask extends integration_engine_1.AbstractEmptyTask {
|
|
34
35
|
constructor(dataSourceFactory, descriptorRepository, descriptorTransformation, logger) {
|
|
35
36
|
super(constants_1.WORKER_NAME);
|
|
@@ -49,7 +50,7 @@ let RefreshDescriptorsTask = exports.RefreshDescriptorsTask = class RefreshDescr
|
|
|
49
50
|
this.logger.warn(`${this.queueName}: no vehicle descriptors out of ${descriptorsResult.length} were transformed`);
|
|
50
51
|
return;
|
|
51
52
|
}
|
|
52
|
-
yield this.descriptorRepository.
|
|
53
|
+
yield this.descriptorRepository.bulkSave(descriptorsTransformed, models_1.DescriptorModel.updateAttributes);
|
|
53
54
|
this.logger.info(`${this.queueName}: ${descriptorsTransformed.length}/${descriptorsResult.length} vehicle descriptors were saved`);
|
|
54
55
|
});
|
|
55
56
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RefreshDescriptorsTask.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-descriptors/tasks/RefreshDescriptorsTask.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,oEAA8E;
|
|
1
|
+
{"version":3,"file":"RefreshDescriptorsTask.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-descriptors/tasks/RefreshDescriptorsTask.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,oEAA8E;AAC9E,yFAAkE;AAElE,8EAA0E;AAC1E,6FAA0F;AAC1F,iEAAwE;AACxE,4CAA2C;AAC3C,8EAA2E;AAC3E,4FAA6G;AAC7G,0FAAuF;AAGhF,IAAM,sBAAsB,oCAA5B,MAAM,sBAAuB,SAAQ,sCAAiB;IAIzD,YAEI,iBAAsD,EAEtD,oBAAkD,EAElD,wBAA0D,EAC3B,MAAuB;QAEtD,KAAK,CAAC,uBAAW,CAAC,CAAC;QAPX,sBAAiB,GAAjB,iBAAiB,CAA6B;QAE9C,yBAAoB,GAApB,oBAAoB,CAAsB;QAE1C,6BAAwB,GAAxB,wBAAwB,CAA0B;QACnB,WAAM,GAAN,MAAM,CAAS;QAV1C,cAAS,GAAG,oBAAoB,CAAC;QACjC,aAAQ,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,aAAa;IAYxD,CAAC;IAEe,OAAO;;YACnB,MAAM,UAAU,GAAG,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC,gDAAkB,CAAC,cAAc,CAAC,CAAC;YAC3F,MAAM,iBAAiB,GAAG,MAAM,UAAU,CAAC,MAAM,EAAE,CAAC;YACpD,MAAM,sBAAsB,GAAG,MAAM,IAAI,CAAC,wBAAwB,CAAC,SAAS,CAAC,iBAAiB,CAAC,CAAC;YAEhG,IAAI,sBAAsB,CAAC,MAAM,KAAK,CAAC,EAAE;gBACrC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,SAAS,mCAAmC,iBAAiB,CAAC,MAAM,mBAAmB,CAAC,CAAC;gBAClH,OAAO;aACV;YAED,MAAM,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,sBAAsB,EAAE,wBAAe,CAAC,gBAAgB,CAAC,CAAC;YACnG,IAAI,CAAC,MAAM,CAAC,IAAI,CACZ,GAAG,IAAI,CAAC,SAAS,KAAK,sBAAsB,CAAC,MAAM,IAAI,iBAAiB,CAAC,MAAM,iCAAiC,CACnH,CAAC;QACN,CAAC;KAAA;CACJ,CAAA;iCA/BY,sBAAsB;IADlC,IAAA,qBAAU,GAAE;IAMJ,WAAA,IAAA,iBAAM,EAAC,mCAAgB,CAAC,2BAA2B,CAAC,CAAA;IAEpD,WAAA,IAAA,iBAAM,EAAC,mCAAgB,CAAC,oBAAoB,CAAC,CAAA;IAE7C,WAAA,IAAA,iBAAM,EAAC,mCAAgB,CAAC,wBAAwB,CAAC,CAAA;IAEjD,WAAA,IAAA,iBAAM,EAAC,+BAAc,CAAC,MAAM,CAAC,CAAA;qCALH,yDAA2B;QAExB,2CAAoB;QAEhB,mDAAwB;GAVrD,sBAAsB,CA+BlC"}
|
|
@@ -1,19 +1,12 @@
|
|
|
1
1
|
import { IMetroRunInputForProcessing } from "../../runs/interfaces/IMetroRunInputForProcessing";
|
|
2
2
|
import { PositionDto } from "../../../../../schema-definitions/vehicle-positions/models/PositionDto";
|
|
3
3
|
import { IPositionDto } from "../../../../../schema-definitions/vehicle-positions/models/interfaces/IPositionDto";
|
|
4
|
-
import { VPTripsNonNullableModel } from "../../../../../schema-definitions/vehicle-positions/models/interfaces/IVPTripsModel";
|
|
5
|
-
import { IVPTripsPositionAttributes } from "../../../../../schema-definitions/vehicle-positions/models/interfaces/IVPTripsPositionAttributes";
|
|
6
4
|
import { IScheduleDto } from "../../../../../schema-definitions/vehicle-positions/redis/interfaces/IGtfsRunTripCacheDto";
|
|
7
5
|
import { IModel, PostgresModel } from "@golemio/core/dist/integration-engine/models";
|
|
8
|
-
import Sequelize
|
|
6
|
+
import Sequelize from "@golemio/core/dist/shared/sequelize";
|
|
9
7
|
import { IUpdateRunsGtfsTripInput } from "../interfaces/IUpdateRunsGtfsTripInput";
|
|
10
|
-
|
|
11
|
-
}
|
|
12
|
-
export interface ITripPositions extends ITripAttributes {
|
|
13
|
-
positions: IVPTripsPositionAttributes[];
|
|
14
|
-
}
|
|
8
|
+
import { ITripPositions } from "./interfaces/PositionRepositoryInterfaces";
|
|
15
9
|
export declare class PositionsRepository extends PostgresModel implements IModel {
|
|
16
|
-
sequelizeModel: ModelStatic<PositionDto>;
|
|
17
10
|
protected tripsModel: Sequelize.ModelCtor<any>;
|
|
18
11
|
constructor();
|
|
19
12
|
/**
|
|
@@ -32,8 +25,7 @@ export declare class PositionsRepository extends PostgresModel implements IModel
|
|
|
32
25
|
* (position is on_track, last stop sequence is 3, delay at last stop is 20 and is served to the output API)
|
|
33
26
|
*/
|
|
34
27
|
getPositionsForUpdateDelay: (tripIds: string[]) => Promise<ITripPositions[]>;
|
|
35
|
-
|
|
36
|
-
upsertCommonRunPosition: ({ run, run_message }: IUpdateRunsGtfsTripInput, gtfsTrip: IScheduleDto, isCurrent?: boolean) => Promise<any>;
|
|
28
|
+
upsertCommonRunPosition: ({ run, run_message }: IUpdateRunsGtfsTripInput, gtfsTrip: IScheduleDto, isCurrent?: boolean) => Promise<IPositionDto>;
|
|
37
29
|
upsertMetroRunPosition: (runInput: IMetroRunInputForProcessing, gtfsTrip: IScheduleDto, isCurrent?: boolean) => Promise<IPositionDto>;
|
|
38
30
|
deleteNHoursOldData: (hours: number) => Promise<number>;
|
|
39
31
|
createNotPublic: (positionDto: Partial<IPositionDto>) => Promise<PositionDto>;
|
|
@@ -41,7 +41,6 @@ const vehicle_positions_1 = require("../../../../../schema-definitions/vehicle-p
|
|
|
41
41
|
const models_1 = require("../../../../../schema-definitions/vehicle-positions/models");
|
|
42
42
|
const PositionDto_1 = require("../../../../../schema-definitions/vehicle-positions/models/PositionDto");
|
|
43
43
|
const connectors_1 = require("@golemio/core/dist/integration-engine/connectors");
|
|
44
|
-
const helpers_1 = require("@golemio/core/dist/integration-engine/helpers");
|
|
45
44
|
const models_2 = require("@golemio/core/dist/integration-engine/models");
|
|
46
45
|
const golemio_errors_1 = require("@golemio/core/dist/shared/golemio-errors");
|
|
47
46
|
const golemio_validator_1 = require("@golemio/core/dist/shared/golemio-validator");
|
|
@@ -54,7 +53,7 @@ class PositionsRepository extends models_2.PostgresModel {
|
|
|
54
53
|
outputSequelizeAttributes: PositionDto_1.PositionDto.attributeModel,
|
|
55
54
|
pgTableName: vehicle_positions_1.VehiclePositions.positions.pgTableName,
|
|
56
55
|
pgSchema: const_1.PG_SCHEMA,
|
|
57
|
-
savingType: "
|
|
56
|
+
savingType: "insertOrUpdate",
|
|
58
57
|
sequelizeAdditionalSettings: {
|
|
59
58
|
indexes: [
|
|
60
59
|
{
|
|
@@ -191,36 +190,6 @@ class PositionsRepository extends models_2.PostgresModel {
|
|
|
191
190
|
throw new golemio_errors_1.GeneralError(`Error while transforming data from db for batch. Trip count ${results.length}.`, this.name, err);
|
|
192
191
|
}
|
|
193
192
|
});
|
|
194
|
-
this.bulkUpdate = (data) => __awaiter(this, void 0, void 0, function* () {
|
|
195
|
-
const connection = connectors_1.PostgresConnector.getConnection();
|
|
196
|
-
const promises = data.map((d) => __awaiter(this, void 0, void 0, function* () {
|
|
197
|
-
const transaction = yield connection.transaction();
|
|
198
|
-
const [res] = yield connection.query(
|
|
199
|
-
// eslint-disable-next-line max-len
|
|
200
|
-
`SELECT EXISTS(SELECT 1 FROM "${const_1.PG_SCHEMA}".${this.tableName} WHERE id='${d.id}') AS "exists";`, {
|
|
201
|
-
transaction,
|
|
202
|
-
type: sequelize_1.QueryTypes.SELECT,
|
|
203
|
-
raw: true,
|
|
204
|
-
});
|
|
205
|
-
try {
|
|
206
|
-
const [record] = yield this.sequelizeModel.upsert(d, { transaction });
|
|
207
|
-
yield transaction.commit();
|
|
208
|
-
return { id: record.id, upd: !!(res === null || res === void 0 ? void 0 : res.exists) };
|
|
209
|
-
}
|
|
210
|
-
catch (err) {
|
|
211
|
-
helpers_1.log.error(err);
|
|
212
|
-
yield transaction.rollback();
|
|
213
|
-
throw new golemio_errors_1.GeneralError("Error while saving to database.", this.name, err);
|
|
214
|
-
}
|
|
215
|
-
}));
|
|
216
|
-
const records = yield Promise.all(promises);
|
|
217
|
-
return records.reduce((acc, record) => {
|
|
218
|
-
if (record.upd) {
|
|
219
|
-
acc.updated.push(record.id);
|
|
220
|
-
}
|
|
221
|
-
return acc;
|
|
222
|
-
}, { updated: [] });
|
|
223
|
-
});
|
|
224
193
|
this.upsertCommonRunPosition = ({ run, run_message }, gtfsTrip, isCurrent = true) => __awaiter(this, void 0, void 0, function* () {
|
|
225
194
|
try {
|
|
226
195
|
const [record] = yield this.sequelizeModel.upsert(PositionsMapper_1.default.mapCommonRunToDto(run_message, isCurrent, gtfsTrip, run), {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PositionsRepository.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/PositionsRepository.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,mEAAuC;AACvC,2FAA0D;AAC1D,uFAA6D;AAC7D,wGAAwE;
|
|
1
|
+
{"version":3,"file":"PositionsRepository.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/PositionsRepository.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,88 +5,14 @@ import { IVPTripsPositionAttributes } from "../../../../../schema-definitions/ve
|
|
|
5
5
|
import { IScheduleDto } from "../../../../../schema-definitions/vehicle-positions/redis/interfaces/IGtfsRunTripCacheDto";
|
|
6
6
|
import { IModel, PostgresModel } from "@golemio/core/dist/integration-engine/models";
|
|
7
7
|
import Sequelize from "@golemio/core/dist/shared/sequelize";
|
|
8
|
-
import { StatePositionEnum } from "../../../../../const";
|
|
9
8
|
import { IUpdateRunsGtfsTripInput } from "../interfaces/IUpdateRunsGtfsTripInput";
|
|
10
9
|
import { IPropagateDelay } from "../interfaces/VPInterfaces";
|
|
11
|
-
|
|
12
|
-
id: string;
|
|
13
|
-
gtfs_trip_id?: string;
|
|
14
|
-
gtfs_block_id?: string;
|
|
15
|
-
gtfs_route_type?: number;
|
|
16
|
-
start_timestamp: string;
|
|
17
|
-
end_timestamp?: string;
|
|
18
|
-
run_number?: number | null;
|
|
19
|
-
internal_run_number?: number | null;
|
|
20
|
-
origin_route_name?: string | null;
|
|
21
|
-
internal_route_name?: string | null;
|
|
22
|
-
vehicle_registration_number?: number | null;
|
|
23
|
-
}
|
|
24
|
-
export interface IUpdateDelayRunTripsData extends IUpdateDelayTripsIdsData {
|
|
25
|
-
gtfs_trip_id: string;
|
|
26
|
-
internal_route_name: string | null;
|
|
27
|
-
internal_run_number: number | null;
|
|
28
|
-
vehicle_registration_number: number;
|
|
29
|
-
}
|
|
30
|
-
export interface IUpdateGTFSTripIdData extends Omit<Partial<IVPTripsModel>, "start_timestamp"> {
|
|
31
|
-
id: string;
|
|
32
|
-
start_timestamp: string;
|
|
33
|
-
run_number: number | null;
|
|
34
|
-
origin_route_name: string | null;
|
|
35
|
-
vehicle_registration_number: number | null;
|
|
36
|
-
}
|
|
37
|
-
export interface IFoundGTFSTripData {
|
|
38
|
-
id?: string;
|
|
39
|
-
gtfs_trip_id: string;
|
|
40
|
-
gtfs_trip_headsign: string;
|
|
41
|
-
gtfs_route_id: string;
|
|
42
|
-
gtfs_route_short_name: string;
|
|
43
|
-
min_stop_time: string;
|
|
44
|
-
max_stop_time: string;
|
|
45
|
-
gtfs_block_id?: string;
|
|
46
|
-
gtfs_trip_short_name?: string;
|
|
47
|
-
gtfs_route_type?: number;
|
|
48
|
-
cis_trip_number?: number;
|
|
49
|
-
internal_run_number?: number;
|
|
50
|
-
internal_route_name?: string;
|
|
51
|
-
}
|
|
52
|
-
export interface IBulkUpsertOutput {
|
|
53
|
-
inserted: IUpdateGTFSTripIdData[];
|
|
54
|
-
updated: Array<{
|
|
55
|
-
id: string;
|
|
56
|
-
origin_route_name: string | null;
|
|
57
|
-
run_number: string | null;
|
|
58
|
-
start_timestamp: Date;
|
|
59
|
-
}>;
|
|
60
|
-
}
|
|
61
|
-
export interface IPropagatedDelayTripWithPosition {
|
|
62
|
-
position: {
|
|
63
|
-
id: string;
|
|
64
|
-
delay: number;
|
|
65
|
-
state_position: StatePositionEnum;
|
|
66
|
-
origin_timestamp: Date;
|
|
67
|
-
};
|
|
68
|
-
trip: {
|
|
69
|
-
id: string;
|
|
70
|
-
};
|
|
71
|
-
}
|
|
10
|
+
import { IPropagatedDelayTripWithPosition, IUpdateDelayRunTripsData, IUpdateDelayTripsIdsData, IUpdateGTFSTripIdData } from "./interfaces/TripRepositoryInterfaces";
|
|
72
11
|
export declare class TripsRepository extends PostgresModel implements IModel {
|
|
73
12
|
private positionsRepository;
|
|
74
13
|
private stopTimeDelayPredictionRepository;
|
|
75
14
|
private descriptorRepository;
|
|
76
15
|
constructor();
|
|
77
|
-
/**
|
|
78
|
-
* Overrides PostgresModel::save
|
|
79
|
-
* @todo use a single function for upserting (save, bulkUpsert, bulkUpdate)
|
|
80
|
-
*/
|
|
81
|
-
save: (data: Partial<IVPTripsModel> | Array<Partial<IVPTripsModel>>, useTmpTable?: boolean) => Promise<any>;
|
|
82
|
-
/**
|
|
83
|
-
* @todo use a single function for upserting (save, bulkUpsert, bulkUpdate)
|
|
84
|
-
*/
|
|
85
|
-
bulkUpsert: (data: any[]) => Promise<IBulkUpsertOutput>;
|
|
86
|
-
/**
|
|
87
|
-
* @todo use a single function for upserting (save, bulkUpsert, bulkUpdate)
|
|
88
|
-
*/
|
|
89
|
-
bulkUpdate: (data: any[]) => Promise<any>;
|
|
90
16
|
findAllAssocTripIds: (tripIds: string[]) => Promise<IUpdateDelayTripsIdsData[]>;
|
|
91
17
|
findGTFSTripId: (trip: IUpdateGTFSTripIdData) => Promise<IUpdateDelayTripsIdsData | IUpdateDelayTripsIdsData[] | undefined>;
|
|
92
18
|
deleteNHoursOldData: (hours: number) => Promise<number>;
|
|
@@ -59,166 +59,6 @@ class TripsRepository extends models_2.PostgresModel {
|
|
|
59
59
|
outputSequelizeAttributes: models_1.VPTripsModel.attributeModel,
|
|
60
60
|
savingType: "insertOrUpdate",
|
|
61
61
|
}, new golemio_validator_1.JSONSchemaValidator("VPTripsRepositoryValidator", models_1.VPTripsModel.jsonSchema));
|
|
62
|
-
/**
|
|
63
|
-
* Overrides PostgresModel::save
|
|
64
|
-
* @todo use a single function for upserting (save, bulkUpsert, bulkUpdate)
|
|
65
|
-
*/
|
|
66
|
-
this.save = (data, useTmpTable = false) => __awaiter(this, void 0, void 0, function* () {
|
|
67
|
-
// data validation
|
|
68
|
-
if (this.validator) {
|
|
69
|
-
try {
|
|
70
|
-
yield this.validator.Validate(data);
|
|
71
|
-
}
|
|
72
|
-
catch (err) {
|
|
73
|
-
throw new golemio_errors_1.GeneralError("Error while validating data.", this.name, err);
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
else {
|
|
77
|
-
helpers_1.log.warn(this.name + ": Model validator is not set.");
|
|
78
|
-
}
|
|
79
|
-
if (useTmpTable) {
|
|
80
|
-
throw new golemio_errors_1.GeneralError("Saving to tmp table is not implemented for this model.", this.name);
|
|
81
|
-
}
|
|
82
|
-
const connection = connectors_1.PostgresConnector.getConnection();
|
|
83
|
-
const trips = Array.isArray(data) ? data : [data];
|
|
84
|
-
const inserted = [];
|
|
85
|
-
const updated = [];
|
|
86
|
-
const promises = trips.map((trip) => __awaiter(this, void 0, void 0, function* () {
|
|
87
|
-
const transaction = yield connection.transaction();
|
|
88
|
-
try {
|
|
89
|
-
// TODO there is a chance res is always null
|
|
90
|
-
// See https://sequelize.org/master/class/lib/model.js~Model.html#static-method-upsert
|
|
91
|
-
const [, res] = yield this.sequelizeModel.upsert(trip, { transaction });
|
|
92
|
-
yield transaction.commit();
|
|
93
|
-
if (res) {
|
|
94
|
-
inserted.push({
|
|
95
|
-
cis_line_short_name: trip.cis_line_short_name,
|
|
96
|
-
id: trip.id,
|
|
97
|
-
start_asw_stop_id: trip.start_asw_stop_id,
|
|
98
|
-
start_cis_stop_id: trip.start_cis_stop_id,
|
|
99
|
-
start_cis_stop_platform_code: trip.start_cis_stop_platform_code,
|
|
100
|
-
start_timestamp: trip.start_timestamp,
|
|
101
|
-
});
|
|
102
|
-
}
|
|
103
|
-
else {
|
|
104
|
-
updated.push(trip.id);
|
|
105
|
-
}
|
|
106
|
-
}
|
|
107
|
-
catch (err) {
|
|
108
|
-
helpers_1.log.error(err);
|
|
109
|
-
yield transaction.rollback();
|
|
110
|
-
throw new golemio_errors_1.GeneralError("Error while saving to database.", this.name, err);
|
|
111
|
-
}
|
|
112
|
-
}));
|
|
113
|
-
yield Promise.all(promises);
|
|
114
|
-
return { inserted, updated };
|
|
115
|
-
});
|
|
116
|
-
/**
|
|
117
|
-
* @todo use a single function for upserting (save, bulkUpsert, bulkUpdate)
|
|
118
|
-
*/
|
|
119
|
-
this.bulkUpsert = (data) => __awaiter(this, void 0, void 0, function* () {
|
|
120
|
-
// data validation
|
|
121
|
-
if (this.validator) {
|
|
122
|
-
try {
|
|
123
|
-
yield this.validator.Validate(data);
|
|
124
|
-
}
|
|
125
|
-
catch (err) {
|
|
126
|
-
throw new golemio_errors_1.GeneralError("Error while validating data.", this.name, err);
|
|
127
|
-
}
|
|
128
|
-
}
|
|
129
|
-
else {
|
|
130
|
-
helpers_1.log.warn(this.name + ": Model validator is not set.");
|
|
131
|
-
}
|
|
132
|
-
const connection = connectors_1.PostgresConnector.getConnection();
|
|
133
|
-
const promises = data.map((d) => __awaiter(this, void 0, void 0, function* () {
|
|
134
|
-
const transaction = yield connection.transaction();
|
|
135
|
-
const dataItem = Object.assign({}, d);
|
|
136
|
-
const [res] = yield connection.query(RawQueryProvider_1.RawQueryProvider.getCheckExistingTripQuery(d.id), {
|
|
137
|
-
transaction,
|
|
138
|
-
type: sequelize_1.QueryTypes.SELECT,
|
|
139
|
-
raw: true,
|
|
140
|
-
});
|
|
141
|
-
const isToBeUpdated = !!(res === null || res === void 0 ? void 0 : res.exists);
|
|
142
|
-
// Delete incoming start_timestamp for updated trips to avoid overwriting existing computed timestamp
|
|
143
|
-
// TODO this is a workaround, dedicated column (gtfs_start_timestamp) will be added
|
|
144
|
-
if (isToBeUpdated) {
|
|
145
|
-
delete dataItem.start_timestamp;
|
|
146
|
-
}
|
|
147
|
-
try {
|
|
148
|
-
const [record] = yield this.sequelizeModel.upsert(dataItem, { transaction });
|
|
149
|
-
yield transaction.commit();
|
|
150
|
-
return { data: record, upd: isToBeUpdated };
|
|
151
|
-
}
|
|
152
|
-
catch (err) {
|
|
153
|
-
helpers_1.log.error(err);
|
|
154
|
-
yield transaction.rollback();
|
|
155
|
-
throw new golemio_errors_1.GeneralError("bulkUpsert: Error while saving to database.", this.name, err);
|
|
156
|
-
}
|
|
157
|
-
}));
|
|
158
|
-
const records = yield Promise.all(promises);
|
|
159
|
-
return records.reduce((acc, record) => {
|
|
160
|
-
if (record.upd) {
|
|
161
|
-
acc.updated.push({
|
|
162
|
-
id: record.data.id,
|
|
163
|
-
origin_route_name: record.data.origin_route_name,
|
|
164
|
-
run_number: record.data.run_number,
|
|
165
|
-
start_timestamp: record.data.start_timestamp,
|
|
166
|
-
});
|
|
167
|
-
}
|
|
168
|
-
else {
|
|
169
|
-
acc.inserted.push({
|
|
170
|
-
cis_line_short_name: record.data.cis_line_short_name,
|
|
171
|
-
id: record.data.id,
|
|
172
|
-
start_asw_stop_id: record.data.start_asw_stop_id,
|
|
173
|
-
start_cis_stop_id: record.data.start_cis_stop_id,
|
|
174
|
-
start_cis_stop_platform_code: record.data.start_cis_stop_platform_code,
|
|
175
|
-
start_timestamp: record.data.start_timestamp,
|
|
176
|
-
agency_name_real: record.data.agency_name_real,
|
|
177
|
-
agency_name_scheduled: record.data.agency_name_scheduled,
|
|
178
|
-
cis_line_id: record.data.cis_line_id,
|
|
179
|
-
cis_trip_number: record.data.cis_trip_number,
|
|
180
|
-
origin_route_name: record.data.origin_route_name,
|
|
181
|
-
run_number: record.data.run_number,
|
|
182
|
-
start_time: record.data.start_time,
|
|
183
|
-
vehicle_registration_number: record.data.vehicle_registration_number,
|
|
184
|
-
vehicle_type_id: record.data.vehicle_type_id,
|
|
185
|
-
wheelchair_accessible: record.data.wheelchair_accessible,
|
|
186
|
-
});
|
|
187
|
-
}
|
|
188
|
-
return acc;
|
|
189
|
-
}, { inserted: [], updated: [] });
|
|
190
|
-
});
|
|
191
|
-
/**
|
|
192
|
-
* @todo use a single function for upserting (save, bulkUpsert, bulkUpdate)
|
|
193
|
-
*/
|
|
194
|
-
this.bulkUpdate = (data) => __awaiter(this, void 0, void 0, function* () {
|
|
195
|
-
const connection = connectors_1.PostgresConnector.getConnection();
|
|
196
|
-
const promises = data.map((d) => __awaiter(this, void 0, void 0, function* () {
|
|
197
|
-
const transaction = yield connection.transaction();
|
|
198
|
-
const [res] = yield connection.query(RawQueryProvider_1.RawQueryProvider.getCheckExistingTripQuery(d.id), {
|
|
199
|
-
transaction,
|
|
200
|
-
type: sequelize_1.QueryTypes.SELECT,
|
|
201
|
-
raw: true,
|
|
202
|
-
});
|
|
203
|
-
try {
|
|
204
|
-
const [record] = yield this.sequelizeModel.upsert(d, { transaction });
|
|
205
|
-
yield transaction.commit();
|
|
206
|
-
return { id: record.id, upd: !!(res === null || res === void 0 ? void 0 : res.exists) };
|
|
207
|
-
}
|
|
208
|
-
catch (err) {
|
|
209
|
-
helpers_1.log.error(err);
|
|
210
|
-
yield transaction.rollback();
|
|
211
|
-
throw new golemio_errors_1.GeneralError("bulkUpdate: Error while saving to database.", this.name, err);
|
|
212
|
-
}
|
|
213
|
-
}));
|
|
214
|
-
const records = yield Promise.all(promises);
|
|
215
|
-
return records.reduce((acc, record) => {
|
|
216
|
-
if (record.upd) {
|
|
217
|
-
acc.updated.push(record.id);
|
|
218
|
-
}
|
|
219
|
-
return acc;
|
|
220
|
-
}, { updated: [] });
|
|
221
|
-
});
|
|
222
62
|
this.findAllAssocTripIds = (tripIds) => __awaiter(this, void 0, void 0, function* () {
|
|
223
63
|
const connection = connectors_1.PostgresConnector.getConnection();
|
|
224
64
|
return Array.isArray(tripIds) && tripIds.length > 0
|
|
@@ -403,7 +243,7 @@ class TripsRepository extends models_2.PostgresModel {
|
|
|
403
243
|
include: [
|
|
404
244
|
{
|
|
405
245
|
as: "last_position",
|
|
406
|
-
model: this.positionsRepository
|
|
246
|
+
model: this.positionsRepository["sequelizeModel"],
|
|
407
247
|
where: {
|
|
408
248
|
state_position: {
|
|
409
249
|
[sequelize_1.default.Op.in]: [const_2.StatePositionEnum.BEFORE_TRACK, const_2.StatePositionEnum.INVISIBLE],
|
|
@@ -505,7 +345,7 @@ class TripsRepository extends models_2.PostgresModel {
|
|
|
505
345
|
include: [
|
|
506
346
|
{
|
|
507
347
|
as: "last_position",
|
|
508
|
-
model: this.positionsRepository
|
|
348
|
+
model: this.positionsRepository["sequelizeModel"],
|
|
509
349
|
attributes: ["is_canceled", "origin_timestamp", "last_stop_sequence", "bearing", "lat", "lng", "speed"],
|
|
510
350
|
where: {
|
|
511
351
|
state_position: {
|
|
@@ -527,7 +367,7 @@ class TripsRepository extends models_2.PostgresModel {
|
|
|
527
367
|
},
|
|
528
368
|
{
|
|
529
369
|
as: "vehicle_descriptor",
|
|
530
|
-
model: this.descriptorRepository
|
|
370
|
+
model: this.descriptorRepository["sequelizeModel"],
|
|
531
371
|
attributes: ["is_air_conditioned"],
|
|
532
372
|
},
|
|
533
373
|
],
|
|
@@ -547,9 +387,9 @@ class TripsRepository extends models_2.PostgresModel {
|
|
|
547
387
|
}
|
|
548
388
|
});
|
|
549
389
|
this.positionsRepository = new PositionsRepository_1.PositionsRepository();
|
|
550
|
-
this.descriptorRepository = new DescriptorRepository_1.DescriptorRepository(
|
|
390
|
+
this.descriptorRepository = new DescriptorRepository_1.DescriptorRepository();
|
|
551
391
|
this.stopTimeDelayPredictionRepository = new StopTimeDelayPredictionRepository_1.StopTimeDelayPredictionRepository();
|
|
552
|
-
this.sequelizeModel.belongsTo(this.positionsRepository
|
|
392
|
+
this.sequelizeModel.belongsTo(this.positionsRepository["sequelizeModel"], {
|
|
553
393
|
as: "last_position",
|
|
554
394
|
foreignKey: "last_position_id",
|
|
555
395
|
});
|
|
@@ -558,7 +398,7 @@ class TripsRepository extends models_2.PostgresModel {
|
|
|
558
398
|
foreignKey: "trip_id",
|
|
559
399
|
sourceKey: "gtfs_trip_id",
|
|
560
400
|
});
|
|
561
|
-
this.sequelizeModel.belongsTo(this.descriptorRepository
|
|
401
|
+
this.sequelizeModel.belongsTo(this.descriptorRepository["sequelizeModel"], {
|
|
562
402
|
as: "vehicle_descriptor",
|
|
563
403
|
foreignKey: "vehicle_registration_number",
|
|
564
404
|
targetKey: "registration_number",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TripsRepository.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/TripsRepository.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"TripsRepository.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/TripsRepository.ts"],"names":[],"mappings":"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"}
|