@golemio/parkings 1.22.5 → 1.22.6-dev.2011057324
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 -1
- package/db/example/01_sql_dump.sql +2 -2
- package/db/example/04_tsk_parking_v2.sql +1 -2
- package/db/migrations/postgresql/20250804104739-legacy-api-allowed.js +53 -0
- package/db/migrations/postgresql/20250828092217-tsk-v2-router.js +53 -0
- package/db/migrations/postgresql/sqls/20250804104739-legacy-api-allowed-down.sql +44 -0
- package/db/migrations/postgresql/sqls/20250804104739-legacy-api-allowed-up.sql +6 -0
- package/db/migrations/postgresql/sqls/20250828092217-tsk-v2-router-down.sql +1 -0
- package/db/migrations/postgresql/sqls/20250828092217-tsk-v2-router-up.sql +54 -0
- package/dist/helpers/constants/SourceEnum.d.ts +0 -1
- package/dist/helpers/constants/SourceEnum.js +0 -1
- package/dist/helpers/constants/SourceEnum.js.map +1 -1
- package/dist/integration-engine/businessRules/DataSourceIntegrationChecker.js +0 -1
- package/dist/integration-engine/businessRules/DataSourceIntegrationChecker.js.map +1 -1
- package/dist/integration-engine/helpers/GeodataHelper.d.ts +1 -3
- package/dist/integration-engine/helpers/GeodataHelper.js +1 -26
- package/dist/integration-engine/helpers/GeodataHelper.js.map +1 -1
- package/dist/integration-engine/index.d.ts +1 -1
- package/dist/integration-engine/ioc/Di.js +0 -6
- package/dist/integration-engine/ioc/Di.js.map +1 -1
- package/dist/integration-engine/ioc/ModuleContainerToken.d.ts +0 -1
- package/dist/integration-engine/ioc/ModuleContainerToken.js +0 -1
- package/dist/integration-engine/ioc/ModuleContainerToken.js.map +1 -1
- package/dist/integration-engine/workers/NewParkingsWorker.js +0 -2
- package/dist/integration-engine/workers/NewParkingsWorker.js.map +1 -1
- package/dist/output-gateway/index.js +0 -1
- package/dist/output-gateway/index.js.map +1 -1
- package/dist/output-gateway/ioc/Di.js +1 -1
- package/dist/output-gateway/ioc/Di.js.map +1 -1
- package/dist/output-gateway/models/ParkingsMeasurementsModels.d.ts +0 -5
- package/dist/output-gateway/models/ParkingsMeasurementsModels.js +1 -49
- package/dist/output-gateway/models/ParkingsMeasurementsModels.js.map +1 -1
- package/dist/output-gateway/models/ParkingsModel.d.ts +9 -8
- package/dist/output-gateway/models/ParkingsModel.js +7 -7
- package/dist/output-gateway/models/ParkingsModel.js.map +1 -1
- package/dist/output-gateway/models/helpers/DetailAttributesHelper.js +11 -9
- package/dist/output-gateway/models/helpers/DetailAttributesHelper.js.map +1 -1
- package/dist/output-gateway/routers/constants.d.ts +0 -1
- package/dist/output-gateway/routers/constants.js +0 -1
- package/dist/output-gateway/routers/constants.js.map +1 -1
- package/dist/output-gateway/routers/index.d.ts +0 -1
- package/dist/output-gateway/routers/index.js +0 -1
- package/dist/output-gateway/routers/index.js.map +1 -1
- package/dist/output-gateway/routers/v2/V2ParkingRouter.js +32 -11
- package/dist/output-gateway/routers/v2/V2ParkingRouter.js.map +1 -1
- package/dist/output-gateway/transformations/ParkingsTransformationFabric.d.ts +8 -0
- package/dist/output-gateway/transformations/ParkingsTransformationFabric.js +36 -5
- package/dist/output-gateway/transformations/ParkingsTransformationFabric.js.map +1 -1
- package/dist/schema-definitions/index.d.ts +4 -0
- package/dist/schema-definitions/index.js +10 -0
- package/dist/schema-definitions/index.js.map +1 -1
- package/docs/implementation_documentation.md +0 -28
- package/docs/openapi-output.yaml +258 -611
- package/package.json +1 -1
- package/db/example/99_refresh_views.sql +0 -1
- package/dist/integration-engine/businessRules/AbstractTariffChecker.d.ts +0 -10
- package/dist/integration-engine/businessRules/AbstractTariffChecker.js +0 -26
- package/dist/integration-engine/businessRules/AbstractTariffChecker.js.map +0 -1
- package/dist/integration-engine/businessRules/TariffCheckerFactory.d.ts +0 -8
- package/dist/integration-engine/businessRules/TariffCheckerFactory.js +0 -22
- package/dist/integration-engine/businessRules/TariffCheckerFactory.js.map +0 -1
- package/dist/integration-engine/businessRules/TskTariffChecker.d.ts +0 -6
- package/dist/integration-engine/businessRules/TskTariffChecker.js +0 -13
- package/dist/integration-engine/businessRules/TskTariffChecker.js.map +0 -1
- package/dist/integration-engine/businessRules/interfaces/ITariffChecker.d.ts +0 -4
- package/dist/integration-engine/businessRules/interfaces/ITariffChecker.js +0 -3
- package/dist/integration-engine/businessRules/interfaces/ITariffChecker.js.map +0 -1
- package/dist/integration-engine/businessRules/interfaces/ITariffCheckerResult.d.ts +0 -6
- package/dist/integration-engine/businessRules/interfaces/ITariffCheckerResult.js +0 -3
- package/dist/integration-engine/businessRules/interfaces/ITariffCheckerResult.js.map +0 -1
- package/dist/integration-engine/businessRules/interfaces/ITariffInfo.d.ts +0 -7
- package/dist/integration-engine/businessRules/interfaces/ITariffInfo.js +0 -3
- package/dist/integration-engine/businessRules/interfaces/ITariffInfo.js.map +0 -1
- package/dist/integration-engine/businessRules/rules/IRule.d.ts +0 -3
- package/dist/integration-engine/businessRules/rules/IRule.js +0 -3
- package/dist/integration-engine/businessRules/rules/IRule.js.map +0 -1
- package/dist/integration-engine/businessRules/rules/MaxChargeInteractionsRule.d.ts +0 -5
- package/dist/integration-engine/businessRules/rules/MaxChargeInteractionsRule.js +0 -17
- package/dist/integration-engine/businessRules/rules/MaxChargeInteractionsRule.js.map +0 -1
- package/dist/integration-engine/businessRules/rules/MaxPriceRule.d.ts +0 -5
- package/dist/integration-engine/businessRules/rules/MaxPriceRule.js +0 -15
- package/dist/integration-engine/businessRules/rules/MaxPriceRule.js.map +0 -1
- package/dist/integration-engine/businessRules/rules/RuleEnum.d.ts +0 -5
- package/dist/integration-engine/businessRules/rules/RuleEnum.js +0 -10
- package/dist/integration-engine/businessRules/rules/RuleEnum.js.map +0 -1
- package/dist/integration-engine/businessRules/rules/RuleFactory.d.ts +0 -7
- package/dist/integration-engine/businessRules/rules/RuleFactory.js +0 -23
- package/dist/integration-engine/businessRules/rules/RuleFactory.js.map +0 -1
- package/dist/integration-engine/businessRules/rules/ZeroMaxParkingTime.d.ts +0 -5
- package/dist/integration-engine/businessRules/rules/ZeroMaxParkingTime.js +0 -10
- package/dist/integration-engine/businessRules/rules/ZeroMaxParkingTime.js.map +0 -1
- package/dist/integration-engine/helpers/LocationBuilderHelper.d.ts +0 -6
- package/dist/integration-engine/helpers/LocationBuilderHelper.js +0 -60
- package/dist/integration-engine/helpers/LocationBuilderHelper.js.map +0 -1
- package/dist/integration-engine/helpers/TskCalculationHelper.d.ts +0 -6
- package/dist/integration-engine/helpers/TskCalculationHelper.js +0 -36
- package/dist/integration-engine/helpers/TskCalculationHelper.js.map +0 -1
- package/dist/integration-engine/repositories/ParkingsBusinessErrorsRepository.d.ts +0 -7
- package/dist/integration-engine/repositories/ParkingsBusinessErrorsRepository.js +0 -26
- package/dist/integration-engine/repositories/ParkingsBusinessErrorsRepository.js.map +0 -1
- package/dist/integration-engine/transformations/IPRParkingTransformation.d.ts +0 -21
- package/dist/integration-engine/transformations/IPRParkingTransformation.js +0 -44
- package/dist/integration-engine/transformations/IPRParkingTransformation.js.map +0 -1
- package/dist/integration-engine/transformations/TSKParkingTariffTransformation.d.ts +0 -20
- package/dist/integration-engine/transformations/TSKParkingTariffTransformation.js +0 -135
- package/dist/integration-engine/transformations/TSKParkingTariffTransformation.js.map +0 -1
- package/dist/integration-engine/transformations/TSKParkingTransformation.d.ts +0 -19
- package/dist/integration-engine/transformations/TSKParkingTransformation.js +0 -78
- package/dist/integration-engine/transformations/TSKParkingTransformation.js.map +0 -1
- package/dist/integration-engine/workers/tasks/SaveParkingZonesPrague.d.ts +0 -39
- package/dist/integration-engine/workers/tasks/SaveParkingZonesPrague.js +0 -182
- package/dist/integration-engine/workers/tasks/SaveParkingZonesPrague.js.map +0 -1
- package/dist/output-gateway/data-access/TskDistrictsRepository.d.ts +0 -6
- package/dist/output-gateway/data-access/TskDistrictsRepository.js +0 -21
- package/dist/output-gateway/data-access/TskDistrictsRepository.js.map +0 -1
- package/dist/output-gateway/data-access/TskParkingLotsRepository.d.ts +0 -17
- package/dist/output-gateway/data-access/TskParkingLotsRepository.js +0 -159
- package/dist/output-gateway/data-access/TskParkingLotsRepository.js.map +0 -1
- package/dist/output-gateway/data-access/helpers/TskFeatureMapper.d.ts +0 -11
- package/dist/output-gateway/data-access/helpers/TskFeatureMapper.js +0 -37
- package/dist/output-gateway/data-access/helpers/TskFeatureMapper.js.map +0 -1
- package/dist/output-gateway/routers/v1/V1ParkingRouter.d.ts +0 -3
- package/dist/output-gateway/routers/v1/V1ParkingRouter.js +0 -46
- package/dist/output-gateway/routers/v1/V1ParkingRouter.js.map +0 -1
- package/dist/schema-definitions/datasources/interfaces/IIPRParkingJsonSchema.d.ts +0 -15
- package/dist/schema-definitions/datasources/interfaces/IIPRParkingJsonSchema.js +0 -3
- package/dist/schema-definitions/datasources/interfaces/IIPRParkingJsonSchema.js.map +0 -1
package/package.json
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
refresh materialized view v_tsk_average_occupancy;
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { ITariffChecker } from "./interfaces/ITariffChecker";
|
|
2
|
-
import { ITariffCheckerResult } from "./interfaces/ITariffCheckerResult";
|
|
3
|
-
import { RuleEnum } from "./rules/RuleEnum";
|
|
4
|
-
import RuleFactory from "./rules/RuleFactory";
|
|
5
|
-
export declare abstract class AbstractTariffChecker<T> implements ITariffChecker {
|
|
6
|
-
protected abstract ruleList: RuleEnum[];
|
|
7
|
-
protected ruleFactory: RuleFactory;
|
|
8
|
-
constructor();
|
|
9
|
-
isTariffValid(tariffInfo: T): ITariffCheckerResult<T>;
|
|
10
|
-
}
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.AbstractTariffChecker = void 0;
|
|
7
|
-
const RuleFactory_1 = __importDefault(require("./rules/RuleFactory"));
|
|
8
|
-
class AbstractTariffChecker {
|
|
9
|
-
constructor() {
|
|
10
|
-
this.ruleFactory = new RuleFactory_1.default();
|
|
11
|
-
}
|
|
12
|
-
isTariffValid(tariffInfo) {
|
|
13
|
-
for (const ruleType of this.ruleList) {
|
|
14
|
-
if (!this.ruleFactory.get(ruleType).isValid(tariffInfo)) {
|
|
15
|
-
return {
|
|
16
|
-
isValid: false,
|
|
17
|
-
failedRule: ruleType,
|
|
18
|
-
failedInput: tariffInfo,
|
|
19
|
-
};
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
return { isValid: true };
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
exports.AbstractTariffChecker = AbstractTariffChecker;
|
|
26
|
-
//# sourceMappingURL=AbstractTariffChecker.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"AbstractTariffChecker.js","sourceRoot":"","sources":["../../../src/integration-engine/businessRules/AbstractTariffChecker.ts"],"names":[],"mappings":";;;;;;AAGA,sEAA8C;AAE9C,MAAsB,qBAAqB;IAIvC;QACI,IAAI,CAAC,WAAW,GAAG,IAAI,qBAAW,EAAE,CAAC;IACzC,CAAC;IAEM,aAAa,CAAC,UAAa;QAC9B,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,QAAQ,EAAE;YAClC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;gBACrD,OAAO;oBACH,OAAO,EAAE,KAAK;oBACd,UAAU,EAAE,QAAQ;oBACpB,WAAW,EAAE,UAAU;iBAC1B,CAAC;aACL;SACJ;QAED,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAC7B,CAAC;CACJ;AArBD,sDAqBC"}
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.TariffCheckerEnum = void 0;
|
|
4
|
-
const golemio_errors_1 = require("@golemio/core/dist/shared/golemio-errors");
|
|
5
|
-
const TskTariffChecker_1 = require("./TskTariffChecker");
|
|
6
|
-
var TariffCheckerEnum;
|
|
7
|
-
(function (TariffCheckerEnum) {
|
|
8
|
-
TariffCheckerEnum["TSK"] = "tsk";
|
|
9
|
-
})(TariffCheckerEnum || (exports.TariffCheckerEnum = TariffCheckerEnum = {}));
|
|
10
|
-
class TariffCheckerFactory {
|
|
11
|
-
constructor() { }
|
|
12
|
-
static get(checkerType) {
|
|
13
|
-
switch (checkerType) {
|
|
14
|
-
case TariffCheckerEnum.TSK:
|
|
15
|
-
return new TskTariffChecker_1.TskTariffChecker();
|
|
16
|
-
default:
|
|
17
|
-
throw new golemio_errors_1.GeneralError(`Unexpected type: '${checkerType}' in a TariffCheckerFactory.`, TariffCheckerFactory.name);
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
exports.default = TariffCheckerFactory;
|
|
22
|
-
//# sourceMappingURL=TariffCheckerFactory.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TariffCheckerFactory.js","sourceRoot":"","sources":["../../../src/integration-engine/businessRules/TariffCheckerFactory.ts"],"names":[],"mappings":";;;AAAA,6EAAwE;AACxE,yDAAsD;AAEtD,IAAY,iBAEX;AAFD,WAAY,iBAAiB;IACzB,gCAAW,CAAA;AACf,CAAC,EAFW,iBAAiB,iCAAjB,iBAAiB,QAE5B;AAED,MAAqB,oBAAoB;IACrC,gBAAe,CAAC;IAET,MAAM,CAAC,GAAG,CAAC,WAA8B;QAC5C,QAAQ,WAAW,EAAE;YACjB,KAAK,iBAAiB,CAAC,GAAG;gBACtB,OAAO,IAAI,mCAAgB,EAAE,CAAC;YAClC;gBACI,MAAM,IAAI,6BAAY,CAAC,qBAAqB,WAAW,8BAA8B,EAAE,oBAAoB,CAAC,IAAI,CAAC,CAAC;SACzH;IACL,CAAC;CACJ;AAXD,uCAWC"}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import { AbstractTariffChecker } from "./AbstractTariffChecker";
|
|
2
|
-
import { ITariffInfo } from "./interfaces/ITariffInfo";
|
|
3
|
-
import { RuleEnum } from "./rules/RuleEnum";
|
|
4
|
-
export declare class TskTariffChecker extends AbstractTariffChecker<ITariffInfo> {
|
|
5
|
-
protected ruleList: RuleEnum[];
|
|
6
|
-
}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.TskTariffChecker = void 0;
|
|
4
|
-
const AbstractTariffChecker_1 = require("./AbstractTariffChecker");
|
|
5
|
-
const RuleEnum_1 = require("./rules/RuleEnum");
|
|
6
|
-
class TskTariffChecker extends AbstractTariffChecker_1.AbstractTariffChecker {
|
|
7
|
-
constructor() {
|
|
8
|
-
super(...arguments);
|
|
9
|
-
this.ruleList = [RuleEnum_1.RuleEnum.ZeroMaxParkingTime, RuleEnum_1.RuleEnum.MaxChargeIterationsRule, RuleEnum_1.RuleEnum.MaxPriceRule];
|
|
10
|
-
}
|
|
11
|
-
}
|
|
12
|
-
exports.TskTariffChecker = TskTariffChecker;
|
|
13
|
-
//# sourceMappingURL=TskTariffChecker.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TskTariffChecker.js","sourceRoot":"","sources":["../../../src/integration-engine/businessRules/TskTariffChecker.ts"],"names":[],"mappings":";;;AAAA,mEAAgE;AAEhE,+CAA4C;AAE5C,MAAa,gBAAiB,SAAQ,6CAAkC;IAAxE;;QACc,aAAQ,GAAG,CAAC,mBAAQ,CAAC,kBAAkB,EAAE,mBAAQ,CAAC,uBAAuB,EAAE,mBAAQ,CAAC,YAAY,CAAC,CAAC;IAChH,CAAC;CAAA;AAFD,4CAEC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ITariffChecker.js","sourceRoot":"","sources":["../../../../src/integration-engine/businessRules/interfaces/ITariffChecker.ts"],"names":[],"mappings":""}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ITariffCheckerResult.js","sourceRoot":"","sources":["../../../../src/integration-engine/businessRules/interfaces/ITariffCheckerResult.ts"],"names":[],"mappings":""}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ITariffInfo.js","sourceRoot":"","sources":["../../../../src/integration-engine/businessRules/interfaces/ITariffInfo.ts"],"names":[],"mappings":""}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"IRule.js","sourceRoot":"","sources":["../../../../src/integration-engine/businessRules/rules/IRule.ts"],"names":[],"mappings":""}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.MaxChargeIterationsRule = void 0;
|
|
4
|
-
const TskCalculationHelper_1 = require("../../helpers/TskCalculationHelper");
|
|
5
|
-
class MaxChargeIterationsRule {
|
|
6
|
-
isValid(tariffInfo) {
|
|
7
|
-
if (tariffInfo.maxParkingTime === undefined ||
|
|
8
|
-
tariffInfo.pricePerHour === undefined ||
|
|
9
|
-
tariffInfo.minPrice === undefined) {
|
|
10
|
-
return false;
|
|
11
|
-
}
|
|
12
|
-
const maxChargeIterations = TskCalculationHelper_1.TskCalculationHelper.getMaxChargeIterations(tariffInfo.maxParkingTime, tariffInfo.minPrice, tariffInfo.pricePerHour);
|
|
13
|
-
return Math.round(maxChargeIterations) === maxChargeIterations;
|
|
14
|
-
}
|
|
15
|
-
}
|
|
16
|
-
exports.MaxChargeIterationsRule = MaxChargeIterationsRule;
|
|
17
|
-
//# sourceMappingURL=MaxChargeInteractionsRule.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"MaxChargeInteractionsRule.js","sourceRoot":"","sources":["../../../../src/integration-engine/businessRules/rules/MaxChargeInteractionsRule.ts"],"names":[],"mappings":";;;AAAA,6EAAwE;AAIxE,MAAa,uBAAuB;IACzB,OAAO,CAAC,UAAuB;QAClC,IACI,UAAU,CAAC,cAAc,KAAK,SAAS;YACvC,UAAU,CAAC,YAAY,KAAK,SAAS;YACrC,UAAU,CAAC,QAAQ,KAAK,SAAS,EACnC;YACE,OAAO,KAAK,CAAC;SAChB;QAED,MAAM,mBAAmB,GAAG,2CAAoB,CAAC,sBAAsB,CACnE,UAAU,CAAC,cAAc,EACzB,UAAU,CAAC,QAAQ,EACnB,UAAU,CAAC,YAAY,CAC1B,CAAC;QAEF,OAAO,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,KAAK,mBAAmB,CAAC;IACnE,CAAC;CACJ;AAlBD,0DAkBC"}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.MaxPriceRule = void 0;
|
|
4
|
-
class MaxPriceRule {
|
|
5
|
-
isValid(tariffInfo) {
|
|
6
|
-
if (tariffInfo.pricePerHour === undefined ||
|
|
7
|
-
tariffInfo.maxParkingTime === undefined ||
|
|
8
|
-
tariffInfo.maxPrice === undefined) {
|
|
9
|
-
return false;
|
|
10
|
-
}
|
|
11
|
-
return !(tariffInfo.pricePerHour * tariffInfo.maxParkingTime < tariffInfo.maxPrice);
|
|
12
|
-
}
|
|
13
|
-
}
|
|
14
|
-
exports.MaxPriceRule = MaxPriceRule;
|
|
15
|
-
//# sourceMappingURL=MaxPriceRule.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"MaxPriceRule.js","sourceRoot":"","sources":["../../../../src/integration-engine/businessRules/rules/MaxPriceRule.ts"],"names":[],"mappings":";;;AAGA,MAAa,YAAY;IACd,OAAO,CAAC,UAAuB;QAClC,IACI,UAAU,CAAC,YAAY,KAAK,SAAS;YACrC,UAAU,CAAC,cAAc,KAAK,SAAS;YACvC,UAAU,CAAC,QAAQ,KAAK,SAAS,EACnC;YACE,OAAO,KAAK,CAAC;SAChB;QAED,OAAO,CAAC,CAAC,UAAU,CAAC,YAAY,GAAG,UAAU,CAAC,cAAc,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;IACxF,CAAC;CACJ;AAZD,oCAYC"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.RuleEnum = void 0;
|
|
4
|
-
var RuleEnum;
|
|
5
|
-
(function (RuleEnum) {
|
|
6
|
-
RuleEnum["MaxPriceRule"] = "MaxPriceRule";
|
|
7
|
-
RuleEnum["MaxChargeIterationsRule"] = "MaxChargeIterationsRule";
|
|
8
|
-
RuleEnum["ZeroMaxParkingTime"] = "ZeroMaxParkingTime";
|
|
9
|
-
})(RuleEnum || (exports.RuleEnum = RuleEnum = {}));
|
|
10
|
-
//# sourceMappingURL=RuleEnum.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"RuleEnum.js","sourceRoot":"","sources":["../../../../src/integration-engine/businessRules/rules/RuleEnum.ts"],"names":[],"mappings":";;;AAAA,IAAY,QAIX;AAJD,WAAY,QAAQ;IAChB,yCAA6B,CAAA;IAC7B,+DAAmD,CAAA;IACnD,qDAAyC,CAAA;AAC7C,CAAC,EAJW,QAAQ,wBAAR,QAAQ,QAInB"}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const golemio_errors_1 = require("@golemio/core/dist/shared/golemio-errors");
|
|
4
|
-
const MaxChargeInteractionsRule_1 = require("./MaxChargeInteractionsRule");
|
|
5
|
-
const MaxPriceRule_1 = require("./MaxPriceRule");
|
|
6
|
-
const RuleEnum_1 = require("./RuleEnum");
|
|
7
|
-
const ZeroMaxParkingTime_1 = require("./ZeroMaxParkingTime");
|
|
8
|
-
class RuleFactory {
|
|
9
|
-
constructor() {
|
|
10
|
-
this.instances = new Map();
|
|
11
|
-
this.instances.set(RuleEnum_1.RuleEnum.MaxChargeIterationsRule, new MaxChargeInteractionsRule_1.MaxChargeIterationsRule());
|
|
12
|
-
this.instances.set(RuleEnum_1.RuleEnum.MaxPriceRule, new MaxPriceRule_1.MaxPriceRule());
|
|
13
|
-
this.instances.set(RuleEnum_1.RuleEnum.ZeroMaxParkingTime, new ZeroMaxParkingTime_1.ZeroMaxParkingTime());
|
|
14
|
-
}
|
|
15
|
-
get(ruleType) {
|
|
16
|
-
if (!this.instances.has(ruleType)) {
|
|
17
|
-
throw new golemio_errors_1.GeneralError(`Unable to find rule: '${ruleType.toString()}'.`, RuleFactory.name);
|
|
18
|
-
}
|
|
19
|
-
return this.instances.get(ruleType);
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
exports.default = RuleFactory;
|
|
23
|
-
//# sourceMappingURL=RuleFactory.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"RuleFactory.js","sourceRoot":"","sources":["../../../../src/integration-engine/businessRules/rules/RuleFactory.ts"],"names":[],"mappings":";;AAAA,6EAAwE;AAExE,2EAAsE;AACtE,iDAA8C;AAC9C,yCAAsC;AACtC,6DAA0D;AAE1D,MAAqB,WAAW;IAG5B;QACI,IAAI,CAAC,SAAS,GAAG,IAAI,GAAG,EAAE,CAAC;QAC3B,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,mBAAQ,CAAC,uBAAuB,EAAE,IAAI,mDAAuB,EAAE,CAAC,CAAC;QACpF,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,mBAAQ,CAAC,YAAY,EAAE,IAAI,2BAAY,EAAE,CAAC,CAAC;QAC9D,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,mBAAQ,CAAC,kBAAkB,EAAE,IAAI,uCAAkB,EAAE,CAAC,CAAC;IAC9E,CAAC;IAEM,GAAG,CAAC,QAAkB;QACzB,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE;YAC/B,MAAM,IAAI,6BAAY,CAAC,yBAAyB,QAAQ,CAAC,QAAQ,EAAE,IAAI,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;SAC9F;QAED,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAE,CAAC;IACzC,CAAC;CACJ;AAjBD,8BAiBC"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ZeroMaxParkingTime = void 0;
|
|
4
|
-
class ZeroMaxParkingTime {
|
|
5
|
-
isValid(tariffInfo) {
|
|
6
|
-
return tariffInfo.maxParkingTime !== 0;
|
|
7
|
-
}
|
|
8
|
-
}
|
|
9
|
-
exports.ZeroMaxParkingTime = ZeroMaxParkingTime;
|
|
10
|
-
//# sourceMappingURL=ZeroMaxParkingTime.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ZeroMaxParkingTime.js","sourceRoot":"","sources":["../../../../src/integration-engine/businessRules/rules/ZeroMaxParkingTime.ts"],"names":[],"mappings":";;;AAGA,MAAa,kBAAkB;IACpB,OAAO,CAAC,UAAuB;QAClC,OAAO,UAAU,CAAC,cAAc,KAAK,CAAC,CAAC;IAC3C,CAAC;CACJ;AAJD,gDAIC"}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import { IParking, IParkingLocation } from "../ParkingInterface";
|
|
2
|
-
import { IIPRParkingTransformed } from "../transformations/IPRParkingTransformation";
|
|
3
|
-
export declare const mergeParkingZoneDataSets: (dataTsk: IParking[], dataIpr: IIPRParkingTransformed) => Promise<{
|
|
4
|
-
parking: IParking[];
|
|
5
|
-
locations: IParkingLocation[];
|
|
6
|
-
}>;
|
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.mergeParkingZoneDataSets = void 0;
|
|
7
|
-
const uuid_by_string_1 = __importDefault(require("uuid-by-string"));
|
|
8
|
-
const GeodataHelper_1 = require("./GeodataHelper");
|
|
9
|
-
const IPR_DATA_PROVIDER = "/opendata.iprpraha.cz";
|
|
10
|
-
const getLocationData = async (dataTsk, dataIprTransformed) => {
|
|
11
|
-
const locationBaseData = {
|
|
12
|
-
data_provider: dataTsk.data_provider,
|
|
13
|
-
location: dataTsk.location,
|
|
14
|
-
centroid: dataTsk.centroid,
|
|
15
|
-
total_spot_number: dataTsk.total_spot_number,
|
|
16
|
-
source: dataTsk.source,
|
|
17
|
-
source_id: dataTsk.source_id,
|
|
18
|
-
};
|
|
19
|
-
if (!dataIprTransformed || dataIprTransformed.length === 1) {
|
|
20
|
-
return [
|
|
21
|
-
{
|
|
22
|
-
...locationBaseData,
|
|
23
|
-
id: dataIprTransformed
|
|
24
|
-
? dataIprTransformed[0].id
|
|
25
|
-
: (0, uuid_by_string_1.default)(JSON.stringify({ source_id: dataTsk.source_id, source: `${dataTsk.source}`.toUpperCase() })),
|
|
26
|
-
total_spot_number: dataIprTransformed ? dataIprTransformed[0].total_spot_number : dataTsk.total_spot_number,
|
|
27
|
-
},
|
|
28
|
-
];
|
|
29
|
-
}
|
|
30
|
-
return dataIprTransformed.map((el) => {
|
|
31
|
-
const centroid = (0, GeodataHelper_1.getPointOnFeature)(el.location);
|
|
32
|
-
return {
|
|
33
|
-
id: el.id,
|
|
34
|
-
...locationBaseData,
|
|
35
|
-
location: el.location,
|
|
36
|
-
total_spot_number: el.total_spot_number,
|
|
37
|
-
centroid,
|
|
38
|
-
};
|
|
39
|
-
});
|
|
40
|
-
};
|
|
41
|
-
const mergeParkingZoneDataSets = async (dataTsk, dataIpr) => {
|
|
42
|
-
const result = {
|
|
43
|
-
parking: [],
|
|
44
|
-
locations: [],
|
|
45
|
-
};
|
|
46
|
-
for (const item of dataTsk) {
|
|
47
|
-
const parkingData = { ...item };
|
|
48
|
-
if (dataIpr[item.source_id]) {
|
|
49
|
-
parkingData.location = (0, GeodataHelper_1.mergeGeometries)(dataIpr[item.source_id]);
|
|
50
|
-
parkingData.data_provider += IPR_DATA_PROVIDER;
|
|
51
|
-
}
|
|
52
|
-
parkingData.centroid = (0, GeodataHelper_1.getPointOnFeature)(parkingData.location);
|
|
53
|
-
const locationData = await getLocationData(parkingData, dataIpr[item.source_id]);
|
|
54
|
-
result.parking.push(parkingData);
|
|
55
|
-
result.locations.push(...locationData);
|
|
56
|
-
}
|
|
57
|
-
return result;
|
|
58
|
-
};
|
|
59
|
-
exports.mergeParkingZoneDataSets = mergeParkingZoneDataSets;
|
|
60
|
-
//# sourceMappingURL=LocationBuilderHelper.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"LocationBuilderHelper.js","sourceRoot":"","sources":["../../../src/integration-engine/helpers/LocationBuilderHelper.ts"],"names":[],"mappings":";;;;;;AAEA,oEAA6C;AAC7C,mDAA+E;AAE/E,MAAM,iBAAiB,GAAG,uBAAuB,CAAC;AAElD,MAAM,eAAe,GAAG,KAAK,EACzB,OAAiB,EACjB,kBAA+D,EACpC,EAAE;IAC7B,MAAM,gBAAgB,GAAiC;QACnD,aAAa,EAAE,OAAO,CAAC,aAAa;QACpC,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,iBAAiB,EAAE,OAAO,CAAC,iBAAiB;QAC5C,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,SAAS,EAAE,OAAO,CAAC,SAAS;KAC/B,CAAC;IAEF,IAAI,CAAC,kBAAkB,IAAI,kBAAkB,CAAC,MAAM,KAAK,CAAC,EAAE;QACxD,OAAO;YACH;gBACI,GAAG,gBAAgB;gBACnB,EAAE,EAAE,kBAAkB;oBAClB,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,EAAE;oBAC1B,CAAC,CAAC,IAAA,wBAAe,EACX,IAAI,CAAC,SAAS,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC,CAC9F;gBACP,iBAAiB,EAAE,kBAAkB,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,OAAO,CAAC,iBAAiB;aAC9G;SACJ,CAAC;KACL;IAED,OAAO,kBAAkB,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;QACjC,MAAM,QAAQ,GAAG,IAAA,iCAAiB,EAAC,EAAE,CAAC,QAAQ,CAAC,CAAC;QAEhD,OAAO;YACH,EAAE,EAAE,EAAE,CAAC,EAAE;YACT,GAAG,gBAAgB;YACnB,QAAQ,EAAE,EAAE,CAAC,QAAQ;YACrB,iBAAiB,EAAE,EAAE,CAAC,iBAAiB;YACvC,QAAQ;SACX,CAAC;IACN,CAAC,CAAC,CAAC;AACP,CAAC,CAAC;AAEK,MAAM,wBAAwB,GAAG,KAAK,EACzC,OAAmB,EACnB,OAA+B,EACgC,EAAE;IACjE,MAAM,MAAM,GAAG;QACX,OAAO,EAAE,EAAgB;QACzB,SAAS,EAAE,EAAwB;KACtC,CAAC;IAEF,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE;QACxB,MAAM,WAAW,GAAG,EAAE,GAAG,IAAI,EAAE,CAAC;QAEhC,IAAI,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE;YACzB,WAAW,CAAC,QAAQ,GAAG,IAAA,+BAAe,EAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;YAChE,WAAW,CAAC,aAAa,IAAI,iBAAiB,CAAC;SAClD;QAED,WAAW,CAAC,QAAQ,GAAG,IAAA,iCAAiB,EAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAE/D,MAAM,YAAY,GAAG,MAAM,eAAe,CAAC,WAAW,EAAE,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;QAEjF,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACjC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,CAAC;KAC1C;IACD,OAAO,MAAM,CAAC;AAClB,CAAC,CAAC;AAzBW,QAAA,wBAAwB,4BAyBnC"}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
export declare class TskCalculationHelper {
|
|
2
|
-
static getMinPrice(minPrice: number, pricePerHour: number): number;
|
|
3
|
-
static getMaxChargeIterations(maxParkingTime: number, minPrice: number, pricePerHour: number): number;
|
|
4
|
-
static getChargeInterval(minPrice: number, pricePerHour: number): number;
|
|
5
|
-
static getCharge(minPrice: number, pricePerHour: number): number;
|
|
6
|
-
}
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.TskCalculationHelper = void 0;
|
|
4
|
-
class TskCalculationHelper {
|
|
5
|
-
static getMinPrice(minPrice, pricePerHour) {
|
|
6
|
-
return minPrice === 0 ? pricePerHour : minPrice;
|
|
7
|
-
}
|
|
8
|
-
static getMaxChargeIterations(maxParkingTime, minPrice, pricePerHour) {
|
|
9
|
-
if (pricePerHour === 0) {
|
|
10
|
-
return maxParkingTime;
|
|
11
|
-
}
|
|
12
|
-
else {
|
|
13
|
-
minPrice = this.getMinPrice(minPrice, pricePerHour);
|
|
14
|
-
return (maxParkingTime * pricePerHour) / minPrice;
|
|
15
|
-
}
|
|
16
|
-
}
|
|
17
|
-
static getChargeInterval(minPrice, pricePerHour) {
|
|
18
|
-
if (pricePerHour === 0) {
|
|
19
|
-
return 3600;
|
|
20
|
-
}
|
|
21
|
-
else {
|
|
22
|
-
minPrice = this.getMinPrice(minPrice, pricePerHour);
|
|
23
|
-
return (3600 / pricePerHour) * minPrice;
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
static getCharge(minPrice, pricePerHour) {
|
|
27
|
-
if (pricePerHour === 0) {
|
|
28
|
-
return 0;
|
|
29
|
-
}
|
|
30
|
-
else {
|
|
31
|
-
return this.getMinPrice(minPrice, pricePerHour);
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
exports.TskCalculationHelper = TskCalculationHelper;
|
|
36
|
-
//# sourceMappingURL=TskCalculationHelper.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TskCalculationHelper.js","sourceRoot":"","sources":["../../../src/integration-engine/helpers/TskCalculationHelper.ts"],"names":[],"mappings":";;;AAAA,MAAa,oBAAoB;IACtB,MAAM,CAAC,WAAW,CAAC,QAAgB,EAAE,YAAoB;QAC5D,OAAO,QAAQ,KAAK,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,QAAQ,CAAC;IACpD,CAAC;IAEM,MAAM,CAAC,sBAAsB,CAAC,cAAsB,EAAE,QAAgB,EAAE,YAAoB;QAC/F,IAAI,YAAY,KAAK,CAAC,EAAE;YACpB,OAAO,cAAc,CAAC;SACzB;aAAM;YACH,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;YAEpD,OAAO,CAAC,cAAc,GAAG,YAAY,CAAC,GAAG,QAAQ,CAAC;SACrD;IACL,CAAC;IAEM,MAAM,CAAC,iBAAiB,CAAC,QAAgB,EAAE,YAAoB;QAClE,IAAI,YAAY,KAAK,CAAC,EAAE;YACpB,OAAO,IAAI,CAAC;SACf;aAAM;YACH,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;YAEpD,OAAO,CAAC,IAAI,GAAG,YAAY,CAAC,GAAG,QAAQ,CAAC;SAC3C;IACL,CAAC;IAEM,MAAM,CAAC,SAAS,CAAC,QAAgB,EAAE,YAAoB;QAC1D,IAAI,YAAY,KAAK,CAAC,EAAE;YACpB,OAAO,CAAC,CAAC;SACZ;aAAM;YACH,OAAO,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;SACnD;IACL,CAAC;CACJ;AAhCD,oDAgCC"}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { IBusinessError } from "../../schema-definitions/models/interfaces/IBusinessError";
|
|
2
|
-
import { IModel } from "@golemio/core/dist/integration-engine/models/IModel";
|
|
3
|
-
import { PostgresModel } from "@golemio/core/dist/integration-engine/models/PostgresModel";
|
|
4
|
-
export declare class ParkingsBusinessErrorsRepository extends PostgresModel implements IModel {
|
|
5
|
-
constructor();
|
|
6
|
-
save: (errors: IBusinessError[]) => Promise<void>;
|
|
7
|
-
}
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ParkingsBusinessErrorsRepository = void 0;
|
|
4
|
-
const _sch_1 = require("../../schema-definitions");
|
|
5
|
-
const BusinessError_1 = require("../../schema-definitions/models/BusinessError");
|
|
6
|
-
const PostgresModel_1 = require("@golemio/core/dist/integration-engine/models/PostgresModel");
|
|
7
|
-
const golemio_validator_1 = require("@golemio/core/dist/shared/golemio-validator");
|
|
8
|
-
class ParkingsBusinessErrorsRepository extends PostgresModel_1.PostgresModel {
|
|
9
|
-
constructor() {
|
|
10
|
-
super("ParkingsBusinessErrorsRepository", {
|
|
11
|
-
outputSequelizeAttributes: BusinessError_1.BusinessError.attributeModel,
|
|
12
|
-
pgSchema: _sch_1.Parkings.pgSchema,
|
|
13
|
-
pgTableName: "parkings_business_errors",
|
|
14
|
-
savingType: "insertOnly",
|
|
15
|
-
sequelizeAdditionalSettings: {
|
|
16
|
-
timestamps: false,
|
|
17
|
-
},
|
|
18
|
-
}, new golemio_validator_1.JSONSchemaValidator("ParkingsBusinessErrorsRepositoryValidator", BusinessError_1.BusinessError.jsonSchema));
|
|
19
|
-
this.save = async (errors) => {
|
|
20
|
-
await this.validator.Validate(errors);
|
|
21
|
-
await this.sequelizeModel.bulkCreate(errors, { ignoreDuplicates: true });
|
|
22
|
-
};
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
exports.ParkingsBusinessErrorsRepository = ParkingsBusinessErrorsRepository;
|
|
26
|
-
//# sourceMappingURL=ParkingsBusinessErrorsRepository.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ParkingsBusinessErrorsRepository.js","sourceRoot":"","sources":["../../../src/integration-engine/repositories/ParkingsBusinessErrorsRepository.ts"],"names":[],"mappings":";;;AAAA,mDAAgC;AAChC,iFAA0D;AAG1D,8FAA2F;AAC3F,mFAAkF;AAElF,MAAa,gCAAiC,SAAQ,6BAAa;IAC/D;QACI,KAAK,CACD,kCAAkC,EAClC;YACI,yBAAyB,EAAE,6BAAa,CAAC,cAAc;YACvD,QAAQ,EAAE,eAAQ,CAAC,QAAQ;YAC3B,WAAW,EAAE,0BAA0B;YACvC,UAAU,EAAE,YAAY;YACxB,2BAA2B,EAAE;gBACzB,UAAU,EAAE,KAAK;aACpB;SACJ,EACD,IAAI,uCAAmB,CAAC,2CAA2C,EAAE,6BAAa,CAAC,UAAU,CAAC,CACjG,CAAC;QAGC,SAAI,GAAG,KAAK,EAAE,MAAwB,EAAE,EAAE;YAC7C,MAAM,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YACtC,MAAM,IAAI,CAAC,cAAc,CAAC,UAAU,CAAgB,MAAM,EAAE,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC,CAAC;QAC5F,CAAC,CAAC;IALF,CAAC;CAMJ;AArBD,4EAqBC"}
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import { BaseTransformation, ITransformation } from "@golemio/core/dist/integration-engine";
|
|
2
|
-
import { IGeoCoordinatesMultiPolygon, IGeoCoordinatesPolygon } from "@golemio/core/dist/output-gateway/Geo";
|
|
3
|
-
import { IIPRParkingJsonFeature } from "../../schema-definitions/datasources/interfaces/IIPRParkingJsonSchema";
|
|
4
|
-
export interface IIPRParkingElementTransformed {
|
|
5
|
-
id: string;
|
|
6
|
-
location: IGeoCoordinatesPolygon | IGeoCoordinatesMultiPolygon;
|
|
7
|
-
total_spot_number: number;
|
|
8
|
-
}
|
|
9
|
-
interface IIPRParkingElementData extends IIPRParkingElementTransformed {
|
|
10
|
-
source_id: string;
|
|
11
|
-
}
|
|
12
|
-
export interface IIPRParkingTransformed {
|
|
13
|
-
[key: string]: IIPRParkingElementTransformed[];
|
|
14
|
-
}
|
|
15
|
-
export declare class IPRParkingTransformation extends BaseTransformation implements ITransformation {
|
|
16
|
-
name: string;
|
|
17
|
-
constructor();
|
|
18
|
-
transform: (data: IIPRParkingJsonFeature[]) => Promise<IIPRParkingTransformed>;
|
|
19
|
-
protected transformElement: (element: IIPRParkingJsonFeature) => IIPRParkingElementData;
|
|
20
|
-
}
|
|
21
|
-
export {};
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.IPRParkingTransformation = void 0;
|
|
4
|
-
const integration_engine_1 = require("@golemio/core/dist/integration-engine");
|
|
5
|
-
const _sch_1 = require("../../schema-definitions");
|
|
6
|
-
class IPRParkingTransformation extends integration_engine_1.BaseTransformation {
|
|
7
|
-
constructor() {
|
|
8
|
-
super();
|
|
9
|
-
this.transform = async (data) => {
|
|
10
|
-
const result = {};
|
|
11
|
-
for (const element of data) {
|
|
12
|
-
const item = this.transformElement(element);
|
|
13
|
-
if (result[item.source_id]) {
|
|
14
|
-
result[item.source_id].push({
|
|
15
|
-
id: item.id,
|
|
16
|
-
location: item.location,
|
|
17
|
-
total_spot_number: item.total_spot_number,
|
|
18
|
-
});
|
|
19
|
-
}
|
|
20
|
-
else {
|
|
21
|
-
result[item.source_id] = [
|
|
22
|
-
{
|
|
23
|
-
id: item.id,
|
|
24
|
-
location: item.location,
|
|
25
|
-
total_spot_number: item.total_spot_number,
|
|
26
|
-
},
|
|
27
|
-
];
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
return result;
|
|
31
|
-
};
|
|
32
|
-
this.transformElement = (element) => {
|
|
33
|
-
return {
|
|
34
|
-
id: element.properties.ZPS_ID,
|
|
35
|
-
source_id: element.properties.TARIFTAB,
|
|
36
|
-
location: element.geometry,
|
|
37
|
-
total_spot_number: +element.properties.PS_ZPS,
|
|
38
|
-
};
|
|
39
|
-
};
|
|
40
|
-
this.name = _sch_1.Parkings.ipr.name + "Data";
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
exports.IPRParkingTransformation = IPRParkingTransformation;
|
|
44
|
-
//# sourceMappingURL=IPRParkingTransformation.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"IPRParkingTransformation.js","sourceRoot":"","sources":["../../../src/integration-engine/transformations/IPRParkingTransformation.ts"],"names":[],"mappings":";;;AAAA,8EAA4F;AAC5F,mDAAgC;AAkBhC,MAAa,wBAAyB,SAAQ,uCAAkB;IAG5D;QACI,KAAK,EAAE,CAAC;QAIL,cAAS,GAAG,KAAK,EAAE,IAA8B,EAAmC,EAAE;YACzF,MAAM,MAAM,GAA2B,EAAE,CAAC;YAC1C,KAAK,MAAM,OAAO,IAAI,IAAI,EAAE;gBACxB,MAAM,IAAI,GAAG,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;gBAE5C,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE;oBACxB,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC;wBACxB,EAAE,EAAE,IAAI,CAAC,EAAE;wBACX,QAAQ,EAAE,IAAI,CAAC,QAAQ;wBACvB,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;qBAC5C,CAAC,CAAC;iBACN;qBAAM;oBACH,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG;wBACrB;4BACI,EAAE,EAAE,IAAI,CAAC,EAAE;4BACX,QAAQ,EAAE,IAAI,CAAC,QAAQ;4BACvB,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;yBAC5C;qBACJ,CAAC;iBACL;aACJ;YACD,OAAO,MAAM,CAAC;QAClB,CAAC,CAAC;QAEQ,qBAAgB,GAAG,CAAC,OAA+B,EAA0B,EAAE;YACrF,OAAO;gBACH,EAAE,EAAE,OAAO,CAAC,UAAU,CAAC,MAAM;gBAC7B,SAAS,EAAE,OAAO,CAAC,UAAU,CAAC,QAAQ;gBACtC,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,iBAAiB,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM;aAChD,CAAC;QACN,CAAC,CAAC;QAlCE,IAAI,CAAC,IAAI,GAAG,eAAQ,CAAC,GAAG,CAAC,IAAI,GAAG,MAAM,CAAC;IAC3C,CAAC;CAkCJ;AAxCD,4DAwCC"}
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { IParkingTariff } from "../../schema-definitions/models/interfaces/IParkingTariff";
|
|
2
|
-
import { BaseTransformation, ITransformation } from "@golemio/core/dist/integration-engine";
|
|
3
|
-
export declare class TSKParkingTariffTransformation extends BaseTransformation implements ITransformation {
|
|
4
|
-
name: string;
|
|
5
|
-
private readonly dataSource;
|
|
6
|
-
constructor();
|
|
7
|
-
transform: (data: {
|
|
8
|
-
tsk: Record<string, any>;
|
|
9
|
-
lastUpdated: Date;
|
|
10
|
-
}) => Promise<IParkingTariff[]>;
|
|
11
|
-
private hasEqualDescription;
|
|
12
|
-
private aggregateByDay;
|
|
13
|
-
private flattenPayAtHoliday;
|
|
14
|
-
private dayFormatter;
|
|
15
|
-
private openingHoursFormatter;
|
|
16
|
-
protected transformElement: (element: {
|
|
17
|
-
data: any;
|
|
18
|
-
lastUpdated: Date;
|
|
19
|
-
}) => IParkingTariff[];
|
|
20
|
-
}
|