@golemio/parkings 1.6.0 → 1.6.1-dev.1022513268

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 (72) hide show
  1. package/db/migrations/postgresql/20230918124250-tsk-v-2-parking-sources.js +53 -0
  2. package/db/migrations/postgresql/20230918124259-tsk-v-2-parking-machines.js +53 -0
  3. package/db/migrations/postgresql/sqls/20230918124250-tsk-v-2-parking-sources-down.sql +1 -0
  4. package/db/migrations/postgresql/sqls/20230918124250-tsk-v-2-parking-sources-up.sql +18 -0
  5. package/db/migrations/postgresql/sqls/20230918124259-tsk-v-2-parking-machines-down.sql +1 -0
  6. package/db/migrations/postgresql/sqls/20230918124259-tsk-v-2-parking-machines-up.sql +15 -0
  7. package/dist/integration-engine/datasources/TskParkingDataSourceFactory.d.ts +8 -0
  8. package/dist/integration-engine/datasources/TskParkingDataSourceFactory.js +49 -0
  9. package/dist/integration-engine/datasources/TskParkingDataSourceFactory.js.map +1 -0
  10. package/dist/integration-engine/index.d.ts +3 -1
  11. package/dist/integration-engine/index.js +3 -1
  12. package/dist/integration-engine/index.js.map +1 -1
  13. package/dist/integration-engine/ioc/Di.js +29 -1
  14. package/dist/integration-engine/ioc/Di.js.map +1 -1
  15. package/dist/integration-engine/ioc/ModuleContainerToken.d.ts +9 -0
  16. package/dist/integration-engine/ioc/ModuleContainerToken.js +9 -0
  17. package/dist/integration-engine/ioc/ModuleContainerToken.js.map +1 -1
  18. package/dist/integration-engine/repositories/ParkingMachinesRepository.d.ts +4 -0
  19. package/dist/integration-engine/repositories/ParkingMachinesRepository.js +35 -0
  20. package/dist/integration-engine/repositories/ParkingMachinesRepository.js.map +1 -0
  21. package/dist/integration-engine/transformations/TskParkingMachinesTransformation.d.ts +7 -0
  22. package/dist/integration-engine/transformations/TskParkingMachinesTransformation.js +24 -0
  23. package/dist/integration-engine/transformations/TskParkingMachinesTransformation.js.map +1 -0
  24. package/dist/integration-engine/transformations/TskParkingSectionLevelTransformation.d.ts +7 -0
  25. package/dist/integration-engine/transformations/TskParkingSectionLevelTransformation.js +35 -0
  26. package/dist/integration-engine/transformations/TskParkingSectionLevelTransformation.js.map +1 -0
  27. package/dist/integration-engine/transformations/TskParkingSectionTransformation.d.ts +9 -0
  28. package/dist/integration-engine/transformations/TskParkingSectionTransformation.js +60 -0
  29. package/dist/integration-engine/transformations/TskParkingSectionTransformation.js.map +1 -0
  30. package/dist/integration-engine/workers/TskParkingWorker.d.ts +5 -0
  31. package/dist/integration-engine/workers/TskParkingWorker.js +26 -0
  32. package/dist/integration-engine/workers/TskParkingWorker.js.map +1 -0
  33. package/dist/integration-engine/workers/tasks/SaveTskParkingMachinesTask.d.ts +13 -0
  34. package/dist/integration-engine/workers/tasks/SaveTskParkingMachinesTask.js +56 -0
  35. package/dist/integration-engine/workers/tasks/SaveTskParkingMachinesTask.js.map +1 -0
  36. package/dist/integration-engine/workers/tasks/SaveTskParkingSectionLevel251Task.d.ts +13 -0
  37. package/dist/integration-engine/workers/tasks/SaveTskParkingSectionLevel251Task.js +56 -0
  38. package/dist/integration-engine/workers/tasks/SaveTskParkingSectionLevel251Task.js.map +1 -0
  39. package/dist/integration-engine/workers/tasks/SaveTskParkingSectionLevel253Task.d.ts +13 -0
  40. package/dist/integration-engine/workers/tasks/SaveTskParkingSectionLevel253Task.js +56 -0
  41. package/dist/integration-engine/workers/tasks/SaveTskParkingSectionLevel253Task.js.map +1 -0
  42. package/dist/integration-engine/workers/tasks/SaveTskParkingSectionsTask.d.ts +13 -0
  43. package/dist/integration-engine/workers/tasks/SaveTskParkingSectionsTask.js +57 -0
  44. package/dist/integration-engine/workers/tasks/SaveTskParkingSectionsTask.js.map +1 -0
  45. package/dist/output-gateway/models/ParkingsModel.js +5 -0
  46. package/dist/output-gateway/models/ParkingsModel.js.map +1 -1
  47. package/dist/schema-definitions/datasources/TskParkingMachinesSchema.d.ts +3 -0
  48. package/dist/schema-definitions/datasources/TskParkingMachinesSchema.js +23 -0
  49. package/dist/schema-definitions/datasources/TskParkingMachinesSchema.js.map +1 -0
  50. package/dist/schema-definitions/datasources/TskParkingSectionLevelSchema.d.ts +3 -0
  51. package/dist/schema-definitions/datasources/TskParkingSectionLevelSchema.js +25 -0
  52. package/dist/schema-definitions/datasources/TskParkingSectionLevelSchema.js.map +1 -0
  53. package/dist/schema-definitions/datasources/TskParkingSectionSchema.d.ts +3 -0
  54. package/dist/schema-definitions/datasources/TskParkingSectionSchema.js +23 -0
  55. package/dist/schema-definitions/datasources/TskParkingSectionSchema.js.map +1 -0
  56. package/dist/schema-definitions/datasources/interfaces/ITskParkingMachine.d.ts +9 -0
  57. package/dist/schema-definitions/datasources/interfaces/ITskParkingMachine.js +3 -0
  58. package/dist/schema-definitions/datasources/interfaces/ITskParkingMachine.js.map +1 -0
  59. package/dist/schema-definitions/datasources/interfaces/ITskParkingSection.d.ts +9 -0
  60. package/dist/schema-definitions/datasources/interfaces/ITskParkingSection.js +3 -0
  61. package/dist/schema-definitions/datasources/interfaces/ITskParkingSection.js.map +1 -0
  62. package/dist/schema-definitions/datasources/interfaces/ITskParkingSectionLevel.d.ts +11 -0
  63. package/dist/schema-definitions/datasources/interfaces/ITskParkingSectionLevel.js +3 -0
  64. package/dist/schema-definitions/datasources/interfaces/ITskParkingSectionLevel.js.map +1 -0
  65. package/dist/schema-definitions/datasources/interfaces/ITskParkingTariff.d.ts +23 -0
  66. package/dist/schema-definitions/datasources/interfaces/ITskParkingTariff.js +3 -0
  67. package/dist/schema-definitions/datasources/interfaces/ITskParkingTariff.js.map +1 -0
  68. package/dist/schema-definitions/models/interfaces/IParkingMachine.d.ts +10 -0
  69. package/dist/schema-definitions/models/interfaces/IParkingMachine.js +3 -0
  70. package/dist/schema-definitions/models/interfaces/IParkingMachine.js.map +1 -0
  71. package/docs/implementation-documentation.md +45 -1
  72. package/package.json +3 -1
