@spytecgps/nova-orm 1.0.120 → 1.0.122

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 (60) hide show
  1. package/dist/entities/dataExport.d.ts +18 -0
  2. package/dist/entities/dataExport.js +84 -0
  3. package/dist/entities/dataExport.js.map +1 -0
  4. package/dist/entities/deviceBleMeshUpdateTask.d.ts +17 -0
  5. package/dist/entities/deviceBleMeshUpdateTask.js +83 -0
  6. package/dist/entities/deviceBleMeshUpdateTask.js.map +1 -0
  7. package/dist/entities/entityTag.d.ts +1 -1
  8. package/dist/entities/entityTag.js +1 -1
  9. package/dist/entities/entityTag.js.map +1 -1
  10. package/dist/entities/index.d.ts +3 -1
  11. package/dist/entities/index.js +3 -1
  12. package/dist/entities/index.js.map +1 -1
  13. package/dist/entities/userInvitation.d.ts +1 -0
  14. package/dist/entities/userInvitation.js +9 -0
  15. package/dist/entities/userInvitation.js.map +1 -1
  16. package/dist/index.js +1 -1
  17. package/dist/repositories/bleMesh/createDeviceBLEMeshUpdateTask.d.ts +5 -0
  18. package/dist/repositories/bleMesh/createDeviceBLEMeshUpdateTask.js +47 -0
  19. package/dist/repositories/bleMesh/createDeviceBLEMeshUpdateTask.js.map +1 -0
  20. package/dist/repositories/bleMesh/getDeviceBLEMeshUpdateTasks.d.ts +4 -0
  21. package/dist/repositories/bleMesh/getDeviceBLEMeshUpdateTasks.js +56 -0
  22. package/dist/repositories/bleMesh/getDeviceBLEMeshUpdateTasks.js.map +1 -0
  23. package/dist/repositories/bleMesh/index.d.ts +29 -2
  24. package/dist/repositories/bleMesh/index.js +48 -0
  25. package/dist/repositories/bleMesh/index.js.map +1 -1
  26. package/dist/repositories/bleMesh/updateDevicesBLEMesh.js +3 -3
  27. package/dist/repositories/bleMesh/updateDevicesBLEMesh.js.map +1 -1
  28. package/dist/repositories/bleMesh/updateDevicesBLEMeshUpdateTask.d.ts +4 -0
  29. package/dist/repositories/bleMesh/updateDevicesBLEMeshUpdateTask.js +27 -0
  30. package/dist/repositories/bleMesh/updateDevicesBLEMeshUpdateTask.js.map +1 -0
  31. package/dist/repositories/dataExports/createDataExports.d.ts +5 -0
  32. package/dist/repositories/dataExports/createDataExports.js +32 -0
  33. package/dist/repositories/dataExports/createDataExports.js.map +1 -0
  34. package/dist/repositories/dataExports/getDataExports.d.ts +4 -0
  35. package/dist/repositories/dataExports/getDataExports.js +50 -0
  36. package/dist/repositories/dataExports/getDataExports.js.map +1 -0
  37. package/dist/repositories/dataExports/index.d.ts +38 -0
  38. package/dist/repositories/dataExports/index.js +59 -0
  39. package/dist/repositories/dataExports/index.js.map +1 -0
  40. package/dist/repositories/dataExports/updateDataExports.d.ts +4 -0
  41. package/dist/repositories/dataExports/updateDataExports.js +26 -0
  42. package/dist/repositories/dataExports/updateDataExports.js.map +1 -0
  43. package/dist/repositories/index.d.ts +2 -1
  44. package/dist/repositories/index.js +2 -1
  45. package/dist/repositories/index.js.map +1 -1
  46. package/dist/repositories/userInvitations/getUserInvitations.js +18 -7
  47. package/dist/repositories/userInvitations/getUserInvitations.js.map +1 -1
  48. package/dist/types/bleMesh.d.ts +37 -1
  49. package/dist/types/dataExports.d.ts +44 -0
  50. package/dist/types/dataExports.js +2 -0
  51. package/dist/types/dataExports.js.map +1 -0
  52. package/dist/types/entitiesTags.d.ts +1 -1
  53. package/dist/types/enums.d.ts +10 -0
  54. package/dist/types/enums.js +12 -0
  55. package/dist/types/enums.js.map +1 -1
  56. package/dist/types/index.d.ts +2 -1
  57. package/dist/types/index.js +2 -1
  58. package/dist/types/index.js.map +1 -1
  59. package/dist/types/userInvitations.d.ts +4 -1
  60. package/package.json +1 -1
