@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.
Files changed (127) hide show
  1. package/db/example/00_clear_test_data.sql +1 -1
  2. package/db/example/01_sql_dump.sql +2 -2
  3. package/db/example/04_tsk_parking_v2.sql +1 -2
  4. package/db/migrations/postgresql/20250804104739-legacy-api-allowed.js +53 -0
  5. package/db/migrations/postgresql/20250828092217-tsk-v2-router.js +53 -0
  6. package/db/migrations/postgresql/sqls/20250804104739-legacy-api-allowed-down.sql +44 -0
  7. package/db/migrations/postgresql/sqls/20250804104739-legacy-api-allowed-up.sql +6 -0
  8. package/db/migrations/postgresql/sqls/20250828092217-tsk-v2-router-down.sql +1 -0
  9. package/db/migrations/postgresql/sqls/20250828092217-tsk-v2-router-up.sql +54 -0
  10. package/dist/helpers/constants/SourceEnum.d.ts +0 -1
  11. package/dist/helpers/constants/SourceEnum.js +0 -1
  12. package/dist/helpers/constants/SourceEnum.js.map +1 -1
  13. package/dist/integration-engine/businessRules/DataSourceIntegrationChecker.js +0 -1
  14. package/dist/integration-engine/businessRules/DataSourceIntegrationChecker.js.map +1 -1
  15. package/dist/integration-engine/helpers/GeodataHelper.d.ts +1 -3
  16. package/dist/integration-engine/helpers/GeodataHelper.js +1 -26
  17. package/dist/integration-engine/helpers/GeodataHelper.js.map +1 -1
  18. package/dist/integration-engine/index.d.ts +1 -1
  19. package/dist/integration-engine/ioc/Di.js +0 -6
  20. package/dist/integration-engine/ioc/Di.js.map +1 -1
  21. package/dist/integration-engine/ioc/ModuleContainerToken.d.ts +0 -1
  22. package/dist/integration-engine/ioc/ModuleContainerToken.js +0 -1
  23. package/dist/integration-engine/ioc/ModuleContainerToken.js.map +1 -1
  24. package/dist/integration-engine/workers/NewParkingsWorker.js +0 -2
  25. package/dist/integration-engine/workers/NewParkingsWorker.js.map +1 -1
  26. package/dist/output-gateway/index.js +0 -1
  27. package/dist/output-gateway/index.js.map +1 -1
  28. package/dist/output-gateway/ioc/Di.js +1 -1
  29. package/dist/output-gateway/ioc/Di.js.map +1 -1
  30. package/dist/output-gateway/models/ParkingsMeasurementsModels.d.ts +0 -5
  31. package/dist/output-gateway/models/ParkingsMeasurementsModels.js +1 -49
  32. package/dist/output-gateway/models/ParkingsMeasurementsModels.js.map +1 -1
  33. package/dist/output-gateway/models/ParkingsModel.d.ts +9 -8
  34. package/dist/output-gateway/models/ParkingsModel.js +7 -7
  35. package/dist/output-gateway/models/ParkingsModel.js.map +1 -1
  36. package/dist/output-gateway/models/helpers/DetailAttributesHelper.js +11 -9
  37. package/dist/output-gateway/models/helpers/DetailAttributesHelper.js.map +1 -1
  38. package/dist/output-gateway/routers/constants.d.ts +0 -1
  39. package/dist/output-gateway/routers/constants.js +0 -1
  40. package/dist/output-gateway/routers/constants.js.map +1 -1
  41. package/dist/output-gateway/routers/index.d.ts +0 -1
  42. package/dist/output-gateway/routers/index.js +0 -1
  43. package/dist/output-gateway/routers/index.js.map +1 -1
  44. package/dist/output-gateway/routers/v2/V2ParkingRouter.js +32 -11
  45. package/dist/output-gateway/routers/v2/V2ParkingRouter.js.map +1 -1
  46. package/dist/output-gateway/transformations/ParkingsTransformationFabric.d.ts +8 -0
  47. package/dist/output-gateway/transformations/ParkingsTransformationFabric.js +36 -5
  48. package/dist/output-gateway/transformations/ParkingsTransformationFabric.js.map +1 -1
  49. package/dist/schema-definitions/index.d.ts +4 -0
  50. package/dist/schema-definitions/index.js +10 -0
  51. package/dist/schema-definitions/index.js.map +1 -1
  52. package/docs/implementation_documentation.md +0 -28
  53. package/docs/openapi-output.yaml +258 -611
  54. package/package.json +1 -1
  55. package/db/example/99_refresh_views.sql +0 -1
  56. package/dist/integration-engine/businessRules/AbstractTariffChecker.d.ts +0 -10
  57. package/dist/integration-engine/businessRules/AbstractTariffChecker.js +0 -26
  58. package/dist/integration-engine/businessRules/AbstractTariffChecker.js.map +0 -1
  59. package/dist/integration-engine/businessRules/TariffCheckerFactory.d.ts +0 -8
  60. package/dist/integration-engine/businessRules/TariffCheckerFactory.js +0 -22
  61. package/dist/integration-engine/businessRules/TariffCheckerFactory.js.map +0 -1
  62. package/dist/integration-engine/businessRules/TskTariffChecker.d.ts +0 -6
  63. package/dist/integration-engine/businessRules/TskTariffChecker.js +0 -13
  64. package/dist/integration-engine/businessRules/TskTariffChecker.js.map +0 -1
  65. package/dist/integration-engine/businessRules/interfaces/ITariffChecker.d.ts +0 -4
  66. package/dist/integration-engine/businessRules/interfaces/ITariffChecker.js +0 -3
  67. package/dist/integration-engine/businessRules/interfaces/ITariffChecker.js.map +0 -1
  68. package/dist/integration-engine/businessRules/interfaces/ITariffCheckerResult.d.ts +0 -6
  69. package/dist/integration-engine/businessRules/interfaces/ITariffCheckerResult.js +0 -3
  70. package/dist/integration-engine/businessRules/interfaces/ITariffCheckerResult.js.map +0 -1
  71. package/dist/integration-engine/businessRules/interfaces/ITariffInfo.d.ts +0 -7
  72. package/dist/integration-engine/businessRules/interfaces/ITariffInfo.js +0 -3
  73. package/dist/integration-engine/businessRules/interfaces/ITariffInfo.js.map +0 -1
  74. package/dist/integration-engine/businessRules/rules/IRule.d.ts +0 -3
  75. package/dist/integration-engine/businessRules/rules/IRule.js +0 -3
  76. package/dist/integration-engine/businessRules/rules/IRule.js.map +0 -1
  77. package/dist/integration-engine/businessRules/rules/MaxChargeInteractionsRule.d.ts +0 -5
  78. package/dist/integration-engine/businessRules/rules/MaxChargeInteractionsRule.js +0 -17
  79. package/dist/integration-engine/businessRules/rules/MaxChargeInteractionsRule.js.map +0 -1
  80. package/dist/integration-engine/businessRules/rules/MaxPriceRule.d.ts +0 -5
  81. package/dist/integration-engine/businessRules/rules/MaxPriceRule.js +0 -15
  82. package/dist/integration-engine/businessRules/rules/MaxPriceRule.js.map +0 -1
  83. package/dist/integration-engine/businessRules/rules/RuleEnum.d.ts +0 -5
  84. package/dist/integration-engine/businessRules/rules/RuleEnum.js +0 -10
  85. package/dist/integration-engine/businessRules/rules/RuleEnum.js.map +0 -1
  86. package/dist/integration-engine/businessRules/rules/RuleFactory.d.ts +0 -7
  87. package/dist/integration-engine/businessRules/rules/RuleFactory.js +0 -23
  88. package/dist/integration-engine/businessRules/rules/RuleFactory.js.map +0 -1
  89. package/dist/integration-engine/businessRules/rules/ZeroMaxParkingTime.d.ts +0 -5
  90. package/dist/integration-engine/businessRules/rules/ZeroMaxParkingTime.js +0 -10
  91. package/dist/integration-engine/businessRules/rules/ZeroMaxParkingTime.js.map +0 -1
  92. package/dist/integration-engine/helpers/LocationBuilderHelper.d.ts +0 -6
  93. package/dist/integration-engine/helpers/LocationBuilderHelper.js +0 -60
  94. package/dist/integration-engine/helpers/LocationBuilderHelper.js.map +0 -1
  95. package/dist/integration-engine/helpers/TskCalculationHelper.d.ts +0 -6
  96. package/dist/integration-engine/helpers/TskCalculationHelper.js +0 -36
  97. package/dist/integration-engine/helpers/TskCalculationHelper.js.map +0 -1
  98. package/dist/integration-engine/repositories/ParkingsBusinessErrorsRepository.d.ts +0 -7
  99. package/dist/integration-engine/repositories/ParkingsBusinessErrorsRepository.js +0 -26
  100. package/dist/integration-engine/repositories/ParkingsBusinessErrorsRepository.js.map +0 -1
  101. package/dist/integration-engine/transformations/IPRParkingTransformation.d.ts +0 -21
  102. package/dist/integration-engine/transformations/IPRParkingTransformation.js +0 -44
  103. package/dist/integration-engine/transformations/IPRParkingTransformation.js.map +0 -1
  104. package/dist/integration-engine/transformations/TSKParkingTariffTransformation.d.ts +0 -20
  105. package/dist/integration-engine/transformations/TSKParkingTariffTransformation.js +0 -135
  106. package/dist/integration-engine/transformations/TSKParkingTariffTransformation.js.map +0 -1
  107. package/dist/integration-engine/transformations/TSKParkingTransformation.d.ts +0 -19
  108. package/dist/integration-engine/transformations/TSKParkingTransformation.js +0 -78
  109. package/dist/integration-engine/transformations/TSKParkingTransformation.js.map +0 -1
  110. package/dist/integration-engine/workers/tasks/SaveParkingZonesPrague.d.ts +0 -39
  111. package/dist/integration-engine/workers/tasks/SaveParkingZonesPrague.js +0 -182
  112. package/dist/integration-engine/workers/tasks/SaveParkingZonesPrague.js.map +0 -1
  113. package/dist/output-gateway/data-access/TskDistrictsRepository.d.ts +0 -6
  114. package/dist/output-gateway/data-access/TskDistrictsRepository.js +0 -21
  115. package/dist/output-gateway/data-access/TskDistrictsRepository.js.map +0 -1
  116. package/dist/output-gateway/data-access/TskParkingLotsRepository.d.ts +0 -17
  117. package/dist/output-gateway/data-access/TskParkingLotsRepository.js +0 -159
  118. package/dist/output-gateway/data-access/TskParkingLotsRepository.js.map +0 -1
  119. package/dist/output-gateway/data-access/helpers/TskFeatureMapper.d.ts +0 -11
  120. package/dist/output-gateway/data-access/helpers/TskFeatureMapper.js +0 -37
  121. package/dist/output-gateway/data-access/helpers/TskFeatureMapper.js.map +0 -1
  122. package/dist/output-gateway/routers/v1/V1ParkingRouter.d.ts +0 -3
  123. package/dist/output-gateway/routers/v1/V1ParkingRouter.js +0 -46
  124. package/dist/output-gateway/routers/v1/V1ParkingRouter.js.map +0 -1
  125. package/dist/schema-definitions/datasources/interfaces/IIPRParkingJsonSchema.d.ts +0 -15
  126. package/dist/schema-definitions/datasources/interfaces/IIPRParkingJsonSchema.js +0 -3
  127. package/dist/schema-definitions/datasources/interfaces/IIPRParkingJsonSchema.js.map +0 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@golemio/parkings",
