@golemio/parkings 1.3.1 → 1.4.0
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/db/example/00_clear_test_data.sql +1 -0
- package/db/example/03_tsk_measurements_for_legacy_endpoints.sql +35 -0
- package/db/example/99_refresh_views.sql +1 -0
- package/db/migrations/postgresql/20230127010432-tsk-view-for-legacy-parking-endpoints.js +53 -0
- package/db/migrations/postgresql/sqls/20230127010432-tsk-view-for-legacy-parking-endpoints-down.sql +2 -0
- package/db/migrations/postgresql/sqls/20230127010432-tsk-view-for-legacy-parking-endpoints-up.sql +40 -0
- package/dist/integration-engine/ParkingsWorker.d.ts +5 -9
- package/dist/integration-engine/ParkingsWorker.js +44 -176
- package/dist/integration-engine/ParkingsWorker.js.map +1 -1
- package/dist/integration-engine/data-access/TskAverageOccupancyRepository.d.ts +8 -0
- package/dist/integration-engine/data-access/TskAverageOccupancyRepository.js +41 -0
- package/dist/integration-engine/data-access/TskAverageOccupancyRepository.js.map +1 -0
- package/dist/integration-engine/index.d.ts +0 -1
- package/dist/integration-engine/index.js +0 -1
- package/dist/integration-engine/index.js.map +1 -1
- package/dist/integration-engine/models/ParkingTariffsModel.js +5 -5
- package/dist/integration-engine/models/ParkingTariffsModel.js.map +1 -1
- package/dist/integration-engine/models/ParkingsModel.js +4 -4
- package/dist/integration-engine/models/ParkingsModel.js.map +1 -1
- package/dist/integration-engine/queueDefinitions.js +10 -39
- package/dist/integration-engine/queueDefinitions.js.map +1 -1
- package/dist/output-gateway/data-access/TskAverageOccupancyRepository.d.ts +6 -0
- package/dist/output-gateway/data-access/TskAverageOccupancyRepository.js +21 -0
- package/dist/output-gateway/data-access/TskAverageOccupancyRepository.js.map +1 -0
- package/dist/output-gateway/data-access/TskDistrictsRepository.d.ts +6 -0
- package/dist/output-gateway/data-access/TskDistrictsRepository.js +21 -0
- package/dist/output-gateway/data-access/TskDistrictsRepository.js.map +1 -0
- package/dist/output-gateway/data-access/TskParkingLotsRepository.d.ts +16 -0
- package/dist/output-gateway/data-access/TskParkingLotsRepository.js +152 -0
- package/dist/output-gateway/data-access/TskParkingLotsRepository.js.map +1 -0
- package/dist/output-gateway/data-access/helpers/TskFeatureMapper.d.ts +11 -0
- package/dist/output-gateway/data-access/helpers/TskFeatureMapper.js +42 -0
- package/dist/output-gateway/data-access/helpers/TskFeatureMapper.js.map +1 -0
- package/dist/output-gateway/data-access/interfaces/ITskParkingLotFeature.d.ts +33 -0
- package/dist/output-gateway/data-access/interfaces/ITskParkingLotFeature.js +3 -0
- package/dist/output-gateway/data-access/interfaces/ITskParkingLotFeature.js.map +1 -0
- package/dist/output-gateway/index.d.ts +1 -0
- package/dist/output-gateway/index.js +1 -0
- package/dist/output-gateway/index.js.map +1 -1
- package/dist/output-gateway/models/ParkingsLocationModel.js +2 -2
- package/dist/output-gateway/models/ParkingsLocationModel.js.map +1 -1
- package/dist/output-gateway/models/ParkingsMeasurementsModels.d.ts +6 -1
- package/dist/output-gateway/models/ParkingsMeasurementsModels.js +58 -3
- package/dist/output-gateway/models/ParkingsMeasurementsModels.js.map +1 -1
- package/dist/output-gateway/models/ParkingsModel.js +9 -9
- package/dist/output-gateway/models/ParkingsModel.js.map +1 -1
- package/dist/output-gateway/models/ParkingsTariffsModel.js +2 -2
- package/dist/output-gateway/models/ParkingsTariffsModel.js.map +1 -1
- package/dist/output-gateway/models/helpers/DetailAttributesHelper.js +7 -7
- package/dist/output-gateway/models/helpers/DetailAttributesHelper.js.map +1 -1
- package/dist/output-gateway/models/index.js +2 -2
- package/dist/output-gateway/models/index.js.map +1 -1
- package/dist/output-gateway/models/interfaces/TskMeasurementsInterfaces.d.ts +15 -0
- package/dist/output-gateway/models/interfaces/TskMeasurementsInterfaces.js +3 -0
- package/dist/output-gateway/models/interfaces/TskMeasurementsInterfaces.js.map +1 -0
- package/dist/output-gateway/routers/TskParkingLotsLegacyRouter.d.ts +12 -0
- package/dist/output-gateway/routers/TskParkingLotsLegacyRouter.js +49 -0
- package/dist/output-gateway/routers/TskParkingLotsLegacyRouter.js.map +1 -0
- package/dist/schema-definitions/Parkomats.d.ts +23 -23
- package/dist/schema-definitions/index.d.ts +129 -140
- package/dist/schema-definitions/index.js +29 -79
- package/dist/schema-definitions/index.js.map +1 -1
- package/dist/schema-definitions/models/TskAverageOccupancyModel.d.ts +8 -0
- package/dist/schema-definitions/models/TskAverageOccupancyModel.js +16 -0
- package/dist/schema-definitions/models/TskAverageOccupancyModel.js.map +1 -0
- package/dist/schema-definitions/models/TskDistrictsModel.d.ts +8 -0
- package/dist/schema-definitions/models/TskDistrictsModel.js +16 -0
- package/dist/schema-definitions/models/TskDistrictsModel.js.map +1 -0
- package/dist/schema-definitions/models/index.d.ts +2 -0
- package/dist/schema-definitions/models/index.js +19 -0
- package/dist/schema-definitions/models/index.js.map +1 -0
- package/dist/schema-definitions/models/interfaces/ITskAverageOccupancyModel.d.ts +7 -0
- package/dist/schema-definitions/models/interfaces/ITskAverageOccupancyModel.js +3 -0
- package/dist/schema-definitions/models/interfaces/ITskAverageOccupancyModel.js.map +1 -0
- package/dist/schema-definitions/models/interfaces/ITskDistrictsModel.d.ts +4 -0
- package/dist/schema-definitions/models/interfaces/ITskDistrictsModel.js +3 -0
- package/dist/schema-definitions/models/interfaces/ITskDistrictsModel.js.map +1 -0
- package/docs/implementation-documentation.md +28 -15
- package/package.json +6 -9
- package/db/example/mongo_data/dataplatform/parkings.bson +0 -0
- package/db/example/mongo_data/dataplatform/parkings.metadata.json +0 -1
- package/db/example/mongo_data/dataplatform/parkings_history.bson +0 -0
- package/db/example/mongo_data/dataplatform/parkings_history.metadata.json +0 -1
- package/dist/integration-engine/ParkingsTransformation.d.ts +0 -9
- package/dist/integration-engine/ParkingsTransformation.js +0 -105
- package/dist/integration-engine/ParkingsTransformation.js.map +0 -1
|
@@ -16,4 +16,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
17
|
__exportStar(require("./models"), exports);
|
|
18
18
|
__exportStar(require("./ParkingsRouter"), exports);
|
|
19
|
+
__exportStar(require("./routers/TskParkingLotsLegacyRouter"), exports);
|
|
19
20
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/output-gateway/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAyB;AACzB,mDAAiC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/output-gateway/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAyB;AACzB,mDAAiC;AACjC,uEAAqD"}
|
|
@@ -5,8 +5,8 @@ const output_gateway_1 = require("@golemio/core/dist/output-gateway");
|
|
|
5
5
|
const _sch_1 = require("../../schema-definitions");
|
|
6
6
|
class ParkingsLocationModel extends output_gateway_1.SequelizeModel {
|
|
7
7
|
constructor() {
|
|
8
|
-
super(_sch_1.Parkings.
|
|
9
|
-
schema: _sch_1.Parkings.
|
|
8
|
+
super(_sch_1.Parkings.location.name, _sch_1.Parkings.location.pgTableName, _sch_1.Parkings.location.outputSequelizeAttributes, {
|
|
9
|
+
schema: _sch_1.Parkings.pgSchema,
|
|
10
10
|
});
|
|
11
11
|
this.Associate = (m) => {
|
|
12
12
|
this.sequelizeModel.belongsTo(m.ParkingsModel.sequelizeModel, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ParkingsLocationModel.js","sourceRoot":"","sources":["../../../src/output-gateway/models/ParkingsLocationModel.ts"],"names":[],"mappings":";;;AAAA,sEAAmE;AACnE,mDAAgC;AAGhC,MAAa,qBAAsB,SAAQ,+BAAc;IAGrD;QACI,KAAK,CAAC,eAAQ,CAAC,
|
|
1
|
+
{"version":3,"file":"ParkingsLocationModel.js","sourceRoot":"","sources":["../../../src/output-gateway/models/ParkingsLocationModel.ts"],"names":[],"mappings":";;;AAAA,sEAAmE;AACnE,mDAAgC;AAGhC,MAAa,qBAAsB,SAAQ,+BAAc;IAGrD;QACI,KAAK,CAAC,eAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,eAAQ,CAAC,QAAQ,CAAC,WAAW,EAAE,eAAQ,CAAC,QAAQ,CAAC,yBAAyB,EAAE;YACtG,MAAM,EAAE,eAAQ,CAAC,QAAQ;SAC5B,CAAC,CAAC;QAGA,cAAS,GAAG,CAAC,CAAkB,EAAE,EAAE;YACtC,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,CAAC,aAAa,CAAC,cAAc,EAAE;gBAC1D,EAAE,EAAE,qBAAqB,CAAC,sBAAsB;gBAChD,UAAU,EAAE,WAAW;aAC1B,CAAC,CAAC;QACP,CAAC,CAAC;IAPF,CAAC;IASD,MAAM;QACF,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;IACvC,CAAC;IAED,MAAM;QACF,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;IACvC,CAAC;;AAtBL,sDAuBC;AAtBiB,4CAAsB,GAAG,SAAS,CAAC"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import { SequelizeModel } from "@golemio/core/dist/output-gateway";
|
|
2
1
|
import { IModelDefinition } from "../../schema-definitions";
|
|
2
|
+
import { SequelizeModel } from "@golemio/core/dist/output-gateway";
|
|
3
|
+
import { ITskMeasurementsFilterParams, ITskMeasurementsRecord } from "./interfaces/TskMeasurementsInterfaces";
|
|
3
4
|
export interface ICountMeasurementsFilterParams {
|
|
4
5
|
source?: string;
|
|
5
6
|
sourceId?: string;
|
|
@@ -25,6 +26,10 @@ export interface IParkingsMeasurement {
|
|
|
25
26
|
export declare class ParkingsMeasurementsModels extends SequelizeModel {
|
|
26
27
|
constructor(modelDefinition: IModelDefinition);
|
|
27
28
|
GetAll: (options: IGetMeasurementsFilterParams) => Promise<IParkingsMeasurement[]>;
|
|
29
|
+
/**
|
|
30
|
+
* Get TSK measurements for the legacy history endpoint (/parkings/history)
|
|
31
|
+
*/
|
|
32
|
+
GetAllTskMeasurements: (options: ITskMeasurementsFilterParams) => Promise<ITskMeasurementsRecord[]>;
|
|
28
33
|
CountAll: (options: ICountMeasurementsFilterParams) => Promise<number>;
|
|
29
34
|
GetOne: () => Promise<void>;
|
|
30
35
|
}
|
|
@@ -8,19 +8,30 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
8
8
|
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
9
|
});
|
|
10
10
|
};
|
|
11
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
12
|
+
var t = {};
|
|
13
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
14
|
+
t[p] = s[p];
|
|
15
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
16
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
17
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
18
|
+
t[p[i]] = s[p[i]];
|
|
19
|
+
}
|
|
20
|
+
return t;
|
|
21
|
+
};
|
|
11
22
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
23
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
24
|
};
|
|
14
25
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
26
|
exports.ParkingsMeasurementsModels = void 0;
|
|
16
|
-
const output_gateway_1 = require("@golemio/core/dist/output-gateway");
|
|
17
27
|
const _sch_1 = require("../../schema-definitions");
|
|
18
|
-
const
|
|
28
|
+
const output_gateway_1 = require("@golemio/core/dist/output-gateway");
|
|
19
29
|
const sequelize_1 = __importDefault(require("@golemio/core/dist/shared/sequelize"));
|
|
30
|
+
const errors_1 = require("@golemio/errors");
|
|
20
31
|
class ParkingsMeasurementsModels extends output_gateway_1.SequelizeModel {
|
|
21
32
|
constructor(modelDefinition) {
|
|
22
33
|
super(modelDefinition.name, modelDefinition.pgTableName, modelDefinition.outputSequelizeAttributes, {
|
|
23
|
-
schema: _sch_1.Parkings.
|
|
34
|
+
schema: _sch_1.Parkings.pgSchema,
|
|
24
35
|
});
|
|
25
36
|
this.GetAll = (options) => __awaiter(this, void 0, void 0, function* () {
|
|
26
37
|
const { measureFrom, measureTo, limit, offset, source, sourceId, minutesBefore, updatedSince } = options;
|
|
@@ -68,6 +79,50 @@ class ParkingsMeasurementsModels extends output_gateway_1.SequelizeModel {
|
|
|
68
79
|
throw new errors_1.CustomError(`Database error: ${err.message}`, true, "ParkingMeasurementsModel", 500, err);
|
|
69
80
|
}
|
|
70
81
|
});
|
|
82
|
+
/**
|
|
83
|
+
* Get TSK measurements for the legacy history endpoint (/parkings/history)
|
|
84
|
+
*/
|
|
85
|
+
this.GetAllTskMeasurements = (options) => __awaiter(this, void 0, void 0, function* () {
|
|
86
|
+
const { limit, offset, from, to, sensorId } = options;
|
|
87
|
+
let where = {
|
|
88
|
+
source: { [sequelize_1.default.Op.in]: ["tsk", "TSK"] },
|
|
89
|
+
};
|
|
90
|
+
if (sensorId) {
|
|
91
|
+
where.source_id = sensorId;
|
|
92
|
+
}
|
|
93
|
+
if (from) {
|
|
94
|
+
where.date_modified = to ? { [sequelize_1.default.Op.between]: [from, to] } : { [sequelize_1.default.Op.gte]: from };
|
|
95
|
+
}
|
|
96
|
+
else {
|
|
97
|
+
if (to) {
|
|
98
|
+
where.date_modified = { [sequelize_1.default.Op.lte]: to };
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
try {
|
|
102
|
+
const result = yield this.sequelizeModel.findAll({
|
|
103
|
+
attributes: [
|
|
104
|
+
["source_id", "id"],
|
|
105
|
+
["available_spot_number", "num_of_free_places"],
|
|
106
|
+
["occupied_spot_number", "num_of_taken_places"],
|
|
107
|
+
"updated_at",
|
|
108
|
+
["total_spot_number", "total_num_of_places"],
|
|
109
|
+
["date_modified", "last_updated"],
|
|
110
|
+
],
|
|
111
|
+
limit,
|
|
112
|
+
offset,
|
|
113
|
+
order: [["date_modified", "desc"]],
|
|
114
|
+
raw: true,
|
|
115
|
+
where,
|
|
116
|
+
});
|
|
117
|
+
return result.map((record) => {
|
|
118
|
+
const { id, last_updated } = record, rest = __rest(record, ["id", "last_updated"]);
|
|
119
|
+
return Object.assign({ id: Number.isNaN(parseInt(id)) ? id : parseInt(id), last_updated: last_updated ? parseInt(last_updated) : null }, rest);
|
|
120
|
+
});
|
|
121
|
+
}
|
|
122
|
+
catch (err) {
|
|
123
|
+
throw new errors_1.CustomError("GetAllTskMeasurements: Error while fetching measurements", true, this.constructor.name, 500, err);
|
|
124
|
+
}
|
|
125
|
+
});
|
|
71
126
|
this.CountAll = (options) => __awaiter(this, void 0, void 0, function* () {
|
|
72
127
|
const { measureFrom, measureTo, source, sourceId, minutesBefore, updatedSince } = options;
|
|
73
128
|
let where = {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ParkingsMeasurementsModels.js","sourceRoot":"","sources":["../../../src/output-gateway/models/ParkingsMeasurementsModels.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ParkingsMeasurementsModels.js","sourceRoot":"","sources":["../../../src/output-gateway/models/ParkingsMeasurementsModels.ts"],"names":[],"mappings":"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"}
|
|
@@ -21,8 +21,8 @@ const index_1 = require("../../schema-definitions/index");
|
|
|
21
21
|
const DetailAttributesHelper_1 = require("./helpers/DetailAttributesHelper");
|
|
22
22
|
class ParkingsModel extends output_gateway_1.SequelizeModel {
|
|
23
23
|
constructor() {
|
|
24
|
-
super(index_1.Parkings.name, index_1.Parkings.
|
|
25
|
-
schema: index_1.Parkings.
|
|
24
|
+
super(index_1.Parkings.name, index_1.Parkings.parkings.pgTableName, index_1.Parkings.parkings.outputSequelizeAttributes, {
|
|
25
|
+
schema: index_1.Parkings.pgSchema,
|
|
26
26
|
});
|
|
27
27
|
this.Associate = (m) => {
|
|
28
28
|
this.sequelizeModel.hasOne(m.ParkingsMeasurementsActualModel.sequelizeModel, {
|
|
@@ -79,7 +79,7 @@ class ParkingsModel extends output_gateway_1.SequelizeModel {
|
|
|
79
79
|
include: [
|
|
80
80
|
{
|
|
81
81
|
as: ParkingsModel.MODEL_RELATION_ACTUAL_MEASUREMENTS,
|
|
82
|
-
model: database_1.sequelizeConnection.models[index_1.Parkings.
|
|
82
|
+
model: database_1.sequelizeConnection.models[index_1.Parkings.measurementsActual.pgTableName],
|
|
83
83
|
attributes: [
|
|
84
84
|
[sequelize_1.default.col("date_modified"), "available_spots_last_updated"],
|
|
85
85
|
[sequelize_1.default.col("available_spot_number"), "available_spots_number"],
|
|
@@ -103,7 +103,7 @@ class ParkingsModel extends output_gateway_1.SequelizeModel {
|
|
|
103
103
|
include: [
|
|
104
104
|
{
|
|
105
105
|
as: ParkingsModel.MODEL_RELATION_ACTUAL_MEASUREMENTS,
|
|
106
|
-
model: database_1.sequelizeConnection.models[index_1.Parkings.
|
|
106
|
+
model: database_1.sequelizeConnection.models[index_1.Parkings.measurementsActual.pgTableName],
|
|
107
107
|
attributes: [
|
|
108
108
|
[sequelize_1.default.col("date_modified"), "available_spots_last_updated"],
|
|
109
109
|
[sequelize_1.default.col("available_spot_number"), "available_spots_number"],
|
|
@@ -124,7 +124,7 @@ class ParkingsModel extends output_gateway_1.SequelizeModel {
|
|
|
124
124
|
if (options.lat && options.lng) {
|
|
125
125
|
const location = sequelize_1.default.fn("ST_SetSRID", sequelize_1.default.fn("ST_MakePoint", options.lng, options.lat), 4326);
|
|
126
126
|
const distance = sequelize_1.default.fn("ST_Distance", sequelize_1.default.literal(`CASE WHEN ${ParkingsModel.MODEL_RELATION_PARKING_LOCATIONS}.location IS NULL
|
|
127
|
-
THEN ${index_1.Parkings.
|
|
127
|
+
THEN ${index_1.Parkings.parkings.pgTableName}.location
|
|
128
128
|
ELSE ${ParkingsModel.MODEL_RELATION_PARKING_LOCATIONS}.location END`), location, true);
|
|
129
129
|
attributes.push([distance, "distance"]);
|
|
130
130
|
order.push([sequelize_1.default.col("distance"), "asc"]);
|
|
@@ -172,12 +172,12 @@ class ParkingsModel extends output_gateway_1.SequelizeModel {
|
|
|
172
172
|
include: [
|
|
173
173
|
{
|
|
174
174
|
as: ParkingsModel.MODEL_RELATION_PARKING_LOCATIONS,
|
|
175
|
-
model: database_1.sequelizeConnection.models[index_1.Parkings.
|
|
175
|
+
model: database_1.sequelizeConnection.models[index_1.Parkings.location.pgTableName],
|
|
176
176
|
attributes: [],
|
|
177
177
|
},
|
|
178
178
|
{
|
|
179
179
|
as: ParkingsModel.MODEL_RELATION_ACTUAL_MEASUREMENTS,
|
|
180
|
-
model: database_1.sequelizeConnection.models[index_1.Parkings.
|
|
180
|
+
model: database_1.sequelizeConnection.models[index_1.Parkings.measurementsActual.pgTableName],
|
|
181
181
|
attributes: [
|
|
182
182
|
[sequelize_1.default.col("date_modified"), "available_spots_last_updated"],
|
|
183
183
|
[sequelize_1.default.col("available_spot_number"), "available_spots_number"],
|
|
@@ -202,10 +202,10 @@ class ParkingsModel extends output_gateway_1.SequelizeModel {
|
|
|
202
202
|
return yield this.sequelizeModel.findOne({
|
|
203
203
|
attributes: (0, DetailAttributesHelper_1.getParkingDetailAttributes)(),
|
|
204
204
|
include: [
|
|
205
|
-
Object.assign({ as: ParkingsModel.MODEL_RELATION_PARKING_LOCATIONS, model: database_1.sequelizeConnection.models[index_1.Parkings.
|
|
205
|
+
Object.assign({ as: ParkingsModel.MODEL_RELATION_PARKING_LOCATIONS, model: database_1.sequelizeConnection.models[index_1.Parkings.location.pgTableName], attributes: [] }, (locationId && { where: { id: locationId } })),
|
|
206
206
|
{
|
|
207
207
|
as: ParkingsModel.MODEL_RELATION_ACTUAL_MEASUREMENTS,
|
|
208
|
-
model: database_1.sequelizeConnection.models[index_1.Parkings.
|
|
208
|
+
model: database_1.sequelizeConnection.models[index_1.Parkings.measurementsActual.pgTableName],
|
|
209
209
|
attributes: [
|
|
210
210
|
[sequelize_1.default.col("date_modified"), "available_spots_last_updated"],
|
|
211
211
|
[sequelize_1.default.col("available_spot_number"), "available_spots_number"],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ParkingsModel.js","sourceRoot":"","sources":["../../../src/output-gateway/models/ParkingsModel.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,sEAAmE;AACnE,4CAA8C;AAC9C,oFAA4D;AAC5D,yEAAiF;AAGjF,0DAAsC;AAItC,6EAAuF;AA8BvF,MAAa,aAAc,SAAQ,+BAAc;IAI7C;QACI,KAAK,CAAC,gBAAQ,CAAC,IAAI,EAAE,gBAAQ,CAAC,
|
|
1
|
+
{"version":3,"file":"ParkingsModel.js","sourceRoot":"","sources":["../../../src/output-gateway/models/ParkingsModel.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,sEAAmE;AACnE,4CAA8C;AAC9C,oFAA4D;AAC5D,yEAAiF;AAGjF,0DAAsC;AAItC,6EAAuF;AA8BvF,MAAa,aAAc,SAAQ,+BAAc;IAI7C;QACI,KAAK,CAAC,gBAAQ,CAAC,IAAI,EAAE,gBAAQ,CAAC,QAAQ,CAAC,WAAW,EAAE,gBAAQ,CAAC,QAAQ,CAAC,yBAAyB,EAAE;YAC7F,MAAM,EAAE,gBAAQ,CAAC,QAAQ;SAC5B,CAAC,CAAC;QAGA,cAAS,GAAG,CAAC,CAAkB,EAAE,EAAE;YACtC,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,+BAA+B,CAAC,cAAc,EAAE;gBACzE,EAAE,EAAE,aAAa,CAAC,kCAAkC;gBACpD,UAAU,EAAE,WAAW;gBACvB,SAAS,EAAE,WAAW;aACzB,CAAC,CAAC;YACH,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,qBAAqB,CAAC,cAAc,EAAE;gBAChE,EAAE,EAAE,aAAa,CAAC,gCAAgC;gBAClD,UAAU,EAAE,WAAW;gBACvB,SAAS,EAAE,WAAW;aACzB,CAAC,CAAC;QACP,CAAC,CAAC;QAEK,WAAM,GAAG,CAAO,UAAmC,EAAE,EAAwB,EAAE;YAClF,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC;YAC5G,MAAM,KAAK,GAAoB,EAAE,CAAC;YAClC,IAAI,KAAK,GAA2B,EAAE,CAAC;YACvC,IAAI,UAAU,GAAmC,EAAE,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;YAE9E,IAAI;gBACA,IAAI,GAAG,IAAI,GAAG,EAAE;oBACZ,MAAM,QAAQ,GAAG,mBAAS,CAAC,EAAE,CAAC,YAAY,EAAE,mBAAS,CAAC,EAAE,CAAC,cAAc,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC;oBAC1F,MAAM,QAAQ,GAAG,mBAAS,CAAC,EAAE,CAAC,aAAa,EAAE,mBAAS,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;oBACxF,UAAU,CAAC,OAAQ,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAC;oBACjD,KAAK,CAAC,IAAI,CAAC,CAAC,mBAAS,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;oBAE/C,IAAI,KAAK,EAAE;wBACP,KAAK,CAAC,KAAK,GAAG,mBAAS,CAAC,KAAK,CACzB,mBAAS,CAAC,EAAE,CAAC,YAAY,EAAE,QAAQ,EAAE,mBAAS,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,EAC5E,MAAM,CACT,CAAC;qBACL;iBACJ;gBAED,IAAI,MAAM,EAAE;oBACR,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC;iBACzB;gBAED,IAAI,QAAQ,EAAE;oBACV,KAAK,CAAC,SAAS,GAAG,QAAQ,CAAC;iBAC9B;gBAED,IAAI,QAAQ,EAAE;oBACV,KAAK,CAAC,QAAQ,GAAG;wBACb,CAAC,mBAAS,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,QAAQ;qBAC9B,CAAC;iBACL;gBAED,IAAI,aAAa,EAAE;oBACf,KAAK,CAAC,UAAU,GAAG;wBACf,CAAC,mBAAS,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,mBAAS,CAAC,OAAO,CAAC,qBAAqB,aAAa,WAAW,CAAC;qBACvF,CAAC;iBACL;gBAED,IAAI,YAAY,EAAE;oBACd,KAAK,CAAC,UAAU,GAAG;wBACf,CAAC,mBAAS,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,YAAY;qBACnC,CAAC;iBACL;gBAED,KAAK,CAAC,IAAI,CAAC,CAAC,mBAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;gBAC7C,KAAK,CAAC,IAAI,CAAC,CAAC,mBAAS,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;gBAEhD,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC;oBACrC,UAAU;oBACV,OAAO,EAAE;wBACL;4BACI,EAAE,EAAE,aAAa,CAAC,kCAAkC;4BACpD,KAAK,EAAE,8BAAmB,CAAC,MAAM,CAAC,gBAAQ,CAAC,kBAAkB,CAAC,WAAW,CAAC;4BAC1E,UAAU,EAAE;gCACR,CAAC,mBAAS,CAAC,GAAG,CAAC,eAAe,CAAC,EAAE,8BAA8B,CAAC;gCAChE,CAAC,mBAAS,CAAC,GAAG,CAAC,uBAAuB,CAAC,EAAE,wBAAwB,CAAC;6BACrE;yBACJ;qBACJ;oBACD,KAAK;oBACL,MAAM;oBACN,KAAK;oBACL,GAAG,EAAE,IAAI;oBACT,IAAI,EAAE,IAAI;oBACV,KAAK;iBACR,CAAC,CAAC;aACN;YAAC,OAAO,GAAG,EAAE;gBACV,MAAM,IAAI,oBAAW,CAAC,gBAAgB,EAAE,IAAI,EAAE,eAAe,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;aAC5E;QACL,CAAC,CAAA,CAAC;QAEK,WAAM,GAAG,CAAO,EAAU,EAAsB,EAAE;YACrD,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC;gBACrC,OAAO,EAAE;oBACL;wBACI,EAAE,EAAE,aAAa,CAAC,kCAAkC;wBACpD,KAAK,EAAE,8BAAmB,CAAC,MAAM,CAAC,gBAAQ,CAAC,kBAAkB,CAAC,WAAW,CAAC;wBAC1E,UAAU,EAAE;4BACR,CAAC,mBAAS,CAAC,GAAG,CAAC,eAAe,CAAC,EAAE,8BAA8B,CAAC;4BAChE,CAAC,mBAAS,CAAC,GAAG,CAAC,uBAAuB,CAAC,EAAE,wBAAwB,CAAC;yBACrE;qBACJ;iBACJ;gBACD,KAAK,EAAE,EAAE,EAAE,EAAE;gBACb,GAAG,EAAE,IAAI;gBACT,IAAI,EAAE,IAAI;aACb,CAAC,CAAC;QACP,CAAC,CAAA,CAAC;QAEK,iBAAY,GAAG,CAAO,UAAmC,EAAE,EAAwB,EAAE;YACxF,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;YAClC,MAAM,KAAK,GAAoB,EAAE,CAAC;YAClC,MAAM,KAAK,GAA2B,EAAE,CAAC;YACzC,MAAM,UAAU,GAAG,IAAA,mDAA0B,GAAE,CAAC;YAEhD,IAAI;gBACA,IAAI,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE;oBAC5B,MAAM,QAAQ,GAAG,mBAAS,CAAC,EAAE,CAAC,YAAY,EAAE,mBAAS,CAAC,EAAE,CAAC,cAAc,EAAE,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC;oBAC1G,MAAM,QAAQ,GAAG,mBAAS,CAAC,EAAE,CACzB,aAAa,EACb,mBAAS,CAAC,OAAO,CACb,aAAa,aAAa,CAAC,gCAAgC;+BACpD,gBAAQ,CAAC,QAAQ,CAAC,WAAW;+BAC7B,aAAa,CAAC,gCAAgC,eAAe,CACvE,EACD,QAAQ,EACR,IAAI,CACP,CAAC;oBAED,UAAwD,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAC;oBACvF,KAAK,CAAC,IAAI,CAAC,CAAC,mBAAS,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;oBAE/C,IAAI,OAAO,CAAC,KAAK,EAAE;wBACf,KAAK,CAAC,KAAK,GAAG,mBAAS,CAAC,KAAK,CACzB,mBAAS,CAAC,EAAE,CAAC,YAAY,EAAE,QAAQ,EAAE,mBAAS,CAAC,GAAG,CAAC,mBAAmB,CAAC,EAAE,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,EAC7F,MAAM,CACT,CAAC;qBACL;iBACJ;gBAED,IAAI,OAAO,CAAC,MAAM,EAAE;oBAChB,KAAK,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;iBACjC;gBAED,IAAI,OAAO,CAAC,QAAQ,EAAE;oBAClB,KAAK,CAAC,SAAS,GAAG,OAAO,CAAC,QAAQ,CAAC;iBACtC;gBAED,IAAI,OAAO,CAAC,QAAQ,EAAE;oBAClB,KAAK,CAAC,QAAQ,GAAG;wBACb,CAAC,mBAAS,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC,QAAQ;qBACtC,CAAC;iBACL;gBAED,IAAI,OAAO,CAAC,aAAa,EAAE;oBACvB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;oBACvB,MAAM,UAAU,GAAG,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;oBACnE,KAAK,CAAC,aAAa,GAAG;wBAClB,CAAC,mBAAS,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,UAAU;qBACjC,CAAC;iBACL;gBAED,IAAI,OAAO,CAAC,YAAY,EAAE;oBACtB,KAAK,CAAC,aAAa,GAAG;wBAClB,CAAC,mBAAS,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,OAAO,EAAE;qBACrD,CAAC;iBACL;gBAED,IAAI,OAAO,CAAC,WAAW,EAAE;oBACrB,KAAK,CAAC,YAAY,GAAG;wBACjB,CAAC,mBAAS,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC,WAAW;qBACzC,CAAC;iBACL;gBAED,IAAI,OAAO,CAAC,QAAQ,EAAE;oBAClB,KAAK,CAAC,SAAS,GAAG;wBACd,CAAC,mBAAS,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC,QAAQ;qBACtC,CAAC;iBACL;gBAED,KAAK,CAAC,IAAI,CAAC,CAAC,mBAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;gBAC7C,KAAK,CAAC,IAAI,CAAC,CAAC,mBAAS,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;gBAEhD,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC;oBACrC,UAAU;oBACV,OAAO,EAAE;wBACL;4BACI,EAAE,EAAE,aAAa,CAAC,gCAAgC;4BAClD,KAAK,EAAE,8BAAmB,CAAC,MAAM,CAAC,gBAAQ,CAAC,QAAQ,CAAC,WAAW,CAAC;4BAChE,UAAU,EAAE,EAAE;yBACjB;wBACD;4BACI,EAAE,EAAE,aAAa,CAAC,kCAAkC;4BACpD,KAAK,EAAE,8BAAmB,CAAC,MAAM,CAAC,gBAAQ,CAAC,kBAAkB,CAAC,WAAW,CAAC;4BAC1E,UAAU,EAAE;gCACR,CAAC,mBAAS,CAAC,GAAG,CAAC,eAAe,CAAC,EAAE,8BAA8B,CAAC;gCAChE,CAAC,mBAAS,CAAC,GAAG,CAAC,uBAAuB,CAAC,EAAE,wBAAwB,CAAC;6BACrE;yBACJ;qBACJ;oBACD,KAAK;oBACL,MAAM;oBACN,KAAK;oBACL,GAAG,EAAE,IAAI;oBACT,IAAI,EAAE,IAAI;oBACV,KAAK;oBACL,QAAQ,EAAE,KAAK;iBAClB,CAAC,CAAC;aACN;YAAC,OAAO,GAAG,EAAE;gBACV,MAAM,IAAI,oBAAW,CAAC,gBAAgB,EAAE,IAAI,EAAE,uBAAuB,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;aACpF;QACL,CAAC,CAAA,CAAC;QAEK,iBAAY,GAAG,CAAO,EAAU,EAAsB,EAAE;YAC3D,MAAM,CAAC,SAAS,EAAE,UAAU,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAC9C,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC;gBACrC,UAAU,EAAE,IAAA,mDAA0B,GAAE;gBACxC,OAAO,EAAE;oCAED,EAAE,EAAE,aAAa,CAAC,gCAAgC,EAClD,KAAK,EAAE,8BAAmB,CAAC,MAAM,CAAC,gBAAQ,CAAC,QAAQ,CAAC,WAAW,CAAC,EAChE,UAAU,EAAE,EAAE,IACX,CAAC,UAAU,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,CAAC;oBAEpD;wBACI,EAAE,EAAE,aAAa,CAAC,kCAAkC;wBACpD,KAAK,EAAE,8BAAmB,CAAC,MAAM,CAAC,gBAAQ,CAAC,kBAAkB,CAAC,WAAW,CAAC;wBAC1E,UAAU,EAAE;4BACR,CAAC,mBAAS,CAAC,GAAG,CAAC,eAAe,CAAC,EAAE,8BAA8B,CAAC;4BAChE,CAAC,mBAAS,CAAC,GAAG,CAAC,uBAAuB,CAAC,EAAE,wBAAwB,CAAC;yBACrE;qBACJ;iBACJ;gBACD,KAAK,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE;gBACxB,GAAG,EAAE,IAAI;gBACT,IAAI,EAAE,IAAI;gBACV,QAAQ,EAAE,KAAK;aAClB,CAAC,CAAC;QACP,CAAC,CAAA,CAAC;IA5OF,CAAC;;AARL,sCAqPC;AApPiB,gDAAkC,GAAG,cAAc,CAAC;AACpD,8CAAgC,GAAG,mBAAmB,CAAC"}
|
|
@@ -15,8 +15,8 @@ const index_1 = require("../../schema-definitions/index");
|
|
|
15
15
|
const errors_1 = require("@golemio/errors");
|
|
16
16
|
class ParkingsTariffsModel extends output_gateway_1.SequelizeModel {
|
|
17
17
|
constructor() {
|
|
18
|
-
super(index_1.Parkings.
|
|
19
|
-
schema: index_1.Parkings.
|
|
18
|
+
super(index_1.Parkings.tariffs.name, index_1.Parkings.tariffs.pgTableName, index_1.Parkings.tariffs.outputSequelizeAttributes, {
|
|
19
|
+
schema: index_1.Parkings.pgSchema,
|
|
20
20
|
});
|
|
21
21
|
this.GetAll = (options = {}) => __awaiter(this, void 0, void 0, function* () {
|
|
22
22
|
const { source } = options;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ParkingsTariffsModel.js","sourceRoot":"","sources":["../../../src/output-gateway/models/ParkingsTariffsModel.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,sEAAmE;AACnE,0DAAsC;AACtC,4CAA8C;AAsC9C,MAAa,oBAAqB,SAAQ,+BAAc;IACpD;QACI,KAAK,CAAC,gBAAQ,CAAC,
|
|
1
|
+
{"version":3,"file":"ParkingsTariffsModel.js","sourceRoot":"","sources":["../../../src/output-gateway/models/ParkingsTariffsModel.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,sEAAmE;AACnE,0DAAsC;AACtC,4CAA8C;AAsC9C,MAAa,oBAAqB,SAAQ,+BAAc;IACpD;QACI,KAAK,CAAC,gBAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,gBAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,gBAAQ,CAAC,OAAO,CAAC,yBAAyB,EAAE;YACnG,MAAM,EAAE,gBAAQ,CAAC,QAAQ;SAC5B,CAAC,CAAC;QAGA,WAAM,GAAG,CAAO,UAA8B,EAAE,EAA8B,EAAE;YACnF,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;YAE3B,IAAI,KAAK,GAA2B,EAAE,CAAC;YACvC,IAAI,UAAU,GAAmC,EAAE,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;YAE9E,IAAI,MAAM,EAAE;gBACR,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC;aACzB;YAED,MAAM,KAAK,GAAoB,EAAE,CAAC;YAClC,KAAK,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,oBAAoB,EAAE,KAAK,CAAC,CAAC,CAAC;YAEhE,IAAI;gBACA,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC;oBACrC,UAAU;oBACV,KAAK;oBACL,GAAG,EAAE,IAAI;oBACT,KAAK;iBACR,CAAC,CAAC;aACN;YAAC,OAAO,GAAG,EAAE;gBACV,MAAM,IAAI,oBAAW,CAAC,gBAAgB,EAAE,IAAI,EAAE,qBAAqB,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;aAClF;QACL,CAAC,CAAA,CAAC;QAEK,WAAM,GAAG,CAAO,QAAgB,EAA8B,EAAE;YACnE,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC;QAC5F,CAAC,CAAA,CAAC;IA7BF,CAAC;CA8BJ;AAnCD,oDAmCC"}
|
|
@@ -10,30 +10,30 @@ const ParkingsModel_1 = require("../ParkingsModel");
|
|
|
10
10
|
const getParkingDetailAttributes = () => [
|
|
11
11
|
[
|
|
12
12
|
sequelize_1.default.literal(`CASE WHEN ${ParkingsModel_1.ParkingsModel.MODEL_RELATION_PARKING_LOCATIONS}.id IS NULL
|
|
13
|
-
THEN ${_sch_1.Parkings.
|
|
14
|
-
ELSE CONCAT(${_sch_1.Parkings.
|
|
13
|
+
THEN ${_sch_1.Parkings.parkings.pgTableName}.id::text
|
|
14
|
+
ELSE CONCAT(${_sch_1.Parkings.parkings.pgTableName}.id, '_', ${ParkingsModel_1.ParkingsModel.MODEL_RELATION_PARKING_LOCATIONS}.id) END`),
|
|
15
15
|
"id",
|
|
16
16
|
],
|
|
17
17
|
"source",
|
|
18
18
|
"source_id",
|
|
19
19
|
[
|
|
20
|
-
sequelize_1.default.fn("COALESCE", sequelize_1.default.col(`${ParkingsModel_1.ParkingsModel.MODEL_RELATION_PARKING_LOCATIONS}.data_provider`), sequelize_1.default.col(`${_sch_1.Parkings.
|
|
20
|
+
sequelize_1.default.fn("COALESCE", sequelize_1.default.col(`${ParkingsModel_1.ParkingsModel.MODEL_RELATION_PARKING_LOCATIONS}.data_provider`), sequelize_1.default.col(`${_sch_1.Parkings.parkings.pgTableName}.data_provider`)),
|
|
21
21
|
"data_provider",
|
|
22
22
|
],
|
|
23
23
|
"name",
|
|
24
24
|
"category",
|
|
25
25
|
"date_modified",
|
|
26
26
|
[
|
|
27
|
-
sequelize_1.default.fn("COALESCE", sequelize_1.default.col(`${ParkingsModel_1.ParkingsModel.MODEL_RELATION_PARKING_LOCATIONS}.address`), sequelize_1.default.col(`${_sch_1.Parkings.
|
|
27
|
+
sequelize_1.default.fn("COALESCE", sequelize_1.default.col(`${ParkingsModel_1.ParkingsModel.MODEL_RELATION_PARKING_LOCATIONS}.address`), sequelize_1.default.col(`${_sch_1.Parkings.parkings.pgTableName}.address`)),
|
|
28
28
|
"address",
|
|
29
29
|
],
|
|
30
30
|
[
|
|
31
|
-
sequelize_1.default.fn("COALESCE", sequelize_1.default.col(`${ParkingsModel_1.ParkingsModel.MODEL_RELATION_PARKING_LOCATIONS}.location`), sequelize_1.default.col(`${_sch_1.Parkings.
|
|
31
|
+
sequelize_1.default.fn("COALESCE", sequelize_1.default.col(`${ParkingsModel_1.ParkingsModel.MODEL_RELATION_PARKING_LOCATIONS}.location`), sequelize_1.default.col(`${_sch_1.Parkings.parkings.pgTableName}.location`)),
|
|
32
32
|
"location",
|
|
33
33
|
],
|
|
34
34
|
"area_served",
|
|
35
35
|
[
|
|
36
|
-
sequelize_1.default.fn("COALESCE", sequelize_1.default.col(`${ParkingsModel_1.ParkingsModel.MODEL_RELATION_PARKING_LOCATIONS}.total_spot_number`), sequelize_1.default.col(`${_sch_1.Parkings.
|
|
36
|
+
sequelize_1.default.fn("COALESCE", sequelize_1.default.col(`${ParkingsModel_1.ParkingsModel.MODEL_RELATION_PARKING_LOCATIONS}.total_spot_number`), sequelize_1.default.col(`${_sch_1.Parkings.parkings.pgTableName}.total_spot_number`)),
|
|
37
37
|
"total_spot_number",
|
|
38
38
|
],
|
|
39
39
|
"tariff_id",
|
|
@@ -42,7 +42,7 @@ const getParkingDetailAttributes = () => [
|
|
|
42
42
|
"parking_type",
|
|
43
43
|
"zone_type",
|
|
44
44
|
[
|
|
45
|
-
sequelize_1.default.fn("COALESCE", sequelize_1.default.col(`${ParkingsModel_1.ParkingsModel.MODEL_RELATION_PARKING_LOCATIONS}.centroid`), sequelize_1.default.col(`${_sch_1.Parkings.
|
|
45
|
+
sequelize_1.default.fn("COALESCE", sequelize_1.default.col(`${ParkingsModel_1.ParkingsModel.MODEL_RELATION_PARKING_LOCATIONS}.centroid`), sequelize_1.default.col(`${_sch_1.Parkings.parkings.pgTableName}.centroid`)),
|
|
46
46
|
"centroid",
|
|
47
47
|
],
|
|
48
48
|
"web_app_payment_url",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DetailAttributesHelper.js","sourceRoot":"","sources":["../../../../src/output-gateway/models/helpers/DetailAttributesHelper.ts"],"names":[],"mappings":";;;;;;AAAA,oFAA4D;AAC5D,sDAAgC;AAChC,oDAAyD;AAElD,MAAM,0BAA0B,GAAG,GAAmC,EAAE,CAAC;IAC5E;QACI,mBAAS,CAAC,OAAO,CACb,aAAa,6BAAa,CAAC,gCAAgC;uBAChD,eAAQ,CAAC,
|
|
1
|
+
{"version":3,"file":"DetailAttributesHelper.js","sourceRoot":"","sources":["../../../../src/output-gateway/models/helpers/DetailAttributesHelper.ts"],"names":[],"mappings":";;;;;;AAAA,oFAA4D;AAC5D,sDAAgC;AAChC,oDAAyD;AAElD,MAAM,0BAA0B,GAAG,GAAmC,EAAE,CAAC;IAC5E;QACI,mBAAS,CAAC,OAAO,CACb,aAAa,6BAAa,CAAC,gCAAgC;uBAChD,eAAQ,CAAC,QAAQ,CAAC,WAAW;8BACtB,eAAQ,CAAC,QAAQ,CAAC,WAAW,aAAa,6BAAa,CAAC,gCAAgC,UAAU,CACvH;QACD,IAAI;KACP;IACD,QAAQ;IACR,WAAW;IACX;QACI,mBAAS,CAAC,EAAE,CACR,UAAU,EACV,mBAAS,CAAC,GAAG,CAAC,GAAG,6BAAa,CAAC,gCAAgC,gBAAgB,CAAC,EAChF,mBAAS,CAAC,GAAG,CAAC,GAAG,eAAQ,CAAC,QAAQ,CAAC,WAAW,gBAAgB,CAAC,CAClE;QACD,eAAe;KAClB;IACD,MAAM;IACN,UAAU;IACV,eAAe;IACf;QACI,mBAAS,CAAC,EAAE,CACR,UAAU,EACV,mBAAS,CAAC,GAAG,CAAC,GAAG,6BAAa,CAAC,gCAAgC,UAAU,CAAC,EAC1E,mBAAS,CAAC,GAAG,CAAC,GAAG,eAAQ,CAAC,QAAQ,CAAC,WAAW,UAAU,CAAC,CAC5D;QACD,SAAS;KACZ;IACD;QACI,mBAAS,CAAC,EAAE,CACR,UAAU,EACV,mBAAS,CAAC,GAAG,CAAC,GAAG,6BAAa,CAAC,gCAAgC,WAAW,CAAC,EAC3E,mBAAS,CAAC,GAAG,CAAC,GAAG,eAAQ,CAAC,QAAQ,CAAC,WAAW,WAAW,CAAC,CAC7D;QACD,UAAU;KACb;IACD,aAAa;IACb;QACI,mBAAS,CAAC,EAAE,CACR,UAAU,EACV,mBAAS,CAAC,GAAG,CAAC,GAAG,6BAAa,CAAC,gCAAgC,oBAAoB,CAAC,EACpF,mBAAS,CAAC,GAAG,CAAC,GAAG,eAAQ,CAAC,QAAQ,CAAC,WAAW,oBAAoB,CAAC,CACtE;QACD,mBAAmB;KACtB;IACD,WAAW;IACX,YAAY;IACZ,UAAU;IACV,cAAc;IACd,WAAW;IACX;QACI,mBAAS,CAAC,EAAE,CACR,UAAU,EACV,mBAAS,CAAC,GAAG,CAAC,GAAG,6BAAa,CAAC,gCAAgC,WAAW,CAAC,EAC3E,mBAAS,CAAC,GAAG,CAAC,GAAG,eAAQ,CAAC,QAAQ,CAAC,WAAW,WAAW,CAAC,CAC7D;QACD,UAAU;KACb;IACD,qBAAqB;IACrB,yBAAyB;IACzB,qBAAqB;CACxB,CAAC;AA/DW,QAAA,0BAA0B,8BA+DrC"}
|
|
@@ -9,8 +9,8 @@ const _sch_1 = require("../../schema-definitions");
|
|
|
9
9
|
const models = {
|
|
10
10
|
ParkingsLocationModel: new ParkingsLocationModel_1.ParkingsLocationModel(),
|
|
11
11
|
ParkingsModel: new ParkingsModel_1.ParkingsModel(),
|
|
12
|
-
ParkingsMeasurementsModel: new ParkingsMeasurementsModels_1.ParkingsMeasurementsModels(_sch_1.Parkings.
|
|
13
|
-
ParkingsMeasurementsActualModel: new ParkingsMeasurementsModels_1.ParkingsMeasurementsModels(_sch_1.Parkings.
|
|
12
|
+
ParkingsMeasurementsModel: new ParkingsMeasurementsModels_1.ParkingsMeasurementsModels(_sch_1.Parkings.measurements),
|
|
13
|
+
ParkingsMeasurementsActualModel: new ParkingsMeasurementsModels_1.ParkingsMeasurementsModels(_sch_1.Parkings.measurementsActual),
|
|
14
14
|
ParkingsTariffsModel: new ParkingsTariffsModel_1.ParkingsTariffsModel(),
|
|
15
15
|
};
|
|
16
16
|
exports.models = models;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/output-gateway/models/index.ts"],"names":[],"mappings":";;;AAAA,6EAA0E;AAC1E,mDAAgD;AAChD,iEAA8D;AAC9D,mEAAgE;AAChE,mDAAgC;AAUhC,MAAM,MAAM,GAAoB;IAC5B,qBAAqB,EAAE,IAAI,6CAAqB,EAAE;IAClD,aAAa,EAAE,IAAI,6BAAa,EAAE;IAClC,yBAAyB,EAAE,IAAI,uDAA0B,CAAC,eAAQ,CAAC,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/output-gateway/models/index.ts"],"names":[],"mappings":";;;AAAA,6EAA0E;AAC1E,mDAAgD;AAChD,iEAA8D;AAC9D,mEAAgE;AAChE,mDAAgC;AAUhC,MAAM,MAAM,GAAoB;IAC5B,qBAAqB,EAAE,IAAI,6CAAqB,EAAE;IAClD,aAAa,EAAE,IAAI,6BAAa,EAAE;IAClC,yBAAyB,EAAE,IAAI,uDAA0B,CAAC,eAAQ,CAAC,YAAY,CAAC;IAChF,+BAA+B,EAAE,IAAI,uDAA0B,CAAC,eAAQ,CAAC,kBAAkB,CAAC;IAC5F,oBAAoB,EAAE,IAAI,2CAAoB,EAAE;CACnD,CAAC;AASO,wBAAM;AAPf,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;IACpC,MAAM,KAAK,GAAI,MAAc,CAAC,IAAI,CAAC,CAAC;IACpC,IAAI,KAAK,CAAC,cAAc,CAAC,WAAW,CAAC,EAAE;QACnC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;KAC3B;CACJ"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export interface ITskMeasurementsFilterParams {
|
|
2
|
+
limit?: number;
|
|
3
|
+
offset?: number;
|
|
4
|
+
from?: number;
|
|
5
|
+
to?: number;
|
|
6
|
+
sensorId?: string;
|
|
7
|
+
}
|
|
8
|
+
export interface ITskMeasurementsRecord {
|
|
9
|
+
id: string | number;
|
|
10
|
+
num_of_free_places: number;
|
|
11
|
+
num_of_taken_places: number;
|
|
12
|
+
updated_at: string | null;
|
|
13
|
+
total_num_of_places: number;
|
|
14
|
+
last_updated: number | null;
|
|
15
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TskMeasurementsInterfaces.js","sourceRoot":"","sources":["../../../../src/output-gateway/models/interfaces/TskMeasurementsInterfaces.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/// <reference types="express" />
|
|
2
|
+
import { GeoJsonRouter } from "@golemio/core/dist/output-gateway/routes/GeoJsonRouter";
|
|
3
|
+
import { RequestHandler } from "@golemio/core/dist/shared/express";
|
|
4
|
+
/**
|
|
5
|
+
* @deprecated Legacy router, use Parking Spaces /parking endpoints instead
|
|
6
|
+
*/
|
|
7
|
+
export declare class TskParkingLotsLegacyRouter extends GeoJsonRouter {
|
|
8
|
+
private readonly measurementsHistoryRepository;
|
|
9
|
+
constructor();
|
|
10
|
+
GetAllTskMeasurements: RequestHandler;
|
|
11
|
+
}
|
|
12
|
+
export declare const tskParkingLotsLegacyRouter: import("express").Router;
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.tskParkingLotsLegacyRouter = exports.TskParkingLotsLegacyRouter = void 0;
|
|
13
|
+
const redis_1 = require("@golemio/core/dist/output-gateway/redis");
|
|
14
|
+
const GeoJsonRouter_1 = require("@golemio/core/dist/output-gateway/routes/GeoJsonRouter");
|
|
15
|
+
const Validation_1 = require("@golemio/core/dist/output-gateway/Validation");
|
|
16
|
+
const express_validator_1 = require("@golemio/core/dist/shared/express-validator");
|
|
17
|
+
const TskParkingLotsRepository_1 = require("../data-access/TskParkingLotsRepository");
|
|
18
|
+
const models_1 = require("../models");
|
|
19
|
+
/**
|
|
20
|
+
* @deprecated Legacy router, use Parking Spaces /parking endpoints instead
|
|
21
|
+
*/
|
|
22
|
+
class TskParkingLotsLegacyRouter extends GeoJsonRouter_1.GeoJsonRouter {
|
|
23
|
+
constructor() {
|
|
24
|
+
super(new TskParkingLotsRepository_1.TskParkingLotsRepository());
|
|
25
|
+
this.GetAllTskMeasurements = (req, res, next) => __awaiter(this, void 0, void 0, function* () {
|
|
26
|
+
const timestampFrom = new Date(req.query.from).getTime();
|
|
27
|
+
const timestampTo = new Date(req.query.to).getTime();
|
|
28
|
+
try {
|
|
29
|
+
const data = yield this.measurementsHistoryRepository.GetAllTskMeasurements({
|
|
30
|
+
limit: req.query.limit ? parseInt(req.query.limit) : undefined,
|
|
31
|
+
offset: req.query.offset ? parseInt(req.query.offset) : undefined,
|
|
32
|
+
from: timestampFrom,
|
|
33
|
+
to: timestampTo,
|
|
34
|
+
sensorId: req.query.sensorId,
|
|
35
|
+
});
|
|
36
|
+
res.status(200).send(data);
|
|
37
|
+
}
|
|
38
|
+
catch (err) {
|
|
39
|
+
next(err);
|
|
40
|
+
}
|
|
41
|
+
});
|
|
42
|
+
this.measurementsHistoryRepository = models_1.models.ParkingsMeasurementsModel;
|
|
43
|
+
this.initRoutes();
|
|
44
|
+
this.router.get("/history", [(0, express_validator_1.query)("from").optional().isISO8601(), (0, express_validator_1.query)("to").optional().isISO8601(), (0, express_validator_1.query)("sensorId").optional().isString()], Validation_1.pagination, (0, Validation_1.paginationLimitMiddleware)("TskParkingLotsLegacyRouter"), (0, redis_1.useCacheMiddleware)(), Validation_1.checkErrors, this.GetAllTskMeasurements);
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
exports.TskParkingLotsLegacyRouter = TskParkingLotsLegacyRouter;
|
|
48
|
+
exports.tskParkingLotsLegacyRouter = new TskParkingLotsLegacyRouter().router;
|
|
49
|
+
//# sourceMappingURL=TskParkingLotsLegacyRouter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TskParkingLotsLegacyRouter.js","sourceRoot":"","sources":["../../../src/output-gateway/routers/TskParkingLotsLegacyRouter.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,mEAA6E;AAC7E,0FAAuF;AACvF,6EAAkH;AAElH,mFAAoE;AACpE,sFAAmF;AACnF,sCAAmC;AAGnC;;GAEG;AACH,MAAa,0BAA2B,SAAQ,6BAAa;IAGzD;QACI,KAAK,CAAC,IAAI,mDAAwB,EAAE,CAAC,CAAC;QAcnC,0BAAqB,GAAmB,CAAO,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;YACpE,MAAM,aAAa,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAc,CAAC,CAAC,OAAO,EAAE,CAAC;YACnE,MAAM,WAAW,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAY,CAAC,CAAC,OAAO,EAAE,CAAC;YAE/D,IAAI;gBACA,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,6BAA6B,CAAC,qBAAqB,CAAC;oBACxE,KAAK,EAAE,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,KAAe,CAAC,CAAC,CAAC,CAAC,SAAS;oBACxE,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,MAAgB,CAAC,CAAC,CAAC,CAAC,SAAS;oBAC3E,IAAI,EAAE,aAAa;oBACnB,EAAE,EAAE,WAAW;oBACf,QAAQ,EAAE,GAAG,CAAC,KAAK,CAAC,QAAkB;iBACzC,CAAC,CAAC;gBAEH,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aAC9B;YAAC,OAAO,GAAG,EAAE;gBACV,IAAI,CAAC,GAAG,CAAC,CAAC;aACb;QACL,CAAC,CAAA,CAAC;QA9BE,IAAI,CAAC,6BAA6B,GAAG,eAAM,CAAC,yBAAyB,CAAC;QACtE,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,IAAI,CAAC,MAAM,CAAC,GAAG,CACX,UAAU,EACV,CAAC,IAAA,yBAAK,EAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAC,SAAS,EAAE,EAAE,IAAA,yBAAK,EAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC,SAAS,EAAE,EAAE,IAAA,yBAAK,EAAC,UAAU,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC,EACnH,uBAAU,EACV,IAAA,sCAAyB,EAAC,4BAA4B,CAAC,EACvD,IAAA,0BAAkB,GAAE,EACpB,wBAAW,EACX,IAAI,CAAC,qBAAqB,CAC7B,CAAC;IACN,CAAC;CAoBJ;AApCD,gEAoCC;AAEY,QAAA,0BAA0B,GAAG,IAAI,0BAA0B,EAAE,CAAC,MAAM,CAAC"}
|
|
@@ -1,27 +1,27 @@
|
|
|
1
1
|
/// <reference types="mongoose" />
|
|
2
|
-
/// <reference types="mongoose" />
|
|
3
|
-
/// <reference types="mongoose" />
|
|
4
|
-
/// <reference types="mongoose" />
|
|
5
|
-
/// <reference types="mongoose" />
|
|
6
|
-
/// <reference types="mongoose" />
|
|
7
|
-
/// <reference types="mongoose" />
|
|
8
|
-
/// <reference types="mongoose" />
|
|
9
|
-
/// <reference types="mongoose" />
|
|
10
|
-
/// <reference types="mongoose" />
|
|
11
|
-
/// <reference types="mongoose" />
|
|
12
|
-
/// <reference types="mongoose" />
|
|
13
|
-
/// <reference types="mongoose" />
|
|
14
|
-
/// <reference types="mongoose" />
|
|
15
|
-
/// <reference types="mongoose" />
|
|
16
|
-
/// <reference types="mongoose" />
|
|
17
|
-
/// <reference types="mongoose" />
|
|
18
|
-
/// <reference types="mongoose" />
|
|
19
|
-
/// <reference types="mongoose" />
|
|
20
|
-
/// <reference types="mongoose" />
|
|
21
|
-
/// <reference types="mongoose" />
|
|
22
|
-
/// <reference types="mongoose" />
|
|
23
|
-
/// <reference types="mongoose" />
|
|
24
|
-
/// <reference types="mongoose" />
|
|
2
|
+
/// <reference types="mongoose/types/aggregate" />
|
|
3
|
+
/// <reference types="mongoose/types/callback" />
|
|
4
|
+
/// <reference types="mongoose/types/collection" />
|
|
5
|
+
/// <reference types="mongoose/types/connection" />
|
|
6
|
+
/// <reference types="mongoose/types/cursor" />
|
|
7
|
+
/// <reference types="mongoose/types/document" />
|
|
8
|
+
/// <reference types="mongoose/types/error" />
|
|
9
|
+
/// <reference types="mongoose/types/expressions" />
|
|
10
|
+
/// <reference types="mongoose/types/helpers" />
|
|
11
|
+
/// <reference types="mongoose/types/middlewares" />
|
|
12
|
+
/// <reference types="mongoose/types/indexes" />
|
|
13
|
+
/// <reference types="mongoose/types/models" />
|
|
14
|
+
/// <reference types="mongoose/types/mongooseoptions" />
|
|
15
|
+
/// <reference types="mongoose/types/pipelinestage" />
|
|
16
|
+
/// <reference types="mongoose/types/populate" />
|
|
17
|
+
/// <reference types="mongoose/types/query" />
|
|
18
|
+
/// <reference types="mongoose/types/schemaoptions" />
|
|
19
|
+
/// <reference types="mongoose/types/schematypes" />
|
|
20
|
+
/// <reference types="mongoose/types/session" />
|
|
21
|
+
/// <reference types="mongoose/types/types" />
|
|
22
|
+
/// <reference types="mongoose/types/utility" />
|
|
23
|
+
/// <reference types="mongoose/types/validation" />
|
|
24
|
+
/// <reference types="mongoose/types/virtuals" />
|
|
25
25
|
/// <reference types="mongoose" />
|
|
26
26
|
import Sequelize from "@golemio/core/dist/shared/sequelize";
|
|
27
27
|
declare const forExport: {
|