@@ -0,0 +1,5 @@
1
+ import { DeviceBleMeshUpdateTask } from '../../entities';
2
+ import { NovaDataSource } from '../../novaDataSource';
3
+ import { CreateDeviceBLEMeshUpdateTasksParams } from '../../types/bleMesh';
4
+ import { Logger } from '../../types/logger';
5
+ export declare const createDeviceBLEMeshUpdateTask: (novaDataSource: NovaDataSource, params: CreateDeviceBLEMeshUpdateTasksParams, logger: Logger) => Promise<DeviceBleMeshUpdateTask[]>;
@@ -0,0 +1,47 @@
1
+ import { In } from 'typeorm';
2
+ import { Utils } from '../..';
3
+ import { DeviceBleMesh, DeviceBleMeshUpdateTask } from '../../entities';
4
+ export const createDeviceBLEMeshUpdateTask = async (novaDataSource, params, logger) => {
5
+ if (!params?.clientId ||
6
+ !params?.updateTasks?.length ||
7
+ params?.updateTasks?.some(t => !t.imei || !t.behaviorName || !t.behaviorParams)) {
8
+ logger.warn({ params }, 'BLEMeshRepository::createDeviceBLEMeshUpdateTask missing required parameters');
9
+ return null;
10
+ }
11
+ return novaDataSource.safeQuery(async (dataSource) => {
12
+ const deviceBleMeshUpdateTaskRepository = dataSource.getRepository(DeviceBleMeshUpdateTask);
13
+ const now = new Date();
14
+ const deviceRepo = dataSource.getRepository(DeviceBleMesh);
15
+ const devices = await deviceRepo.find({
16
+ relations: ['device'],
17
+ where: {
18
+ clientId: params.clientId,
19
+ device: {
20
+ imei: In(params.updateTasks.map(t => t.imei)),
21
+ },
22
+ },
23
+ });
24
+ const result = await deviceBleMeshUpdateTaskRepository.save(params.updateTasks
25
+ .map(task => {
26
+ const deviceBLEMesh = devices.find(dev => dev.device.imei === task.imei);
27
+ if (deviceBLEMesh == null) {
28
+ logger.warn({ imei: task }, 'BLEMeshRepository::createDeviceBLEMeshUpdateTask - device not found');
29
+ return null;
30
+ }
31
+ return {
32
+ id: Utils.uuidStringToBinaryBuffer(task.id),
33
+ deviceId: deviceBLEMesh.device.id,
34
+ deviceBleMeshId: deviceBLEMesh.id,
35
+ clientId: params.clientId,
36
+ status: task.status,
37
+ behaviorName: task.behaviorName,
38
+ behaviorParams: task.behaviorParams,
39
+ createdAt: now,
40
+ modifiedAt: now,
41
+ };
42
+ })
43
+ .filter(d => d != null));
44
+ return result;
45
+ }, 'BLEMeshRepository::createDeviceBLEMeshUpdateTask');
46
+ };
47
+ //# sourceMappingURL=createDeviceBLEMeshUpdateTask.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createDeviceBLEMeshUpdateTask.js","sourceRoot":"","sources":["../../../src/repositories/bleMesh/createDeviceBLEMeshUpdateTask.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,SAAS,CAAA;AAE5B,OAAO,EAAE,KAAK,EAAE,MAAM,OAAO,CAAA;AAC7B,OAAO,EAAE,aAAa,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAA;AAKvE,MAAM,CAAC,MAAM,6BAA6B,GAAG,KAAK,EAChD,cAA8B,EAC9B,MAA4C,EAC5C,MAAc,EACsB,EAAE;IACtC,IACE,CAAC,MAAM,EAAE,QAAQ;QACjB,CAAC,MAAM,EAAE,WAAW,EAAE,MAAM;QAC5B,MAAM,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,YAAY,IAAI,CAAC,CAAC,CAAC,cAAc,CAAC,EAC/E;QACA,MAAM,CAAC,IAAI,CACT,EAAE,MAAM,EAAE,EACV,8EAA8E,CAC/E,CAAA;QACD,OAAO,IAAI,CAAA;KACZ;IAED,OAAO,cAAc,CAAC,SAAS,CAAC,KAAK,EAAE,UAA0B,EAE/D,EAAE;QACF,MAAM,iCAAiC,GAAG,UAAU,CAAC,aAAa,CAAC,uBAAuB,CAAC,CAAA;QAE3F,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAA;QAEtB,MAAM,UAAU,GAAG,UAAU,CAAC,aAAa,CAAC,aAAa,CAAC,CAAA;QAC1D,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC;YACpC,SAAS,EAAE,CAAC,QAAQ,CAAC;YACrB,KAAK,EAAE;gBACL,QAAQ,EAAE,MAAM,CAAC,QAAQ;gBACzB,MAAM,EAAE;oBACN,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;iBAC9C;aACF;SACF,CAAC,CAAA;QAEF,MAAM,MAAM,GAAG,MAAM,iCAAiC,CAAC,IAAI,CACzD,MAAM,CAAC,WAAW;aACf,GAAG,CAAC,IAAI,CAAC,EAAE;YACV,MAAM,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC,CAAA;YACxE,IAAI,aAAa,IAAI,IAAI,EAAE;gBACzB,MAAM,CAAC,IAAI,CACT,EAAE,IAAI,EAAE,IAAI,EAAE,EACd,qEAAqE,CACtE,CAAA;gBACD,OAAO,IAAI,CAAA;aACZ;YACD,OAAO;gBACL,EAAE,EAAE,KAAK,CAAC,wBAAwB,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC3C,QAAQ,EAAE,aAAa,CAAC,MAAM,CAAC,EAAE;gBACjC,eAAe,EAAE,aAAa,CAAC,EAAE;gBACjC,QAAQ,EAAE,MAAM,CAAC,QAAQ;gBACzB,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,YAAY,EAAE,IAAI,CAAC,YAAY;gBAC/B,cAAc,EAAE,IAAI,CAAC,cAAc;gBACnC,SAAS,EAAE,GAAG;gBACd,UAAU,EAAE,GAAG;aAChB,CAAA;QACH,CAAC,CAAC;aACD,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC,CAC1B,CAAA;QAED,OAAO,MAAM,CAAA;IACf,CAAC,EAAE,kDAAkD,CAAC,CAAA;AACxD,CAAC,CAAA"}
@@ -0,0 +1,4 @@
1
+ import { NovaDataSource } from '../../novaDataSource';
2
+ import { GetDeviceBLEMeshUpdateTaskParams, GetDeviceBLEMeshUpdateTaskResult } from '../../types/bleMesh';
3
+ import { Logger } from '../../types/logger';
4
+ export declare const getDeviceBLEMeshUpdateTasks: (novaDataSource: NovaDataSource, params: GetDeviceBLEMeshUpdateTaskParams, logger: Logger) => Promise<GetDeviceBLEMeshUpdateTaskResult>;
@@ -0,0 +1,56 @@
1
+ import { Utils } from '../..';
2
+ import { DeviceBleMeshUpdateTask } from '../../entities';
3
+ export const getDeviceBLEMeshUpdateTasks = async (novaDataSource, params, logger) => {
4
+ if (!params?.filters?.clientId && !params?.filters?.ids?.length) {
5
+ logger.warn({ params }, 'BLEMeshRepository::getDeviceBLEMeshUpdateTask missing required parameters');
6
+ return null;
7
+ }
8
+ return novaDataSource.safeQuery(async (dataSource, queryRunner) => {
9
+ const bleMeshUpdateTaskRepository = dataSource.getRepository(DeviceBleMeshUpdateTask);
10
+ let queryBuilder = bleMeshUpdateTaskRepository.createQueryBuilder('deviceBLEMeshUpdTask');
11
+ if (queryRunner) {
12
+ queryBuilder.setQueryRunner(queryRunner);
13
+ }
14
+ if (params?.filters?.clientId) {
15
+ queryBuilder = queryBuilder.andWhere('deviceBLEMeshUpdTask.clientId = :clientId', {
16
+ clientId: params.filters.clientId,
17
+ });
18
+ }
19
+ if (params?.filters?.ids) {
20
+ queryBuilder = queryBuilder.andWhere('deviceBLEMeshUpdTask.id IN (:...ids)', {
21
+ ids: params.filters.ids.map(i => Utils.uuidStringToBinaryBuffer(i)),
22
+ });
23
+ }
24
+ if (params.filters.imeis || params?.projectionOptions?.withDevice) {
25
+ queryBuilder = queryBuilder.leftJoinAndSelect('deviceBLEMeshUpdTask.device', 'device');
26
+ }
27
+ if (params.filters.imeis) {
28
+ queryBuilder = queryBuilder.andWhere('device.imei IN (:...imeis)', {
29
+ imeis: params.filters.imeis,
30
+ });
31
+ }
32
+ if (params.filters.status) {
33
+ queryBuilder = queryBuilder.andWhere('deviceBLEMeshUpdTask.status = :deviceBLEMeshUpdTaskStatus', {
34
+ deviceBLEMeshUpdTaskStatus: params.filters.status,
35
+ });
36
+ }
37
+ if (params?.projectionOptions?.withDeviceBLEMesh) {
38
+ queryBuilder = queryBuilder.leftJoinAndSelect('deviceBLEMeshUpdTask.deviceBleMesh', 'deviceBleMesh');
39
+ }
40
+ const pageSize = params.pagingOptions?.pageSize ?? 100;
41
+ const pageIndex = params.pagingOptions?.pageIndex ?? 0;
42
+ queryBuilder = queryBuilder.orderBy('deviceBLEMeshUpdTask.modifiedAt', 'DESC');
43
+ queryBuilder = queryBuilder.limit(pageSize).offset(pageSize * pageIndex);
44
+ let updateTasks;
45
+ let count = undefined;
46
+ if (params?.projectionOptions?.withTotalCount) {
47
+ ;
48
+ [updateTasks, count] = await queryBuilder.getManyAndCount();
49
+ }
50
+ else {
51
+ updateTasks = await queryBuilder.getMany();
52
+ }
53
+ return { updateTasks, totalCount: count };
54
+ }, 'BLEMeshRepository::getDeviceBLEMeshes');
55
+ };
56
+ //# sourceMappingURL=getDeviceBLEMeshUpdateTasks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getDeviceBLEMeshUpdateTasks.js","sourceRoot":"","sources":["../../../src/repositories/bleMesh/getDeviceBLEMeshUpdateTasks.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- import { BeaconBleMesh, BLEMesh, DeviceBleMesh } from '../../entities';
2
- import { AddBeaconsToBLEMeshParams, AddDevicesToBLEMeshParams, CreateBLEMeshParams, GetBLEMeshesParams, GetBLEMeshesResult, GetDeviceBLEMeshesParams, GetDeviceBLEMeshesResult, RemoveBeaconsFromBLEMeshParams, RemoveBLEMeshParams, RemoveDevicesFromBLEMeshParams, UpdateBLEMeshParams, UpdateDevicesBLEMeshParams } from '../../types/bleMesh';
1
+ import { BeaconBleMesh, BLEMesh, DeviceBleMesh, DeviceBleMeshUpdateTask } from '../../entities';
2
+ import { AddBeaconsToBLEMeshParams, AddDevicesToBLEMeshParams, CreateBLEMeshParams, CreateDeviceBLEMeshUpdateTasksParams, GetBLEMeshesParams, GetBLEMeshesResult, GetDeviceBLEMeshesParams, GetDeviceBLEMeshesResult, GetDeviceBLEMeshUpdateTaskParams, GetDeviceBLEMeshUpdateTaskResult, RemoveBeaconsFromBLEMeshParams, RemoveBLEMeshParams, RemoveDevicesFromBLEMeshParams, UpdateBLEMeshParams, UpdateDeviceBLEMeshUpdateTaskParams, UpdateDevicesBLEMeshParams } from '../../types/bleMesh';
3
3
  import { BaseRepository } from '../baseRepository';