@@ -10,6 +10,7 @@ Modul slouží k ukládání a poskytování informací o parkování.
10
10
  - TSK (Praha)
11
11
  - IPR (Praha)
12
12
  - IPT/OICT
13
+ - TSK (Praha) API v2
13
14
 
14
15
  ## Vstupní data
15
16
 
@@ -24,7 +25,7 @@ Modul slouží k ukládání a poskytování informací o parkování.
24
25
 
25
26
  ### Data aktivně stahujeme
26
27
 
27
- Data stahujeme pravidelně od IPR, TSK.
28
+ Data stahujeme pravidelně od IPR, TSK a z nového API TSK (značené jako v2).
28
29
 
29
30
  Pro ZTP parkoviště se z API se stahuje JSON z https://opendata.iprpraha.cz/CUR/DOP/DOP_TSK_Stani_ZTP_b/WGS_84/DOP_TSK_Stani_ZTP_b.json
30
31
 
@@ -35,6 +36,7 @@ Pro statické (ručně vytvořené) polygony placených parkovišť se stahuje G
35
36
  #### Zóny placeného stání
36
37
 
37
38
  Zóny placeného stání používají 2 datové zdroje - TSK a Opendata IPR, které mají přesnější geometrii.
39
+ Další datový zdroj zón je API TSK (CIS VHD CD API) značené jako v2
38
40
 
