dt-common-device 9.0.0 → 9.1.0
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/dist/audit/AuditUtils.d.ts +0 -1
- package/dist/audit/AuditUtils.js +3 -15
- package/dist/audit/IAuditProperties.d.ts +3 -2
- package/dist/audit/IAuditProperties.js +2 -0
- package/dist/chronicle/Cronicle.service.d.ts +6 -2
- package/dist/chronicle/Cronicle.service.js +19 -2
- package/dist/chronicle/ICronicle.interface.d.ts +1 -0
- package/dist/entities/accessGroup/AccessGroup.repository.d.ts +2 -1
- package/dist/entities/accessGroup/AccessGroup.repository.js +4 -1
- package/dist/entities/accessGroup/AccessGroup.service.d.ts +2 -1
- package/dist/entities/accessGroup/AccessGroup.service.js +4 -3
- package/dist/entities/device/local/services/Device.service.js +34 -20
- package/dist/entities/guest/Guest.repository.d.ts +1 -1
- package/dist/entities/guest/Guest.repository.js +5 -2
- package/dist/entities/guest/Guest.service.d.ts +1 -1
- package/dist/entities/guest/Guest.service.js +4 -1
- package/dist/entities/schedules/Schedule.repository.d.ts +1 -1
- package/dist/entities/schedules/Schedule.repository.js +5 -2
- package/dist/entities/schedules/Schedule.service.d.ts +1 -1
- package/dist/entities/schedules/Schedule.service.js +4 -1
- package/dist/entities/user/User.repository.js +4 -1
- package/dist/entities/user/User.service.d.ts +1 -1
- package/dist/entities/user/User.service.js +4 -1
- package/dist/entities/zone/Zone.service.js +4 -1
- package/dist/issues/issue.types.d.ts +1 -1
- package/dist/issues/issue.types.js +1 -1
- package/package.json +1 -1
- package/dist/admin/Admin.repository.d.ts +0 -7
- package/dist/admin/Admin.repository.js +0 -182
- package/dist/admin/Admin.service.d.ts +0 -5
- package/dist/admin/Admin.service.js +0 -17
- package/dist/admin/index.d.ts +0 -1
- package/dist/admin/index.js +0 -17
- package/dist/audit/AuditProperties.d.ts +0 -16
- package/dist/audit/AuditProperties.js +0 -2
- package/dist/chronicle/IChronicle.interface.d.ts +0 -14
- package/dist/chronicle/IChronicle.interface.js +0 -2
- package/dist/chronicle/chronicle.service.d.ts +0 -4
- package/dist/chronicle/chronicle.service.js +0 -44
- package/dist/connection/Connection.repository.d.ts +0 -8
- package/dist/connection/Connection.repository.js +0 -92
- package/dist/connection/Connection.service.d.ts +0 -8
- package/dist/connection/Connection.service.js +0 -32
- package/dist/connection/IConnection.d.ts +0 -28
- package/dist/connection/IConnection.js +0 -16
- package/dist/connection/index.d.ts +0 -2
- package/dist/connection/index.js +0 -18
- package/dist/device/cloud/entities/CloudConnection.d.ts +0 -6
- package/dist/device/cloud/entities/CloudConnection.js +0 -6
- package/dist/device/cloud/entities/CloudDevice.d.ts +0 -16
- package/dist/device/cloud/entities/CloudDevice.js +0 -26
- package/dist/device/cloud/entities/CloudDeviceService.d.ts +0 -5
- package/dist/device/cloud/entities/CloudDeviceService.js +0 -9
- package/dist/device/cloud/entities/DeviceFactory.d.ts +0 -7
- package/dist/device/cloud/entities/DeviceFactory.js +0 -80
- package/dist/device/cloud/entities/index.d.ts +0 -3
- package/dist/device/cloud/entities/index.js +0 -19
- package/dist/device/cloud/interface.d.ts +0 -101
- package/dist/device/cloud/interface.js +0 -3
- package/dist/device/cloud/interfaces/ICloudConnection.d.ts +0 -5
- package/dist/device/cloud/interfaces/ICloudConnection.js +0 -2
- package/dist/device/cloud/interfaces/ICloudDevice.d.ts +0 -9
- package/dist/device/cloud/interfaces/ICloudDevice.js +0 -2
- package/dist/device/cloud/interfaces/ICloudDeviceService.d.ts +0 -4
- package/dist/device/cloud/interfaces/ICloudDeviceService.js +0 -2
- package/dist/device/cloud/interfaces/IConnectionService.d.ts +0 -7
- package/dist/device/cloud/interfaces/IConnectionService.js +0 -2
- package/dist/device/cloud/interfaces/IDeviceConnectionService.d.ts +0 -7
- package/dist/device/cloud/interfaces/IDeviceConnectionService.js +0 -3
- package/dist/device/cloud/interfaces/IDeviceFactory.d.ts +0 -4
- package/dist/device/cloud/interfaces/IDeviceFactory.js +0 -2
- package/dist/device/cloud/interfaces/IDeviceService.d.ts +0 -8
- package/dist/device/cloud/interfaces/IDeviceService.js +0 -2
- package/dist/device/cloud/interfaces/IDevicesService.d.ts +0 -9
- package/dist/device/cloud/interfaces/IDevicesService.js +0 -2
- package/dist/device/cloud/interfaces/IHubService.d.ts +0 -5
- package/dist/device/cloud/interfaces/IHubService.js +0 -2
- package/dist/device/cloud/interfaces/IRawDataTransformer.d.ts +0 -4
- package/dist/device/cloud/interfaces/IRawDataTransformer.js +0 -2
- package/dist/device/cloud/interfaces/IRawDevice.d.ts +0 -17
- package/dist/device/cloud/interfaces/IRawDevice.js +0 -11
- package/dist/device/cloud/interfaces/index.d.ts +0 -5
- package/dist/device/cloud/interfaces/index.js +0 -21
- package/dist/device/cloud/services/CloudDevice.service.d.ts +0 -5
- package/dist/device/cloud/services/CloudDevice.service.js +0 -9
- package/dist/device/cloud/services/Connection.service.d.ts +0 -8
- package/dist/device/cloud/services/Connection.service.js +0 -6
- package/dist/device/cloud/services/Device.service.d.ts +0 -39
- package/dist/device/cloud/services/Device.service.js +0 -9
- package/dist/device/cloud/services/DeviceCloudService.d.ts +0 -42
- package/dist/device/cloud/services/DeviceCloudService.js +0 -59
- package/dist/device/cloud/services/DeviceHub.service.d.ts +0 -3
- package/dist/device/cloud/services/DeviceHub.service.js +0 -6
- package/dist/device/cloud/services/Hub.service.d.ts +0 -25
- package/dist/device/cloud/services/Hub.service.js +0 -9
- package/dist/device/cloud/services/SmartThingsDeviceService.d.ts +0 -38
- package/dist/device/cloud/services/SmartThingsDeviceService.js +0 -52
- package/dist/device/cloud/services/index.d.ts +0 -2
- package/dist/device/cloud/services/index.js +0 -18
- package/dist/device/cloud/types.d.ts +0 -52
- package/dist/device/cloud/types.js +0 -15
- package/dist/device/index.d.ts +0 -4
- package/dist/device/index.js +0 -20
- package/dist/device/local/entities/AlertBuilder.d.ts +0 -87
- package/dist/device/local/entities/AlertBuilder.example.d.ts +0 -11
- package/dist/device/local/entities/AlertBuilder.example.js +0 -117
- package/dist/device/local/entities/AlertBuilder.js +0 -179
- package/dist/device/local/entities/IssueBuilder.d.ts +0 -109
- package/dist/device/local/entities/IssueBuilder.example.d.ts +0 -16
- package/dist/device/local/entities/IssueBuilder.example.js +0 -196
- package/dist/device/local/entities/IssueBuilder.js +0 -237
- package/dist/device/local/entities/index.d.ts +0 -2
- package/dist/device/local/entities/index.js +0 -7
- package/dist/device/local/events/EventHandler.d.ts +0 -11
- package/dist/device/local/events/EventHandler.js +0 -86
- package/dist/device/local/events/Events.d.ts +0 -54
- package/dist/device/local/events/Events.js +0 -57
- package/dist/device/local/events/index.d.ts +0 -2
- package/dist/device/local/events/index.js +0 -7
- package/dist/device/local/handler/EventHandler.d.ts +0 -7
- package/dist/device/local/handler/EventHandler.js +0 -44
- package/dist/device/local/interface.d.ts +0 -0
- package/dist/device/local/interface.js +0 -1
- package/dist/device/local/interfaces/IConnection.d.ts +0 -26
- package/dist/device/local/interfaces/IConnection.js +0 -14
- package/dist/device/local/interfaces/IDevice.d.ts +0 -68
- package/dist/device/local/interfaces/IDevice.js +0 -10
- package/dist/device/local/interfaces/IDtDevice.d.ts +0 -16
- package/dist/device/local/interfaces/IDtDevice.js +0 -2
- package/dist/device/local/interfaces/IHub.d.ts +0 -46
- package/dist/device/local/interfaces/IHub.js +0 -2
- package/dist/device/local/interfaces/IProperty.d.ts +0 -29
- package/dist/device/local/interfaces/IProperty.js +0 -2
- package/dist/device/local/interfaces/ISchedule.d.ts +0 -25
- package/dist/device/local/interfaces/ISchedule.js +0 -2
- package/dist/device/local/interfaces/index.d.ts +0 -3
- package/dist/device/local/interfaces/index.js +0 -19
- package/dist/device/local/models/Alert.model.d.ts +0 -28
- package/dist/device/local/models/Alert.model.js +0 -222
- package/dist/device/local/models/Issue.model.d.ts +0 -28
- package/dist/device/local/models/Issue.model.js +0 -260
- package/dist/device/local/repository/Alert.repository.d.ts +0 -106
- package/dist/device/local/repository/Alert.repository.js +0 -374
- package/dist/device/local/repository/Connection.repository.d.ts +0 -8
- package/dist/device/local/repository/Connection.repository.js +0 -92
- package/dist/device/local/repository/Device.repository.d.ts +0 -30
- package/dist/device/local/repository/Device.repository.js +0 -325
- package/dist/device/local/repository/Hub.repository.d.ts +0 -13
- package/dist/device/local/repository/Hub.repository.js +0 -139
- package/dist/device/local/repository/Issue.repository.d.ts +0 -113
- package/dist/device/local/repository/Issue.repository.js +0 -401
- package/dist/device/local/repository/Property.repository.d.ts +0 -8
- package/dist/device/local/repository/Property.repository.js +0 -95
- package/dist/device/local/repository/Schedule.repository.d.ts +0 -9
- package/dist/device/local/repository/Schedule.repository.js +0 -109
- package/dist/device/local/services/Alert.service.d.ts +0 -137
- package/dist/device/local/services/Alert.service.js +0 -475
- package/dist/device/local/services/AlertService.example.d.ts +0 -55
- package/dist/device/local/services/AlertService.example.js +0 -148
- package/dist/device/local/services/Connection.service.d.ts +0 -8
- package/dist/device/local/services/Connection.service.js +0 -32
- package/dist/device/local/services/Device.service.d.ts +0 -40
- package/dist/device/local/services/Device.service.js +0 -391
- package/dist/device/local/services/DeviceHub.service.d.ts +0 -11
- package/dist/device/local/services/DeviceHub.service.js +0 -40
- package/dist/device/local/services/Hub.service.d.ts +0 -12
- package/dist/device/local/services/Hub.service.js +0 -107
- package/dist/device/local/services/Issue.service.d.ts +0 -168
- package/dist/device/local/services/Issue.service.js +0 -642
- package/dist/device/local/services/IssueService.example.d.ts +0 -68
- package/dist/device/local/services/IssueService.example.js +0 -177
- package/dist/device/local/services/Property.service.d.ts +0 -8
- package/dist/device/local/services/Property.service.js +0 -36
- package/dist/device/local/services/Schedule.service.d.ts +0 -9
- package/dist/device/local/services/Schedule.service.js +0 -26
- package/dist/device/local/services/index.d.ts +0 -3
- package/dist/device/local/services/index.js +0 -19
- package/dist/pms/IPms.d.ts +0 -6
- package/dist/pms/IPms.js +0 -10
- package/dist/pms/index.d.ts +0 -1
- package/dist/pms/index.js +0 -18
- package/dist/pms/webhookQueue/examples/index.d.ts +0 -2
- package/dist/pms/webhookQueue/examples/index.js +0 -18
- package/dist/pms/webhookQueue/examples/pms-integration.d.ts +0 -65
- package/dist/pms/webhookQueue/examples/pms-integration.js +0 -254
- package/dist/pms/webhookQueue/examples/usage.d.ts +0 -7
- package/dist/pms/webhookQueue/examples/usage.js +0 -175
- package/dist/pms/webhookQueue/index.d.ts +0 -3
- package/dist/pms/webhookQueue/index.js +0 -20
- package/dist/pms/webhookQueue/interfaces/IWebhookQueue.d.ts +0 -33
- package/dist/pms/webhookQueue/interfaces/IWebhookQueue.js +0 -2
- package/dist/pms/webhookQueue/interfaces/IWebhookWorker.d.ts +0 -38
- package/dist/pms/webhookQueue/interfaces/IWebhookWorker.js +0 -2
- package/dist/pms/webhookQueue/interfaces/index.d.ts +0 -1
- package/dist/pms/webhookQueue/interfaces/index.js +0 -17
- package/dist/pms/webhookQueue/services/WebhookQueueFactory.d.ts +0 -38
- package/dist/pms/webhookQueue/services/WebhookQueueFactory.js +0 -131
- package/dist/pms/webhookQueue/services/WebhookQueueIntegration.d.ts +0 -70
- package/dist/pms/webhookQueue/services/WebhookQueueIntegration.js +0 -207
- package/dist/pms/webhookQueue/services/WebhookQueueService.d.ts +0 -45
- package/dist/pms/webhookQueue/services/WebhookQueueService.js +0 -270
- package/dist/pms/webhookQueue/services/WebhookWorker.d.ts +0 -37
- package/dist/pms/webhookQueue/services/WebhookWorker.js +0 -201
- package/dist/pms/webhookQueue/services/index.d.ts +0 -1
- package/dist/pms/webhookQueue/services/index.js +0 -17
- package/dist/pms/webhookQueue/types/index.d.ts +0 -1
- package/dist/pms/webhookQueue/types/index.js +0 -17
- package/dist/pms/webhookQueue/types/webhook.types.d.ts +0 -39
- package/dist/pms/webhookQueue/types/webhook.types.js +0 -2
- package/dist/property/IProperty.d.ts +0 -29
- package/dist/property/IProperty.js +0 -2
- package/dist/property/Property.repository.d.ts +0 -8
- package/dist/property/Property.repository.js +0 -109
- package/dist/property/Property.service.d.ts +0 -8
- package/dist/property/Property.service.js +0 -124
- package/dist/property/index.d.ts +0 -2
- package/dist/property/index.js +0 -18
- package/dist/queue/interfaces/IHttpRequestJob.d.ts +0 -9
- package/dist/queue/interfaces/IHttpRequestJob.js +0 -2
- package/dist/types/alert.types.d.ts +0 -57
- package/dist/types/alert.types.js +0 -22
- package/dist/types/config.types.d.ts +0 -19
- package/dist/types/config.types.js +0 -2
- package/dist/types/index.d.ts +0 -3
- package/dist/types/index.js +0 -19
- package/dist/types/issue.types.d.ts +0 -90
- package/dist/types/issue.types.js +0 -40
- package/dist/utils/http-utils.d.ts +0 -13
- package/dist/utils/http-utils.js +0 -117
package/dist/audit/AuditUtils.js
CHANGED
|
@@ -162,7 +162,9 @@ let AuditUtils = (() => {
|
|
|
162
162
|
if (userId && !userName)
|
|
163
163
|
audit.userName = await this.getUserName(userId);
|
|
164
164
|
if (guestId && !guestName)
|
|
165
|
-
audit.guestName =
|
|
165
|
+
audit.guestName = "Guest";
|
|
166
|
+
if (guestName)
|
|
167
|
+
audit.guestName = "Guest";
|
|
166
168
|
if (deviceId && !deviceName) {
|
|
167
169
|
audit.deviceName = await this.getDeviceName(deviceId);
|
|
168
170
|
}
|
|
@@ -254,20 +256,6 @@ let AuditUtils = (() => {
|
|
|
254
256
|
return "";
|
|
255
257
|
}
|
|
256
258
|
}
|
|
257
|
-
async getGuestName(guestId) {
|
|
258
|
-
try {
|
|
259
|
-
return await this.getCachedEntityData("guest", guestId, async () => {
|
|
260
|
-
const guest = await typedi_1.default.get(pms_1.PmsService).getGuest(guestId);
|
|
261
|
-
if (!guest)
|
|
262
|
-
return "";
|
|
263
|
-
return `${guest?.firstName || ""} ${guest?.lastName || ""}`.trim();
|
|
264
|
-
});
|
|
265
|
-
}
|
|
266
|
-
catch (error) {
|
|
267
|
-
(0, config_1.getLogger)().error(`Error in getGuestName: ${error instanceof Error ? error.message : error}`);
|
|
268
|
-
return "";
|
|
269
|
-
}
|
|
270
|
-
}
|
|
271
259
|
async getDeviceName(deviceId) {
|
|
272
260
|
try {
|
|
273
261
|
return await this.getCachedEntityData("device", deviceId, async () => {
|
|
@@ -18,7 +18,9 @@ export declare enum Resource {
|
|
|
18
18
|
ACCESS_RFID = "accessRfid",
|
|
19
19
|
GUEST_BLE = "guestBle",
|
|
20
20
|
ACCESS_BLE = "accessBle",
|
|
21
|
-
EMERGENCY_CODE = "emergencyCode"
|
|
21
|
+
EMERGENCY_CODE = "emergencyCode",
|
|
22
|
+
EMERGENCY_RFID = "emergencyRfid",
|
|
23
|
+
EMERGENCY_BLE = "emergencyBle"
|
|
22
24
|
}
|
|
23
25
|
export interface IAuditProperties {
|
|
24
26
|
resource: Resource;
|
|
@@ -28,7 +30,6 @@ export interface IAuditProperties {
|
|
|
28
30
|
userId?: string;
|
|
29
31
|
userName?: string;
|
|
30
32
|
guestId?: string;
|
|
31
|
-
guestName?: string;
|
|
32
33
|
deviceId?: string;
|
|
33
34
|
deviceName?: string;
|
|
34
35
|
zoneId?: string;
|
|
@@ -22,4 +22,6 @@ var Resource;
|
|
|
22
22
|
Resource["GUEST_BLE"] = "guestBle";
|
|
23
23
|
Resource["ACCESS_BLE"] = "accessBle";
|
|
24
24
|
Resource["EMERGENCY_CODE"] = "emergencyCode";
|
|
25
|
+
Resource["EMERGENCY_RFID"] = "emergencyRfid";
|
|
26
|
+
Resource["EMERGENCY_BLE"] = "emergencyBle";
|
|
25
27
|
})(Resource || (exports.Resource = Resource = {}));
|
|
@@ -1,9 +1,13 @@
|
|
|
1
1
|
import { ICronicle } from "./ICronicle.interface";
|
|
2
2
|
export declare class CronicleService {
|
|
3
|
-
private cronicleEndpoint;
|
|
4
|
-
private cronicleApiKey;
|
|
3
|
+
private readonly cronicleEndpoint;
|
|
4
|
+
private readonly cronicleApiKey;
|
|
5
5
|
constructor();
|
|
6
6
|
registerJob(payload: ICronicle): Promise<void>;
|
|
7
7
|
getJob(jobId: string): Promise<any>;
|
|
8
|
+
getSchedules(filter: {
|
|
9
|
+
offset: number;
|
|
10
|
+
limit: number;
|
|
11
|
+
}): Promise<any>;
|
|
8
12
|
deleteJob(jobId: string): Promise<void>;
|
|
9
13
|
}
|
|
@@ -12,12 +12,12 @@ class CronicleService {
|
|
|
12
12
|
this.cronicleApiKey = process.env.CRONICLE_API_KEY || "";
|
|
13
13
|
}
|
|
14
14
|
async registerJob(payload) {
|
|
15
|
-
const { name, apiUrl, method, schedule, cronJobId, target } = payload;
|
|
15
|
+
const { name, apiUrl, method, schedule, cronJobId, target, category } = payload;
|
|
16
16
|
try {
|
|
17
17
|
await axios_1.default.post(`${this.cronicleEndpoint}/create_event/v1`, {
|
|
18
18
|
id: cronJobId,
|
|
19
19
|
title: name,
|
|
20
|
-
category: "general",
|
|
20
|
+
category: category ?? "general",
|
|
21
21
|
plugin: "urlplug",
|
|
22
22
|
timeZone: "UTC",
|
|
23
23
|
enabled: 1,
|
|
@@ -48,6 +48,8 @@ class CronicleService {
|
|
|
48
48
|
}
|
|
49
49
|
async getJob(jobId) {
|
|
50
50
|
try {
|
|
51
|
+
(0, config_1.getConfig)().LOGGER.info(`Getting job: ${jobId}`);
|
|
52
|
+
(0, config_1.getConfig)().LOGGER.info(`Cronicle endpoint: ${this.cronicleEndpoint}/get_event/v1`);
|
|
51
53
|
const res = await axios_1.default.post(`${this.cronicleEndpoint}/get_event/v1`, {
|
|
52
54
|
id: jobId,
|
|
53
55
|
api_key: this.cronicleApiKey,
|
|
@@ -55,6 +57,21 @@ class CronicleService {
|
|
|
55
57
|
return res.data;
|
|
56
58
|
}
|
|
57
59
|
catch (error) {
|
|
60
|
+
(0, config_1.getConfig)().LOGGER.error(`Failed to get job: ${error.message}`);
|
|
61
|
+
return;
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
async getSchedules(filter) {
|
|
65
|
+
try {
|
|
66
|
+
const res = await axios_1.default.post(`${this.cronicleEndpoint}/get_schedule/v1`, {
|
|
67
|
+
api_key: this.cronicleApiKey,
|
|
68
|
+
offset: filter.offset ?? 0,
|
|
69
|
+
limit: filter.limit ?? 100,
|
|
70
|
+
});
|
|
71
|
+
return res.data;
|
|
72
|
+
}
|
|
73
|
+
catch (error) {
|
|
74
|
+
(0, config_1.getConfig)().LOGGER.error(`Failed to get schedules: ${error.message}`);
|
|
58
75
|
return;
|
|
59
76
|
}
|
|
60
77
|
}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
+
import { IAccessGroup } from "./IAccessGroup";
|
|
1
2
|
export declare class AccessGroupRepository {
|
|
2
3
|
private readonly postgres;
|
|
3
4
|
constructor();
|
|
4
|
-
getAccessGroup(accessGroupId: string): Promise<
|
|
5
|
+
getAccessGroup(accessGroupId: string): Promise<IAccessGroup | null>;
|
|
5
6
|
}
|
|
@@ -56,7 +56,10 @@ let AccessGroupRepository = (() => {
|
|
|
56
56
|
WHERE "id" = $1
|
|
57
57
|
`;
|
|
58
58
|
const result = await this.postgres.query(query, [accessGroupId]);
|
|
59
|
-
|
|
59
|
+
if (result.rows.length > 0) {
|
|
60
|
+
return result.rows[0];
|
|
61
|
+
}
|
|
62
|
+
return null;
|
|
60
63
|
}
|
|
61
64
|
};
|
|
62
65
|
__setFunctionName(_classThis, "AccessGroupRepository");
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
+
import { IAccessGroup } from "./IAccessGroup";
|
|
1
2
|
export declare class AccessGroupService {
|
|
2
3
|
private readonly accessGroupRepository;
|
|
3
4
|
constructor();
|
|
4
|
-
getAccessGroup(accessGroupId: string): Promise<
|
|
5
|
+
getAccessGroup(accessGroupId: string): Promise<IAccessGroup | null>;
|
|
5
6
|
}
|
|
@@ -87,7 +87,10 @@ let AccessGroupService = (() => {
|
|
|
87
87
|
if (!accessGroupId) {
|
|
88
88
|
throw new Error("Access Group ID is required");
|
|
89
89
|
}
|
|
90
|
-
|
|
90
|
+
const accessGroup = await this.accessGroupRepository.getAccessGroup(accessGroupId);
|
|
91
|
+
if (!accessGroup)
|
|
92
|
+
return null;
|
|
93
|
+
return accessGroup;
|
|
91
94
|
}
|
|
92
95
|
};
|
|
93
96
|
__setFunctionName(_classThis, "AccessGroupService");
|
|
@@ -101,5 +104,3 @@ let AccessGroupService = (() => {
|
|
|
101
104
|
return AccessGroupService = _classThis;
|
|
102
105
|
})();
|
|
103
106
|
exports.AccessGroupService = AccessGroupService;
|
|
104
|
-
// Accessgroup.getAccessGroup(accessGroupId)
|
|
105
|
-
// GetAccessGroup()
|
|
@@ -236,27 +236,37 @@ let LocalDeviceService = (() => {
|
|
|
236
236
|
throw new Error("Device ID and new status are required");
|
|
237
237
|
}
|
|
238
238
|
const device = await this.getDevice(deviceId);
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
239
|
+
//NOTE: Baseline logic only apply for device type of LOCK
|
|
240
|
+
if (device?.deviceType?.type === "LOCK") {
|
|
241
|
+
const oldStatus = device.status;
|
|
242
|
+
const currentTime = new Date().toISOString();
|
|
243
|
+
// Determine if the new status is ONLINE or OFFLINE
|
|
244
|
+
const isNewStatusOnline = newStatus?.liveStatus === "ONLINE";
|
|
245
|
+
const isNewStatusOffline = newStatus?.liveStatus === "OFFLINE";
|
|
246
|
+
if (isNewStatusOffline) {
|
|
247
|
+
// New Status = OFFLINE
|
|
248
|
+
await this.handleOfflineStatus(device, oldStatus, newStatus, source, auditBody, reason, currentTime);
|
|
249
|
+
}
|
|
250
|
+
else if (isNewStatusOnline) {
|
|
251
|
+
// New Status = ONLINE
|
|
252
|
+
await this.handleOnlineStatus(device, oldStatus, newStatus, source, auditBody, reason, currentTime);
|
|
253
|
+
}
|
|
254
|
+
else {
|
|
255
|
+
// For any other status, just update normally
|
|
256
|
+
await this.deviceRepository.setStatus(deviceId, newStatus);
|
|
257
|
+
await this.eventHandler.onStatusChange(deviceId, newStatus, auditBody, constants_1.DT_EVENT_TYPES.DEVICE.STATUS.UNKNOWN);
|
|
258
|
+
}
|
|
251
259
|
}
|
|
252
260
|
else {
|
|
253
|
-
// For
|
|
261
|
+
// For DeviceTypes other than LOCK, just update normally (HUB, THERMOSTATS)
|
|
262
|
+
const eventType = newStatus.online
|
|
263
|
+
? constants_1.DT_EVENT_TYPES.DEVICE.STATUS.ONLINE
|
|
264
|
+
: constants_1.DT_EVENT_TYPES.DEVICE.STATUS.OFFLINE;
|
|
254
265
|
await this.deviceRepository.setStatus(deviceId, newStatus);
|
|
255
|
-
await this.eventHandler.onStatusChange(deviceId, newStatus, auditBody,
|
|
266
|
+
await this.eventHandler.onStatusChange(deviceId, newStatus, auditBody, eventType);
|
|
256
267
|
}
|
|
257
268
|
}
|
|
258
269
|
async setStatusMany(query, newStatus, source, auditBody) {
|
|
259
|
-
//TODO: Compare old and new if different then update
|
|
260
270
|
if (!query || !newStatus) {
|
|
261
271
|
throw new Error("Query and new status are required");
|
|
262
272
|
}
|
|
@@ -266,15 +276,19 @@ let LocalDeviceService = (() => {
|
|
|
266
276
|
: constants_1.DT_EVENT_TYPES.DEVICE.STATUS.OFFLINE;
|
|
267
277
|
const devices = await this.deviceRepository.queryDevices(query);
|
|
268
278
|
for (const device of devices) {
|
|
269
|
-
if (
|
|
270
|
-
|
|
279
|
+
if (device?.deviceType?.type === "LOCK") {
|
|
280
|
+
if (newStatus.online) {
|
|
281
|
+
await this.handleOnlineStatus(device, device.status, newStatus, source, auditBody);
|
|
282
|
+
}
|
|
283
|
+
else {
|
|
284
|
+
await this.handleOfflineStatus(device, device.status, newStatus, source, auditBody);
|
|
285
|
+
}
|
|
271
286
|
}
|
|
272
287
|
else {
|
|
273
|
-
await this.
|
|
288
|
+
await this.deviceRepository.setStatus(device.deviceId, newStatus);
|
|
289
|
+
await this.eventHandler.onStatusChange(device.deviceId, newStatus, auditBody, eventType);
|
|
274
290
|
}
|
|
275
291
|
}
|
|
276
|
-
await this.deviceRepository.setStatusMany(query, newStatus);
|
|
277
|
-
await this.eventHandler.onStatusChangeMany(query, newStatus, auditBody, eventType);
|
|
278
292
|
}
|
|
279
293
|
async handleOfflineStatus(device, oldStatus, newStatus, source, auditBody, reason, currentTime) {
|
|
280
294
|
currentTime = currentTime ?? new Date().toISOString();
|
|
@@ -52,8 +52,11 @@ let GuestRepository = (() => {
|
|
|
52
52
|
}
|
|
53
53
|
async getGuest(guestId) {
|
|
54
54
|
try {
|
|
55
|
-
const guest = await this.pmsPostgres.query(`SELECT * FROM
|
|
56
|
-
|
|
55
|
+
const guest = await this.pmsPostgres.query(`SELECT * FROM dt_guest WHERE "id" = $1`, [guestId]);
|
|
56
|
+
if (guest.rows.length > 0) {
|
|
57
|
+
return guest.rows[0];
|
|
58
|
+
}
|
|
59
|
+
return null;
|
|
57
60
|
}
|
|
58
61
|
catch (error) {
|
|
59
62
|
console.error("Error in getGuest:", error);
|
|
@@ -88,7 +88,10 @@ let GuestService = (() => {
|
|
|
88
88
|
if (!guestId) {
|
|
89
89
|
throw new Error("Guest ID is required");
|
|
90
90
|
}
|
|
91
|
-
|
|
91
|
+
const guest = await this.guestRepository.getGuest(guestId);
|
|
92
|
+
if (!guest)
|
|
93
|
+
return null;
|
|
94
|
+
return guest;
|
|
92
95
|
}
|
|
93
96
|
};
|
|
94
97
|
__setFunctionName(_classThis, "GuestService");
|
|
@@ -52,8 +52,11 @@ let ScheduleRepository = (() => {
|
|
|
52
52
|
}
|
|
53
53
|
async getSchedule(scheduleId) {
|
|
54
54
|
try {
|
|
55
|
-
const schedule = await this.pmsPostgres.query(`SELECT * FROM
|
|
56
|
-
|
|
55
|
+
const schedule = await this.pmsPostgres.query(`SELECT * FROM dt_schedule WHERE "id" = $1`, [scheduleId]);
|
|
56
|
+
if (schedule.rows.length > 0) {
|
|
57
|
+
return schedule.rows[0];
|
|
58
|
+
}
|
|
59
|
+
return null;
|
|
57
60
|
}
|
|
58
61
|
catch (error) {
|
|
59
62
|
console.error("Error in getSchedule:", error);
|
|
@@ -88,7 +88,10 @@ let ScheduleService = (() => {
|
|
|
88
88
|
if (!scheduleId) {
|
|
89
89
|
throw new Error("Schedule ID is required");
|
|
90
90
|
}
|
|
91
|
-
|
|
91
|
+
const schedule = await this.scheduleRepository.getSchedule(scheduleId);
|
|
92
|
+
if (!schedule)
|
|
93
|
+
return null;
|
|
94
|
+
return schedule;
|
|
92
95
|
}
|
|
93
96
|
};
|
|
94
97
|
__setFunctionName(_classThis, "ScheduleService");
|
|
@@ -52,7 +52,10 @@ let UserRepository = (() => {
|
|
|
52
52
|
}
|
|
53
53
|
async getUser(userId) {
|
|
54
54
|
const user = await this.postgres.query(`SELECT * FROM dt_users WHERE "id" = $1`, [userId]);
|
|
55
|
-
|
|
55
|
+
if (user.rows.length > 0) {
|
|
56
|
+
return user.rows[0];
|
|
57
|
+
}
|
|
58
|
+
return null;
|
|
56
59
|
}
|
|
57
60
|
};
|
|
58
61
|
__setFunctionName(_classThis, "UserRepository");
|
|
@@ -87,7 +87,10 @@ let UserService = (() => {
|
|
|
87
87
|
if (!userId) {
|
|
88
88
|
throw new Error("User ID is required");
|
|
89
89
|
}
|
|
90
|
-
|
|
90
|
+
const user = await this.userRepository.getUser(userId);
|
|
91
|
+
if (!user)
|
|
92
|
+
return null;
|
|
93
|
+
return user;
|
|
91
94
|
}
|
|
92
95
|
};
|
|
93
96
|
__setFunctionName(_classThis, "UserService");
|
|
@@ -88,7 +88,10 @@ let ZoneService = (() => {
|
|
|
88
88
|
if (!zoneId) {
|
|
89
89
|
throw new Error("Zone ID is required");
|
|
90
90
|
}
|
|
91
|
-
|
|
91
|
+
const zone = await this.zoneRepository.getZone(zoneId);
|
|
92
|
+
if (!zone)
|
|
93
|
+
return null;
|
|
94
|
+
return zone;
|
|
92
95
|
}
|
|
93
96
|
};
|
|
94
97
|
__setFunctionName(_classThis, "ZoneService");
|
|
@@ -40,7 +40,7 @@ var EntitySubType;
|
|
|
40
40
|
EntitySubType["SKYTOUCH"] = "SKYTOUCH";
|
|
41
41
|
// DEVICE PROVIDERS
|
|
42
42
|
EntitySubType["SMARTTHINGS"] = "SMARTTHINGS";
|
|
43
|
-
EntitySubType["
|
|
43
|
+
EntitySubType["TTLOCK"] = "TTLOCK";
|
|
44
44
|
EntitySubType["TUYA"] = "TUYA";
|
|
45
45
|
EntitySubType["VERDANT"] = "VERDANT";
|
|
46
46
|
EntitySubType["SENSIBO"] = "SENSIBO";
|
package/package.json
CHANGED
|
@@ -1,182 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __esDecorate = (this && this.__esDecorate) || function (ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {
|
|
19
|
-
function accept(f) { if (f !== void 0 && typeof f !== "function") throw new TypeError("Function expected"); return f; }
|
|
20
|
-
var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value";
|
|
21
|
-
var target = !descriptorIn && ctor ? contextIn["static"] ? ctor : ctor.prototype : null;
|
|
22
|
-
var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});
|
|
23
|
-
var _, done = false;
|
|
24
|
-
for (var i = decorators.length - 1; i >= 0; i--) {
|
|
25
|
-
var context = {};
|
|
26
|
-
for (var p in contextIn) context[p] = p === "access" ? {} : contextIn[p];
|
|
27
|
-
for (var p in contextIn.access) context.access[p] = contextIn.access[p];
|
|
28
|
-
context.addInitializer = function (f) { if (done) throw new TypeError("Cannot add initializers after decoration has completed"); extraInitializers.push(accept(f || null)); };
|
|
29
|
-
var result = (0, decorators[i])(kind === "accessor" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);
|
|
30
|
-
if (kind === "accessor") {
|
|
31
|
-
if (result === void 0) continue;
|
|
32
|
-
if (result === null || typeof result !== "object") throw new TypeError("Object expected");
|
|
33
|
-
if (_ = accept(result.get)) descriptor.get = _;
|
|
34
|
-
if (_ = accept(result.set)) descriptor.set = _;
|
|
35
|
-
if (_ = accept(result.init)) initializers.unshift(_);
|
|
36
|
-
}
|
|
37
|
-
else if (_ = accept(result)) {
|
|
38
|
-
if (kind === "field") initializers.unshift(_);
|
|
39
|
-
else descriptor[key] = _;
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
if (target) Object.defineProperty(target, contextIn.name, descriptor);
|
|
43
|
-
done = true;
|
|
44
|
-
};
|
|
45
|
-
var __runInitializers = (this && this.__runInitializers) || function (thisArg, initializers, value) {
|
|
46
|
-
var useValue = arguments.length > 2;
|
|
47
|
-
for (var i = 0; i < initializers.length; i++) {
|
|
48
|
-
value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);
|
|
49
|
-
}
|
|
50
|
-
return useValue ? value : void 0;
|
|
51
|
-
};
|
|
52
|
-
var __importStar = (this && this.__importStar) || (function () {
|
|
53
|
-
var ownKeys = function(o) {
|
|
54
|
-
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
55
|
-
var ar = [];
|
|
56
|
-
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
57
|
-
return ar;
|
|
58
|
-
};
|
|
59
|
-
return ownKeys(o);
|
|
60
|
-
};
|
|
61
|
-
return function (mod) {
|
|
62
|
-
if (mod && mod.__esModule) return mod;
|
|
63
|
-
var result = {};
|
|
64
|
-
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
65
|
-
__setModuleDefault(result, mod);
|
|
66
|
-
return result;
|
|
67
|
-
};
|
|
68
|
-
})();
|
|
69
|
-
var __setFunctionName = (this && this.__setFunctionName) || function (f, name, prefix) {
|
|
70
|
-
if (typeof name === "symbol") name = name.description ? "[".concat(name.description, "]") : "";
|
|
71
|
-
return Object.defineProperty(f, "name", { configurable: true, value: prefix ? "".concat(prefix, " ", name) : name });
|
|
72
|
-
};
|
|
73
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
74
|
-
exports.AdminRepository = void 0;
|
|
75
|
-
const typedi_1 = __importStar(require("typedi"));
|
|
76
|
-
const utils_1 = require("../utils");
|
|
77
|
-
const Device_repository_1 = require("../device/local/repository/Device.repository");
|
|
78
|
-
const db_1 = require("../db/db");
|
|
79
|
-
const interfaces_1 = require("../device/cloud/interfaces");
|
|
80
|
-
let AdminRepository = (() => {
|
|
81
|
-
let _classDecorators = [(0, typedi_1.Service)()];
|
|
82
|
-
let _classDescriptor;
|
|
83
|
-
let _classExtraInitializers = [];
|
|
84
|
-
let _classThis;
|
|
85
|
-
var AdminRepository = _classThis = class {
|
|
86
|
-
constructor() {
|
|
87
|
-
this.axiosInstance = (0, utils_1.getCloudServiceAxiosInstance)();
|
|
88
|
-
this.deviceRepository = typedi_1.default.get(Device_repository_1.DeviceRepository);
|
|
89
|
-
this.postgres = (0, db_1.getPostgresClient)();
|
|
90
|
-
}
|
|
91
|
-
async getZonesByAccessGroupIds(accessGroupIds) {
|
|
92
|
-
const result = await this.postgres.query(`SELECT "zc".*, "z"."id", "z"."name"
|
|
93
|
-
FROM "dt_zones_collection_map" "zc"
|
|
94
|
-
INNER JOIN "dt_zones" "z" ON "zc"."zoneId" = "z"."id"
|
|
95
|
-
WHERE "zc"."collectionId" = ANY($1)`, [accessGroupIds]);
|
|
96
|
-
const response = result.rows;
|
|
97
|
-
const _zones = (nestedZones, allzones = []) => {
|
|
98
|
-
nestedZones.forEach((z) => {
|
|
99
|
-
const onlyZone = { ...z };
|
|
100
|
-
delete onlyZone.childZones;
|
|
101
|
-
allzones.push(onlyZone);
|
|
102
|
-
if (!Array.isArray(z.childZones)) {
|
|
103
|
-
if (z.childZones.id)
|
|
104
|
-
z.childZones = [z.childZones];
|
|
105
|
-
}
|
|
106
|
-
if (z.childZones.length) {
|
|
107
|
-
_zones(z.childZones, allzones);
|
|
108
|
-
}
|
|
109
|
-
});
|
|
110
|
-
return allzones.map((e) => e.id);
|
|
111
|
-
};
|
|
112
|
-
// const zones = _zones(response);
|
|
113
|
-
const zoneIds = response.map((el) => el.id);
|
|
114
|
-
const collectionZone = [];
|
|
115
|
-
for (let i = 0; i < response.length; i++) {
|
|
116
|
-
let zoneIds = [];
|
|
117
|
-
const zones = await this.axiosInstance.get(`/zones/child?zoneId=${response[i].zoneId}`);
|
|
118
|
-
zoneIds.push(response[i].zoneId);
|
|
119
|
-
if (zones.childZones?.length > 0) {
|
|
120
|
-
const nestedZoneIds = new Set(_zones(zones.childZones));
|
|
121
|
-
zoneIds = [...zoneIds, ...nestedZoneIds];
|
|
122
|
-
}
|
|
123
|
-
if (collectionZone.length == 0) {
|
|
124
|
-
const obj = {
|
|
125
|
-
collectionId: response[i].collectionId,
|
|
126
|
-
zoneIds,
|
|
127
|
-
};
|
|
128
|
-
collectionZone.push(obj);
|
|
129
|
-
}
|
|
130
|
-
else {
|
|
131
|
-
const obj = collectionZone.find((e) => e.collectionId == response[i].collectionId);
|
|
132
|
-
if (obj) {
|
|
133
|
-
obj.zoneIds = [...obj.zoneIds, ...zoneIds];
|
|
134
|
-
}
|
|
135
|
-
else {
|
|
136
|
-
collectionZone.push({
|
|
137
|
-
collectionId: response[i].collectionId,
|
|
138
|
-
zoneIds,
|
|
139
|
-
});
|
|
140
|
-
}
|
|
141
|
-
}
|
|
142
|
-
}
|
|
143
|
-
let _zoneIds = collectionZone.flatMap((e) => {
|
|
144
|
-
return e.zoneIds.map((z) => z);
|
|
145
|
-
});
|
|
146
|
-
if (_zoneIds.length === 0)
|
|
147
|
-
return [];
|
|
148
|
-
const deviecDetail = await this.deviceRepository.queryDevices({
|
|
149
|
-
zoneIds: _zoneIds,
|
|
150
|
-
excludeDeviceType: interfaces_1.DeviceType.HUB
|
|
151
|
-
});
|
|
152
|
-
const _collectionZone = collectionZone.map((e) => {
|
|
153
|
-
const zones = e.zoneIds;
|
|
154
|
-
let devices = [];
|
|
155
|
-
zones.forEach((element) => {
|
|
156
|
-
const device = deviecDetail.filter((d) => d.zoneId == element);
|
|
157
|
-
// Add collectionId to each device
|
|
158
|
-
device.forEach((dev) => {
|
|
159
|
-
dev.collectionId = e.collectionId;
|
|
160
|
-
});
|
|
161
|
-
const _devices = devices.concat(device);
|
|
162
|
-
devices = _devices;
|
|
163
|
-
});
|
|
164
|
-
e.devices = devices;
|
|
165
|
-
e.parentZone = response;
|
|
166
|
-
return e;
|
|
167
|
-
});
|
|
168
|
-
const collectionZoneDevices = Array.from(new Set(_collectionZone));
|
|
169
|
-
return collectionZoneDevices;
|
|
170
|
-
}
|
|
171
|
-
};
|
|
172
|
-
__setFunctionName(_classThis, "AdminRepository");
|
|
173
|
-
(() => {
|
|
174
|
-
const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(null) : void 0;
|
|
175
|
-
__esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
|
|
176
|
-
AdminRepository = _classThis = _classDescriptor.value;
|
|
177
|
-
if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
|
|
178
|
-
__runInitializers(_classThis, _classExtraInitializers);
|
|
179
|
-
})();
|
|
180
|
-
return AdminRepository = _classThis;
|
|
181
|
-
})();
|
|
182
|
-
exports.AdminRepository = AdminRepository;
|