4
4
  export declare class BLEMeshRepository extends BaseRepository {
5
5
  /**
@@ -100,4 +100,31 @@ export declare class BLEMeshRepository extends BaseRepository {
100
100
  * @returns Promise<GetDeviceBLEMeshesResult> the device BLE Meshes result
101
101
  **/
102
102
  getDeviceBLEMeshes(params: GetDeviceBLEMeshesParams): Promise<GetDeviceBLEMeshesResult>;
103
+ /**
104
+ * Create device BLE Mesh update task
105
+ * @param params params containing information to create device BLE Mesh update task
106
+ * params.clientId: the client ID, required
107
+ * params.updateTasks: the update tasks, required
108
+ * @returns Promise<DeviceBleMeshUpdateTasks[]> the created Device BLE Mesh Update
109
+ * */
110
+ createDeviceBLEMeshUpdateTask(params: CreateDeviceBLEMeshUpdateTasksParams): Promise<DeviceBleMeshUpdateTask[]>;
111
+ /**
112
+ * Get device BLE Mesh update tasks
113
+ * @param params params containing information to get device BLE Mesh update tasks
114
+ * params.filters.clientId: the client ID, required if ids is not provided
115
+ * params.filters.ids: the ids, required if clientId is not provided
116
+ * params.filters.status: the status, optional
117
+ * params.filters.imeis: the IMEIs, optional
118
+ * params.pagingOptions: the paging options, optional
119
+ * @returns Promise<GetDeviceBLEMeshUpdateTaskResult> the device BLE Mesh Update tasks
120
+ * */
121
+ getDeviceBLEMeshUpdateTasks(params: GetDeviceBLEMeshUpdateTaskParams): Promise<GetDeviceBLEMeshUpdateTaskResult>;
122
+ /**
123
+ * Update devices BLE Mesh update task
124
+ * @param params params containing information to update devices BLE Mesh update task
125
+ * params.filters.id: the task Id, required
126
+ * params.values.status: the status to update, required
127
+ * @returns Promise<boolean> true if the devices were updated
128
+ * */
129
+ updateDevicesBLEMeshUpdateTask(params: UpdateDeviceBLEMeshUpdateTaskParams): Promise<boolean>;
103
130
  }
@@ -3,13 +3,16 @@ import { BaseRepository } from '../baseRepository';
3
3
  import { addBeaconsToBLEMesh } from './addBeaconsToBLEMesh';
4
4
  import { addDevicesToBLEMesh } from './addDevicesToBLEMesh';
5
5
  import { createBLEMesh } from './createBLEMesh';
6
+ import { createDeviceBLEMeshUpdateTask } from './createDeviceBLEMeshUpdateTask';
6
7
  import { getBLEMeshes } from './getBLEMeshes';
7
8
  import { getDeviceBLEMeshes } from './getDeviceBLEMeshes';
9
+ import { getDeviceBLEMeshUpdateTasks } from './getDeviceBLEMeshUpdateTasks';
8
10
  import { removeBeaconsFromBLEMesh } from './removeBeaconsFromBLEMesh';
9
11
  import { removeBLEMesh } from './removeBLEMesh';
10
12
  import { removeDevicesFromBLEMesh } from './removeDevicesFromBLEMesh';
11
13
  import { updateBLEMesh } from './updateBLEMesh';
12
14
  import { updateDevicesBLEMesh } from './updateDevicesBLEMesh';