3
- "version": "1.22.5",
3
+ "version": "1.22.6-dev.2011057324",
4
4
  "description": "Golemio Parkings Module",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -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,8 +0,0 @@
1
- import { TskTariffChecker } from "./TskTariffChecker";
2
- export declare enum TariffCheckerEnum {
3
- TSK = "tsk"
4
- }
5
- export default class TariffCheckerFactory {
6
- constructor();
7
- static get(checkerType: TariffCheckerEnum): TskTariffChecker;
8
- }
@@ -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,4 +0,0 @@
1
- import { ITariffCheckerResult } from "./ITariffCheckerResult";
2
- export interface ITariffChecker {
3
- isTariffValid(tariffInfo: any): ITariffCheckerResult<any>;
4
- }
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=ITariffChecker.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ITariffChecker.js","sourceRoot":"","sources":["../../../../src/integration-engine/businessRules/interfaces/ITariffChecker.ts"],"names":[],"mappings":""}
@@ -1,6 +0,0 @@
1
- import { RuleEnum } from "../rules/RuleEnum";
2
- export interface ITariffCheckerResult<T> {
3
- isValid: boolean;
4
- failedRule?: RuleEnum;
5
- failedInput?: T;
6
- }
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=ITariffCheckerResult.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ITariffCheckerResult.js","sourceRoot":"","sources":["../../../../src/integration-engine/businessRules/interfaces/ITariffCheckerResult.ts"],"names":[],"mappings":""}
@@ -1,7 +0,0 @@
1
- export interface ITariffInfo {
2
- cTariff?: number;
3
- pricePerHour?: number;
4
- maxParkingTime?: number;
5
- maxPrice?: number;
6
- minPrice?: number;
7
- }
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=ITariffInfo.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ITariffInfo.js","sourceRoot":"","sources":["../../../../src/integration-engine/businessRules/interfaces/ITariffInfo.ts"],"names":[],"mappings":""}
@@ -1,3 +0,0 @@
1
- export interface IRule<T> {
2
- isValid(params: T): boolean;
3
- }
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=IRule.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"IRule.js","sourceRoot":"","sources":["../../../../src/integration-engine/businessRules/rules/IRule.ts"],"names":[],"mappings":""}
@@ -1,5 +0,0 @@
1
- import { ITariffInfo } from "../interfaces/ITariffInfo";
2
- import { IRule } from "./IRule";
3
- export declare class MaxChargeIterationsRule implements IRule<ITariffInfo> {
4
- isValid(tariffInfo: ITariffInfo): boolean;
5
- }
@@ -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,5 +0,0 @@
1
- import { ITariffInfo } from "../interfaces/ITariffInfo";
2
- import { IRule } from "./IRule";
3
- export declare class MaxPriceRule implements IRule<ITariffInfo> {
4
- isValid(tariffInfo: ITariffInfo): boolean;
5
- }
@@ -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,5 +0,0 @@
1
- export declare enum RuleEnum {
2
- MaxPriceRule = "MaxPriceRule",
3
- MaxChargeIterationsRule = "MaxChargeIterationsRule",
4
- ZeroMaxParkingTime = "ZeroMaxParkingTime"
5
- }
@@ -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,7 +0,0 @@
1
- import { IRule } from "./IRule";
2
- import { RuleEnum } from "./RuleEnum";
3
- export default class RuleFactory {
4
- private instances;
5
- constructor();
6
- get(ruleType: RuleEnum): IRule<any>;
7
- }
@@ -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,5 +0,0 @@
1
- import { ITariffInfo } from "../interfaces/ITariffInfo";
2
- import { IRule } from "./IRule";
3
- export declare class ZeroMaxParkingTime implements IRule<ITariffInfo> {
4
- isValid(tariffInfo: ITariffInfo): boolean;
5
- }
@@ -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
- }