39
41
  - zdroj dat (**TSK**):
40
42
 
@@ -93,6 +95,48 @@ Zóny placeného stání používají 2 datové zdroje - TSK a Opendata IPR, kte
93
95
  - název rabbitmq fronty
94
96
  - dataplatform.parkings.saveParkingZonesPrague
95
97
 
98
+ - zdroj dat (**TSK v2**):
99
+
100
+ config HTTPProtocolStrategy:
101
+
102
+ ```
103
+ headers: {
104
+ Authorization: `Basic jmeno:heslo`,
105
+ },
106
+ method: "GET",
107
+ url: this.config.datasources.parking.TskApiBaseUrl + this.config.datasources.parking.TskApiEndpoints[endpoint],
108
+ ```
109
+
110
+ - formát dat (**TSK v2**)
111
+
112
+ - zdroj používá 3 datové soubory: sections, sectionList level 251 (zóny plac. stání) a level 253 (ZTP)
113
+ - protokol: http
114
+ - datový typ: json
115
+ - validační schéma sections: https://gitlab.com/operator-ict/golemio/code/modules/parkings/-/blob/development/src/schema-definitions/datasources/TskParkingSectionSchema.ts
116
+ - validační schéma sections level (251 i 253): https://gitlab.com/operator-ict/golemio/code/modules/parkings/-/blob/development/src/schema-definitions/datasources/TskParkingSectionLevelSchema.ts
117
+
118
+ - frekvence stahování
119
+
120
+ - cron definice:
121
+ - cron.dataplatform.parkings.saveParkingZonesPrague (`0 0 4 * * *`)
122
+
123
+ #### Parkovací automaty TSK
124
+
125
+ - zdroj dat (**TSK v2**) je stejný, jako pro zóny, liší se jen konec URL: "ParkMachine/list"
126
+
127
+ - formát dat (**TSK v2**)
128
+
129
+ - protokol: http
130
+ - datový typ: json
131
+ - validační schéma: https://gitlab.com/operator-ict/golemio/code/modules/parkings/-/blob/development/src/schema-definitions/datasources/TskParkingMachinesSchema.ts
132
+
133
+ - frekvence stahování
134
+
135
+ - cron definice:
136
+ - cron.dataplatform.parkings.saveParkingZonesPrague (`0 0 4 * * *`)
137
+
138
+ - cílová tabulka: `parking_machines`
139
+
96
140
  #### Placené parkoviště
97
141
 
98
142
  - zdroj dat (**TSK**):
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@golemio/parkings",
3
- "version": "1.6.0",
3
+ "version": "1.6.1-dev.1022513268",
4
4
  "description": "Golemio Parkings Module",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -44,6 +44,7 @@
44
44
  "@types/node": "^18.13.0",
45
45
  "@types/sinon": "^9.0.10",
46
46
  "@types/supertest": "^2.0.10",
47
+ "@types/terraformer__wkt": "^2.0.0",
47
48
  "body-parser": "^1.19.0",
48
49
  "body-parser-xml": "^2.0.0",
49
50
  "chai": "4.2.0",
@@ -73,6 +74,7 @@
73
74
  "@golemio/core": ">=1.9.0"
74
75
  },
75
76
  "dependencies": {
77
+ "@terraformer/wkt": "^2.2.0",
76
78
  "@turf/turf": "^6.5.0",
77
79
  "uuid-by-string": "^3.0.2"
78
80
  }