15
+ import { updateDevicesBLEMeshUpdateTask } from './updateDevicesBLEMeshUpdateTask';
13
16
  export class BLEMeshRepository extends BaseRepository {
14
17
  /**
15
18
  * Create a BLE Mesh
@@ -169,5 +172,50 @@ export class BLEMeshRepository extends BaseRepository {
169
172
  this.logger.trace(result, 'BLEMeshRepository::getDeviceBLEMeshes result');
170
173
  return result;
171
174
  }
175
+ /**
176
+ * Create device BLE Mesh update task
177
+ * @param params params containing information to create device BLE Mesh update task
178
+ * params.clientId: the client ID, required
179
+ * params.updateTasks: the update tasks, required
180
+ * @returns Promise<DeviceBleMeshUpdateTasks[]> the created Device BLE Mesh Update
181
+ * */
182
+ async createDeviceBLEMeshUpdateTask(params) {
183
+ this.logger.trace(params, 'BLEMeshRepository::createDeviceBLEMeshUpdateTask started with params');
184
+ const novaDataSource = new NovaDataSource(this.novaDataSourceConfig, this.logger, this.replicaNovaDataSourceConfig);
185
+ const result = await createDeviceBLEMeshUpdateTask(novaDataSource, params, this.logger);
186
+ this.logger.trace(result, 'BLEMeshRepository::createDeviceBLEMeshUpdateTask result');
187
+ return result;
188
+ }
189
+ /**
190
+ * Get device BLE Mesh update tasks
191
+ * @param params params containing information to get device BLE Mesh update tasks
192
+ * params.filters.clientId: the client ID, required if ids is not provided
193
+ * params.filters.ids: the ids, required if clientId is not provided
194
+ * params.filters.status: the status, optional
195
+ * params.filters.imeis: the IMEIs, optional
196
+ * params.pagingOptions: the paging options, optional
197
+ * @returns Promise<GetDeviceBLEMeshUpdateTaskResult> the device BLE Mesh Update tasks
198
+ * */
199
+ async getDeviceBLEMeshUpdateTasks(params) {
200
+ this.logger.trace(params, 'BLEMeshRepository::getDeviceBLEMeshUpdateTasks started with params');
201
+ const novaDataSource = new NovaDataSource(this.novaDataSourceConfig, this.logger, this.replicaNovaDataSourceConfig);
202
+ const result = await getDeviceBLEMeshUpdateTasks(novaDataSource, params, this.logger);
203
+ this.logger.trace(result, 'BLEMeshRepository::getDeviceBLEMeshUpdateTasks result');
204
+ return result;
205
+ }
206
+ /**
207
+ * Update devices BLE Mesh update task
208
+ * @param params params containing information to update devices BLE Mesh update task
209
+ * params.filters.id: the task Id, required
210
+ * params.values.status: the status to update, required
211
+ * @returns Promise<boolean> true if the devices were updated
212
+ * */
213
+ async updateDevicesBLEMeshUpdateTask(params) {
214
+ this.logger.trace(params, 'BLEMeshRepository::updateDevicesBLEMeshUpdateTask started with params');
215
+ const novaDataSource = new NovaDataSource(this.novaDataSourceConfig, this.logger, this.replicaNovaDataSourceConfig);
216
+ const result = await updateDevicesBLEMeshUpdateTask(novaDataSource, params, this.logger);
217
+ this.logger.trace({ result }, 'BLEMeshRepository::updateDevicesBLEMeshUpdateTask result');
218
+ return result;
219
+ }
172
220
  }
173
221
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/repositories/bleMesh/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/repositories/bleMesh/index.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,11 @@
1
1
  import { DeviceBleMesh } from '../../entities';
2
2
  export const updateDevicesBLEMesh = async (novaDataSource, params, logger) => {
3
3
  if (!params?.filters?.imeis?.length || !params.filters.clientId) {
4
- logger.warn({ params }, 'BLEMeshRepository::updateBLEMesh missing required parameters');
4
+ logger.warn({ params }, 'BLEMeshRepository::updateDevicesBLEMesh missing required parameters');
5
5
  return false;
6
6
  }
7
7
  if (!params?.values?.status) {
8
- logger.warn({ params }, 'BLEMeshRepository::updateBLEMesh missing required parameters');
8
+ logger.warn({ params }, 'BLEMeshRepository::updateDevicesBLEMesh missing required parameters');
9
9
  return false;
10
10
  }
11
11
  return novaDataSource.safeQuery(async (dataSource) => {
@@ -25,6 +25,6 @@ export const updateDevicesBLEMesh = async (novaDataSource, params, logger) => {
25
25
  .andWhere('clientId = :clientId', { clientId: params.filters.clientId })
26
26
  .execute();
27
27
  return result.affected > 0;
28
- }, 'BLEMeshRepository::updateBLEMesh');
28
+ }, 'BLEMeshRepository::updateDevicesBLEMesh');
29
29
  };
30
30
  //# sourceMappingURL=updateDevicesBLEMesh.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"updateDevicesBLEMesh.js","sourceRoot":"","sources":["../../../src/repositories/bleMesh/updateDevicesBLEMesh.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAK9C,MAAM,CAAC,MAAM,oBAAoB,GAAG,KAAK,EACvC,cAA8B,EAC9B,MAAkC,EAClC,MAAc,EACI,EAAE;IACpB,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE;QAC/D,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,8DAA8D,CAAC,CAAA;QACvF,OAAO,KAAK,CAAA;KACb;IAED,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE;QAC3B,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,8DAA8D,CAAC,CAAA;QACvF,OAAO,KAAK,CAAA;KACb;IAED,OAAO,cAAc,CAAC,SAAS,CAAC,KAAK,EAAE,UAA0B,EAAoB,EAAE;QACrF,MAAM,iBAAiB,GAAG,UAAU,CAAC,aAAa,CAAC,aAAa,CAAC,CAAA;QAEjE,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAA;QAEtB,MAAM,MAAM,GAAG,MAAM,iBAAiB;aACnC,kBAAkB,EAAE;aACpB,MAAM,CAAC,aAAa,CAAC;aACrB,GAAG,CAAC;YACH,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM;YAC5B,UAAU,EAAE,GAAG;SAChB,CAAC;aACD,KAAK,CACJ,sFAAsF,EACtF;YACE,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,KAAK;YAC3B,QAAQ,EAAE,MAAM,CAAC,OAAO,CAAC,QAAQ;SAClC,CACF;aACA,QAAQ,CAAC,sBAAsB,EAAE,EAAE,QAAQ,EAAE,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;aACvE,OAAO,EAAE,CAAA;QAEZ,OAAO,MAAM,CAAC,QAAQ,GAAG,CAAC,CAAA;IAC5B,CAAC,EAAE,kCAAkC,CAAC,CAAA;AACxC,CAAC,CAAA"}
