@golemio/parkings 1.8.7-dev.1241477950 → 1.8.7-dev.1243995431

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 (113) hide show
  1. package/db/example/00_clear_test_data.sql +1 -0
  2. package/db/example/01_sql_dump.sql +16 -16
  3. package/db/example/02_ztp_updated_recently.sql +3 -9
  4. package/db/example/03_tsk_measurements_for_legacy_endpoints.sql +2 -2
  5. package/db/example/04_tsk_parking_v2.sql +2 -2
  6. package/db/example/05_payments.sql +2 -0
  7. package/db/example/08_isphk_data.sql +6 -16
  8. package/db/migrations/postgresql/20240327113105-payments.js +53 -0
  9. package/db/migrations/postgresql/sqls/20240327113105-payments-down.sql +29 -0
  10. package/db/migrations/postgresql/sqls/20240327113105-payments-up.sql +47 -0
  11. package/dist/helpers/data-access/CachedParkingSourcesRepository.d.ts +14 -1
  12. package/dist/helpers/data-access/CachedParkingSourcesRepository.js +28 -0
  13. package/dist/helpers/data-access/CachedParkingSourcesRepository.js.map +1 -1
  14. package/dist/integration-engine/ParkingInterface.d.ts +0 -3
  15. package/dist/integration-engine/datasources/iptoict/IptOictPaymentsDataSource.d.ts +3 -0
  16. package/dist/integration-engine/datasources/iptoict/IptOictPaymentsDataSource.js +29 -0
  17. package/dist/integration-engine/datasources/iptoict/IptOictPaymentsDataSource.js.map +1 -0
  18. package/dist/integration-engine/ioc/Di.js +8 -0
  19. package/dist/integration-engine/ioc/Di.js.map +1 -1
  20. package/dist/integration-engine/ioc/ModuleContainerToken.d.ts +6 -2
  21. package/dist/integration-engine/ioc/ModuleContainerToken.js +11 -3
  22. package/dist/integration-engine/ioc/ModuleContainerToken.js.map +1 -1
  23. package/dist/integration-engine/repositories/ParkingPaymentsRepository.d.ts +6 -0
  24. package/dist/integration-engine/repositories/ParkingPaymentsRepository.js +40 -0
  25. package/dist/integration-engine/repositories/ParkingPaymentsRepository.js.map +1 -0
  26. package/dist/integration-engine/transformations/IptOictPaymentsTransformation.d.ts +9 -0
  27. package/dist/integration-engine/transformations/IptOictPaymentsTransformation.js +29 -0
  28. package/dist/integration-engine/transformations/IptOictPaymentsTransformation.js.map +1 -0
  29. package/dist/integration-engine/transformations/ParkingLotsTransformation.d.ts +3 -0
  30. package/dist/integration-engine/transformations/ParkingLotsTransformation.js +12 -7
  31. package/dist/integration-engine/transformations/ParkingLotsTransformation.js.map +1 -1
  32. package/dist/integration-engine/transformations/TSKParkingTransformation.d.ts +9 -2
  33. package/dist/integration-engine/transformations/TSKParkingTransformation.js +31 -18
  34. package/dist/integration-engine/transformations/TSKParkingTransformation.js.map +1 -1
  35. package/dist/integration-engine/workers/NewParkingsWorker.js +2 -0
  36. package/dist/integration-engine/workers/NewParkingsWorker.js.map +1 -1
  37. package/dist/integration-engine/workers/schemas/ParkingSourceSchema.d.ts +14 -2
  38. package/dist/integration-engine/workers/schemas/ParkingSourceSchema.js +46 -2
  39. package/dist/integration-engine/workers/schemas/ParkingSourceSchema.js.map +1 -1
  40. package/dist/integration-engine/workers/tasks/GenerateIptOictParkingJobsTask.d.ts +1 -1
  41. package/dist/integration-engine/workers/tasks/GenerateIptOictParkingJobsTask.js +1 -1
  42. package/dist/integration-engine/workers/tasks/GenerateIptOictParkingJobsTask.js.map +1 -1
  43. package/dist/integration-engine/workers/tasks/GenerateIptOictPaymentJobsTask.d.ts +11 -0
  44. package/dist/integration-engine/workers/tasks/GenerateIptOictPaymentJobsTask.js +56 -0
  45. package/dist/integration-engine/workers/tasks/GenerateIptOictPaymentJobsTask.js.map +1 -0
  46. package/dist/integration-engine/workers/tasks/SaveIptOictParkingDataTask.js +3 -0
  47. package/dist/integration-engine/workers/tasks/SaveIptOictParkingDataTask.js.map +1 -1
  48. package/dist/integration-engine/workers/tasks/SaveIptOictPaymentsDataTask.d.ts +17 -0
  49. package/dist/integration-engine/workers/tasks/SaveIptOictPaymentsDataTask.js +91 -0
  50. package/dist/integration-engine/workers/tasks/SaveIptOictPaymentsDataTask.js.map +1 -0
  51. package/dist/integration-engine/workers/tasks/SaveParkingZonesPrague.d.ts +1 -0
  52. package/dist/integration-engine/workers/tasks/SaveParkingZonesPrague.js +5 -1
  53. package/dist/integration-engine/workers/tasks/SaveParkingZonesPrague.js.map +1 -1
  54. package/dist/output-gateway/controllers/v3/V3ParkingController.d.ts +0 -1
  55. package/dist/output-gateway/controllers/v3/V3ParkingController.js +9 -7
  56. package/dist/output-gateway/controllers/v3/V3ParkingController.js.map +1 -1
  57. package/dist/output-gateway/data-access/ParkingPaymentsRepository.d.ts +6 -0
  58. package/dist/output-gateway/data-access/ParkingPaymentsRepository.js +34 -0
  59. package/dist/output-gateway/data-access/ParkingPaymentsRepository.js.map +1 -0
  60. package/dist/output-gateway/data-access/ParkingRepository.d.ts +4 -2
  61. package/dist/output-gateway/data-access/ParkingRepository.js +29 -3
  62. package/dist/output-gateway/data-access/ParkingRepository.js.map +1 -1
  63. package/dist/output-gateway/data-access/TskParkingLotsRepository.d.ts +1 -0
  64. package/dist/output-gateway/data-access/TskParkingLotsRepository.js +13 -1
  65. package/dist/output-gateway/data-access/TskParkingLotsRepository.js.map +1 -1
  66. package/dist/output-gateway/ioc/Di.js +2 -0
  67. package/dist/output-gateway/ioc/Di.js.map +1 -1
  68. package/dist/output-gateway/ioc/ModuleContainerToken.d.ts +1 -0
  69. package/dist/output-gateway/ioc/ModuleContainerToken.js +1 -0
  70. package/dist/output-gateway/ioc/ModuleContainerToken.js.map +1 -1
  71. package/dist/output-gateway/models/ParkingsModel.d.ts +7 -3
  72. package/dist/output-gateway/models/ParkingsModel.js +29 -0
  73. package/dist/output-gateway/models/ParkingsModel.js.map +1 -1
  74. package/dist/output-gateway/models/helpers/DetailAttributesHelper.js +0 -3
  75. package/dist/output-gateway/models/helpers/DetailAttributesHelper.js.map +1 -1
  76. package/dist/output-gateway/models/index.d.ts +2 -0
  77. package/dist/output-gateway/models/index.js +2 -0
  78. package/dist/output-gateway/models/index.js.map +1 -1
  79. package/dist/output-gateway/routers/v2/V2ParkingRouter.js +6 -6
  80. package/dist/output-gateway/routers/v2/V2ParkingRouter.js.map +1 -1
  81. package/dist/output-gateway/transformations/ParkingsTransformationFabric.d.ts +3 -3
  82. package/dist/output-gateway/transformations/ParkingsTransformationFabric.js +5 -5
  83. package/dist/output-gateway/transformations/ParkingsTransformationFabric.js.map +1 -1
  84. package/dist/output-gateway/transformations/v3/ParkingDtoTransformation.d.ts +7 -0
  85. package/dist/output-gateway/transformations/v3/ParkingDtoTransformation.js +70 -2
  86. package/dist/output-gateway/transformations/v3/ParkingDtoTransformation.js.map +1 -1
  87. package/dist/schema-definitions/datasources/InputParkingSourceSchema.js +34 -1
  88. package/dist/schema-definitions/datasources/InputParkingSourceSchema.js.map +1 -1
  89. package/dist/schema-definitions/datasources/ParkingsDtoSchema.js +0 -3
  90. package/dist/schema-definitions/datasources/ParkingsDtoSchema.js.map +1 -1
  91. package/dist/schema-definitions/datasources/interfaces/IParkingsDto.d.ts +0 -3
  92. package/dist/schema-definitions/datasources/iptoict/IptOictPaymentsSchema.d.ts +3 -0
  93. package/dist/schema-definitions/datasources/iptoict/IptOictPaymentsSchema.js +38 -0
  94. package/dist/schema-definitions/datasources/iptoict/IptOictPaymentsSchema.js.map +1 -0
  95. package/dist/schema-definitions/datasources/iptoict/interfaces/IIptOictPaymentsProperties.d.ts +16 -0
  96. package/dist/schema-definitions/datasources/iptoict/interfaces/IIptOictPaymentsProperties.js +3 -0
  97. package/dist/schema-definitions/datasources/iptoict/interfaces/IIptOictPaymentsProperties.js.map +1 -0
  98. package/dist/schema-definitions/index.js +0 -3
  99. package/dist/schema-definitions/index.js.map +1 -1
  100. package/dist/schema-definitions/models/ParkingSourcesModel.d.ts +4 -2
  101. package/dist/schema-definitions/models/ParkingSourcesModel.js +3 -1
  102. package/dist/schema-definitions/models/ParkingSourcesModel.js.map +1 -1
  103. package/dist/schema-definitions/models/PaymentModel.d.ts +20 -0
  104. package/dist/schema-definitions/models/PaymentModel.js +47 -0
  105. package/dist/schema-definitions/models/PaymentModel.js.map +1 -0
  106. package/dist/schema-definitions/models/interfaces/IParking.d.ts +2 -3
  107. package/dist/schema-definitions/models/interfaces/IParkingSource.d.ts +12 -1
  108. package/dist/schema-definitions/models/interfaces/IPayment.d.ts +13 -0
  109. package/dist/schema-definitions/models/interfaces/IPayment.js +3 -0
  110. package/dist/schema-definitions/models/interfaces/IPayment.js.map +1 -0
  111. package/docs/implementation-documentation.md +49 -17
  112. package/docs/openapi-output.yaml +58 -9
  113. package/package.json +4 -3
