dt-common-device 9.2.9 → 9.4.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.
Files changed (227) hide show
  1. package/dist/chronicle/Cronicle.service.d.ts +6 -2
  2. package/dist/chronicle/Cronicle.service.js +19 -2
  3. package/dist/chronicle/ICronicle.interface.d.ts +1 -0
  4. package/dist/config/config.js +11 -17
  5. package/dist/entities/accessGroup/AccessGroup.repository.d.ts +2 -1
  6. package/dist/entities/accessGroup/AccessGroup.repository.js +4 -1
  7. package/dist/entities/accessGroup/AccessGroup.service.d.ts +2 -1
  8. package/dist/entities/accessGroup/AccessGroup.service.js +4 -3
  9. package/dist/entities/guest/Guest.repository.d.ts +1 -1
  10. package/dist/entities/guest/Guest.repository.js +5 -2
  11. package/dist/entities/guest/Guest.service.d.ts +1 -1
  12. package/dist/entities/guest/Guest.service.js +4 -1
  13. package/dist/entities/schedules/Schedule.repository.d.ts +1 -1
  14. package/dist/entities/schedules/Schedule.repository.js +5 -2
  15. package/dist/entities/schedules/Schedule.service.d.ts +1 -1
  16. package/dist/entities/schedules/Schedule.service.js +4 -1
  17. package/dist/entities/user/User.repository.js +4 -1
  18. package/dist/entities/user/User.service.d.ts +1 -1
  19. package/dist/entities/user/User.service.js +4 -1
  20. package/dist/entities/zone/Zone.service.js +4 -1
  21. package/package.json +2 -2
  22. package/dist/admin/Admin.repository.d.ts +0 -7
  23. package/dist/admin/Admin.repository.js +0 -182
  24. package/dist/admin/Admin.service.d.ts +0 -5
  25. package/dist/admin/Admin.service.js +0 -17
  26. package/dist/admin/index.d.ts +0 -1
  27. package/dist/admin/index.js +0 -17
  28. package/dist/audit/AuditProperties.d.ts +0 -16
  29. package/dist/audit/AuditProperties.js +0 -2
  30. package/dist/chronicle/IChronicle.interface.d.ts +0 -14
  31. package/dist/chronicle/IChronicle.interface.js +0 -2
  32. package/dist/chronicle/chronicle.service.d.ts +0 -4
  33. package/dist/chronicle/chronicle.service.js +0 -44
  34. package/dist/connection/Connection.repository.d.ts +0 -8
  35. package/dist/connection/Connection.repository.js +0 -92
  36. package/dist/connection/Connection.service.d.ts +0 -8
  37. package/dist/connection/Connection.service.js +0 -32
  38. package/dist/connection/IConnection.d.ts +0 -28
  39. package/dist/connection/IConnection.js +0 -16
  40. package/dist/connection/index.d.ts +0 -2
  41. package/dist/connection/index.js +0 -18
  42. package/dist/copilotQueue/examples/CopilotQueue.example.d.ts +0 -37
  43. package/dist/copilotQueue/examples/CopilotQueue.example.js +0 -140
  44. package/dist/copilotQueue/examples/index.d.ts +0 -1
  45. package/dist/copilotQueue/examples/index.js +0 -17
  46. package/dist/device/cloud/entities/CloudConnection.d.ts +0 -6
  47. package/dist/device/cloud/entities/CloudConnection.js +0 -6
  48. package/dist/device/cloud/entities/CloudDevice.d.ts +0 -16
  49. package/dist/device/cloud/entities/CloudDevice.js +0 -26
  50. package/dist/device/cloud/entities/CloudDeviceService.d.ts +0 -5
  51. package/dist/device/cloud/entities/CloudDeviceService.js +0 -9
  52. package/dist/device/cloud/entities/DeviceFactory.d.ts +0 -7
  53. package/dist/device/cloud/entities/DeviceFactory.js +0 -80
  54. package/dist/device/cloud/entities/index.d.ts +0 -3
  55. package/dist/device/cloud/entities/index.js +0 -19
  56. package/dist/device/cloud/interface.d.ts +0 -101
  57. package/dist/device/cloud/interface.js +0 -3
  58. package/dist/device/cloud/interfaces/ICloudConnection.d.ts +0 -5
  59. package/dist/device/cloud/interfaces/ICloudConnection.js +0 -2
  60. package/dist/device/cloud/interfaces/ICloudDevice.d.ts +0 -9
  61. package/dist/device/cloud/interfaces/ICloudDevice.js +0 -2
  62. package/dist/device/cloud/interfaces/ICloudDeviceService.d.ts +0 -4
  63. package/dist/device/cloud/interfaces/ICloudDeviceService.js +0 -2
  64. package/dist/device/cloud/interfaces/IConnectionService.d.ts +0 -7
  65. package/dist/device/cloud/interfaces/IConnectionService.js +0 -2
  66. package/dist/device/cloud/interfaces/IDeviceConnectionService.d.ts +0 -7
  67. package/dist/device/cloud/interfaces/IDeviceConnectionService.js +0 -3
  68. package/dist/device/cloud/interfaces/IDeviceFactory.d.ts +0 -4
  69. package/dist/device/cloud/interfaces/IDeviceFactory.js +0 -2
  70. package/dist/device/cloud/interfaces/IDeviceService.d.ts +0 -8
  71. package/dist/device/cloud/interfaces/IDeviceService.js +0 -2
  72. package/dist/device/cloud/interfaces/IDevicesService.d.ts +0 -9
  73. package/dist/device/cloud/interfaces/IDevicesService.js +0 -2
  74. package/dist/device/cloud/interfaces/IHubService.d.ts +0 -5
  75. package/dist/device/cloud/interfaces/IHubService.js +0 -2
  76. package/dist/device/cloud/interfaces/IRawDataTransformer.d.ts +0 -4
  77. package/dist/device/cloud/interfaces/IRawDataTransformer.js +0 -2
  78. package/dist/device/cloud/interfaces/IRawDevice.d.ts +0 -17
  79. package/dist/device/cloud/interfaces/IRawDevice.js +0 -11
  80. package/dist/device/cloud/interfaces/index.d.ts +0 -5
  81. package/dist/device/cloud/interfaces/index.js +0 -21
  82. package/dist/device/cloud/services/CloudDevice.service.d.ts +0 -5
  83. package/dist/device/cloud/services/CloudDevice.service.js +0 -9
  84. package/dist/device/cloud/services/Connection.service.d.ts +0 -8
  85. package/dist/device/cloud/services/Connection.service.js +0 -6
  86. package/dist/device/cloud/services/Device.service.d.ts +0 -39
  87. package/dist/device/cloud/services/Device.service.js +0 -9
  88. package/dist/device/cloud/services/DeviceCloudService.d.ts +0 -42
  89. package/dist/device/cloud/services/DeviceCloudService.js +0 -59
  90. package/dist/device/cloud/services/DeviceHub.service.d.ts +0 -3
  91. package/dist/device/cloud/services/DeviceHub.service.js +0 -6
  92. package/dist/device/cloud/services/Hub.service.d.ts +0 -25
  93. package/dist/device/cloud/services/Hub.service.js +0 -9
  94. package/dist/device/cloud/services/SmartThingsDeviceService.d.ts +0 -38
  95. package/dist/device/cloud/services/SmartThingsDeviceService.js +0 -52
  96. package/dist/device/cloud/services/index.d.ts +0 -2
  97. package/dist/device/cloud/services/index.js +0 -18
  98. package/dist/device/cloud/types.d.ts +0 -52
  99. package/dist/device/cloud/types.js +0 -15
  100. package/dist/device/index.d.ts +0 -4
  101. package/dist/device/index.js +0 -20
  102. package/dist/device/local/entities/AlertBuilder.d.ts +0 -87
  103. package/dist/device/local/entities/AlertBuilder.example.d.ts +0 -11
  104. package/dist/device/local/entities/AlertBuilder.example.js +0 -117
  105. package/dist/device/local/entities/AlertBuilder.js +0 -179
  106. package/dist/device/local/entities/IssueBuilder.d.ts +0 -109
  107. package/dist/device/local/entities/IssueBuilder.example.d.ts +0 -16
  108. package/dist/device/local/entities/IssueBuilder.example.js +0 -196
  109. package/dist/device/local/entities/IssueBuilder.js +0 -237
  110. package/dist/device/local/entities/index.d.ts +0 -2
  111. package/dist/device/local/entities/index.js +0 -7
  112. package/dist/device/local/events/EventHandler.d.ts +0 -11
  113. package/dist/device/local/events/EventHandler.js +0 -86
  114. package/dist/device/local/events/Events.d.ts +0 -54
  115. package/dist/device/local/events/Events.js +0 -57
  116. package/dist/device/local/events/index.d.ts +0 -2
  117. package/dist/device/local/events/index.js +0 -7
  118. package/dist/device/local/handler/EventHandler.d.ts +0 -7
  119. package/dist/device/local/handler/EventHandler.js +0 -44
  120. package/dist/device/local/interface.d.ts +0 -0
  121. package/dist/device/local/interface.js +0 -1
  122. package/dist/device/local/interfaces/IConnection.d.ts +0 -26
  123. package/dist/device/local/interfaces/IConnection.js +0 -14
  124. package/dist/device/local/interfaces/IDevice.d.ts +0 -68
  125. package/dist/device/local/interfaces/IDevice.js +0 -10
  126. package/dist/device/local/interfaces/IDtDevice.d.ts +0 -16
  127. package/dist/device/local/interfaces/IDtDevice.js +0 -2
  128. package/dist/device/local/interfaces/IHub.d.ts +0 -46
  129. package/dist/device/local/interfaces/IHub.js +0 -2
  130. package/dist/device/local/interfaces/IProperty.d.ts +0 -29
  131. package/dist/device/local/interfaces/IProperty.js +0 -2
  132. package/dist/device/local/interfaces/ISchedule.d.ts +0 -25
  133. package/dist/device/local/interfaces/ISchedule.js +0 -2
  134. package/dist/device/local/interfaces/index.d.ts +0 -3
  135. package/dist/device/local/interfaces/index.js +0 -19
  136. package/dist/device/local/models/Alert.model.d.ts +0 -28
  137. package/dist/device/local/models/Alert.model.js +0 -222
  138. package/dist/device/local/models/Issue.model.d.ts +0 -28
  139. package/dist/device/local/models/Issue.model.js +0 -260
  140. package/dist/device/local/repository/Alert.repository.d.ts +0 -106
  141. package/dist/device/local/repository/Alert.repository.js +0 -374
  142. package/dist/device/local/repository/Connection.repository.d.ts +0 -8
  143. package/dist/device/local/repository/Connection.repository.js +0 -92
  144. package/dist/device/local/repository/Device.repository.d.ts +0 -30
  145. package/dist/device/local/repository/Device.repository.js +0 -325
  146. package/dist/device/local/repository/Hub.repository.d.ts +0 -13
  147. package/dist/device/local/repository/Hub.repository.js +0 -139
  148. package/dist/device/local/repository/Issue.repository.d.ts +0 -113
  149. package/dist/device/local/repository/Issue.repository.js +0 -401
  150. package/dist/device/local/repository/Property.repository.d.ts +0 -8
  151. package/dist/device/local/repository/Property.repository.js +0 -95
  152. package/dist/device/local/repository/Schedule.repository.d.ts +0 -9
  153. package/dist/device/local/repository/Schedule.repository.js +0 -109
  154. package/dist/device/local/services/Alert.service.d.ts +0 -137
  155. package/dist/device/local/services/Alert.service.js +0 -475
  156. package/dist/device/local/services/AlertService.example.d.ts +0 -55
  157. package/dist/device/local/services/AlertService.example.js +0 -148
  158. package/dist/device/local/services/Connection.service.d.ts +0 -8
  159. package/dist/device/local/services/Connection.service.js +0 -32
  160. package/dist/device/local/services/Device.service.d.ts +0 -40
  161. package/dist/device/local/services/Device.service.js +0 -391
  162. package/dist/device/local/services/DeviceHub.service.d.ts +0 -11
  163. package/dist/device/local/services/DeviceHub.service.js +0 -40
  164. package/dist/device/local/services/Hub.service.d.ts +0 -12
  165. package/dist/device/local/services/Hub.service.js +0 -107
  166. package/dist/device/local/services/Issue.service.d.ts +0 -168
  167. package/dist/device/local/services/Issue.service.js +0 -642
  168. package/dist/device/local/services/IssueService.example.d.ts +0 -68
  169. package/dist/device/local/services/IssueService.example.js +0 -177
  170. package/dist/device/local/services/Property.service.d.ts +0 -8
  171. package/dist/device/local/services/Property.service.js +0 -36
  172. package/dist/device/local/services/Schedule.service.d.ts +0 -9
  173. package/dist/device/local/services/Schedule.service.js +0 -26
  174. package/dist/device/local/services/index.d.ts +0 -3
  175. package/dist/device/local/services/index.js +0 -19
  176. package/dist/pms/IPms.d.ts +0 -6
  177. package/dist/pms/IPms.js +0 -10
  178. package/dist/pms/index.d.ts +0 -1
  179. package/dist/pms/index.js +0 -18
  180. package/dist/pms/webhookQueue/examples/index.d.ts +0 -2
  181. package/dist/pms/webhookQueue/examples/index.js +0 -18
  182. package/dist/pms/webhookQueue/examples/pms-integration.d.ts +0 -65
  183. package/dist/pms/webhookQueue/examples/pms-integration.js +0 -254
  184. package/dist/pms/webhookQueue/examples/usage.d.ts +0 -7
  185. package/dist/pms/webhookQueue/examples/usage.js +0 -175
  186. package/dist/pms/webhookQueue/index.d.ts +0 -3
  187. package/dist/pms/webhookQueue/index.js +0 -20
  188. package/dist/pms/webhookQueue/interfaces/IWebhookQueue.d.ts +0 -33
  189. package/dist/pms/webhookQueue/interfaces/IWebhookQueue.js +0 -2
  190. package/dist/pms/webhookQueue/interfaces/IWebhookWorker.d.ts +0 -38
  191. package/dist/pms/webhookQueue/interfaces/IWebhookWorker.js +0 -2
  192. package/dist/pms/webhookQueue/interfaces/index.d.ts +0 -1
  193. package/dist/pms/webhookQueue/interfaces/index.js +0 -17
  194. package/dist/pms/webhookQueue/services/WebhookQueueFactory.d.ts +0 -38
  195. package/dist/pms/webhookQueue/services/WebhookQueueFactory.js +0 -131
  196. package/dist/pms/webhookQueue/services/WebhookQueueIntegration.d.ts +0 -70
  197. package/dist/pms/webhookQueue/services/WebhookQueueIntegration.js +0 -207
  198. package/dist/pms/webhookQueue/services/WebhookQueueService.d.ts +0 -45
  199. package/dist/pms/webhookQueue/services/WebhookQueueService.js +0 -270
  200. package/dist/pms/webhookQueue/services/WebhookWorker.d.ts +0 -37
  201. package/dist/pms/webhookQueue/services/WebhookWorker.js +0 -201
  202. package/dist/pms/webhookQueue/services/index.d.ts +0 -1
  203. package/dist/pms/webhookQueue/services/index.js +0 -17
  204. package/dist/pms/webhookQueue/types/index.d.ts +0 -1
  205. package/dist/pms/webhookQueue/types/index.js +0 -17
  206. package/dist/pms/webhookQueue/types/webhook.types.d.ts +0 -39
  207. package/dist/pms/webhookQueue/types/webhook.types.js +0 -2
  208. package/dist/property/IProperty.d.ts +0 -29
  209. package/dist/property/IProperty.js +0 -2
  210. package/dist/property/Property.repository.d.ts +0 -8
  211. package/dist/property/Property.repository.js +0 -109
  212. package/dist/property/Property.service.d.ts +0 -8
  213. package/dist/property/Property.service.js +0 -124
  214. package/dist/property/index.d.ts +0 -2
  215. package/dist/property/index.js +0 -18
  216. package/dist/queue/interfaces/IHttpRequestJob.d.ts +0 -9
  217. package/dist/queue/interfaces/IHttpRequestJob.js +0 -2
  218. package/dist/types/alert.types.d.ts +0 -57
  219. package/dist/types/alert.types.js +0 -22
  220. package/dist/types/config.types.d.ts +0 -19
  221. package/dist/types/config.types.js +0 -2
  222. package/dist/types/index.d.ts +0 -3
  223. package/dist/types/index.js +0 -19
  224. package/dist/types/issue.types.d.ts +0 -90
  225. package/dist/types/issue.types.js +0 -40
  226. package/dist/utils/http-utils.d.ts +0 -13
  227. package/dist/utils/http-utils.js +0 -117