1
+ {"version":3,"file":"updateDevicesBLEMesh.js","sourceRoot":"","sources":["../../../src/repositories/bleMesh/updateDevicesBLEMesh.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAK9C,MAAM,CAAC,MAAM,oBAAoB,GAAG,KAAK,EACvC,cAA8B,EAC9B,MAAkC,EAClC,MAAc,EACI,EAAE;IACpB,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE;QAC/D,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,qEAAqE,CAAC,CAAA;QAC9F,OAAO,KAAK,CAAA;KACb;IAED,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE;QAC3B,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,qEAAqE,CAAC,CAAA;QAC9F,OAAO,KAAK,CAAA;KACb;IAED,OAAO,cAAc,CAAC,SAAS,CAAC,KAAK,EAAE,UAA0B,EAAoB,EAAE;QACrF,MAAM,iBAAiB,GAAG,UAAU,CAAC,aAAa,CAAC,aAAa,CAAC,CAAA;QAEjE,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAA;QAEtB,MAAM,MAAM,GAAG,MAAM,iBAAiB;aACnC,kBAAkB,EAAE;aACpB,MAAM,CAAC,aAAa,CAAC;aACrB,GAAG,CAAC;YACH,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM;YAC5B,UAAU,EAAE,GAAG;SAChB,CAAC;aACD,KAAK,CACJ,sFAAsF,EACtF;YACE,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,KAAK;YAC3B,QAAQ,EAAE,MAAM,CAAC,OAAO,CAAC,QAAQ;SAClC,CACF;aACA,QAAQ,CAAC,sBAAsB,EAAE,EAAE,QAAQ,EAAE,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;aACvE,OAAO,EAAE,CAAA;QAEZ,OAAO,MAAM,CAAC,QAAQ,GAAG,CAAC,CAAA;IAC5B,CAAC,EAAE,yCAAyC,CAAC,CAAA;AAC/C,CAAC,CAAA"}
@@ -0,0 +1,4 @@
1
+ import { NovaDataSource } from '../../novaDataSource';
2
+ import { UpdateDeviceBLEMeshUpdateTaskParams } from '../../types/bleMesh';
3
+ import { Logger } from '../../types/logger';
4
+ export declare const updateDevicesBLEMeshUpdateTask: (novaDataSource: NovaDataSource, params: UpdateDeviceBLEMeshUpdateTaskParams, logger: Logger) => Promise<boolean>;
@@ -0,0 +1,27 @@
1
+ import { Utils } from '../..';
2
+ import { DeviceBleMeshUpdateTask } from '../../entities';
3
+ export const updateDevicesBLEMeshUpdateTask = async (novaDataSource, params, logger) => {
4
+ if (!params?.filters?.id) {
5
+ logger.warn({ params }, 'BLEMeshRepository::updateDevicesBLEMeshUpdateTask missing required parameters');
6
+ return false;
7
+ }
8
+ if (!params?.values?.status) {
9
+ logger.warn({ params }, 'BLEMeshRepository::updateDevicesBLEMeshUpdateTask missing required parameters');
10
+ return false;
11
+ }
12
+ return novaDataSource.safeQuery(async (dataSource) => {
13
+ const deviceBleMeshUpdateTaskRepository = dataSource.getRepository(DeviceBleMeshUpdateTask);
14
+ const now = new Date();
15
+ const result = await deviceBleMeshUpdateTaskRepository
16
+ .createQueryBuilder()
17
+ .update(DeviceBleMeshUpdateTask)
18
+ .set({
19
+ status: params.values.status,
20
+ modifiedAt: now,
21
+ })
22
+ .where('id = :id', { id: Utils.uuidStringToBinaryBuffer(params.filters.id) })
23
+ .execute();
24
+ return result.affected > 0;
25
+ }, 'BLEMeshRepository::updateDevicesBLEMeshUpdateTask');
26
+ };
27
+ //# sourceMappingURL=updateDevicesBLEMeshUpdateTask.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"updateDevicesBLEMeshUpdateTask.js","sourceRoot":"","sources":["../../../src/repositories/bleMesh/updateDevicesBLEMeshUpdateTask.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,OAAO,CAAA;AAC7B,OAAO,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAA;AAKxD,MAAM,CAAC,MAAM,8BAA8B,GAAG,KAAK,EACjD,cAA8B,EAC9B,MAA2C,EAC3C,MAAc,EACI,EAAE;IACpB,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE,EAAE;QACxB,MAAM,CAAC,IAAI,CACT,EAAE,MAAM,EAAE,EACV,+EAA+E,CAChF,CAAA;QACD,OAAO,KAAK,CAAA;KACb;IAED,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE;QAC3B,MAAM,CAAC,IAAI,CACT,EAAE,MAAM,EAAE,EACV,+EAA+E,CAChF,CAAA;QACD,OAAO,KAAK,CAAA;KACb;IAED,OAAO,cAAc,CAAC,SAAS,CAAC,KAAK,EAAE,UAA0B,EAAoB,EAAE;QACrF,MAAM,iCAAiC,GAAG,UAAU,CAAC,aAAa,CAAC,uBAAuB,CAAC,CAAA;QAE3F,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAA;QAEtB,MAAM,MAAM,GAAG,MAAM,iCAAiC;aACnD,kBAAkB,EAAE;aACpB,MAAM,CAAC,uBAAuB,CAAC;aAC/B,GAAG,CAAC;YACH,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM;YAC5B,UAAU,EAAE,GAAG;SAChB,CAAC;aACD,KAAK,CAAC,UAAU,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC,wBAAwB,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC;aAC5E,OAAO,EAAE,CAAA;QAEZ,OAAO,MAAM,CAAC,QAAQ,GAAG,CAAC,CAAA;IAC5B,CAAC,EAAE,mDAAmD,CAAC,CAAA;AACzD,CAAC,CAAA"}
@@ -0,0 +1,5 @@
1
+ import { DataExport } from '../../entities';
2
+ import { NovaDataSource } from '../../novaDataSource';
3
+ import { CreateDataExportsParams } from '../../types/dataExports';
4
+ import { Logger } from '../../types/logger';
5
+ export declare const createDataExports: (novaDataSource: NovaDataSource, params: CreateDataExportsParams, logger: Logger) => Promise<DataExport[]>;
@@ -0,0 +1,32 @@
1
+ import { v4 as uuidV4 } from 'uuid';
2
+ import { DataExport } from '../../entities';
3
+ import { uuidStringToBinaryBuffer } from '../../utils/uuidHelpers';
4
+ export const createDataExports = async (novaDataSource, params, logger) => {
5
+ if (!params?.dataExports?.length || params.dataExports.some(e => !e.clientId)) {
6
+ logger.warn({ params }, 'DataExportsRepository::createDataExports - missing required parameters');
7
+ return null;
8
+ }
9
+ return novaDataSource.safeQuery(async (dataSource) => {
10
+ const dataExportsRepository = dataSource.getRepository(DataExport);
11
+ const now = new Date();
12
+ const dataExports = params.dataExports.map(e => {
13
+ let bufferId = uuidStringToBinaryBuffer(e.id);
14
+ if (bufferId === null) {
15
+ bufferId = uuidStringToBinaryBuffer(uuidV4());
16
+ }
17
+ return {
18
+ id: bufferId,
19
+ clientId: e.clientId,
20
+ deviceId: e.deviceId,
21
+ createdAt: now,
22
+ dataType: e.dataType,
23
+ status: e.status,
24
+ parameters: e.parameters,
25
+ exportLocation: e.exportLocation,
26
+ downloadLink: e.downloadLink,
27
+ };
28
+ });
29
+ return await dataExportsRepository.save(dataExports);
30
+ }, 'DataExportsRepository::createDataExports');
31
+ };
32
+ //# sourceMappingURL=createDataExports.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createDataExports.js","sourceRoot":"","sources":["../../../src/repositories/dataExports/createDataExports.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,IAAI,MAAM,EAAE,MAAM,MAAM,CAAA;AAEnC,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAI3C,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAA;AAElE,MAAM,CAAC,MAAM,iBAAiB,GAAG,KAAK,EACpC,cAA8B,EAC9B,MAA+B,EAC/B,MAAc,EACS,EAAE;IACzB,IAAI,CAAC,MAAM,EAAE,WAAW,EAAE,MAAM,IAAI,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE;QAC7E,MAAM,CAAC,IAAI,CACT,EAAE,MAAM,EAAE,EACV,wEAAwE,CACzE,CAAA;QACD,OAAO,IAAI,CAAA;KACZ;IAED,OAAO,cAAc,CAAC,SAAS,CAAC,KAAK,EAAE,UAA0B,EAAyB,EAAE;QAC1F,MAAM,qBAAqB,GAAG,UAAU,CAAC,aAAa,CAAC,UAAU,CAAC,CAAA;QAElE,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAA;QAEtB,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;YAC7C,IAAI,QAAQ,GAAG,wBAAwB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;YAC7C,IAAI,QAAQ,KAAK,IAAI,EAAE;gBACrB,QAAQ,GAAG,wBAAwB,CAAC,MAAM,EAAE,CAAC,CAAA;aAC9C;YACD,OAAO;gBACL,EAAE,EAAE,QAAQ;gBACZ,QAAQ,EAAE,CAAC,CAAC,QAAQ;gBACpB,QAAQ,EAAE,CAAC,CAAC,QAAQ;gBACpB,SAAS,EAAE,GAAG;gBACd,QAAQ,EAAE,CAAC,CAAC,QAAQ;gBACpB,MAAM,EAAE,CAAC,CAAC,MAAM;gBAChB,UAAU,EAAE,CAAC,CAAC,UAAU;gBACxB,cAAc,EAAE,CAAC,CAAC,cAAc;gBAChC,YAAY,EAAE,CAAC,CAAC,YAAY;aAC7B,CAAA;QACH,CAAC,CAAiB,CAAA;QAElB,OAAO,MAAM,qBAAqB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;IACtD,CAAC,EAAE,0CAA0C,CAAC,CAAA;AAChD,CAAC,CAAA"}
@@ -0,0 +1,4 @@
1
+ import { NovaDataSource } from '../../novaDataSource';
2
+ import { GetDataExportsParams, GetDataExportsResult } from '../../types/dataExports';
3
+ import { Logger } from '../../types/logger';
4
+ export declare const getDataExports: (novaDataSource: NovaDataSource, params: GetDataExportsParams, logger: Logger) => Promise<GetDataExportsResult>;
@@ -0,0 +1,50 @@
1
+ import { DataExport } from '../../entities';
2
+ import { uuidStringToBinaryBuffer } from '../../utils/uuidHelpers';
3
+ export const getDataExports = async (novaDataSource, params, logger) => {
4
+ if (!params?.filter?.id && !params?.filter?.clientId) {
5
+ logger.warn({ params }, 'DataExportsRepository::getDataExports - missing required parameters');
6
+ return null;
7
+ }
8
+ const binaryBuffer = uuidStringToBinaryBuffer(params.filter.id);
9
+ if (!binaryBuffer?.length) {
10
+ logger.warn({ params }, 'DataExportsRepository::getDataExports - id should be a valid UUID');
11
+ return null;
12
+ }
13
+ return novaDataSource.safeQuery(async (safeDataSource, queryRunner) => {
14
+ const dataExportsRepository = safeDataSource.getRepository(DataExport);
15
+ let queryBuilder = dataExportsRepository.createQueryBuilder('dataExport');
16
+ if (queryRunner) {
17
+ queryBuilder.setQueryRunner(queryRunner);
18
+ }
19
+ if (params?.filter?.id) {
20
+ queryBuilder = queryBuilder.where('dataExport.id = :id', {
21
+ id: binaryBuffer,
22
+ });
23
+ }
24
+ if (params?.filter?.clientId) {
25
+ queryBuilder = queryBuilder.andWhere('dataExport.clientId = :clientId', {
26
+ clientId: params.filter.clientId,
27
+ });
28
+ }
29
+ if (params?.projectionOptions?.withDevice) {
30
+ queryBuilder = queryBuilder.leftJoinAndSelect('dataExport.device', 'device');
31
+ }
32
+ if (params?.projectionOptions?.withClient) {
33
+ queryBuilder = queryBuilder.leftJoinAndSelect('dataExport.client', 'client');
34
+ }
35
+ const pageSize = params.pagingOptions?.pageSize ?? 100;
36
+ const pageIndex = params.pagingOptions?.pageIndex ?? 0;
37
+ queryBuilder = queryBuilder.limit(pageSize).offset(pageSize * pageIndex);
38
+ let dataExports;
39
+ let count = undefined;
40
+ if (params?.projectionOptions?.withTotalCount) {
41
+ ;
42
+ [dataExports, count] = await queryBuilder.getManyAndCount();
43
+ }
44
+ else {
45
+ dataExports = await queryBuilder.getMany();
46
+ }
47
+ return { dataExports, totalCount: count };
48
+ }, 'DataExportsRepository::getDataExports');
49
+ };
50
+ //# sourceMappingURL=getDataExports.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getDataExports.js","sourceRoot":"","sources":["../../../src/repositories/dataExports/getDataExports.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAI3C,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAA;AAElE,MAAM,CAAC,MAAM,cAAc,GAAG,KAAK,EACjC,cAA8B,EAC9B,MAA4B,EAC5B,MAAc,EACiB,EAAE;IACjC,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE;QACpD,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,qEAAqE,CAAC,CAAA;QAC9F,OAAO,IAAI,CAAA;KACZ;IAED,MAAM,YAAY,GAAG,wBAAwB,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;IAE/D,IAAI,CAAC,YAAY,EAAE,MAAM,EAAE;QACzB,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,mEAAmE,CAAC,CAAA;QAC5F,OAAO,IAAI,CAAA;KACZ;IAED,OAAO,cAAc,CAAC,SAAS,CAC7B,KAAK,EACH,cAA8B,EAC9B,WAAyB,EACM,EAAE;QACjC,MAAM,qBAAqB,GAAG,cAAc,CAAC,aAAa,CAAC,UAAU,CAAC,CAAA;QAEtE,IAAI,YAAY,GAAG,qBAAqB,CAAC,kBAAkB,CAAC,YAAY,CAAC,CAAA;QAEzE,IAAI,WAAW,EAAE;YACf,YAAY,CAAC,cAAc,CAAC,WAAW,CAAC,CAAA;SACzC;QAED,IAAI,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE;YACtB,YAAY,GAAG,YAAY,CAAC,KAAK,CAAC,qBAAqB,EAAE;gBACvD,EAAE,EAAE,YAAY;aACjB,CAAC,CAAA;SACH;QAED,IAAI,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE;YAC5B,YAAY,GAAG,YAAY,CAAC,QAAQ,CAAC,iCAAiC,EAAE;gBACtE,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,QAAQ;aACjC,CAAC,CAAA;SACH;QAED,IAAI,MAAM,EAAE,iBAAiB,EAAE,UAAU,EAAE;YACzC,YAAY,GAAG,YAAY,CAAC,iBAAiB,CAAC,mBAAmB,EAAE,QAAQ,CAAC,CAAA;SAC7E;QAED,IAAI,MAAM,EAAE,iBAAiB,EAAE,UAAU,EAAE;YACzC,YAAY,GAAG,YAAY,CAAC,iBAAiB,CAAC,mBAAmB,EAAE,QAAQ,CAAC,CAAA;SAC7E;QAED,MAAM,QAAQ,GAAG,MAAM,CAAC,aAAa,EAAE,QAAQ,IAAI,GAAG,CAAA;QACtD,MAAM,SAAS,GAAG,MAAM,CAAC,aAAa,EAAE,SAAS,IAAI,CAAC,CAAA;QAEtD,YAAY,GAAG,YAAY,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,QAAQ,GAAG,SAAS,CAAC,CAAA;QAExE,IAAI,WAAyB,CAAA;QAC7B,IAAI,KAAK,GAAW,SAAS,CAAA;QAC7B,IAAI,MAAM,EAAE,iBAAiB,EAAE,cAAc,EAAE;YAC7C,CAAC;YAAA,CAAC,WAAW,EAAE,KAAK,CAAC,GAAG,MAAM,YAAY,CAAC,eAAe,EAAE,CAAA;SAC7D;aAAM;YACL,WAAW,GAAG,MAAM,YAAY,CAAC,OAAO,EAAE,CAAA;SAC3C;QAED,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,KAAK,EAAE,CAAA;IAC3C,CAAC,EACD,uCAAuC,CACxC,CAAA;AACH,CAAC,CAAA"}
@@ -0,0 +1,38 @@
1
+ import { DataExport } from '../../entities';
2
+ import { CreateDataExportsParams, GetDataExportsParams, GetDataExportsResult, UpdateDataExportParams } from '../../types/dataExports';
3
+ import { BaseRepository } from '../baseRepository';
4
+ export declare class DataExportsRepository extends BaseRepository {
5
+ /**
6
+ * Create data exports
7
+ * @param params Params to create data exports
8
+ * params.dataExports: List of data exports to create
9
+ * @returns The list of created data exports
10
+ */
11
+ createDataExports(params: CreateDataExportsParams): Promise<DataExport[]>;
12
+ /**
13
+ * Get the list of data exports
14
+ * @param params Params to get the list of data exports
15
+ * params.filter.id: Filter by data export id
16
+ * params.filter.clientId: Filter by client id
17
+ * params.projectionOptions: Projection options
18
+ * params.projectionOptions.withClient: Include client in the projection
19
+ * params.projectionOptions.withDevice: Include device in the projection
20
+ * params.projectionOptions.withTotalCount: Include total count
21
+ * @returns The list of data exports with the total count if requested
22
+ */
23
+ getDataExports(params: GetDataExportsParams): Promise<GetDataExportsResult>;
24
+ /**
25
+ * Update data export
26
+ * @param params Params to update data export
27
+ * params.filter.id: Filter by data export id
28
+ * params.values: Values to update
29
+ * params.values.completedAt: Completed at date
30
+ * params.values.dataType: Data export type
31
+ * params.values.status: Data export status
32
+ * params.values.parameters: Parameters
33
+ * params.values.exportLocation: Export location
34
+ * params.values.downloadLink: Download link
35
+ * @returns True if the data export was updated successfully
36
+ */
37
+ updateDataExport(params: UpdateDataExportParams): Promise<boolean>;
38
+ }
@@ -0,0 +1,59 @@
1
+ import { NovaDataSource } from '../../novaDataSource';
2
+ import { BaseRepository } from '../baseRepository';
3
+ import { createDataExports } from './createDataExports';
4
+ import { getDataExports } from './getDataExports';
5
+ import { updateDataExport } from './updateDataExports';
6
+ export class DataExportsRepository extends BaseRepository {
7
+ /**
8
+ * Create data exports
9
+ * @param params Params to create data exports
10
+ * params.dataExports: List of data exports to create
11
+ * @returns The list of created data exports
12
+ */
13
+ async createDataExports(params) {
14
+ this.logger.trace(params, 'DataExportsRepository::createDataExports started with params');
15
+ const novaDataSource = new NovaDataSource(this.novaDataSourceConfig, this.logger, this.replicaNovaDataSourceConfig);
16
+ const result = await createDataExports(novaDataSource, params, this.logger);
17
+ this.logger.trace({ result }, 'DataExportsRepository::createDataExports result');
18
+ return result;
19
+ }
20
+ /**
21
+ * Get the list of data exports
22
+ * @param params Params to get the list of data exports
23
+ * params.filter.id: Filter by data export id
24
+ * params.filter.clientId: Filter by client id
25
+ * params.projectionOptions: Projection options
26
+ * params.projectionOptions.withClient: Include client in the projection
27
+ * params.projectionOptions.withDevice: Include device in the projection
28
+ * params.projectionOptions.withTotalCount: Include total count
29
+ * @returns The list of data exports with the total count if requested
30
+ */
31
+ async getDataExports(params) {
32
+ this.logger.trace(params, 'DataExportsRepository::getDataExports started with params');
33
+ const novaDataSource = new NovaDataSource(this.novaDataSourceConfig, this.logger, this.replicaNovaDataSourceConfig);
34
+ const result = await getDataExports(novaDataSource, params, this.logger);
35
+ this.logger.trace({ result }, 'DataExportsRepository::getDataExports result');
36
+ return result;
37
+ }
38
+ /**
39
+ * Update data export
40
+ * @param params Params to update data export
41
+ * params.filter.id: Filter by data export id
42
+ * params.values: Values to update
43
+ * params.values.completedAt: Completed at date
44
+ * params.values.dataType: Data export type
45
+ * params.values.status: Data export status
46
+ * params.values.parameters: Parameters
47
+ * params.values.exportLocation: Export location
48
+ * params.values.downloadLink: Download link
49
+ * @returns True if the data export was updated successfully
50
+ */
51
+ async updateDataExport(params) {
52
+ this.logger.trace(params, 'DataExportsRepository::updateDataExport started with params');
53
+ const novaDataSource = new NovaDataSource(this.novaDataSourceConfig, this.logger, this.replicaNovaDataSourceConfig);
54
+ const result = await updateDataExport(novaDataSource, params, this.logger);
55
+ this.logger.trace({ result }, 'DataExportsRepository::updateDataExport result');
56
+ return result;
57
+ }
58
+ }
59
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/repositories/dataExports/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAOrD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AAEtD,MAAM,OAAO,qBAAsB,SAAQ,cAAc;IACvD;;;;;OAKG;IACH,KAAK,CAAC,iBAAiB,CAAC,MAA+B;QACrD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,8DAA8D,CAAC,CAAA;QAEzF,MAAM,cAAc,GAAG,IAAI,cAAc,CACvC,IAAI,CAAC,oBAAoB,EACzB,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,2BAA2B,CACjC,CAAA;QAED,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,cAAc,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;QAE3E,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,EAAE,iDAAiD,CAAC,CAAA;QAEhF,OAAO,MAAM,CAAA;IACf,CAAC;IAED;;;;;;;;;;OAUG;IACH,KAAK,CAAC,cAAc,CAAC,MAA4B;QAC/C,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,2DAA2D,CAAC,CAAA;QAEtF,MAAM,cAAc,GAAG,IAAI,cAAc,CACvC,IAAI,CAAC,oBAAoB,EACzB,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,2BAA2B,CACjC,CAAA;QAED,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,cAAc,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;QAExE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,EAAE,8CAA8C,CAAC,CAAA;QAE7E,OAAO,MAAM,CAAA;IACf,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,KAAK,CAAC,gBAAgB,CAAC,MAA8B;QACnD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,6DAA6D,CAAC,CAAA;QAExF,MAAM,cAAc,GAAG,IAAI,cAAc,CACvC,IAAI,CAAC,oBAAoB,EACzB,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,2BAA2B,CACjC,CAAA;QAED,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAC,cAAc,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;QAE1E,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,EAAE,gDAAgD,CAAC,CAAA;QAE/E,OAAO,MAAM,CAAA;IACf,CAAC;CACF"}
@@ -0,0 +1,4 @@
1
+ import { NovaDataSource } from '../../novaDataSource';
2
+ import { UpdateDataExportParams } from '../../types/dataExports';
3
+ import { Logger } from '../../types/logger';
4
+ export declare const updateDataExport: (novaDataSource: NovaDataSource, params: UpdateDataExportParams, logger: Logger) => Promise<boolean>;
@@ -0,0 +1,26 @@
1
+ import { DataExport } from '../../entities';
2
+ import { uuidStringToBinaryBuffer } from '../../utils/uuidHelpers';
3
+ export const updateDataExport = async (novaDataSource, params, logger) => {
4
+ if (!params?.filter?.id || Object.values(params.values).every(v => v == null)) {
5
+ logger.warn({ params }, 'DataExportsRepository::updateDataExport - missing required parameters');
6
+ return null;
7
+ }
8
+ const binaryBuffer = uuidStringToBinaryBuffer(params.filter.id);
9
+ if (!binaryBuffer?.length) {
10
+ logger.warn({ params }, 'DataExportsRepository::updateDataExport - id should be a valid UUID');
11
+ return null;
12
+ }
13
+ return novaDataSource.safeQuery(async (dataSource) => {
14
+ const dataExportsRepository = dataSource.getRepository(DataExport);
15
+ const result = await dataExportsRepository
16
+ .createQueryBuilder()
17
+ .update(DataExport)
18
+ .set({
19
+ ...params.values,
20
+ })
21
+ .where('id = :id', { id: binaryBuffer })
22
+ .execute();
23
+ return result?.affected > 0;
24
+ }, 'DataExportsRepository::updateDataExport');
25
+ };
26
+ //# sourceMappingURL=updateDataExports.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"updateDataExports.js","sourceRoot":"","sources":["../../../src/repositories/dataExports/updateDataExports.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAI3C,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAA;AAElE,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,EACnC,cAA8B,EAC9B,MAA8B,EAC9B,MAAc,EACI,EAAE;IACpB,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC,EAAE;QAC7E,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,uEAAuE,CAAC,CAAA;QAChG,OAAO,IAAI,CAAA;KACZ;IAED,MAAM,YAAY,GAAG,wBAAwB,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;IAE/D,IAAI,CAAC,YAAY,EAAE,MAAM,EAAE;QACzB,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,qEAAqE,CAAC,CAAA;QAC9F,OAAO,IAAI,CAAA;KACZ;IAED,OAAO,cAAc,CAAC,SAAS,CAAC,KAAK,EAAE,UAA0B,EAAoB,EAAE;QACrF,MAAM,qBAAqB,GAAG,UAAU,CAAC,aAAa,CAAC,UAAU,CAAC,CAAA;QAElE,MAAM,MAAM,GAAG,MAAM,qBAAqB;aACvC,kBAAkB,EAAE;aACpB,MAAM,CAAC,UAAU,CAAC;aAClB,GAAG,CAAC;YACH,GAAG,MAAM,CAAC,MAAM;SACjB,CAAC;aACD,KAAK,CAAC,UAAU,EAAE,EAAE,EAAE,EAAE,YAAY,EAAE,CAAC;aACvC,OAAO,EAAE,CAAA;QAEZ,OAAO,MAAM,EAAE,QAAQ,GAAG,CAAC,CAAA;IAC7B,CAAC,EAAE,yCAAyC,CAAC,CAAA;AAC/C,CAAC,CAAA"}
@@ -11,6 +11,7 @@ import { BLEMeshConfigurationRepository } from './bleMeshConfiguration';
11
11
  import { BoundariesRepository } from './boundaries';
12
12
  import { ClientsRepository } from './clients';
13
13
  import { CountriesRepository } from './countries';
14
+ import { DataExportsRepository } from './dataExports';
14
15
  import { DeactivationsRepository } from './deactivations';
15
16
  import { DeviceBehaviorsRepository } from './deviceBehaviors';
16
17
  import { DevicePairingsRepository } from './devicePairings';
@@ -38,4 +39,4 @@ import { UserInvitationsRepository } from './userInvitations';
38
39
  import { UserRatingRequestsRepository } from './userRatingRequests';
39
40
  import { UserRegistrationAttemptsRepository } from './userRegistrationAttempts';
40
41
  import { UsersRepository } from './users';
41
- export { AcumaticaRepository, AempTokenRepository, AlertRepository, AlertTypesRepository, AppFeaturesRepository, AssetCategoriesRepository, BillingRepository, BlacklistRepository, BLEMeshRepository, BLEMeshConfigurationRepository, BoundariesRepository, ClientsRepository, CountriesRepository, DeactivationsRepository, DeviceStatusRepository, DeviceBehaviorsRepository, DevicePairingsRepository, DevicesRepository, DeviceTypeFeatureRepository, EntityTagsRepository, FeatureRepository, FirmwaresRepository, LatestUserAppInfoRepository, LiveLinksRepository, NotificationRecipientsRepository, PositionRepository, PromotionRepository, SecurityRepository, TagsRepository, TasksRepository, TripRepository, UserActivationsRepository, UserAppFeedbackRepository, UserAppIncidentsRepository, UserConfigurationsRepository, UserDataDeletionRequestsRepository, UserInvitationsRepository, UserRatingRequestsRepository, UserRegistrationAttemptsRepository, UsersRepository, };
42
+ export { AcumaticaRepository, AempTokenRepository, AlertRepository, AlertTypesRepository, AppFeaturesRepository, AssetCategoriesRepository, BillingRepository, BlacklistRepository, BLEMeshRepository, BLEMeshConfigurationRepository, BoundariesRepository, ClientsRepository, CountriesRepository, DataExportsRepository, DeactivationsRepository, DeviceStatusRepository, DeviceBehaviorsRepository, DevicePairingsRepository, DevicesRepository, DeviceTypeFeatureRepository, EntityTagsRepository, FeatureRepository, FirmwaresRepository, LatestUserAppInfoRepository, LiveLinksRepository, NotificationRecipientsRepository, PositionRepository, PromotionRepository, SecurityRepository, TagsRepository, TasksRepository, TripRepository, UserActivationsRepository, UserAppFeedbackRepository, UserAppIncidentsRepository, UserConfigurationsRepository, UserDataDeletionRequestsRepository, UserInvitationsRepository, UserRatingRequestsRepository, UserRegistrationAttemptsRepository, UsersRepository, };