@@ -11,6 +11,7 @@ declare const ModuleContainerToken: {
11
11
  AverageOccupancyRepository: symbol;
12
12
  ParkingsMeasurementRepository: symbol;
13
13
  ParkingsMeasurementsActualRepository: symbol;
14
+ ParkingPaymentsRepository: symbol;
14
15
  OpenHoursRepository: symbol;
15
16
  TskParkingMachinesDataSource: symbol;
16
17
  TskParkingMachinesTransformation: symbol;
@@ -22,6 +23,7 @@ declare const ModuleContainerToken: {
22
23
  ParkingProviderDataSourceFactory: symbol;
23
24
  MrParkitDataSourceProvider: symbol;
24
25
  SaveMrParkitDataTask: symbol;
26
+ SaveIsphkMeasurementsTask: symbol;
25
27
  Smart4CityListDataSourceProvider: symbol;
26
28
  Smart4CityLocationDataSourceProvider: symbol;
27
29
  SmartCityListDatasourceCache: symbol;
@@ -40,9 +42,11 @@ declare const ModuleContainerToken: {
40
42
  OsmOpeningHoursParser: symbol;
41
43
  OsmOpeningHoursTransformation: symbol;
42
44
  IptOictDataSource: symbol;
43
- SaveIptOictParkingDataTask: symbol;
44
45
  GenerateIptOictParkingJobsTask: symbol;
45
- SaveIsphkMeasurementsTask: symbol;
46
+ SaveIptOictParkingDataTask: symbol;
47
+ IptOictPaymentsDataSource: symbol;
48
+ GenerateIptOictPaymentJobsTask: symbol;
49
+ SaveIptOictPaymentsDataTask: symbol;
46
50
  CalculateAverageOccupancyTask: symbol;
47
51
  };
48
52
  export { ModuleContainerToken };
@@ -14,6 +14,7 @@ const ModuleContainerToken = {
14
14
  AverageOccupancyRepository: Symbol(),
15
15
  ParkingsMeasurementRepository: Symbol(),
16
16
  ParkingsMeasurementsActualRepository: Symbol(),
17
+ ParkingPaymentsRepository: Symbol(),
17
18
  OpenHoursRepository: Symbol(),
18
19
  TskParkingMachinesDataSource: Symbol(),
19
20
  TskParkingMachinesTransformation: Symbol(),
@@ -27,6 +28,9 @@ const ModuleContainerToken = {
27
28
  MrParkitDataSourceProvider: Symbol(),
28
29
  SaveMrParkitDataTask: Symbol(),
29
30
  //#endregion
31
+ //#region Isp HK
32
+ SaveIsphkMeasurementsTask: Symbol(),
33
+ //#endregion
30
34
  //#region Smart4City
31
35
  Smart4CityListDataSourceProvider: Symbol(),
32
36
  Smart4CityLocationDataSourceProvider: Symbol(),
@@ -50,11 +54,15 @@ const ModuleContainerToken = {
50
54
  OsmOpeningHoursParser: Symbol(),
51
55
  OsmOpeningHoursTransformation: Symbol(),
52
56
  //#endregion
53
- //#region IPTOICT
57
+ //#region IPT OICT
58
+ /* locations */
54
59
  IptOictDataSource: Symbol(),
55
- SaveIptOictParkingDataTask: Symbol(),
56
60
  GenerateIptOictParkingJobsTask: Symbol(),
57
- SaveIsphkMeasurementsTask: Symbol(),
61
+ SaveIptOictParkingDataTask: Symbol(),
62
+ /* payments */
63
+ IptOictPaymentsDataSource: Symbol(),
64
+ GenerateIptOictPaymentJobsTask: Symbol(),
65
+ SaveIptOictPaymentsDataTask: Symbol(),
58
66
  //#endregion
59
67
  //#region Average occupancy
60
68
  CalculateAverageOccupancyTask: Symbol(),
@@ -1 +1 @@
1
- {"version":3,"file":"ModuleContainerToken.js","sourceRoot":"","sources":["../../../src/integration-engine/ioc/ModuleContainerToken.ts"],"names":[],"mappings":";;;AAAA,MAAM,oBAAoB,GAAG;IACzB,gBAAgB,EAAE,MAAM,EAAE;IAC1B,UAAU,EAAE,MAAM,EAAE;IACpB,8BAA8B,EAAE,MAAM,EAAE;IACxC,kBAAkB,EAAE,MAAM,EAAE;IAC5B,2BAA2B,EAAE,MAAM,EAAE;IACrC,0BAA0B,EAAE,MAAM,EAAE;IACpC,wBAAwB,EAAE,MAAM,EAAE;IAClC,gCAAgC,EAAE,MAAM,EAAE;IAC1C,yBAAyB,EAAE,MAAM,EAAE;IACnC,0BAA0B,EAAE,MAAM,EAAE;IACpC,6BAA6B,EAAE,MAAM,EAAE;IACvC,oCAAoC,EAAE,MAAM,EAAE;IAC9C,mBAAmB,EAAE,MAAM,EAAE;IAE7B,4BAA4B,EAAE,MAAM,EAAE;IACtC,gCAAgC,EAAE,MAAM,EAAE;IAC1C,mCAAmC,EAAE,MAAM,EAAE;IAC7C,mCAAmC,EAAE,MAAM,EAAE;IAC7C,4BAA4B,EAAE,MAAM,EAAE;IACtC,+BAA+B,EAAE,MAAM,EAAE;IAEzC,gCAAgC,EAAE,MAAM,CAAC,kCAAkC,CAAC;IAC5E,gCAAgC,EAAE,MAAM,EAAE;IAE1C,mBAAmB;IACnB,0BAA0B,EAAE,MAAM,EAAE;IACpC,oBAAoB,EAAE,MAAM,EAAE;IAC9B,YAAY;IAEZ,oBAAoB;IACpB,gCAAgC,EAAE,MAAM,EAAE;IAC1C,oCAAoC,EAAE,MAAM,EAAE;IAC9C,4BAA4B,EAAE,MAAM,EAAE;IACtC,8BAA8B,EAAE,MAAM,EAAE;IACxC,6BAA6B,EAAE,MAAM,EAAE;IACvC,gCAAgC,EAAE,MAAM,EAAE;IAC1C,YAAY;IAEZ,aAAa;IACb,aAAa,EAAE,MAAM,EAAE;IACvB,eAAe,EAAE,MAAM,EAAE;IACzB,sBAAsB,EAAE,MAAM,EAAE;IAChC,wBAAwB,EAAE,MAAM,EAAE;IAClC,4BAA4B,EAAE,MAAM,EAAE;IACtC,0BAA0B,EAAE,MAAM,EAAE;IACpC,YAAY;IAEZ,mBAAmB;IACnB,0BAA0B,EAAE,MAAM,EAAE;IACpC,yBAAyB,EAAE,MAAM,EAAE;IACnC,2BAA2B,EAAE,MAAM,EAAE;IACrC,qBAAqB,EAAE,MAAM,EAAE;IAC/B,6BAA6B,EAAE,MAAM,EAAE;IACvC,YAAY;IAEZ,iBAAiB;IACjB,iBAAiB,EAAE,MAAM,EAAE;IAC3B,0BAA0B,EAAE,MAAM,EAAE;IACpC,8BAA8B,EAAE,MAAM,EAAE;IACxC,yBAAyB,EAAE,MAAM,EAAE;IACnC,YAAY;IAEZ,2BAA2B;IAC3B,6BAA6B,EAAE,MAAM,EAAE;IACvC,YAAY;CACf,CAAC;AACO,oDAAoB"}
1
+ {"version":3,"file":"ModuleContainerToken.js","sourceRoot":"","sources":["../../../src/integration-engine/ioc/ModuleContainerToken.ts"],"names":[],"mappings":";;;AAAA,MAAM,oBAAoB,GAAG;IACzB,gBAAgB,EAAE,MAAM,EAAE;IAC1B,UAAU,EAAE,MAAM,EAAE;IACpB,8BAA8B,EAAE,MAAM,EAAE;IACxC,kBAAkB,EAAE,MAAM,EAAE;IAC5B,2BAA2B,EAAE,MAAM,EAAE;IACrC,0BAA0B,EAAE,MAAM,EAAE;IACpC,wBAAwB,EAAE,MAAM,EAAE;IAClC,gCAAgC,EAAE,MAAM,EAAE;IAC1C,yBAAyB,EAAE,MAAM,EAAE;IACnC,0BAA0B,EAAE,MAAM,EAAE;IACpC,6BAA6B,EAAE,MAAM,EAAE;IACvC,oCAAoC,EAAE,MAAM,EAAE;IAC9C,yBAAyB,EAAE,MAAM,EAAE;IACnC,mBAAmB,EAAE,MAAM,EAAE;IAE7B,4BAA4B,EAAE,MAAM,EAAE;IACtC,gCAAgC,EAAE,MAAM,EAAE;IAC1C,mCAAmC,EAAE,MAAM,EAAE;IAC7C,mCAAmC,EAAE,MAAM,EAAE;IAC7C,4BAA4B,EAAE,MAAM,EAAE;IACtC,+BAA+B,EAAE,MAAM,EAAE;IAEzC,gCAAgC,EAAE,MAAM,CAAC,kCAAkC,CAAC;IAC5E,gCAAgC,EAAE,MAAM,EAAE;IAE1C,mBAAmB;IACnB,0BAA0B,EAAE,MAAM,EAAE;IACpC,oBAAoB,EAAE,MAAM,EAAE;IAC9B,YAAY;IAEZ,gBAAgB;IAChB,yBAAyB,EAAE,MAAM,EAAE;IACnC,YAAY;IAEZ,oBAAoB;IACpB,gCAAgC,EAAE,MAAM,EAAE;IAC1C,oCAAoC,EAAE,MAAM,EAAE;IAC9C,4BAA4B,EAAE,MAAM,EAAE;IACtC,8BAA8B,EAAE,MAAM,EAAE;IACxC,6BAA6B,EAAE,MAAM,EAAE;IACvC,gCAAgC,EAAE,MAAM,EAAE;IAC1C,YAAY;IAEZ,aAAa;IACb,aAAa,EAAE,MAAM,EAAE;IACvB,eAAe,EAAE,MAAM,EAAE;IACzB,sBAAsB,EAAE,MAAM,EAAE;IAChC,wBAAwB,EAAE,MAAM,EAAE;IAClC,4BAA4B,EAAE,MAAM,EAAE;IACtC,0BAA0B,EAAE,MAAM,EAAE;IACpC,YAAY;IAEZ,mBAAmB;IACnB,0BAA0B,EAAE,MAAM,EAAE;IACpC,yBAAyB,EAAE,MAAM,EAAE;IACnC,2BAA2B,EAAE,MAAM,EAAE;IACrC,qBAAqB,EAAE,MAAM,EAAE;IAC/B,6BAA6B,EAAE,MAAM,EAAE;IACvC,YAAY;IAEZ,kBAAkB;IAClB,eAAe;IACf,iBAAiB,EAAE,MAAM,EAAE;IAC3B,8BAA8B,EAAE,MAAM,EAAE;IACxC,0BAA0B,EAAE,MAAM,EAAE;IACpC,cAAc;IACd,yBAAyB,EAAE,MAAM,EAAE;IACnC,8BAA8B,EAAE,MAAM,EAAE;IACxC,2BAA2B,EAAE,MAAM,EAAE;IACrC,YAAY;IAEZ,2BAA2B;IAC3B,6BAA6B,EAAE,MAAM,EAAE;IACvC,YAAY;CACf,CAAC;AACO,oDAAoB"}
@@ -0,0 +1,6 @@
1
+ import { IPayment } from "../../schema-definitions/models/interfaces/IPayment";
2
+ import { IModel, PostgresModel } from "@golemio/core/dist/integration-engine";
3
+ export declare class ParkingPaymentsRepository extends PostgresModel implements IModel {
4
+ constructor();
5
+ updatePaymentsBySource(payments: IPayment[], source: string, dateBeforeUpdate: Date): Promise<void>;
6
+ }
@@ -0,0 +1,40 @@
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.ParkingPaymentsRepository = void 0;
13
+ const _sch_1 = require("../../schema-definitions");
14
+ const PaymentModel_1 = require("../../schema-definitions/models/PaymentModel");
15
+ const integration_engine_1 = require("@golemio/core/dist/integration-engine");
16
+ const golemio_validator_1 = require("@golemio/core/dist/shared/golemio-validator");
17
+ const sequelize_1 = require("@golemio/core/dist/shared/sequelize");
18
+ class ParkingPaymentsRepository extends integration_engine_1.PostgresModel {
19
+ constructor() {
20
+ super("ParkingPaymentsRepository", {
21
+ outputSequelizeAttributes: PaymentModel_1.PaymentModel.attributeModel,
22
+ pgSchema: _sch_1.Parkings.pgSchema,
23
+ pgTableName: PaymentModel_1.PaymentModel.tableName,
24
+ savingType: "insertOrUpdate",
25
+ }, new golemio_validator_1.JSONSchemaValidator("ParkingPaymentsRepositoryValidator", PaymentModel_1.PaymentModel.jsonSchema));
26
+ }
27
+ updatePaymentsBySource(payments, source, dateBeforeUpdate) {
28
+ return __awaiter(this, void 0, void 0, function* () {
29
+ yield this.bulkSave(payments, PaymentModel_1.PaymentModel.attributeUpdateList);
30
+ yield this.sequelizeModel.destroy({
31
+ where: {
32
+ source: { [sequelize_1.Op.eq]: source },
33
+ updated_at: { [sequelize_1.Op.lt]: dateBeforeUpdate },
34
+ },
35
+ });
36
+ });
37
+ }
38
+ }
39
+ exports.ParkingPaymentsRepository = ParkingPaymentsRepository;
40
+ //# sourceMappingURL=ParkingPaymentsRepository.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ParkingPaymentsRepository.js","sourceRoot":"","sources":["../../../src/integration-engine/repositories/ParkingPaymentsRepository.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,mDAAgC;AAEhC,+EAAwD;AACxD,8EAA8E;AAC9E,mFAAkF;AAClF,mEAAyD;AAEzD,MAAa,yBAA0B,SAAQ,kCAAa;IACxD;QACI,KAAK,CACD,2BAA2B,EAC3B;YACI,yBAAyB,EAAE,2BAAY,CAAC,cAAc;YACtD,QAAQ,EAAE,eAAQ,CAAC,QAAQ;YAC3B,WAAW,EAAE,2BAAY,CAAC,SAAS;YACnC,UAAU,EAAE,gBAAgB;SAC/B,EACD,IAAI,uCAAmB,CAAC,oCAAoC,EAAE,2BAAY,CAAC,UAAU,CAAC,CACzF,CAAC;IACN,CAAC;IAEY,sBAAsB,CAAC,QAAoB,EAAE,MAAc,EAAE,gBAAsB;;YAC5F,MAAM,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,2BAAY,CAAC,mBAAmB,CAAC,CAAC;YAChE,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC;gBAC9B,KAAK,EAAE;oBACH,MAAM,EAAE,EAAE,CAAC,cAAE,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE;oBAC3B,UAAU,EAAE,EAAE,CAAC,cAAE,CAAC,EAAE,CAAC,EAAE,gBAAgB,EAAE;iBAC5C;aACJ,CAAC,CAAC;QACP,CAAC;KAAA;CACJ;AAvBD,8DAuBC"}
@@ -0,0 +1,9 @@
1
+ import { IIptOictPaymentsProperties } from "../../schema-definitions/datasources/iptoict/interfaces/IIptOictPaymentsProperties";
2
+ import { IPayment } from "../../schema-definitions/models/interfaces/IPayment";
3
+ import { AbstractTransformation } from "@golemio/core/dist/helpers/transformation/AbstractTransformation";
4
+ export declare class IptOictPaymentsTransformation extends AbstractTransformation<IIptOictPaymentsProperties, IPayment> {
5
+ private source;
6
+ name: string;
7
+ constructor(source: string);
8
+ protected transformInternal: (element: IIptOictPaymentsProperties) => IPayment;
9
+ }
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.IptOictPaymentsTransformation = void 0;
4
+ const AbstractTransformation_1 = require("@golemio/core/dist/helpers/transformation/AbstractTransformation");
5
+ class IptOictPaymentsTransformation extends AbstractTransformation_1.AbstractTransformation {
6
+ constructor(source) {
7
+ super();
8
+ this.source = source;
9
+ this.name = "IptOictParkingTransformation";
10
+ this.transformInternal = (element) => {
11
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j;
12
+ return {
13
+ parking_id: element.parking_id,
14
+ source: this.source,
15
+ payment_web_url: (_a = element.payment.web_url) !== null && _a !== void 0 ? _a : null,
16
+ payment_android_url: (_b = element.payment.android_url) !== null && _b !== void 0 ? _b : null,
17
+ payment_ios_url: (_c = element.payment.ios_url) !== null && _c !== void 0 ? _c : null,
18
+ payment_discovery_url: (_d = element.payment.discovery_url) !== null && _d !== void 0 ? _d : null,
19
+ reservation_type: (_e = element.reservation.reservation_type) !== null && _e !== void 0 ? _e : null,
20
+ reservation_web_url: (_f = element.reservation.web_url) !== null && _f !== void 0 ? _f : null,
21
+ reservation_android_url: (_g = element.reservation.android_url) !== null && _g !== void 0 ? _g : null,
22
+ reservation_ios_url: (_h = element.reservation.ios_url) !== null && _h !== void 0 ? _h : null,
23
+ reservation_discovery_url: (_j = element.reservation.discovery_url) !== null && _j !== void 0 ? _j : null,
24
+ };
25
+ };
26
+ }
27
+ }
28
+ exports.IptOictPaymentsTransformation = IptOictPaymentsTransformation;
29
+ //# sourceMappingURL=IptOictPaymentsTransformation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IptOictPaymentsTransformation.js","sourceRoot":"","sources":["../../../src/integration-engine/transformations/IptOictPaymentsTransformation.ts"],"names":[],"mappings":";;;AAEA,6GAA0G;AAE1G,MAAa,6BAA8B,SAAQ,+CAA4D;IAG3G,YAAoB,MAAc;QAC9B,KAAK,EAAE,CAAC;QADQ,WAAM,GAAN,MAAM,CAAQ;QAF3B,SAAI,GAAW,8BAA8B,CAAC;QAM3C,sBAAiB,GAAG,CAAC,OAAmC,EAAY,EAAE;;YAC5E,OAAO;gBACH,UAAU,EAAE,OAAO,CAAC,UAAU;gBAC9B,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,eAAe,EAAE,MAAA,OAAO,CAAC,OAAO,CAAC,OAAO,mCAAI,IAAI;gBAChD,mBAAmB,EAAE,MAAA,OAAO,CAAC,OAAO,CAAC,WAAW,mCAAI,IAAI;gBACxD,eAAe,EAAE,MAAA,OAAO,CAAC,OAAO,CAAC,OAAO,mCAAI,IAAI;gBAChD,qBAAqB,EAAE,MAAA,OAAO,CAAC,OAAO,CAAC,aAAa,mCAAI,IAAI;gBAC5D,gBAAgB,EAAE,MAAA,OAAO,CAAC,WAAW,CAAC,gBAAgB,mCAAI,IAAI;gBAC9D,mBAAmB,EAAE,MAAA,OAAO,CAAC,WAAW,CAAC,OAAO,mCAAI,IAAI;gBACxD,uBAAuB,EAAE,MAAA,OAAO,CAAC,WAAW,CAAC,WAAW,mCAAI,IAAI;gBAChE,mBAAmB,EAAE,MAAA,OAAO,CAAC,WAAW,CAAC,OAAO,mCAAI,IAAI;gBACxD,yBAAyB,EAAE,MAAA,OAAO,CAAC,WAAW,CAAC,aAAa,mCAAI,IAAI;aACvE,CAAC;QACN,CAAC,CAAC;IAhBF,CAAC;CAiBJ;AAtBD,sEAsBC"}
@@ -1,9 +1,11 @@
1
+ import { IPayment } from "../../schema-definitions/models/interfaces/IPayment";
1
2
  import { BaseTransformation, ITransformation } from "@golemio/core/dist/integration-engine";
2
3
  import { IParking, IParkingMeasurements } from "../ParkingInterface";
3
4
  import { IStaticParkingLotsGeoFeature } from "../../schema-definitions/datasources/interfaces/IStaticParkingLotsGeo";
4
5
  export interface IParkingLotsTransform {
5
6
  geo: IParking[];
6
7
  measurements: IParkingMeasurements[];
8
+ payments: IPayment[];
7
9
  }
8
10
  export declare class ParkingLotsTransformation extends BaseTransformation implements ITransformation {
9
11
  name: string;
@@ -13,6 +15,7 @@ export declare class ParkingLotsTransformation extends BaseTransformation implem
13
15
  protected transformElement: (element: any) => {
14
16
  geo: IParking;
15
17
  measurements: IParkingMeasurements;
18
+ payments?: IPayment;
16
19
  };
17
20
  private getMPLAPaymentShortName;
18
21
  }
@@ -23,7 +23,7 @@ class ParkingLotsTransformation extends integration_engine_1.BaseTransformation
23
23
  constructor() {
24
24
  super();
25
25
  this.transform = (data, customGeoFeatures) => __awaiter(this, void 0, void 0, function* () {
26
- const result = { geo: [], measurements: [] };
26
+ const result = { geo: [], measurements: [], payments: [] };
27
27
  for (const element of data) {
28
28
  const transformedData = this.transformElement(element);
29
29
  // "optional" geo location enhancement
@@ -37,6 +37,9 @@ class ParkingLotsTransformation extends integration_engine_1.BaseTransformation
37
37
  }
38
38
  result.geo.push(transformedData.geo);
39
39
  result.measurements.push(transformedData.measurements);
40
+ if (transformedData.payments) {
41
+ result.payments.push(transformedData.payments);
42
+ }
40
43
  }
41
44
  return result;
42
45
  });
@@ -48,8 +51,7 @@ class ParkingLotsTransformation extends integration_engine_1.BaseTransformation
48
51
  }
49
52
  const dateModified = new Date(element.lastUpdated).toISOString();
50
53
  // location is always a Point, so no need to use turf for centroid
51
- return {
52
- geo: {
54
+ return Object.assign({ geo: {
53
55
  id: parkingId,
54
56
  source: this.dataSource,
55
57
  source_id: "" + element.id,
@@ -59,7 +61,6 @@ class ParkingLotsTransformation extends integration_engine_1.BaseTransformation
59
61
  type: Geo_1.GeoCoordinatesType.Point,
60
62
  },
61
63
  total_spot_number: element.totalNumOfPlaces,
62
- web_app_payment_url: paymentUrlShortname ? `${config_1.config.PARKINGS_PAYMENT_URL}?shortname=${paymentUrlShortname}` : "",
63
64
  name: element.name,
64
65
  category: ParkingLotType[element.pr],
65
66
  parking_type: ParkingLotType[element.pr],
@@ -68,8 +69,7 @@ class ParkingLotsTransformation extends integration_engine_1.BaseTransformation
68
69
  type: Geo_1.GeoCoordinatesType.Point,
69
70
  },
70
71
  date_modified: dateModified,
71
- },
72
- measurements: {
72
+ }, measurements: {
73
73
  source: this.dataSource,
74
74
  source_id: "" + element.id,
75
75
  parking_id: parkingId,
@@ -77,8 +77,13 @@ class ParkingLotsTransformation extends integration_engine_1.BaseTransformation
77
77
  occupied_spot_number: element.numOfTakenPlaces,
78
78
  total_spot_number: element.totalNumOfPlaces,
79
79
  date_modified: dateModified,
80
+ } }, (paymentUrlShortname && {
81
+ payments: {
82
+ parking_id: parkingId,
83
+ source: this.dataSource,
84
+ payment_web_url: `${config_1.config.PARKINGS_PAYMENT_URL}?shortname=${paymentUrlShortname}`,
80
85
  },
81
- };
86
+ }));
82
87
  };
83
88
  this.getMPLAPaymentShortName = (id) => {
84
89
  switch (id) {
@@ -1 +1 @@
1
- {"version":3,"file":"ParkingLotsTransformation.js","sourceRoot":"","sources":["../../../src/integration-engine/transformations/ParkingLotsTransformation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ParkingLotsTransformation.js","sourceRoot":"","sources":["../../../src/integration-engine/transformations/ParkingLotsTransformation.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import { IPayment } from "../../schema-definitions/models/interfaces/IPayment";
1
2
  import { BaseTransformation, ITransformation } from "@golemio/core/dist/integration-engine";
2
3
  import { IParking } from "../ParkingInterface";
3
4
  export declare class TSKParkingTransformation extends BaseTransformation implements ITransformation {
@@ -5,6 +6,12 @@ export declare class TSKParkingTransformation extends BaseTransformation impleme
5
6
  private readonly dataSource;
6
7
  transformationDate: string;
7
8
  constructor(transformationDate: string);
8
- transform: (data: any) => Promise<IParking[]>;
9
- protected transformElement: (element: any) => IParking;
9
+ transform: (data: any) => Promise<{
10
+ parking: IParking[];
11
+ payment: IPayment[];
12
+ }>;
13
+ protected transformElement: (element: any) => {
14
+ parking: IParking;
15
+ payment: IPayment;
16
+ };
10
17
  }
@@ -13,6 +13,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
13
13
  };
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
15
  exports.TSKParkingTransformation = void 0;
16
+ const SourceEnum_1 = require("../../helpers/constants/SourceEnum");
16
17
  const integration_engine_1 = require("@golemio/core/dist/integration-engine");
17
18
  const _sch_1 = require("../../schema-definitions");
18
19
  const uuid_by_string_1 = __importDefault(require("uuid-by-string"));
@@ -28,33 +29,45 @@ class TSKParkingTransformation extends integration_engine_1.BaseTransformation {
28
29
  constructor(transformationDate) {
29
30
  super();
30
31
  this.transform = (data) => __awaiter(this, void 0, void 0, function* () {
31
- const result = [];
32
+ const result = {
33
+ parking: [],
34
+ payment: [],
35
+ };
32
36
  for (const element of data) {
33
- result.push(this.transformElement(element));
37
+ const { parking, payment } = this.transformElement(element);
38
+ result.parking.push(parking);
39
+ result.payment.push(payment);
34
40
  }
35
41
  return result;
36
42
  });
37
43
  this.transformElement = (element) => {
44
+ const id = `${this.dataSource}-${element.properties.tarifTab}`.toLowerCase();
38
45
  return {
39
- id: `${this.dataSource}-${element.properties.tarifTab}`.toLowerCase(),
40
- source: this.dataSource,
41
- source_id: "" + element.properties.tarifTab,
42
- data_provider: "www.tsk-praha.cz",
43
- location: element.geometry,
44
- total_spot_number: element.properties.ps_zps_celkem,
45
- web_app_payment_url: config_1.config.PARKING_ZONES_PAYMENT_URL + "?shortname=" + element.properties.tarifTab,
46
- name: element.properties.ulice,
47
- category: ZoneType[element.properties.typZony],
48
- tariff_id: (0, uuid_by_string_1.default)(`${this.dataSource}`.toUpperCase() + element.properties.CTARIF),
49
- valid_from: element.properties.platnostOd,
50
- valid_to: element.properties.platnostDo,
51
- parking_type: "on_street",
52
- zone_type: ZoneType[element.properties.typZony],
53
- date_modified: this.transformationDate,
46
+ parking: {
47
+ id,
48
+ source: this.dataSource,
49
+ source_id: "" + element.properties.tarifTab,
50
+ data_provider: "www.tsk-praha.cz",
51
+ location: element.geometry,
52
+ total_spot_number: element.properties.ps_zps_celkem,
53
+ name: element.properties.ulice,
54
+ category: ZoneType[element.properties.typZony],
55
+ tariff_id: (0, uuid_by_string_1.default)(`${this.dataSource}`.toUpperCase() + element.properties.CTARIF),
56
+ valid_from: element.properties.platnostOd,
57
+ valid_to: element.properties.platnostDo,
58
+ parking_type: "on_street",
59
+ zone_type: ZoneType[element.properties.typZony],
60
+ date_modified: this.transformationDate,
61
+ },
62
+ payment: {
63
+ parking_id: id,
64
+ source: this.dataSource,
65
+ payment_web_url: config_1.config.PARKING_ZONES_PAYMENT_URL + "?shortname=" + element.properties.tarifTab,
66
+ },
54
67
  };
55
68
  };
56
69
  this.name = _sch_1.Parkings.tsk.name + "Data";
57
- this.dataSource = "tsk";
70
+ this.dataSource = SourceEnum_1.SourceEnum.TSK;
58
71
  this.transformationDate = transformationDate;
59
72
  }
60
73
  }
@@ -1 +1 @@
1
- {"version":3,"file":"TSKParkingTransformation.js","sourceRoot":"","sources":["../../../src/integration-engine/transformations/TSKParkingTransformation.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,8EAA4F;AAC5F,mDAAgC;AAChC,oEAA6C;AAE7C,yEAAsE;AAEtE,MAAM,QAAQ,GAAG;IACb,GAAG,EAAE,kBAAkB;IACvB,GAAG,EAAE,YAAY;IACjB,GAAG,EAAE,eAAe;IACpB,GAAG,EAAE,YAAY;IACjB,uGAAuG;CAC1G,CAAC;AAEF,MAAa,wBAAyB,SAAQ,uCAAkB;IAK5D,YAAY,kBAA0B;QAClC,KAAK,EAAE,CAAC;QAML,cAAS,GAAG,CAAO,IAAS,EAAuB,EAAE;YACxD,MAAM,MAAM,GAAG,EAAE,CAAC;YAClB,KAAK,MAAM,OAAO,IAAI,IAAI,EAAE;gBACxB,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC;aAC/C;YACD,OAAO,MAAM,CAAC;QAClB,CAAC,CAAA,CAAC;QAEQ,qBAAgB,GAAG,CAAC,OAAY,EAAY,EAAE;YACpD,OAAO;gBACH,EAAE,EAAE,GAAG,IAAI,CAAC,UAAU,IAAI,OAAO,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,WAAW,EAAE;gBACrE,MAAM,EAAE,IAAI,CAAC,UAAU;gBACvB,SAAS,EAAE,EAAE,GAAG,OAAO,CAAC,UAAU,CAAC,QAAQ;gBAC3C,aAAa,EAAE,kBAAkB;gBACjC,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,iBAAiB,EAAE,OAAO,CAAC,UAAU,CAAC,aAAa;gBACnD,mBAAmB,EAAE,eAAM,CAAC,yBAAyB,GAAG,aAAa,GAAG,OAAO,CAAC,UAAU,CAAC,QAAQ;gBACnG,IAAI,EAAE,OAAO,CAAC,UAAU,CAAC,KAAK;gBAC9B,QAAQ,EAAE,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,OAAgC,CAAC;gBACvE,SAAS,EAAE,IAAA,wBAAe,EAAC,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC,WAAW,EAAE,GAAG,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC;gBAC1F,UAAU,EAAE,OAAO,CAAC,UAAU,CAAC,UAAU;gBACzC,QAAQ,EAAE,OAAO,CAAC,UAAU,CAAC,UAAU;gBACvC,YAAY,EAAE,WAAW;gBACzB,SAAS,EAAE,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,OAAgC,CAAC;gBACxE,aAAa,EAAE,IAAI,CAAC,kBAAkB;aACzC,CAAC;QACN,CAAC,CAAC;QA/BE,IAAI,CAAC,IAAI,GAAG,eAAQ,CAAC,GAAG,CAAC,IAAI,GAAG,MAAM,CAAC;QACvC,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QACxB,IAAI,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;IACjD,CAAC;CA6BJ;AAvCD,4DAuCC"}
1
+ {"version":3,"file":"TSKParkingTransformation.js","sourceRoot":"","sources":["../../../src/integration-engine/transformations/TSKParkingTransformation.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,mEAA2D;AAE3D,8EAA4F;AAC5F,mDAAgC;AAChC,oEAA6C;AAE7C,yEAAsE;AAEtE,MAAM,QAAQ,GAAG;IACb,GAAG,EAAE,kBAAkB;IACvB,GAAG,EAAE,YAAY;IACjB,GAAG,EAAE,eAAe;IACpB,GAAG,EAAE,YAAY;IACjB,uGAAuG;CAC1G,CAAC;AAEF,MAAa,wBAAyB,SAAQ,uCAAkB;IAK5D,YAAY,kBAA0B;QAClC,KAAK,EAAE,CAAC;QAML,cAAS,GAAG,CAAO,IAAS,EAAyD,EAAE;YAC1F,MAAM,MAAM,GAAiD;gBACzD,OAAO,EAAE,EAAE;gBACX,OAAO,EAAE,EAAE;aACd,CAAC;YAEF,KAAK,MAAM,OAAO,IAAI,IAAI,EAAE;gBACxB,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;gBAC5D,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBAC7B,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;aAChC;YAED,OAAO,MAAM,CAAC;QAClB,CAAC,CAAA,CAAC;QAEQ,qBAAgB,GAAG,CAAC,OAAY,EAA4C,EAAE;YACpF,MAAM,EAAE,GAAG,GAAG,IAAI,CAAC,UAAU,IAAI,OAAO,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,WAAW,EAAE,CAAC;YAC7E,OAAO;gBACH,OAAO,EAAE;oBACL,EAAE;oBACF,MAAM,EAAE,IAAI,CAAC,UAAU;oBACvB,SAAS,EAAE,EAAE,GAAG,OAAO,CAAC,UAAU,CAAC,QAAQ;oBAC3C,aAAa,EAAE,kBAAkB;oBACjC,QAAQ,EAAE,OAAO,CAAC,QAAQ;oBAC1B,iBAAiB,EAAE,OAAO,CAAC,UAAU,CAAC,aAAa;oBACnD,IAAI,EAAE,OAAO,CAAC,UAAU,CAAC,KAAK;oBAC9B,QAAQ,EAAE,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,OAAgC,CAAC;oBACvE,SAAS,EAAE,IAAA,wBAAe,EAAC,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC,WAAW,EAAE,GAAG,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC;oBAC1F,UAAU,EAAE,OAAO,CAAC,UAAU,CAAC,UAAU;oBACzC,QAAQ,EAAE,OAAO,CAAC,UAAU,CAAC,UAAU;oBACvC,YAAY,EAAE,WAAW;oBACzB,SAAS,EAAE,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,OAAgC,CAAC;oBACxE,aAAa,EAAE,IAAI,CAAC,kBAAkB;iBACzC;gBACD,OAAO,EAAE;oBACL,UAAU,EAAE,EAAE;oBACd,MAAM,EAAE,IAAI,CAAC,UAAU;oBACvB,eAAe,EAAE,eAAM,CAAC,yBAAyB,GAAG,aAAa,GAAG,OAAO,CAAC,UAAU,CAAC,QAAQ;iBAClG;aACJ,CAAC;QACN,CAAC,CAAC;QA7CE,IAAI,CAAC,IAAI,GAAG,eAAQ,CAAC,GAAG,CAAC,IAAI,GAAG,MAAM,CAAC;QACvC,IAAI,CAAC,UAAU,GAAG,uBAAU,CAAC,GAAG,CAAC;QACjC,IAAI,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;IACjD,CAAC;CA2CJ;AArDD,4DAqDC"}
@@ -23,6 +23,8 @@ class NewParkingsWorker extends integration_engine_1.AbstractWorker {
23
23
  this.registerTask(new SaveParkingZonesPrague_1.SaveParkingZonesPrague(this.getQueuePrefix()));
24
24
  this.registerTask(Di_1.ParkingsContainer.resolve(ModuleContainerToken_1.ModuleContainerToken.GenerateIptOictParkingJobsTask));
25
25
  this.registerTask(Di_1.ParkingsContainer.resolve(ModuleContainerToken_1.ModuleContainerToken.SaveIptOictParkingDataTask));
26
+ this.registerTask(Di_1.ParkingsContainer.resolve(ModuleContainerToken_1.ModuleContainerToken.GenerateIptOictPaymentJobsTask));
27
+ this.registerTask(Di_1.ParkingsContainer.resolve(ModuleContainerToken_1.ModuleContainerToken.SaveIptOictPaymentsDataTask));
26
28
  this.registerTask(Di_1.ParkingsContainer.resolve(ModuleContainerToken_1.ModuleContainerToken.SaveOsmDataTask));
27
29
  this.registerTask(Di_1.ParkingsContainer.resolve(ModuleContainerToken_1.ModuleContainerToken.SaveIsphkMeasurementsTask));
28
30
  this.registerTask(Di_1.ParkingsContainer.resolve(ModuleContainerToken_1.ModuleContainerToken.SaveOsmEntrancesDataTask));
@@ -1 +1 @@
1
- {"version":3,"file":"NewParkingsWorker.js","sourceRoot":"","sources":["../../../src/integration-engine/workers/NewParkingsWorker.ts"],"names":[],"mappings":";;;AAAA,kCAA+C;AAC/C,sEAAoE;AACpE,8EAAuE;AAEvE,2CAAuD;AACvD,2EAAwE;AAExE,MAAa,iBAAkB,SAAQ,mCAAc;IAIjD;QACI,KAAK,EAAE,CAAC;QAHI,SAAI,GAAG,iBAAiB,CAAC,UAAU,CAAC;QAqB7C,iBAAY,GAAG,CAAC,IAAW,EAAQ,EAAE;YACxC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;YACzB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QAC7C,CAAC,CAAC;QAnBE,iBAAiB;QACjB,IAAI,CAAC,YAAY,CAAC,sBAAiB,CAAC,OAAO,CAAQ,2CAAoB,CAAC,oBAAoB,CAAC,CAAC,CAAC;QAC/F,IAAI,CAAC,YAAY,CAAC,sBAAiB,CAAC,OAAO,CAAQ,2CAAoB,CAAC,8BAA8B,CAAC,CAAC,CAAC;QACzG,IAAI,CAAC,YAAY,CAAC,sBAAiB,CAAC,OAAO,CAAQ,2CAAoB,CAAC,6BAA6B,CAAC,CAAC,CAAC;QACxG,IAAI,CAAC,YAAY,CAAC,sBAAiB,CAAC,OAAO,CAAQ,2CAAoB,CAAC,gCAAgC,CAAC,CAAC,CAAC;QAC3G,IAAI,CAAC,YAAY,CAAC,sBAAiB,CAAC,OAAO,CAAQ,2CAAoB,CAAC,6BAA6B,CAAC,CAAC,CAAC;QACxG,IAAI,CAAC,YAAY,CAAC,IAAI,+CAAsB,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC;QACrE,IAAI,CAAC,YAAY,CAAC,sBAAiB,CAAC,OAAO,CAAQ,2CAAoB,CAAC,8BAA8B,CAAC,CAAC,CAAC;QACzG,IAAI,CAAC,YAAY,CAAC,sBAAiB,CAAC,OAAO,CAAQ,2CAAoB,CAAC,0BAA0B,CAAC,CAAC,CAAC;QACrG,IAAI,CAAC,YAAY,CAAC,sBAAiB,CAAC,OAAO,CAAQ,2CAAoB,CAAC,eAAe,CAAC,CAAC,CAAC;QAC1F,IAAI,CAAC,YAAY,CAAC,sBAAiB,CAAC,OAAO,CAAQ,2CAAoB,CAAC,yBAAyB,CAAC,CAAC,CAAC;QACpG,IAAI,CAAC,YAAY,CAAC,sBAAiB,CAAC,OAAO,CAAQ,2CAAoB,CAAC,wBAAwB,CAAC,CAAC,CAAC;QACnG,IAAI,CAAC,YAAY,CAAC,sBAAiB,CAAC,OAAO,CAAQ,2CAAoB,CAAC,2BAA2B,CAAC,CAAC,CAAC;QACtG,IAAI,CAAC,YAAY,CAAC,sBAAiB,CAAC,OAAO,CAAQ,2CAAoB,CAAC,0BAA0B,CAAC,CAAC,CAAC;IACzG,CAAC;;AArBL,8CA2BC;AA1BmB,4BAAU,GAAG,oCAAwB,AAA3B,CAA4B"}
1
+ {"version":3,"file":"NewParkingsWorker.js","sourceRoot":"","sources":["../../../src/integration-engine/workers/NewParkingsWorker.ts"],"names":[],"mappings":";;;AAAA,kCAA+C;AAC/C,sEAAoE;AACpE,8EAAuE;AAEvE,2CAAuD;AACvD,2EAAwE;AAExE,MAAa,iBAAkB,SAAQ,mCAAc;IAIjD;QACI,KAAK,EAAE,CAAC;QAHI,SAAI,GAAG,iBAAiB,CAAC,UAAU,CAAC;QAuB7C,iBAAY,GAAG,CAAC,IAAW,EAAQ,EAAE;YACxC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;YACzB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QAC7C,CAAC,CAAC;QArBE,iBAAiB;QACjB,IAAI,CAAC,YAAY,CAAC,sBAAiB,CAAC,OAAO,CAAQ,2CAAoB,CAAC,oBAAoB,CAAC,CAAC,CAAC;QAC/F,IAAI,CAAC,YAAY,CAAC,sBAAiB,CAAC,OAAO,CAAQ,2CAAoB,CAAC,8BAA8B,CAAC,CAAC,CAAC;QACzG,IAAI,CAAC,YAAY,CAAC,sBAAiB,CAAC,OAAO,CAAQ,2CAAoB,CAAC,6BAA6B,CAAC,CAAC,CAAC;QACxG,IAAI,CAAC,YAAY,CAAC,sBAAiB,CAAC,OAAO,CAAQ,2CAAoB,CAAC,gCAAgC,CAAC,CAAC,CAAC;QAC3G,IAAI,CAAC,YAAY,CAAC,sBAAiB,CAAC,OAAO,CAAQ,2CAAoB,CAAC,6BAA6B,CAAC,CAAC,CAAC;QACxG,IAAI,CAAC,YAAY,CAAC,IAAI,+CAAsB,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC;QACrE,IAAI,CAAC,YAAY,CAAC,sBAAiB,CAAC,OAAO,CAAQ,2CAAoB,CAAC,8BAA8B,CAAC,CAAC,CAAC;QACzG,IAAI,CAAC,YAAY,CAAC,sBAAiB,CAAC,OAAO,CAAQ,2CAAoB,CAAC,0BAA0B,CAAC,CAAC,CAAC;QACrG,IAAI,CAAC,YAAY,CAAC,sBAAiB,CAAC,OAAO,CAAQ,2CAAoB,CAAC,8BAA8B,CAAC,CAAC,CAAC;QACzG,IAAI,CAAC,YAAY,CAAC,sBAAiB,CAAC,OAAO,CAAQ,2CAAoB,CAAC,2BAA2B,CAAC,CAAC,CAAC;QACtG,IAAI,CAAC,YAAY,CAAC,sBAAiB,CAAC,OAAO,CAAQ,2CAAoB,CAAC,eAAe,CAAC,CAAC,CAAC;QAC1F,IAAI,CAAC,YAAY,CAAC,sBAAiB,CAAC,OAAO,CAAQ,2CAAoB,CAAC,yBAAyB,CAAC,CAAC,CAAC;QACpG,IAAI,CAAC,YAAY,CAAC,sBAAiB,CAAC,OAAO,CAAQ,2CAAoB,CAAC,wBAAwB,CAAC,CAAC,CAAC;QACnG,IAAI,CAAC,YAAY,CAAC,sBAAiB,CAAC,OAAO,CAAQ,2CAAoB,CAAC,2BAA2B,CAAC,CAAC,CAAC;QACtG,IAAI,CAAC,YAAY,CAAC,sBAAiB,CAAC,OAAO,CAAQ,2CAAoB,CAAC,0BAA0B,CAAC,CAAC,CAAC;IACzG,CAAC;;AAvBL,8CA6BC;AA5BmB,4BAAU,GAAG,oCAAwB,AAA3B,CAA4B"}
@@ -1,11 +1,23 @@
1
- import { IParkingSource } from "../../../schema-definitions/models/interfaces/IParkingSource";
1
+ import { IParkingSource, IParkingSourcePayment, IParkingSourceReservation } from "../../../schema-definitions/models/interfaces/IParkingSource";
2
+ declare class ParkingSourcePayment implements IParkingSourcePayment {
3
+ web_url: string | null;
4
+ android_url: string | null;
5
+ ios_url: string | null;
6
+ discovery_url: string | null;
7
+ }
8
+ declare class ParkingSourceReservation extends ParkingSourcePayment implements IParkingSourceReservation {
9
+ type: string | null;
10
+ }
2
11
  export declare class UpdateParkingSourceValidationSchema implements IParkingSource {
3
12
  source: string;
4
13
  open_data: boolean;
5
14
  api_v3_allowed: boolean;
6
15
  legacy_api_allowed: boolean;
7
- payment_url: string | null;
16
+ payment: ParkingSourcePayment | null;
17
+ reservation: ParkingSourceReservation | null;
8
18
  contact: object | null;
9
19
  datasource_parking: string | null;
10
20
  datasource_locations: string | null;
21
+ datasource_payments: string | null;
11
22
  }
23
+ export {};
@@ -11,6 +11,40 @@ var __metadata = (this && this.__metadata) || function (k, v) {
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.UpdateParkingSourceValidationSchema = void 0;
13
13
  const class_validator_1 = require("@golemio/core/dist/shared/class-validator");
14
+ class ParkingSourcePayment {
15
+ }
16
+ __decorate([
17
+ (0, class_validator_1.IsString)(),
18
+ (0, class_validator_1.IsNotEmpty)(),
19
+ (0, class_validator_1.ValidateIf)((_, value) => value !== null),
20
+ __metadata("design:type", Object)
21
+ ], ParkingSourcePayment.prototype, "web_url", void 0);
22
+ __decorate([
23
+ (0, class_validator_1.IsString)(),
24
+ (0, class_validator_1.IsNotEmpty)(),
25
+ (0, class_validator_1.ValidateIf)((_, value) => value !== null),
26
+ __metadata("design:type", Object)
27
+ ], ParkingSourcePayment.prototype, "android_url", void 0);
28
+ __decorate([
29
+ (0, class_validator_1.IsString)(),
30
+ (0, class_validator_1.IsNotEmpty)(),
31
+ (0, class_validator_1.ValidateIf)((_, value) => value !== null),
32
+ __metadata("design:type", Object)
33
+ ], ParkingSourcePayment.prototype, "ios_url", void 0);
34
+ __decorate([
35
+ (0, class_validator_1.IsString)(),
36
+ (0, class_validator_1.IsNotEmpty)(),
37
+ (0, class_validator_1.ValidateIf)((_, value) => value !== null),
38
+ __metadata("design:type", Object)
39
+ ], ParkingSourcePayment.prototype, "discovery_url", void 0);
40
+ class ParkingSourceReservation extends ParkingSourcePayment {
41
+ }
42
+ __decorate([
43
+ (0, class_validator_1.IsString)(),
44
+ (0, class_validator_1.IsNotEmpty)(),
45
+ (0, class_validator_1.ValidateIf)((_, value) => value !== null),
46
+ __metadata("design:type", Object)
47
+ ], ParkingSourceReservation.prototype, "type", void 0);
14
48
  class UpdateParkingSourceValidationSchema {
15
49
  }
16
50
  exports.UpdateParkingSourceValidationSchema = UpdateParkingSourceValidationSchema;
@@ -33,9 +67,14 @@ __decorate([
33
67
  ], UpdateParkingSourceValidationSchema.prototype, "legacy_api_allowed", void 0);
34
68
  __decorate([
35
69
  (0, class_validator_1.IsOptional)(),
36
- (0, class_validator_1.IsString)(),
70
+ (0, class_validator_1.IsObject)(),
37
71
  __metadata("design:type", Object)
38
- ], UpdateParkingSourceValidationSchema.prototype, "payment_url", void 0);
72
+ ], UpdateParkingSourceValidationSchema.prototype, "payment", void 0);
73
+ __decorate([
74
+ (0, class_validator_1.IsOptional)(),
75
+ (0, class_validator_1.IsObject)(),
76
+ __metadata("design:type", Object)
77
+ ], UpdateParkingSourceValidationSchema.prototype, "reservation", void 0);
39
78
  __decorate([
40
79
  (0, class_validator_1.IsOptional)(),
41
80
  (0, class_validator_1.IsObject)(),
@@ -51,4 +90,9 @@ __decorate([
51
90
  (0, class_validator_1.IsUrl)(),
52
91
  __metadata("design:type", Object)
53
92
  ], UpdateParkingSourceValidationSchema.prototype, "datasource_locations", void 0);
93
+ __decorate([
94
+ (0, class_validator_1.IsOptional)(),
95
+ (0, class_validator_1.IsUrl)(),
96
+ __metadata("design:type", Object)
97
+ ], UpdateParkingSourceValidationSchema.prototype, "datasource_payments", void 0);
54
98
  //# sourceMappingURL=ParkingSourceSchema.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ParkingSourceSchema.js","sourceRoot":"","sources":["../../../../src/integration-engine/workers/schemas/ParkingSourceSchema.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,+EAAyH;AAGzH,MAAa,mCAAmC;CA6B/C;AA7BD,kFA6BC;AA1BG;IAFC,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;;mEACG;AAGhB;IADC,IAAA,2BAAS,GAAE;;sEACQ;AAGpB;IADC,IAAA,2BAAS,GAAE;;2EACa;AAGzB;IADC,IAAA,2BAAS,GAAE;;+EACiB;AAI7B;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;wEACiB;AAI5B;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;oEACa;AAIxB;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,uBAAK,GAAE;;+EAC2B;AAInC;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,uBAAK,GAAE;;iFAC6B"}
1
+ {"version":3,"file":"ParkingSourceSchema.js","sourceRoot":"","sources":["../../../../src/integration-engine/workers/schemas/ParkingSourceSchema.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,+EAQmD;AAGnD,MAAM,oBAAoB;CAoBzB;AAhBG;IAHC,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;IACZ,IAAA,4BAAU,EAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,IAAI,CAAC;;qDACjB;AAKxB;IAHC,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;IACZ,IAAA,4BAAU,EAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,IAAI,CAAC;;yDACb;AAK5B;IAHC,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;IACZ,IAAA,4BAAU,EAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,IAAI,CAAC;;qDACjB;AAKxB;IAHC,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;IACZ,IAAA,4BAAU,EAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,IAAI,CAAC;;2DACX;AAGlC,MAAM,wBAAyB,SAAQ,oBAAoB;CAK1D;AADG;IAHC,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;IACZ,IAAA,4BAAU,EAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,IAAI,CAAC;;sDACpB;AAGzB,MAAa,mCAAmC;CAqC/C;AArCD,kFAqCC;AAlCG;IAFC,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;;mEACG;AAGhB;IADC,IAAA,2BAAS,GAAE;;sEACQ;AAGpB;IADC,IAAA,2BAAS,GAAE;;2EACa;AAGzB;IADC,IAAA,2BAAS,GAAE;;+EACiB;AAI7B;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;oEAC2B;AAItC;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;wEACmC;AAI9C;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;oEACa;AAIxB;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,uBAAK,GAAE;;+EAC2B;AAInC;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,uBAAK,GAAE;;iFAC6B;AAIrC;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,uBAAK,GAAE;;gFAC4B"}
@@ -4,7 +4,7 @@ import { IConfiguration } from "@golemio/core/dist/integration-engine/config";
4
4
  export declare class GenerateIptOictParkingJobsTask extends AbstractEmptyTask {
5
5
  private config;
6
6
  private cachedParkingSourcesRepository;
7
- readonly queueName = "generateIptOictParkingJobsTask";
7
+ readonly queueName = "generateIptOictParkingJobs";
8
8
  readonly queueTtl: number;
9
9
  constructor(config: IConfiguration, cachedParkingSourcesRepository: CachedParkingSourcesRepository);
10
10
  execute(): Promise<void>;
@@ -34,7 +34,7 @@ let GenerateIptOictParkingJobsTask = exports.GenerateIptOictParkingJobsTask = cl
34
34
  super(constants_1.NEW_PARKINGS_WORKER_NAME);
35
35
  this.config = config;
36
36
  this.cachedParkingSourcesRepository = cachedParkingSourcesRepository;
37
- this.queueName = "generateIptOictParkingJobsTask";
37
+ this.queueName = "generateIptOictParkingJobs";
38
38
  this.queueTtl = 60 * 60 * 1000; // 1 hour
39
39
  }
40
40
  execute() {
@@ -1 +1 @@
1
- {"version":3,"file":"GenerateIptOictParkingJobsTask.js","sourceRoot":"","sources":["../../../../src/integration-engine/workers/tasks/GenerateIptOictParkingJobsTask.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,gHAAqG;AACrG,yEAAoE;AACpE,4DAAkE;AAElE,8EAAwF;AAExF,6FAA0F;AAC1F,iEAAwE;AACxE,4CAAwD;AAGjD,IAAM,8BAA8B,4CAApC,MAAM,8BAA+B,SAAQ,sCAAiB;IAIjE,YACmC,MAA8B,EAE7D,8BAAsE;QAEtE,KAAK,CAAC,oCAAwB,CAAC,CAAC;QAJO,WAAM,GAAN,MAAM,CAAgB;QAErD,mCAA8B,GAA9B,8BAA8B,CAAgC;QAN1D,cAAS,GAAG,gCAAgC,CAAC;QAC7C,aAAQ,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,SAAS;IAQpD,CAAC;IAEY,OAAO;;YAChB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,8BAA8B,CAAC,gCAAgC,EAAE,CAAC;YAE7F,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE;gBAC1B,MAAM,IAAI,GAA0B,EAAE,MAAM,EAAE,CAAC;gBAC/C,MAAM,iCAAY,CAAC,qBAAqB,CACpC,IAAI,CAAC,MAAM,CAAC,oBAAoB,GAAG,GAAG,GAAG,qCAAiB,CAAC,UAAU,CAAC,WAAW,EAAE,EACnF,wBAAwB,EACxB,IAAI,CACP,CAAC;aACL;QACL,CAAC;KAAA;CACJ,CAAA;yCAxBY,8BAA8B;IAD1C,IAAA,qBAAU,GAAE;IAMJ,WAAA,IAAA,iBAAM,EAAC,+BAAc,CAAC,MAAM,CAAC,CAAA;IAC7B,WAAA,IAAA,iBAAM,EAAC,2CAAoB,CAAC,8BAA8B,CAAC,CAAA;6CACpB,+DAA8B;GAPjE,8BAA8B,CAwB1C"}
1
+ {"version":3,"file":"GenerateIptOictParkingJobsTask.js","sourceRoot":"","sources":["../../../../src/integration-engine/workers/tasks/GenerateIptOictParkingJobsTask.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,gHAAqG;AACrG,yEAAoE;AACpE,4DAAkE;AAElE,8EAAwF;AAExF,6FAA0F;AAC1F,iEAAwE;AACxE,4CAAwD;AAGjD,IAAM,8BAA8B,4CAApC,MAAM,8BAA+B,SAAQ,sCAAiB;IAIjE,YACmC,MAA8B,EAE7D,8BAAsE;QAEtE,KAAK,CAAC,oCAAwB,CAAC,CAAC;QAJO,WAAM,GAAN,MAAM,CAAgB;QAErD,mCAA8B,GAA9B,8BAA8B,CAAgC;QAN1D,cAAS,GAAG,4BAA4B,CAAC;QACzC,aAAQ,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,SAAS;IAQpD,CAAC;IAEY,OAAO;;YAChB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,8BAA8B,CAAC,gCAAgC,EAAE,CAAC;YAE7F,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE;gBAC1B,MAAM,IAAI,GAA0B,EAAE,MAAM,EAAE,CAAC;gBAC/C,MAAM,iCAAY,CAAC,qBAAqB,CACpC,IAAI,CAAC,MAAM,CAAC,oBAAoB,GAAG,GAAG,GAAG,qCAAiB,CAAC,UAAU,CAAC,WAAW,EAAE,EACnF,wBAAwB,EACxB,IAAI,CACP,CAAC;aACL;QACL,CAAC;KAAA;CACJ,CAAA;yCAxBY,8BAA8B;IAD1C,IAAA,qBAAU,GAAE;IAMJ,WAAA,IAAA,iBAAM,EAAC,+BAAc,CAAC,MAAM,CAAC,CAAA;IAC7B,WAAA,IAAA,iBAAM,EAAC,2CAAoB,CAAC,8BAA8B,CAAC,CAAA;6CACpB,+DAA8B;GAPjE,8BAA8B,CAwB1C"}
@@ -0,0 +1,11 @@
1
+ import { CachedParkingSourcesRepository } from "../../../helpers/data-access/CachedParkingSourcesRepository";
2
+ import { AbstractEmptyTask } from "@golemio/core/dist/integration-engine";
3
+ import { IConfiguration } from "@golemio/core/dist/integration-engine/config";
4
+ export declare class GenerateIptOictPaymentJobsTask extends AbstractEmptyTask {
5
+ private config;
6
+ private cachedParkingSourcesRepository;
7
+ readonly queueName = "generateIptOictPaymentJobs";
8
+ readonly queueTtl: number;
9
+ constructor(config: IConfiguration, cachedParkingSourcesRepository: CachedParkingSourcesRepository);
10
+ execute(): Promise<void>;
11
+ }
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
14
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
15
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
16
+ return new (P || (P = Promise))(function (resolve, reject) {
17
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
18
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
19
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
20
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
21
+ });
22
+ };
23
+ Object.defineProperty(exports, "__esModule", { value: true });
24
+ exports.GenerateIptOictPaymentJobsTask = void 0;
25
+ const CachedParkingSourcesRepository_1 = require("../../../helpers/data-access/CachedParkingSourcesRepository");
26
+ const ModuleContainerToken_1 = require("../../ioc/ModuleContainerToken");
27
+ const NewParkingsWorker_1 = require("../NewParkingsWorker");
28
+ const integration_engine_1 = require("@golemio/core/dist/integration-engine");
29
+ const ContainerToken_1 = require("@golemio/core/dist/integration-engine/ioc/ContainerToken");
30
+ const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
31
+ const constants_1 = require("../constants");
32
+ let GenerateIptOictPaymentJobsTask = exports.GenerateIptOictPaymentJobsTask = class GenerateIptOictPaymentJobsTask extends integration_engine_1.AbstractEmptyTask {
33
+ constructor(config, cachedParkingSourcesRepository) {
34
+ super(constants_1.NEW_PARKINGS_WORKER_NAME);
35
+ this.config = config;
36
+ this.cachedParkingSourcesRepository = cachedParkingSourcesRepository;
37
+ this.queueName = "generateIptOictPaymentJobs";
38
+ this.queueTtl = 60 * 60 * 1000; // 1 hour
39
+ }
40
+ execute() {
41
+ return __awaiter(this, void 0, void 0, function* () {
42
+ const sources = yield this.cachedParkingSourcesRepository.getParkingPaymentDataSourceSources();
43
+ for (const source of sources) {
44
+ const data = { source };
45
+ yield integration_engine_1.QueueManager.sendMessageToExchange(this.config.RABBIT_EXCHANGE_NAME + "." + NewParkingsWorker_1.NewParkingsWorker.workerName.toLowerCase(), "saveIptOictPaymentsData", data);
46
+ }
47
+ });
48
+ }
49
+ };
50
+ exports.GenerateIptOictPaymentJobsTask = GenerateIptOictPaymentJobsTask = __decorate([
51
+ (0, tsyringe_1.injectable)(),
52
+ __param(0, (0, tsyringe_1.inject)(ContainerToken_1.ContainerToken.Config)),
53
+ __param(1, (0, tsyringe_1.inject)(ModuleContainerToken_1.ModuleContainerToken.CachedParkingSourcesRepository)),
54
+ __metadata("design:paramtypes", [Object, CachedParkingSourcesRepository_1.CachedParkingSourcesRepository])
55
+ ], GenerateIptOictPaymentJobsTask);
56
+ //# sourceMappingURL=GenerateIptOictPaymentJobsTask.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GenerateIptOictPaymentJobsTask.js","sourceRoot":"","sources":["../../../../src/integration-engine/workers/tasks/GenerateIptOictPaymentJobsTask.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,gHAAqG;AACrG,yEAAoE;AACpE,4DAAkE;AAElE,8EAAwF;AAExF,6FAA0F;AAC1F,iEAAwE;AACxE,4CAAwD;AAGjD,IAAM,8BAA8B,4CAApC,MAAM,8BAA+B,SAAQ,sCAAiB;IAIjE,YACmC,MAA8B,EAE7D,8BAAsE;QAEtE,KAAK,CAAC,oCAAwB,CAAC,CAAC;QAJO,WAAM,GAAN,MAAM,CAAgB;QAErD,mCAA8B,GAA9B,8BAA8B,CAAgC;QAN1D,cAAS,GAAG,4BAA4B,CAAC;QACzC,aAAQ,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,SAAS;IAQpD,CAAC;IAEY,OAAO;;YAChB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,8BAA8B,CAAC,kCAAkC,EAAE,CAAC;YAE/F,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE;gBAC1B,MAAM,IAAI,GAA0B,EAAE,MAAM,EAAE,CAAC;gBAC/C,MAAM,iCAAY,CAAC,qBAAqB,CACpC,IAAI,CAAC,MAAM,CAAC,oBAAoB,GAAG,GAAG,GAAG,qCAAiB,CAAC,UAAU,CAAC,WAAW,EAAE,EACnF,yBAAyB,EACzB,IAAI,CACP,CAAC;aACL;QACL,CAAC;KAAA;CACJ,CAAA;yCAxBY,8BAA8B;IAD1C,IAAA,qBAAU,GAAE;IAMJ,WAAA,IAAA,iBAAM,EAAC,+BAAc,CAAC,MAAM,CAAC,CAAA;IAC7B,WAAA,IAAA,iBAAM,EAAC,2CAAoB,CAAC,8BAA8B,CAAC,CAAA;6CACpB,+DAA8B;GAPjE,8BAA8B,CAwB1C"}