@@ -1,401 +0,0 @@
1
- "use strict";
2
- var __esDecorate = (this && this.__esDecorate) || function (ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {
3
- function accept(f) { if (f !== void 0 && typeof f !== "function") throw new TypeError("Function expected"); return f; }
4
- var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value";
5
- var target = !descriptorIn && ctor ? contextIn["static"] ? ctor : ctor.prototype : null;
6
- var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});
7
- var _, done = false;
8
- for (var i = decorators.length - 1; i >= 0; i--) {
9
- var context = {};
10
- for (var p in contextIn) context[p] = p === "access" ? {} : contextIn[p];
11
- for (var p in contextIn.access) context.access[p] = contextIn.access[p];
12
- context.addInitializer = function (f) { if (done) throw new TypeError("Cannot add initializers after decoration has completed"); extraInitializers.push(accept(f || null)); };
13
- var result = (0, decorators[i])(kind === "accessor" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);
14
- if (kind === "accessor") {
15
- if (result === void 0) continue;
16
- if (result === null || typeof result !== "object") throw new TypeError("Object expected");
17
- if (_ = accept(result.get)) descriptor.get = _;
18
- if (_ = accept(result.set)) descriptor.set = _;
19
- if (_ = accept(result.init)) initializers.unshift(_);
20
- }
21
- else if (_ = accept(result)) {
22
- if (kind === "field") initializers.unshift(_);
23
- else descriptor[key] = _;
24
- }
25
- }
26
- if (target) Object.defineProperty(target, contextIn.name, descriptor);
27
- done = true;
28
- };
29
- var __runInitializers = (this && this.__runInitializers) || function (thisArg, initializers, value) {
30
- var useValue = arguments.length > 2;
31
- for (var i = 0; i < initializers.length; i++) {
32
- value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);
33
- }
34
- return useValue ? value : void 0;
35
- };
36
- var __setFunctionName = (this && this.__setFunctionName) || function (f, name, prefix) {
37
- if (typeof name === "symbol") name = name.description ? "[".concat(name.description, "]") : "";
38
- return Object.defineProperty(f, "name", { configurable: true, value: prefix ? "".concat(prefix, " ", name) : name });
39
- };
40
- Object.defineProperty(exports, "__esModule", { value: true });
41
- exports.IssueRepository = void 0;
42
- const typedi_1 = require("typedi");
43
- const Issue_model_1 = require("../models/Issue.model");
44
- const issue_types_1 = require("../../../types/issue.types");
45
- let IssueRepository = (() => {
46
- let _classDecorators = [(0, typedi_1.Service)()];
47
- let _classDescriptor;
48
- let _classExtraInitializers = [];
49
- let _classThis;
50
- var IssueRepository = _classThis = class {
51
- /**
52
- * Create a new issue
53
- */
54
- async create(issueData) {
55
- try {
56
- const issue = new Issue_model_1.IssueModel({
57
- ...issueData,
58
- status: issue_types_1.IssueStatus.PENDING,
59
- priority: issueData.priority || issue_types_1.IssuePriority.MEDIUM,
60
- isDeleted: false,
61
- });
62
- return await issue.save();
63
- }
64
- catch (error) {
65
- throw new Error(`Failed to create issue: ${error instanceof Error ? error.message : "Unknown error"}`);
66
- }
67
- }
68
- /**
69
- * Find issue by ID
70
- */
71
- async findById(id, includeDeleted = false) {
72
- try {
73
- const query = { _id: id };
74
- if (!includeDeleted) {
75
- query.isDeleted = false;
76
- }
77
- return await Issue_model_1.IssueModel.findOne(query);
78
- }
79
- catch (error) {
80
- throw new Error(`Failed to find issue by ID: ${error instanceof Error ? error.message : "Unknown error"}`);
81
- }
82
- }
83
- /**
84
- * Find all issues with filters
85
- */
86
- async findAll(filters = {}) {
87
- try {
88
- const query = {};
89
- if (filters.propertyId)
90
- query.propertyId = filters.propertyId;
91
- if (filters.assignedTo)
92
- query.assignedTo = filters.assignedTo;
93
- if (filters.status)
94
- query.status = filters.status;
95
- if (filters.priority)
96
- query.priority = filters.priority;
97
- if (filters.category)
98
- query.category = filters.category;
99
- if (filters.entityType)
100
- query.entityType = filters.entityType;
101
- if (filters.entityId)
102
- query.entityId = filters.entityId;
103
- if (!filters.includeDeleted)
104
- query.isDeleted = false;
105
- const queryBuilder = Issue_model_1.IssueModel.find(query);
106
- if (filters.sort) {
107
- queryBuilder.sort(filters.sort);
108
- }
109
- else {
110
- queryBuilder.sort({ createdAt: -1 });
111
- }
112
- if (filters.skip)
113
- queryBuilder.skip(filters.skip);
114
- if (filters.limit)
115
- queryBuilder.limit(filters.limit);
116
- return await queryBuilder.exec();
117
- }
118
- catch (error) {
119
- throw new Error(`Failed to find issues: ${error instanceof Error ? error.message : "Unknown error"}`);
120
- }
121
- }
122
- /**
123
- * Update an issue
124
- */
125
- async update(id, updateData) {
126
- try {
127
- return await Issue_model_1.IssueModel.findByIdAndUpdate(id, { ...updateData, updatedAt: new Date() }, { new: true, runValidators: true });
128
- }
129
- catch (error) {
130
- throw new Error(`Failed to update issue: ${error instanceof Error ? error.message : "Unknown error"}`);
131
- }
132
- }
133
- /**
134
- * Soft delete an issue
135
- */
136
- async softDelete(id, deletedBy) {
137
- try {
138
- const result = await Issue_model_1.IssueModel.findByIdAndUpdate(id, {
139
- isDeleted: true,
140
- updatedBy: deletedBy,
141
- updatedAt: new Date(),
142
- });
143
- return !!result;
144
- }
145
- catch (error) {
146
- throw new Error(`Failed to soft delete issue: ${error instanceof Error ? error.message : "Unknown error"}`);
147
- }
148
- }
149
- /**
150
- * Permanently delete an issue
151
- */
152
- async hardDelete(id) {
153
- try {
154
- const result = await Issue_model_1.IssueModel.findByIdAndDelete(id);
155
- return !!result;
156
- }
157
- catch (error) {
158
- throw new Error(`Failed to permanently delete issue: ${error instanceof Error ? error.message : "Unknown error"}`);
159
- }
160
- }
161
- /**
162
- * Count issues with filters
163
- */
164
- async count(filters = {}) {
165
- try {
166
- const query = {};
167
- if (filters.propertyId)
168
- query.propertyId = filters.propertyId;
169
- if (filters.assignedTo)
170
- query.assignedTo = filters.assignedTo;
171
- if (filters.status)
172
- query.status = filters.status;
173
- if (filters.priority)
174
- query.priority = filters.priority;
175
- if (filters.category)
176
- query.category = filters.category;
177
- if (filters.entityType)
178
- query.entityType = filters.entityType;
179
- if (filters.entityId)
180
- query.entityId = filters.entityId;
181
- if (!filters.includeDeleted)
182
- query.isDeleted = false;
183
- return await Issue_model_1.IssueModel.countDocuments(query);
184
- }
185
- catch (error) {
186
- throw new Error(`Failed to count issues: ${error instanceof Error ? error.message : "Unknown error"}`);
187
- }
188
- }
189
- /**
190
- * Find issues by property
191
- */
192
- async findByProperty(propertyId, includeDeleted = false) {
193
- try {
194
- return await Issue_model_1.IssueModel.findByProperty(propertyId, includeDeleted);
195
- }
196
- catch (error) {
197
- throw new Error(`Failed to find issues by property: ${error instanceof Error ? error.message : "Unknown error"}`);
198
- }
199
- }
200
- /**
201
- * Find issues by assignee
202
- */
203
- async findByAssignee(assignedTo, includeDeleted = false) {
204
- try {
205
- return await Issue_model_1.IssueModel.findByAssignee(assignedTo, includeDeleted);
206
- }
207
- catch (error) {
208
- throw new Error(`Failed to find issues by assignee: ${error instanceof Error ? error.message : "Unknown error"}`);
209
- }
210
- }
211
- /**
212
- * Find issues by entity
213
- */
214
- async findByEntity(entityId, entityType, includeDeleted = false) {
215
- try {
216
- return await Issue_model_1.IssueModel.findByEntity(entityId, entityType, includeDeleted);
217
- }
218
- catch (error) {
219
- throw new Error(`Failed to find issues by entity: ${error instanceof Error ? error.message : "Unknown error"}`);
220
- }
221
- }
222
- /**
223
- * Find issues by status
224
- */
225
- async findByStatus(status, includeDeleted = false) {
226
- try {
227
- return await Issue_model_1.IssueModel.findByStatus(status, includeDeleted);
228
- }
229
- catch (error) {
230
- throw new Error(`Failed to find issues by status: ${error instanceof Error ? error.message : "Unknown error"}`);
231
- }
232
- }
233
- /**
234
- * Find issues by priority
235
- */
236
- async findByPriority(priority, includeDeleted = false) {
237
- try {
238
- return await Issue_model_1.IssueModel.findByPriority(priority, includeDeleted);
239
- }
240
- catch (error) {
241
- throw new Error(`Failed to find issues by priority: ${error instanceof Error ? error.message : "Unknown error"}`);
242
- }
243
- }
244
- /**
245
- * Find overdue issues
246
- */
247
- async findOverdue(includeDeleted = false) {
248
- try {
249
- return await Issue_model_1.IssueModel.findOverdue(includeDeleted);
250
- }
251
- catch (error) {
252
- throw new Error(`Failed to find overdue issues: ${error instanceof Error ? error.message : "Unknown error"}`);
253
- }
254
- }
255
- /**
256
- * Find upcoming issues
257
- */
258
- async findUpcoming(days = 7, includeDeleted = false) {
259
- try {
260
- return await Issue_model_1.IssueModel.findUpcoming(days, includeDeleted);
261
- }
262
- catch (error) {
263
- throw new Error(`Failed to find upcoming issues: ${error instanceof Error ? error.message : "Unknown error"}`);
264
- }
265
- }
266
- /**
267
- * Search issues by text
268
- */
269
- async search(searchTerm, filters = {}) {
270
- try {
271
- const query = {
272
- $or: [
273
- { title: { $regex: searchTerm, $options: "i" } },
274
- { description: { $regex: searchTerm, $options: "i" } },
275
- ],
276
- };
277
- if (filters.propertyId)
278
- query.propertyId = filters.propertyId;
279
- if (!filters.includeDeleted)
280
- query.isDeleted = false;
281
- const queryBuilder = Issue_model_1.IssueModel.find(query).sort({ createdAt: -1 });
282
- if (filters.skip)
283
- queryBuilder.skip(filters.skip);
284
- if (filters.limit)
285
- queryBuilder.limit(filters.limit);
286
- return await queryBuilder.exec();
287
- }
288
- catch (error) {
289
- throw new Error(`Failed to search issues: ${error instanceof Error ? error.message : "Unknown error"}`);
290
- }
291
- }
292
- /**
293
- * Get issue statistics
294
- */
295
- async getStatistics(propertyId) {
296
- try {
297
- const query = { isDeleted: false };
298
- if (propertyId)
299
- query.propertyId = propertyId;
300
- const [total, pending, inProgress, resolved, closed, overdue, priorityStats, categoryStats,] = await Promise.all([
301
- Issue_model_1.IssueModel.countDocuments(query),
302
- Issue_model_1.IssueModel.countDocuments({ ...query, status: issue_types_1.IssueStatus.PENDING }),
303
- Issue_model_1.IssueModel.countDocuments({
304
- ...query,
305
- status: issue_types_1.IssueStatus.IN_PROGRESS,
306
- }),
307
- Issue_model_1.IssueModel.countDocuments({ ...query, status: issue_types_1.IssueStatus.RESOLVED }),
308
- Issue_model_1.IssueModel.countDocuments({ ...query, status: issue_types_1.IssueStatus.CLOSED }),
309
- Issue_model_1.IssueModel.countDocuments({
310
- ...query,
311
- dueDate: { $lt: new Date() },
312
- status: {
313
- $nin: [
314
- issue_types_1.IssueStatus.RESOLVED,
315
- issue_types_1.IssueStatus.CLOSED,
316
- issue_types_1.IssueStatus.CANCELLED,
317
- ],
318
- },
319
- }),
320
- Issue_model_1.IssueModel.aggregate([
321
- { $match: query },
322
- { $group: { _id: "$priority", count: { $sum: 1 } } },
323
- ]),
324
- Issue_model_1.IssueModel.aggregate([
325
- { $match: query },
326
- { $group: { _id: "$category", count: { $sum: 1 } } },
327
- ]),
328
- ]);
329
- const byPriority = Object.values(issue_types_1.IssuePriority).reduce((acc, priority) => {
330
- acc[priority] = 0;
331
- return acc;
332
- }, {});
333
- const byCategory = Object.values(issue_types_1.IssuesCategory).reduce((acc, category) => {
334
- acc[category] = 0;
335
- return acc;
336
- }, {});
337
- priorityStats.forEach((stat) => {
338
- if (stat._id in byPriority) {
339
- byPriority[stat._id] = stat.count;
340
- }
341
- });
342
- categoryStats.forEach((stat) => {
343
- if (stat._id in byCategory) {
344
- byCategory[stat._id] = stat.count;
345
- }
346
- });
347
- return {
348
- total,
349
- pending,
350
- inProgress,
351
- resolved,
352
- closed,
353
- overdue,
354
- byPriority,
355
- byCategory,
356
- };
357
- }
358
- catch (error) {
359
- throw new Error(`Failed to get issue statistics: ${error instanceof Error ? error.message : "Unknown error"}`);
360
- }
361
- }
362
- /**
363
- * Bulk update issues
364
- */
365
- async bulkUpdate(ids, updateData) {
366
- try {
367
- const result = await Issue_model_1.IssueModel.updateMany({ _id: { $in: ids } }, { ...updateData, updatedAt: new Date() });
368
- return result.modifiedCount;
369
- }
370
- catch (error) {
371
- throw new Error(`Failed to bulk update issues: ${error instanceof Error ? error.message : "Unknown error"}`);
372
- }
373
- }
374
- /**
375
- * Bulk soft delete issues
376
- */
377
- async bulkSoftDelete(ids, deletedBy) {
378
- try {
379
- const result = await Issue_model_1.IssueModel.updateMany({ _id: { $in: ids } }, {
380
- isDeleted: true,
381
- updatedBy: deletedBy,
382
- updatedAt: new Date(),
383
- });
384
- return result.modifiedCount;
385
- }
386
- catch (error) {
387
- throw new Error(`Failed to bulk soft delete issues: ${error instanceof Error ? error.message : "Unknown error"}`);
388
- }
389
- }
390
- };
391
- __setFunctionName(_classThis, "IssueRepository");
392
- (() => {
393
- const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(null) : void 0;
394
- __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
395
- IssueRepository = _classThis = _classDescriptor.value;
396
- if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
397
- __runInitializers(_classThis, _classExtraInitializers);
398
- })();
399
- return IssueRepository = _classThis;
400
- })();
401
- exports.IssueRepository = IssueRepository;
@@ -1,8 +0,0 @@
1
- import { IProperty, IPropertySettings } from "../interfaces/IProperty";
2
- export declare class PropertyRepository {
3
- private readonly postgres;
4
- constructor();
5
- getPropertyPreferences(propertyId: string): Promise<IPropertySettings | null>;
6
- getProperty(propertyId: string): Promise<IProperty | null>;
7
- getAllProperties(): Promise<any[]>;
8
- }
@@ -1,95 +0,0 @@
1
- "use strict";
2
- var __esDecorate = (this && this.__esDecorate) || function (ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {
3
- function accept(f) { if (f !== void 0 && typeof f !== "function") throw new TypeError("Function expected"); return f; }
4
- var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value";
5
- var target = !descriptorIn && ctor ? contextIn["static"] ? ctor : ctor.prototype : null;
6
- var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});
7
- var _, done = false;
8
- for (var i = decorators.length - 1; i >= 0; i--) {
9
- var context = {};
10
- for (var p in contextIn) context[p] = p === "access" ? {} : contextIn[p];
11
- for (var p in contextIn.access) context.access[p] = contextIn.access[p];
12
- context.addInitializer = function (f) { if (done) throw new TypeError("Cannot add initializers after decoration has completed"); extraInitializers.push(accept(f || null)); };
13
- var result = (0, decorators[i])(kind === "accessor" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);
14
- if (kind === "accessor") {
15
- if (result === void 0) continue;
16
- if (result === null || typeof result !== "object") throw new TypeError("Object expected");
17
- if (_ = accept(result.get)) descriptor.get = _;
18
- if (_ = accept(result.set)) descriptor.set = _;
19
- if (_ = accept(result.init)) initializers.unshift(_);
20
- }
21
- else if (_ = accept(result)) {
22
- if (kind === "field") initializers.unshift(_);
23
- else descriptor[key] = _;
24
- }
25
- }
26
- if (target) Object.defineProperty(target, contextIn.name, descriptor);
27
- done = true;
28
- };
29
- var __runInitializers = (this && this.__runInitializers) || function (thisArg, initializers, value) {
30
- var useValue = arguments.length > 2;
31
- for (var i = 0; i < initializers.length; i++) {
32
- value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);
33
- }
34
- return useValue ? value : void 0;
35
- };
36
- var __setFunctionName = (this && this.__setFunctionName) || function (f, name, prefix) {
37
- if (typeof name === "symbol") name = name.description ? "[".concat(name.description, "]") : "";
38
- return Object.defineProperty(f, "name", { configurable: true, value: prefix ? "".concat(prefix, " ", name) : name });
39
- };
40
- Object.defineProperty(exports, "__esModule", { value: true });
41
- exports.PropertyRepository = void 0;
42
- const db_1 = require("../../../db");
43
- const typedi_1 = require("typedi");
44
- let PropertyRepository = (() => {
45
- let _classDecorators = [(0, typedi_1.Service)()];
46
- let _classDescriptor;
47
- let _classExtraInitializers = [];
48
- let _classThis;
49
- var PropertyRepository = _classThis = class {
50
- constructor() {
51
- this.postgres = (0, db_1.getPostgresClient)();
52
- }
53
- async getPropertyPreferences(propertyId) {
54
- try {
55
- const propertyPreferences = await this.postgres.query(`SELECT * FROM dt_property_settings WHERE "propertyId" = $1`, [propertyId]);
56
- if (propertyPreferences.rows.length > 0) {
57
- return propertyPreferences.rows[0];
58
- }
59
- return null;
60
- }
61
- catch (error) {
62
- console.log(error);
63
- throw new Error("Failed to get property preferences");
64
- }
65
- }
66
- async getProperty(propertyId) {
67
- const property = await this.postgres.query("SELECT * FROM dt_properties WHERE id = $1", [propertyId]);
68
- if (property.rows.length > 0) {
69
- return property.rows[0];
70
- }
71
- return null;
72
- }
73
- async getAllProperties() {
74
- try {
75
- //Retrieve all the properties ids from the database
76
- const properties = await this.postgres.query("SELECT id FROM dt_properties");
77
- return properties.rows.map((property) => property.id);
78
- }
79
- catch (error) {
80
- console.log(error);
81
- throw new Error("Failed to get all properties");
82
- }
83
- }
84
- };
85
- __setFunctionName(_classThis, "PropertyRepository");
86
- (() => {
87
- const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(null) : void 0;
88
- __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
89
- PropertyRepository = _classThis = _classDescriptor.value;
90
- if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
91
- __runInitializers(_classThis, _classExtraInitializers);
92
- })();
93
- return PropertyRepository = _classThis;
94
- })();
95
- exports.PropertyRepository = PropertyRepository;
@@ -1,9 +0,0 @@
1
- import { ISchedule } from "../interfaces/ISchedule";
2
- export declare class ScheduleRepository {
3
- private readonly axiosInstance;
4
- constructor();
5
- getSchedule(scheduleId: string): Promise<any>;
6
- getScheduleByZone(zoneId: string): Promise<any>;
7
- setSchedule(scheduleId: string, schedule: ISchedule): Promise<any>;
8
- deleteSchedule(scheduleId: string): Promise<any>;
9
- }
@@ -1,109 +0,0 @@
1
- "use strict";
2
- var __esDecorate = (this && this.__esDecorate) || function (ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {
3
- function accept(f) { if (f !== void 0 && typeof f !== "function") throw new TypeError("Function expected"); return f; }
4
- var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value";
5
- var target = !descriptorIn && ctor ? contextIn["static"] ? ctor : ctor.prototype : null;
6
- var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});
7
- var _, done = false;
8
- for (var i = decorators.length - 1; i >= 0; i--) {
9
- var context = {};
10
- for (var p in contextIn) context[p] = p === "access" ? {} : contextIn[p];
11
- for (var p in contextIn.access) context.access[p] = contextIn.access[p];
12
- context.addInitializer = function (f) { if (done) throw new TypeError("Cannot add initializers after decoration has completed"); extraInitializers.push(accept(f || null)); };
13
- var result = (0, decorators[i])(kind === "accessor" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);
14
- if (kind === "accessor") {
15
- if (result === void 0) continue;
16
- if (result === null || typeof result !== "object") throw new TypeError("Object expected");
17
- if (_ = accept(result.get)) descriptor.get = _;
18
- if (_ = accept(result.set)) descriptor.set = _;
19
- if (_ = accept(result.init)) initializers.unshift(_);
20
- }
21
- else if (_ = accept(result)) {
22
- if (kind === "field") initializers.unshift(_);
23
- else descriptor[key] = _;
24
- }
25
- }
26
- if (target) Object.defineProperty(target, contextIn.name, descriptor);
27
- done = true;
28
- };
29
- var __runInitializers = (this && this.__runInitializers) || function (thisArg, initializers, value) {
30
- var useValue = arguments.length > 2;
31
- for (var i = 0; i < initializers.length; i++) {
32
- value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);
33
- }
34
- return useValue ? value : void 0;
35
- };
36
- var __setFunctionName = (this && this.__setFunctionName) || function (f, name, prefix) {
37
- if (typeof name === "symbol") name = name.description ? "[".concat(name.description, "]") : "";
38
- return Object.defineProperty(f, "name", { configurable: true, value: prefix ? "".concat(prefix, " ", name) : name });
39
- };
40
- Object.defineProperty(exports, "__esModule", { value: true });
41
- exports.ScheduleRepository = void 0;
42
- const typedi_1 = require("typedi");
43
- const http_utils_1 = require("../../../utils/http.utils");
44
- const config_1 = require("../../../config/config");
45
- let ScheduleRepository = (() => {
46
- let _classDecorators = [(0, typedi_1.Service)()];
47
- let _classDescriptor;
48
- let _classExtraInitializers = [];
49
- let _classThis;
50
- var ScheduleRepository = _classThis = class {
51
- // private readonly logger = getLogger();
52
- constructor() {
53
- this.axiosInstance = (0, http_utils_1.getDeviceServiceAxiosInstance)();
54
- }
55
- async getSchedule(scheduleId) {
56
- try {
57
- const response = await this.axiosInstance.get(`/devices/schedule?id=${scheduleId}`);
58
- return response.data;
59
- }
60
- catch (error) {
61
- (0, config_1.getConfig)().LOGGER.error(`Failed to get schedule ${scheduleId}:`, error);
62
- const errorMessage = error.response?.data?.message || error.message || "Unknown error";
63
- throw new Error(`Failed to get schedule: ${errorMessage}`);
64
- }
65
- }
66
- async getScheduleByZone(zoneId) {
67
- try {
68
- const response = await this.axiosInstance.get(`/devices/schedules?zoneId=${zoneId}`);
69
- return response.data;
70
- }
71
- catch (error) {
72
- (0, config_1.getConfig)().LOGGER.error(`Failed to get schedule by zone ${zoneId}:`, error);
73
- const errorMessage = error.response?.data?.message || error.message || "Unknown error";
74
- throw new Error(`Failed to get schedule: ${errorMessage}`);
75
- }
76
- }
77
- async setSchedule(scheduleId, schedule) {
78
- try {
79
- const response = await this.axiosInstance.put(`/devices/schedules/${scheduleId}`, schedule);
80
- return response.data;
81
- }
82
- catch (error) {
83
- (0, config_1.getConfig)().LOGGER.error(`Failed to update schedule ${scheduleId}:`, error);
84
- const errorMessage = error.response?.data?.message || error.message || "Unknown error";
85
- throw new Error(`Failed to update schedule: ${errorMessage}`);
86
- }
87
- }
88
- async deleteSchedule(scheduleId) {
89
- try {
90
- const response = await this.axiosInstance.delete(`/devices/schedules/${scheduleId}`);
91
- return response.data;
92
- }
93
- catch (error) {
94
- (0, config_1.getConfig)().LOGGER.error(`Failed to delete schedule from DB ${scheduleId}:`, error);
95
- throw new Error(`Failed to delete schedule from DB: ${error.message}`);
96
- }
97
- }
98
- };
99
- __setFunctionName(_classThis, "ScheduleRepository");
100
- (() => {
101
- const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(null) : void 0;
102
- __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
103
- ScheduleRepository = _classThis = _classDescriptor.value;
104
- if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
105
- __runInitializers(_classThis, _classExtraInitializers);
106
- })();
107
- return ScheduleRepository = _classThis;
108
- })();
109
- exports.ScheduleRepository = ScheduleRepository;