@golemio/parkings 1.7.4 → 1.7.5-dev.1130865810
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/db/migrations/postgresql/20240107151449-smart4city.js +53 -0
- package/db/migrations/postgresql/sqls/20240107151449-smart4city-down.sql +1 -0
- package/db/migrations/postgresql/sqls/20240107151449-smart4city-up.sql +8 -0
- package/dist/integration-engine/ParkingInterface.d.ts +3 -3
- package/dist/integration-engine/datasources/ParkingProviderDataSourceFactory.d.ts +3 -1
- package/dist/integration-engine/datasources/ParkingProviderDataSourceFactory.js +6 -2
- package/dist/integration-engine/datasources/ParkingProviderDataSourceFactory.js.map +1 -1
- package/dist/integration-engine/datasources/helpers/ParkingProviderEnum.d.ts +3 -1
- package/dist/integration-engine/datasources/helpers/ParkingProviderEnum.js +2 -0
- package/dist/integration-engine/datasources/helpers/ParkingProviderEnum.js.map +1 -1
- package/dist/integration-engine/datasources/interfaces/IParkingProviderDataSourceFactory.d.ts +4 -0
- package/dist/integration-engine/datasources/interfaces/IParkingProviderDataSourceFactory.js.map +1 -1
- package/dist/integration-engine/datasources/smart4city/Smart4CityListDataSourceProvider.d.ts +11 -0
- package/dist/integration-engine/datasources/smart4city/Smart4CityListDataSourceProvider.js +44 -0
- package/dist/integration-engine/datasources/smart4city/Smart4CityListDataSourceProvider.js.map +1 -0
- package/dist/integration-engine/datasources/smart4city/Smart4CityLocationDataSourceProvider.d.ts +11 -0
- package/dist/integration-engine/datasources/smart4city/Smart4CityLocationDataSourceProvider.js +49 -0
- package/dist/integration-engine/datasources/smart4city/Smart4CityLocationDataSourceProvider.js.map +1 -0
- package/dist/integration-engine/datasources/smart4city/SmartCityListDatasourceCache.d.ts +10 -0
- package/dist/integration-engine/datasources/smart4city/SmartCityListDatasourceCache.js +52 -0
- package/dist/integration-engine/datasources/smart4city/SmartCityListDatasourceCache.js.map +1 -0
- package/dist/integration-engine/ioc/Di.js +12 -0
- package/dist/integration-engine/ioc/Di.js.map +1 -1
- package/dist/integration-engine/ioc/ModuleContainerToken.d.ts +6 -0
- package/dist/integration-engine/ioc/ModuleContainerToken.js +8 -0
- package/dist/integration-engine/ioc/ModuleContainerToken.js.map +1 -1
- package/dist/integration-engine/transformations/Smart4CityLocationTransformation.d.ts +20 -0
- package/dist/integration-engine/transformations/Smart4CityLocationTransformation.js +80 -0
- package/dist/integration-engine/transformations/Smart4CityLocationTransformation.js.map +1 -0
- package/dist/integration-engine/transformations/Smart4CityMeasurementTransformation.d.ts +10 -0
- package/dist/integration-engine/transformations/Smart4CityMeasurementTransformation.js +35 -0
- package/dist/integration-engine/transformations/Smart4CityMeasurementTransformation.js.map +1 -0
- package/dist/integration-engine/workers/NewParkingsWorker.d.ts +1 -1
- package/dist/integration-engine/workers/NewParkingsWorker.js +3 -0
- package/dist/integration-engine/workers/NewParkingsWorker.js.map +1 -1
- package/dist/integration-engine/workers/schemas/Smart4CityTaskTypeSchema.d.ts +6 -0
- package/dist/integration-engine/workers/schemas/Smart4CityTaskTypeSchema.js +21 -0
- package/dist/integration-engine/workers/schemas/Smart4CityTaskTypeSchema.js.map +1 -0
- package/dist/integration-engine/workers/schemas/UpdateSmart4CitySchema.d.ts +6 -0
- package/dist/integration-engine/workers/schemas/UpdateSmart4CitySchema.js +21 -0
- package/dist/integration-engine/workers/schemas/UpdateSmart4CitySchema.js.map +1 -0
- package/dist/integration-engine/workers/tasks/GenerateSmart4CityTaskListTask.d.ts +17 -0
- package/dist/integration-engine/workers/tasks/GenerateSmart4CityTaskListTask.js +72 -0
- package/dist/integration-engine/workers/tasks/GenerateSmart4CityTaskListTask.js.map +1 -0
- package/dist/integration-engine/workers/tasks/UpdateSmart4CityLocationsTask.d.ts +19 -0
- package/dist/integration-engine/workers/tasks/UpdateSmart4CityLocationsTask.js +114 -0
- package/dist/integration-engine/workers/tasks/UpdateSmart4CityLocationsTask.js.map +1 -0
- package/dist/integration-engine/workers/tasks/UpdateSmart4CityMeasurementsTask.d.ts +12 -0
- package/dist/integration-engine/workers/tasks/UpdateSmart4CityMeasurementsTask.js +90 -0
- package/dist/integration-engine/workers/tasks/UpdateSmart4CityMeasurementsTask.js.map +1 -0
- package/dist/schema-definitions/datasources/ParkingMeasurementsDtoSchema.js +2 -2
- package/dist/schema-definitions/datasources/ParkingMeasurementsDtoSchema.js.map +1 -1
- package/dist/schema-definitions/datasources/Smart4CityListJsonSchema.d.ts +3 -0
- package/dist/schema-definitions/datasources/Smart4CityListJsonSchema.js +20 -0
- package/dist/schema-definitions/datasources/Smart4CityListJsonSchema.js.map +1 -0
- package/dist/schema-definitions/datasources/Smart4CityLocationJsonSchema.d.ts +3 -0
- package/dist/schema-definitions/datasources/Smart4CityLocationJsonSchema.js +22 -0
- package/dist/schema-definitions/datasources/Smart4CityLocationJsonSchema.js.map +1 -0
- package/dist/schema-definitions/datasources/interfaces/IParkingsMeasurementDto.d.ts +2 -2
- package/dist/schema-definitions/datasources/interfaces/ISmart4CityList.d.ts +8 -0
- package/dist/schema-definitions/datasources/interfaces/ISmart4CityList.js +3 -0
- package/dist/schema-definitions/datasources/interfaces/ISmart4CityList.js.map +1 -0
- package/dist/schema-definitions/datasources/interfaces/ISmart4CityLocation.d.ts +10 -0
- package/dist/schema-definitions/datasources/interfaces/ISmart4CityLocation.js +3 -0
- package/dist/schema-definitions/datasources/interfaces/ISmart4CityLocation.js.map +1 -0
- package/docs/implementation-documentation.md +73 -1
- package/package.json +2 -2
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ISmart4CityLocation.js","sourceRoot":"","sources":["../../../../src/schema-definitions/datasources/interfaces/ISmart4CityLocation.ts"],"names":[],"mappings":""}
|
|
@@ -11,6 +11,7 @@ Modul slouží k ukládání a poskytování informací o parkování.
|
|
|
11
11
|
- IPR (Praha)
|
|
12
12
|
- IPT/OICT
|
|
13
13
|
- TSK (Praha) API v2
|
|
14
|
+
- Smart4City
|
|
14
15
|
|
|
15
16
|
## Vstupní data
|
|
16
17
|
|
|
@@ -29,7 +30,7 @@ Modul slouží k ukládání a poskytování informací o parkování.
|
|
|
29
30
|
|
|
30
31
|
### Data aktivně stahujeme
|
|
31
32
|
|
|
32
|
-
Data stahujeme pravidelně od IPR, TSK
|
|
33
|
+
Data stahujeme pravidelně od IPR, TSK, z nového API TSK (značené jako v2) a Smart4City.
|
|
33
34
|
|
|
34
35
|
Pro ZTP parkoviště se z API se stahuje JSON z https://services5.arcgis.com/SBTXIEUGWbqzUecw/arcgis/rest/services/DOP_CUR_DOP_TSK_STANI_ZTP_B/FeatureServer/0/query?outFields=*&where=1%3D1&f=geojson
|
|
35
36
|
Pro parkovací zony se stahuje z https://services5.arcgis.com/SBTXIEUGWbqzUecw/arcgis/rest/services/DOP_CUR_DOP_ZPS_USEKY_P/FeatureServer/0/query?outFields=*&where=1%3D1&f=geojson
|
|
@@ -205,6 +206,36 @@ Vybraným parkovištím může být nahrazena location za Multipolygon ze zdroje
|
|
|
205
206
|
- názvy rabbitmq front
|
|
206
207
|
- dataplatform.parkings.saveMrParkitData
|
|
207
208
|
|
|
209
|
+
#### _Smart4City_
|
|
210
|
+
|
|
211
|
+
- zdroj dat (seznam měst)
|
|
212
|
+
- url: config.datasources.parkings.Smart4City.ApiBaseUrl
|
|
213
|
+
- formát dat
|
|
214
|
+
- protokol: http
|
|
215
|
+
- datový typ: json
|
|
216
|
+
- validační schéma: [smart4CityListJsonSchema](../src/schema-definitions/datasources/Smart4CityListJsonSchema.ts)
|
|
217
|
+
- příklad vstupnich dat: [smart4CityListInputDataFixture](../test/integration-engine/data/Smart4CityListInputDataFixture.ts)
|
|
218
|
+
- frekvence stahování
|
|
219
|
+
- cron definice:
|
|
220
|
+
- cron.dataplatform.parkings.generateSmart4CityTaskList
|
|
221
|
+
- rabin: locations `0 0 5 * * *` / measurements `0 */1 * * * *`
|
|
222
|
+
- prod: locations `0 0 5 * * *` / measurements `0 */1 * * * *`
|
|
223
|
+
- názvy rabbitmq front
|
|
224
|
+
- dataplatform.parkings.generateSmart4CityTaskList
|
|
225
|
+
|
|
226
|
+
- zdroj dat (data měst)
|
|
227
|
+
- url: config.datasources.parkings.Smart4City.ApiBaseUrl + /`{city code}` + "/parkinglocations"
|
|
228
|
+
- formát dat
|
|
229
|
+
- protokol: http
|
|
230
|
+
- datový typ: json
|
|
231
|
+
- validační schéma: [smart4CityLocationJsonSchema](../src/schema-definitions/datasources/Smart4CityLocationJsonSchema.ts)
|
|
232
|
+
- příklad vstupnich dat: [smart4CityInputDataFixture](../test/integration-engine/data/Smart4CityInputDataFixture.ts)
|
|
233
|
+
- frekvence stahování
|
|
234
|
+
- dle `cron.dataplatform.parkings.generateSmart4CityTaskList`
|
|
235
|
+
- názvy rabbitmq front
|
|
236
|
+
- dataplatform.parkings.updateSmart4CityLocations
|
|
237
|
+
- dataplatform.parkings.updateSmart4CityMeasurements
|
|
238
|
+
|
|
208
239
|
## Zpracování dat / transformace
|
|
209
240
|
|
|
210
241
|
Při transformaci dat lokací data obohacujeme o adresu parkoviště, která vychází z centroidu geometrie daného parkoviště a získává se z Photon API metodou `GeocodeApi.getAddressByLatLngFromPhoton` v modulu Core.
|
|
@@ -254,6 +285,47 @@ Vybraným parkovištím může být nahrazena location za Multipolygon ze zdroje
|
|
|
254
285
|
- parkingsLocationModel -> (schéma parkings) `parkings_location`
|
|
255
286
|
- parkingsMeasurementsModel -> (schéma parkings) `parkings_measurements`
|
|
256
287
|
|
|
288
|
+
#### Task _GenerateSmart4CityTaskListTask_
|
|
289
|
+
|
|
290
|
+
- vstupní rabbitmq fronta
|
|
291
|
+
- název: `dataplatform.parkings.generateSmart4CityTaskList`
|
|
292
|
+
- parametry:
|
|
293
|
+
- type: `locations`/`measurements`
|
|
294
|
+
- závislé fronty
|
|
295
|
+
- název: `dataplatform.parkings.updateSmart4CityLocations` & `dataplatform.parkings.updateSmart4CityMeasurements`
|
|
296
|
+
- parametry:
|
|
297
|
+
- code: `kod města` napr. `nymburk`
|
|
298
|
+
- datové zdroje
|
|
299
|
+
- Smart4City - seznam měst (http)
|
|
300
|
+
|
|
301
|
+
#### Task _UpdateSmart4CityLocationsTask_
|
|
302
|
+
|
|
303
|
+
- vstupní rabbitmq fronta
|
|
304
|
+
- název: `dataplatform.parkings.updateSmart4CityLocations`
|
|
305
|
+
- parametry:
|
|
306
|
+
- code: `kod města` napr. `nymburk`
|
|
307
|
+
- datové zdroje
|
|
308
|
+
- Smart4City - data měst (http)
|
|
309
|
+
- transformace
|
|
310
|
+
- [Smart4CityLocationTransformation](../src/integration-engine/transformations/Smart4CityLocationTransformation.ts) - transformace parkovišť, lokací i measurementů (pro každou garáž nálezí vždy jeden business objekt od každého)
|
|
311
|
+
- data modely
|
|
312
|
+
- parkingsModel -> (schéma parkings) `parkings`
|
|
313
|
+
- parkingsLocationModel -> (schéma parkings) `parkings_location`
|
|
314
|
+
|
|
315
|
+
|
|
316
|
+
#### Task _UpdateSmart4CityMeasurementsTask_
|
|
317
|
+
|
|
318
|
+
- vstupní rabbitmq fronta
|
|
319
|
+
- název: `dataplatform.parkings.updateSmart4CityMeasurements`
|
|
320
|
+
- parametry:
|
|
321
|
+
- code: `kod města` napr. `nymburk`
|
|
322
|
+
- datové zdroje
|
|
323
|
+
- Smart4City - data měst (http)
|
|
324
|
+
- transformace
|
|
325
|
+
- [Smart4CityMeasurementTransformation](../src/integration-engine/transformations/Smart4CityMeasurementTransformation.ts) - transformace parkovišť, lokací i measurementů (pro každou garáž nálezí vždy jeden business objekt od každého)
|
|
326
|
+
- data modely
|
|
327
|
+
- parkingsMeasurementsModel -> (schéma parkings) `parkings_measurements`
|
|
328
|
+
|
|
257
329
|
### Worker _ParkingsWorker_
|
|
258
330
|
|
|
259
331
|
#### _saveParkingLotsPrague_
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@golemio/parkings",
|
|
3
|
-
"version": "1.7.
|
|
3
|
+
"version": "1.7.5-dev.1130865810",
|
|
4
4
|
"description": "Golemio Parkings Module",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -79,4 +79,4 @@
|
|
|
79
79
|
"@turf/turf": "^6.5.0",
|
|
80
80
|
"uuid-by-string": "^3.0.2"
|
|
81
81
|
}
|
|
82
|
-
}
|
|
82
|
+
}
|