@spytecgps/nova-orm 1.0.95 → 1.0.96

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.
@@ -1,4 +1,4 @@
1
- import { Device } from '../../entities';
1
+ import { Device, EntityTag } from '../../entities';
2
2
  export const getDevicesCountByStatus = async (novaDataSource, params, logger) => {
3
3
  if (!params?.filters?.clientId) {
4
4
  logger.warn({ params }, 'DevicesRepository::getDevicesCountByStatus missing required parameters');
@@ -12,7 +12,15 @@ export const getDevicesCountByStatus = async (novaDataSource, params, logger) =>
12
12
  .createQueryBuilder('device')
13
13
  .where('device.clientId = :clientId', {
14
14
  clientId: params.filters.clientId,
15
- })
15
+ });
16
+ if (params.filters.tagIdList?.length) {
17
+ queryBuilder.innerJoin(EntityTag, 'entityTag', `entityTag.entityId = device.id
18
+ AND entityTag.entityType = 'Device'
19
+ AND entityTag.tagId IN (:...tagIdList)`, {
20
+ tagIdList: params.filters.tagIdList,
21
+ });
22
+ }
23
+ queryBuilder
16
24
  .groupBy('device.status')
17
25
  .select('device.status', 'status')
18
26
  .addSelect('COUNT(device.status)', 'count');
@@ -1 +1 @@
1
- {"version":3,"file":"getDevicesCountByStatus.js","sourceRoot":"","sources":["../../../src/repositories/devices/getDevicesCountByStatus.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AAKvC,MAAM,CAAC,MAAM,uBAAuB,GAAG,KAAK,EAC1C,cAA8B,EAC9B,MAAqC,EACrC,MAAc,EACmB,EAAE;IACnC,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE;QAC9B,MAAM,CAAC,IAAI,CACT,EAAE,MAAM,EAAE,EACV,wEAAwE,CACzE,CAAA;QACD,OAAO,EAAE,CAAA;KACV;IAED,4CAA4C;IAC5C,MAAM,aAAa,GAAG,cAAc,CAAC,2BAA2B,CAAC,MAAM,CAAC,CAAA;IAExE,OAAO,cAAc,CAAC,SAAS,CAC7B,KAAK,EACH,UAA0B,EAC1B,WAAyB,EACQ,EAAE;QACnC,MAAM,iBAAiB,GAAG,UAAU,CAAC,aAAa,CAAC,MAAM,CAAC,CAAA;QAE1D,MAAM,YAAY,GAAG,iBAAiB;aACnC,kBAAkB,CAAC,QAAQ,CAAC;aAC5B,KAAK,CAAC,6BAA6B,EAAE;YACpC,QAAQ,EAAE,MAAM,CAAC,OAAO,CAAC,QAAQ;SAClC,CAAC;aACD,OAAO,CAAC,eAAe,CAAC;aACxB,MAAM,CAAC,eAAe,EAAE,QAAQ,CAAC;aACjC,SAAS,CAAC,sBAAsB,EAAE,OAAO,CAAC,CAAA;QAE7C,IAAI,WAAW,EAAE;YACf,YAAY,CAAC,cAAc,CAAC,WAAW,CAAC,CAAA;SACzC;QAED,MAAM,oBAAoB,GAAG,MAAM,YAAY,CAAC,UAAU,EAAwB,CAAA;QAElF,OAAO,oBAAoB,CAAA;IAC7B,CAAC,EACD,4CAA4C,EAC5C,aAAa,CACd,CAAA;AACH,CAAC,CAAA"}
1
+ {"version":3,"file":"getDevicesCountByStatus.js","sourceRoot":"","sources":["../../../src/repositories/devices/getDevicesCountByStatus.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAKlD,MAAM,CAAC,MAAM,uBAAuB,GAAG,KAAK,EAC1C,cAA8B,EAC9B,MAAqC,EACrC,MAAc,EACmB,EAAE;IACnC,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE;QAC9B,MAAM,CAAC,IAAI,CACT,EAAE,MAAM,EAAE,EACV,wEAAwE,CACzE,CAAA;QACD,OAAO,EAAE,CAAA;KACV;IAED,4CAA4C;IAC5C,MAAM,aAAa,GAAG,cAAc,CAAC,2BAA2B,CAAC,MAAM,CAAC,CAAA;IAExE,OAAO,cAAc,CAAC,SAAS,CAC7B,KAAK,EACH,UAA0B,EAC1B,WAAyB,EACQ,EAAE;QACnC,MAAM,iBAAiB,GAAG,UAAU,CAAC,aAAa,CAAC,MAAM,CAAC,CAAA;QAE1D,MAAM,YAAY,GAAG,iBAAiB;aACnC,kBAAkB,CAAC,QAAQ,CAAC;aAC5B,KAAK,CAAC,6BAA6B,EAAE;YACpC,QAAQ,EAAE,MAAM,CAAC,OAAO,CAAC,QAAQ;SAClC,CAAC,CAAA;QAEJ,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE;YACpC,YAAY,CAAC,SAAS,CACpB,SAAS,EACT,WAAW,EACX;;kDAEwC,EACxC;gBACE,SAAS,EAAE,MAAM,CAAC,OAAO,CAAC,SAAS;aACpC,CACF,CAAA;SACF;QACD,YAAY;aACT,OAAO,CAAC,eAAe,CAAC;aACxB,MAAM,CAAC,eAAe,EAAE,QAAQ,CAAC;aACjC,SAAS,CAAC,sBAAsB,EAAE,OAAO,CAAC,CAAA;QAE7C,IAAI,WAAW,EAAE;YACf,YAAY,CAAC,cAAc,CAAC,WAAW,CAAC,CAAA;SACzC;QAED,MAAM,oBAAoB,GAAG,MAAM,YAAY,CAAC,UAAU,EAAwB,CAAA;QAElF,OAAO,oBAAoB,CAAA;IAC7B,CAAC,EACD,4CAA4C,EAC5C,aAAa,CACd,CAAA;AACH,CAAC,CAAA"}
@@ -351,6 +351,7 @@ export interface UpdateDeviceTypeParams {
351
351
  export interface GetDevicesCountByStatusParams extends BaseSelectQueryParams {
352
352
  filters: {
353
353
  clientId: number;
354
+ tagIdList?: number[];
354
355
  };
355
356
  }
356
357
  export interface DevicesCountByStatus {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@spytecgps/nova-orm",
3
- "version": "1.0.95",
3
+ "version": "1.0.96",
4
4
  "description": "ORM with PlanetScale",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",