@primocaredentgroup/elettromedicali 0.1.0 → 0.1.1

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 (150) hide show
  1. package/dist/client/index.d.ts +0 -2
  2. package/dist/client/index.d.ts.map +1 -1
  3. package/dist/client/index.js +2 -28
  4. package/dist/client/index.js.map +1 -1
  5. package/dist/component/_generated/api.d.ts +4 -4
  6. package/dist/component/_generated/api.d.ts.map +1 -1
  7. package/dist/component/_generated/component.d.ts +165 -218
  8. package/dist/component/_generated/component.d.ts.map +1 -1
  9. package/dist/component/contracts.d.ts +9 -9
  10. package/dist/component/contracts.d.ts.map +1 -1
  11. package/dist/component/contracts.js +7 -13
  12. package/dist/component/contracts.js.map +1 -1
  13. package/dist/component/crons.d.ts.map +1 -1
  14. package/dist/component/crons.js +1 -2
  15. package/dist/component/crons.js.map +1 -1
  16. package/dist/component/dashboardStats.d.ts +8 -3
  17. package/dist/component/dashboardStats.d.ts.map +1 -1
  18. package/dist/component/dashboardStats.js +24 -39
  19. package/dist/component/dashboardStats.js.map +1 -1
  20. package/dist/component/dashboardStatsCache.d.ts +5 -11
  21. package/dist/component/dashboardStatsCache.d.ts.map +1 -1
  22. package/dist/component/dashboardStatsCache.js +12 -53
  23. package/dist/component/dashboardStatsCache.js.map +1 -1
  24. package/dist/component/deviceCategories.d.ts +22 -15
  25. package/dist/component/deviceCategories.d.ts.map +1 -1
  26. package/dist/component/deviceCategories.js +10 -4
  27. package/dist/component/deviceCategories.js.map +1 -1
  28. package/dist/component/deviceQuestions.d.ts +36 -27
  29. package/dist/component/deviceQuestions.d.ts.map +1 -1
  30. package/dist/component/deviceQuestions.js +22 -5
  31. package/dist/component/deviceQuestions.js.map +1 -1
  32. package/dist/component/deviceRepairHistory.d.ts +3 -3
  33. package/dist/component/deviceRepairHistory.js +1 -1
  34. package/dist/component/deviceRepairHistory.js.map +1 -1
  35. package/dist/component/deviceStatus.d.ts +8 -57
  36. package/dist/component/deviceStatus.d.ts.map +1 -1
  37. package/dist/component/deviceStatus.js +32 -30
  38. package/dist/component/deviceStatus.js.map +1 -1
  39. package/dist/component/devices.d.ts +39 -22
  40. package/dist/component/devices.d.ts.map +1 -1
  41. package/dist/component/devices.js +85 -96
  42. package/dist/component/devices.js.map +1 -1
  43. package/dist/component/emailHelpers.d.ts +10 -3
  44. package/dist/component/emailHelpers.d.ts.map +1 -1
  45. package/dist/component/emailHelpers.js +9 -20
  46. package/dist/component/emailHelpers.js.map +1 -1
  47. package/dist/component/emails.d.ts +5 -5
  48. package/dist/component/emails.js +2 -2
  49. package/dist/component/emails.js.map +1 -1
  50. package/dist/component/http.d.ts.map +1 -1
  51. package/dist/component/http.js +3 -108
  52. package/dist/component/http.js.map +1 -1
  53. package/dist/component/migrationHelpers.d.ts +29 -0
  54. package/dist/component/migrationHelpers.d.ts.map +1 -0
  55. package/dist/component/migrationHelpers.js +84 -0
  56. package/dist/component/migrationHelpers.js.map +1 -0
  57. package/dist/component/roles.d.ts +1 -0
  58. package/dist/component/roles.d.ts.map +1 -1
  59. package/dist/component/roles.js +5 -6
  60. package/dist/component/roles.js.map +1 -1
  61. package/dist/component/schema.d.ts +69 -150
  62. package/dist/component/schema.d.ts.map +1 -1
  63. package/dist/component/schema.js +35 -88
  64. package/dist/component/schema.js.map +1 -1
  65. package/dist/component/slaMonitoring.d.ts +16 -30
  66. package/dist/component/slaMonitoring.d.ts.map +1 -1
  67. package/dist/component/slaMonitoring.js +48 -99
  68. package/dist/component/slaMonitoring.js.map +1 -1
  69. package/dist/component/spareParts.d.ts +11 -48
  70. package/dist/component/spareParts.d.ts.map +1 -1
  71. package/dist/component/spareParts.js +41 -11
  72. package/dist/component/spareParts.js.map +1 -1
  73. package/dist/component/suppliers.d.ts +38 -19
  74. package/dist/component/suppliers.d.ts.map +1 -1
  75. package/dist/component/suppliers.js +63 -44
  76. package/dist/component/suppliers.js.map +1 -1
  77. package/dist/component/ticketComments.d.ts +18 -12
  78. package/dist/component/ticketComments.d.ts.map +1 -1
  79. package/dist/component/ticketComments.js +28 -59
  80. package/dist/component/ticketComments.js.map +1 -1
  81. package/dist/component/ticketDeviceData.d.ts +63 -0
  82. package/dist/component/ticketDeviceData.d.ts.map +1 -0
  83. package/dist/component/ticketDeviceData.js +103 -0
  84. package/dist/component/ticketDeviceData.js.map +1 -0
  85. package/dist/component/ticketExport.d.ts +22 -40
  86. package/dist/component/ticketExport.d.ts.map +1 -1
  87. package/dist/component/ticketExport.js +43 -109
  88. package/dist/component/ticketExport.js.map +1 -1
  89. package/dist/component/ticketHistory.d.ts +4 -4
  90. package/dist/component/ticketHistory.d.ts.map +1 -1
  91. package/dist/component/ticketHistory.js +6 -9
  92. package/dist/component/ticketHistory.js.map +1 -1
  93. package/dist/component/ticketMacros.d.ts +19 -18
  94. package/dist/component/ticketMacros.d.ts.map +1 -1
  95. package/dist/component/ticketMacros.js +24 -30
  96. package/dist/component/ticketMacros.js.map +1 -1
  97. package/dist/component/ticketStatuses.d.ts +1 -0
  98. package/dist/component/ticketStatuses.d.ts.map +1 -1
  99. package/dist/component/ticketStatuses.js +5 -6
  100. package/dist/component/ticketStatuses.js.map +1 -1
  101. package/dist/component/ticketTriggers.d.ts +36 -16
  102. package/dist/component/ticketTriggers.d.ts.map +1 -1
  103. package/dist/component/ticketTriggers.js +115 -153
  104. package/dist/component/ticketTriggers.js.map +1 -1
  105. package/dist/component/userProfiles.d.ts +25 -120
  106. package/dist/component/userProfiles.d.ts.map +1 -1
  107. package/dist/component/userProfiles.js +73 -384
  108. package/dist/component/userProfiles.js.map +1 -1
  109. package/dist/test.d.ts +69 -150
  110. package/dist/test.d.ts.map +1 -1
  111. package/package.json +12 -3
  112. package/src/client/index.ts +2 -30
  113. package/src/component/_generated/api.ts +4 -4
  114. package/src/component/_generated/component.ts +228 -350
  115. package/src/component/contracts.ts +7 -14
  116. package/src/component/crons.ts +2 -7
  117. package/src/component/dashboardStats.ts +24 -41
  118. package/src/component/dashboardStatsCache.ts +12 -61
  119. package/src/component/deviceCategories.ts +12 -4
  120. package/src/component/deviceQuestions.ts +28 -5
  121. package/src/component/deviceRepairHistory.ts +1 -1
  122. package/src/component/deviceStatus.ts +43 -45
  123. package/src/component/devices.ts +87 -106
  124. package/src/component/emailHelpers.ts +9 -19
  125. package/src/component/emails.ts +2 -2
  126. package/src/component/http.ts +3 -108
  127. package/src/component/migrationHelpers.ts +96 -0
  128. package/src/component/roles.ts +5 -6
  129. package/src/component/schema.ts +35 -93
  130. package/src/component/slaMonitoring.ts +52 -107
  131. package/src/component/spareParts.ts +46 -12
  132. package/src/component/suppliers.ts +71 -48
  133. package/src/component/ticketComments.ts +28 -71
  134. package/src/component/ticketDeviceData.ts +113 -0
  135. package/src/component/ticketExport.ts +52 -137
  136. package/src/component/ticketHistory.ts +6 -9
  137. package/src/component/ticketMacros.ts +25 -37
  138. package/src/component/ticketStatuses.ts +5 -6
  139. package/src/component/ticketTriggers.ts +121 -217
  140. package/src/component/userProfiles.ts +67 -451
  141. package/dist/component/clinics.d.ts +0 -103
  142. package/dist/component/clinics.d.ts.map +0 -1
  143. package/dist/component/clinics.js +0 -126
  144. package/dist/component/clinics.js.map +0 -1
  145. package/dist/component/maintenanceTasks.d.ts +0 -733
  146. package/dist/component/maintenanceTasks.d.ts.map +0 -1
  147. package/dist/component/maintenanceTasks.js +0 -937
  148. package/dist/component/maintenanceTasks.js.map +0 -1
  149. package/src/component/clinics.ts +0 -136
  150. package/src/component/maintenanceTasks.ts +0 -1003
@@ -1 +1 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/component/schema.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA,wBAs0BG"}
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/component/schema.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA,wBA4wBG"}
@@ -18,30 +18,19 @@ export default defineSchema({
18
18
  })),
19
19
  createdAt: v.optional(v.number()),
20
20
  }).index('by_name', ['name']),
21
- // User profiles with roles
21
+ // Domain-specific user settings (base user data comes from parent app)
22
22
  user_profiles: defineTable({
23
23
  auth0Id: v.string(),
24
- roleId: v.optional(v.id('roles')), // Made optional for backward compatibility
25
- role: v.optional(v.string()), // Legacy field - will be migrated to roleId
26
- clinicId: v.optional(v.id('clinics')),
24
+ clinicId: v.optional(v.string()),
27
25
  supplierId: v.optional(v.id('suppliers')),
28
- email: v.string(),
29
- name: v.optional(v.string()),
30
- // PrimoUP user clinics data
31
- primoupClinics: v.optional(v.array(v.any())), // Array of clinic objects from PrimoUP
32
- selectedClinicId: v.optional(v.number()), // Currently selected PrimoUP clinic ID
33
- clinicChangeCounter: v.optional(v.number()), // Increments every time clinic changes
34
- // Impersonation (admin only)
35
- impersonatingUserId: v.optional(v.id('user_profiles')), // ID of user being impersonated
36
- // Account status
37
- isActive: v.optional(v.boolean()), // Default true, false = account disabilitato
26
+ primoupClinics: v.optional(v.array(v.any())),
27
+ selectedClinicId: v.optional(v.number()),
28
+ clinicChangeCounter: v.optional(v.number()),
29
+ impersonatingUserId: v.optional(v.string()),
38
30
  })
39
31
  .index('by_auth0Id', ['auth0Id'])
40
- .index('by_email', ['email'])
41
- .index('by_roleId', ['roleId'])
42
32
  .index('by_clinicId', ['clinicId'])
43
- .index('by_supplierId', ['supplierId'])
44
- .index('by_isActive', ['isActive']),
33
+ .index('by_supplierId', ['supplierId']),
45
34
  // PrimoUP authentication tokens
46
35
  primoup_tokens: defineTable({
47
36
  userId: v.string(), // Auth0 user ID
@@ -67,18 +56,9 @@ export default defineSchema({
67
56
  .index('by_userId', ['userId'])
68
57
  .index('by_timestamp', ['timestamp'])
69
58
  .index('by_userId_timestamp', ['userId', 'timestamp']),
70
- // Clinics
71
- clinics: defineTable({
72
- name: v.string(),
73
- address: v.string(),
74
- contact_email: v.string(),
75
- contact_phone: v.string(),
76
- region: v.optional(v.string()), // Regione della clinica
77
- primoupId: v.optional(v.string()), // PrimoUP clinic ID for sync
78
- }).index('by_primoupId', ['primoupId']),
79
59
  // Devices
80
60
  devices: defineTable({
81
- clinicId: v.id('clinics'),
61
+ clinicId: v.string(),
82
62
  primoupClinicId: v.optional(v.number()), // PrimoUP clinic ID (for filtering)
83
63
  supplierId: v.optional(v.id('suppliers')), // Fornitore che fornisce assistenza
84
64
  name: v.string(),
@@ -129,8 +109,8 @@ export default defineSchema({
129
109
  // Storico riparazioni attrezzature
130
110
  device_repair_history: defineTable({
131
111
  deviceId: v.id('devices'),
132
- clinicId: v.id('clinics'),
133
- ticketId: v.optional(v.id('maintenance_tasks')),
112
+ clinicId: v.string(),
113
+ ticketId: v.optional(v.string()),
134
114
  sentToRepairAt: v.number(),
135
115
  returnedAt: v.optional(v.number()),
136
116
  statusAfterRepair: v.optional(v.union(v.literal('active'), v.literal('out_of_service'))),
@@ -189,8 +169,8 @@ export default defineSchema({
189
169
  // Contracts
190
170
  contracts: defineTable({
191
171
  supplierId: v.id('suppliers'),
192
- clinicId: v.optional(v.id('clinics')), // Legacy: single clinic (deprecated)
193
- clinicIds: v.optional(v.array(v.id('clinics'))), // New: multiple clinics (empty = all clinics)
172
+ clinicId: v.optional(v.string()), // Legacy: single clinic (deprecated)
173
+ clinicIds: v.optional(v.array(v.string())), // Multiple clinics (empty = all clinics)
194
174
  start_date: v.number(),
195
175
  end_date: v.number(),
196
176
  amount: v.number(),
@@ -245,54 +225,21 @@ export default defineSchema({
245
225
  .index('by_isActive', ['isActive'])
246
226
  .index('by_applyToAll', ['applyToAll'])
247
227
  .index('by_parentFieldId', ['parentFieldId']),
248
- // Maintenance tasks (tickets)
249
- maintenance_tasks: defineTable({
250
- ticketNumber: v.optional(v.string()), // Numero ticket incrementale (es: TICK-00001)
251
- title: v.optional(v.string()), // Titolo del ticket
252
- deviceId: v.optional(v.id('devices')), // Opzionale per ticket esterni senza device specifico
253
- clinicId: v.id('clinics'),
254
- supplierId: v.optional(v.id('suppliers')),
255
- created_by: v.string(), // Auth0 user ID
256
- createdByEmail: v.optional(v.string()), // Email del creatore (per webhook)
257
- description: v.string(),
258
- photos: v.array(v.string()), // Legacy base64 - kept for backward compatibility
259
- photoStorageIds: v.optional(v.array(v.id('_storage'))), // New: Convex file storage
260
- status: v.string(), // References ticket_statuses.name
261
- priority: v.optional(v.union(v.literal('low'), v.literal('medium'), v.literal('high'))), // Priorità del ticket (usata per SLA)
262
- notes: v.optional(v.string()), // Additional notes from supplier/admin
263
- customFields: v.optional(v.any()), // Valori dei campi custom (oggetto dinamico)
228
+ // Ticket device data (links Abaddon ticket to component device/photos)
229
+ ticket_device_data: defineTable({
230
+ ticketId: v.string(), // Abaddon ticket _id (string reference)
231
+ deviceId: v.optional(v.id('devices')),
264
232
  deviceQuestionAnswers: v.optional(v.array(v.object({
265
233
  questionId: v.id('device_questions'),
266
- question: v.string(), // Testo della domanda (salvato per storico)
267
- answer: v.any(), // Risposta (può essere string, number, array, boolean)
268
- }))), // Risposte alle domande specifiche dell'attrezzatura
269
- slaDeadline: v.optional(v.number()), // Scadenza SLA calcolata automaticamente
270
- slaBreached: v.optional(v.boolean()), // True se SLA è stato violato
271
- slaWarningSent: v.optional(v.boolean()), // True se warning email è stata inviata
272
- // External system integration (Abaddon)
273
- externalTicketId: v.optional(v.string()), // ID del ticket nel sistema esterno
274
- externalTicketNumber: v.optional(v.number()), // Numero ticket nel sistema esterno
275
- // Import tracking
276
- importSource: v.optional(v.string()), // Es: "legacy_zammad", "external_api" per ticket importati
277
- legacyTicketId: v.optional(v.number()), // ID originale nel sistema legacy
278
- // External ticket flags
279
- isExternal: v.optional(v.boolean()), // True se ticket creato da API esterna (senza device)
280
- needsAssignment: v.optional(v.boolean()), // True se ticket da gestire (senza fornitore assegnato)
281
- created_at: v.number(),
282
- updated_at: v.number(),
283
- closed_at: v.optional(v.number()), // Data chiusura (quando status diventa completed/cancelled)
234
+ question: v.string(),
235
+ answer: v.any(),
236
+ }))),
237
+ photoStorageIds: v.optional(v.array(v.id('_storage'))),
238
+ isExternal: v.optional(v.boolean()),
239
+ needsAssignment: v.optional(v.boolean()),
284
240
  })
285
- .index('by_ticketNumber', ['ticketNumber'])
286
- .index('by_deviceId', ['deviceId'])
287
- .index('by_clinicId', ['clinicId'])
288
- .index('by_supplierId', ['supplierId'])
289
- .index('by_status', ['status'])
290
- .index('by_status_created_at', ['status', 'created_at'])
291
- .index('by_priority', ['priority'])
292
- .index('by_created_at', ['created_at'])
293
- .index('by_slaDeadline', ['slaDeadline'])
294
- .index('by_externalTicketId', ['externalTicketId'])
295
- .index('by_importSource', ['importSource']),
241
+ .index('by_ticketId', ['ticketId'])
242
+ .index('by_deviceId', ['deviceId']),
296
243
  // Dashboard stats cache - pre-computed every 10 min to avoid bytes read limit
297
244
  dashboard_stats_cache: defineTable({
298
245
  lastUpdated: v.number(),
@@ -390,7 +337,7 @@ export default defineSchema({
390
337
  // Assegna fornitore (azienda)
391
338
  assignSupplier: v.optional(v.id('suppliers')),
392
339
  // Assegna utente specifico (utente con ruolo supplier)
393
- assignUser: v.optional(v.id('user_profiles')),
340
+ assignUser: v.optional(v.string()),
394
341
  // Imposta SLA (ore)
395
342
  setSlaHours: v.optional(v.number()),
396
343
  // Applica regola SLA automatica (basata su fornitore e priorità)
@@ -409,7 +356,7 @@ export default defineSchema({
409
356
  v.literal('specific_user'), // Utente specifico
410
357
  v.literal('specific_supplier') // Fornitore specifico
411
358
  ),
412
- userId: v.optional(v.id('user_profiles')), // Per specific_user
359
+ userId: v.optional(v.string()), // Per specific_user
413
360
  supplierId: v.optional(v.id('suppliers')), // Per specific_supplier
414
361
  }),
415
362
  // Vecchio formato (stringhe) - per retrocompatibilità temporanea
@@ -447,14 +394,14 @@ export default defineSchema({
447
394
  actions: v.object({
448
395
  changeStatus: v.optional(v.string()), // Cambia stato
449
396
  assignSupplier: v.optional(v.id('suppliers')), // Assegna azienda fornitrice
450
- assignUser: v.optional(v.id('user_profiles')), // Assegna utente specifico
397
+ assignUser: v.optional(v.string()), // Assegna utente specifico
451
398
  setSlaHours: v.optional(v.number()), // Imposta SLA
452
399
  applySlaRule: v.optional(v.boolean()), // Applica regola SLA automatica
453
400
  addNote: v.optional(v.string()), // Aggiungi nota automatica
454
401
  sendNotification: v.optional(v.object({
455
402
  recipients: v.array(v.union(v.object({
456
403
  type: v.union(v.literal('admin'), v.literal('supplier'), v.literal('ticket_creator'), v.literal('ticket_assignee'), v.literal('specific_user'), v.literal('specific_supplier')),
457
- userId: v.optional(v.id('user_profiles')),
404
+ userId: v.optional(v.string()),
458
405
  supplierId: v.optional(v.id('suppliers')),
459
406
  }), v.literal('admin'), v.literal('supplier'), v.literal('clinic'))),
460
407
  message: v.string(),
@@ -463,7 +410,7 @@ export default defineSchema({
463
410
  }),
464
411
  createdAt: v.number(),
465
412
  updatedAt: v.number(),
466
- createdBy: v.id('user_profiles'), // Chi ha creato la macro
413
+ createdBy: v.string(), // Chi ha creato la macro
467
414
  })
468
415
  .index('by_createdBy', ['createdBy'])
469
416
  .index('by_isGlobal', ['isGlobal'])
@@ -591,7 +538,7 @@ export default defineSchema({
591
538
  .index('by_createdBy', ['createdBy']),
592
539
  // Ticket comments (Commenti sulle segnalazioni)
593
540
  ticket_comments: defineTable({
594
- taskId: v.id('maintenance_tasks'), // Segnalazione a cui appartiene
541
+ ticketId: v.string(), // Abaddon ticket _id (string reference)
595
542
  authorId: v.string(), // Auth0 user ID dell'autore
596
543
  authorName: v.optional(v.string()), // Nome dell'autore (cached)
597
544
  authorEmail: v.optional(v.string()), // Email dell'autore (cached)
@@ -601,16 +548,16 @@ export default defineSchema({
601
548
  isFromApi: v.optional(v.boolean()), // Se true, commento ricevuto via API esterna
602
549
  attachments: v.optional(v.array(v.id('_storage'))), // Allegati opzionali
603
550
  mentions: v.optional(v.array(v.object({
604
- userId: v.id('user_profiles'),
551
+ userId: v.string(),
605
552
  name: v.string(),
606
553
  email: v.string(),
607
554
  }))), // Utenti taggati nel commento
608
555
  createdAt: v.number(),
609
556
  updatedAt: v.optional(v.number()),
610
557
  })
611
- .index('by_taskId', ['taskId'])
558
+ .index('by_ticketId', ['ticketId'])
612
559
  .index('by_authorId', ['authorId'])
613
- .index('by_taskId_createdAt', ['taskId', 'createdAt']),
560
+ .index('by_ticketId_createdAt', ['ticketId', 'createdAt']),
614
561
  // Spare part orders (Ordini ricambi)
615
562
  spare_part_orders: defineTable({
616
563
  orderNumber: v.string(), // Numero ordine generato automaticamente
@@ -673,7 +620,7 @@ export default defineSchema({
673
620
  to: v.union(v.string(), v.array(v.string())),
674
621
  subject: v.string(),
675
622
  html: v.string(),
676
- ticketId: v.optional(v.id('maintenance_tasks')),
623
+ ticketId: v.optional(v.string()),
677
624
  status: v.union(v.literal('sent'), v.literal('failed'), v.literal('pending')),
678
625
  resendId: v.optional(v.string()), // ID email da Resend
679
626
  errorMessage: v.optional(v.string()),
@@ -684,7 +631,7 @@ export default defineSchema({
684
631
  .index('by_sentAt', ['sentAt']),
685
632
  // Ticket History (Storico eventi ticket)
686
633
  ticket_history: defineTable({
687
- ticketId: v.id('maintenance_tasks'),
634
+ ticketId: v.string(), // Abaddon ticket _id (string reference)
688
635
  eventType: v.union(v.literal('created'), // Ticket creato
689
636
  v.literal('status_change'), // Cambio stato
690
637
  v.literal('assignee_change'), // Cambio assegnatario (fornitore)
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/component/schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/component/schema.ts"],"names":[],"mappings":"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"}
@@ -1,32 +1,18 @@
1
- export declare const checkSLAStatus: import("convex/server").RegisteredAction<"internal", {}, Promise<{
2
- checked: number;
3
- warnings: number;
4
- breaches: number;
1
+ export declare const evaluateSLA: import("convex/server").RegisteredQuery<"public", {
2
+ tickets: {
3
+ slaDeadline?: number | undefined;
4
+ slaBreached?: boolean | undefined;
5
+ slaWarningSent?: boolean | undefined;
6
+ status: string;
7
+ ticketId: string;
8
+ }[];
9
+ }, Promise<{
10
+ warnings: string[];
11
+ breaches: string[];
5
12
  }>>;
6
- export declare const listTicketsNeedingSLACheck: import("convex/server").RegisteredQuery<"internal", {}, Promise<{
7
- _id: import("convex/values").GenericId<"maintenance_tasks">;
8
- ticketNumber: string | undefined;
9
- status: string;
10
- slaDeadline: number | undefined;
11
- slaBreached: boolean | undefined;
12
- slaWarningSent: boolean | undefined;
13
- }[]>>;
14
- export declare const listAllTicketsForSLA: import("convex/server").RegisteredQuery<"internal", {}, Promise<{
15
- _id: import("convex/values").GenericId<"maintenance_tasks">;
16
- ticketNumber: string | undefined;
17
- status: string;
18
- supplierId: import("convex/values").GenericId<"suppliers"> | undefined;
19
- slaDeadline: number | undefined;
20
- slaBreached: boolean | undefined;
21
- slaWarningSent: boolean | undefined;
22
- deviceName: string;
23
- clinicName: string;
24
- supplierName: null;
25
- }[]>>;
26
- export declare const markSLABreached: import("convex/server").RegisteredMutation<"internal", {
27
- ticketId: import("convex/values").GenericId<"maintenance_tasks">;
28
- }, Promise<void>>;
29
- export declare const markSLAWarningSent: import("convex/server").RegisteredMutation<"internal", {
30
- ticketId: import("convex/values").GenericId<"maintenance_tasks">;
31
- }, Promise<void>>;
13
+ export declare const computeSLADeadline: import("convex/server").RegisteredQuery<"public", {
14
+ supplierId?: import("convex/values").GenericId<"suppliers"> | undefined;
15
+ deviceCategory?: string | undefined;
16
+ priority?: string | undefined;
17
+ }, Promise<number | null>>;
32
18
  //# sourceMappingURL=slaMonitoring.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"slaMonitoring.d.ts","sourceRoot":"","sources":["../../src/component/slaMonitoring.ts"],"names":[],"mappings":"AAUA,eAAO,MAAM,cAAc;aAEgB,MAAM;cAAY,MAAM;cAAY,MAAM;GAsCnF,CAAC;AAEH,eAAO,MAAM,0BAA0B;;;;;;;KAsBrC,CAAC;AAEH,eAAO,MAAM,oBAAoB;;;;;;;;;;;KA0B/B,CAAC;AAEH,eAAO,MAAM,eAAe;;iBAS1B,CAAC;AAEH,eAAO,MAAM,kBAAkB;;iBAS7B,CAAC"}
1
+ {"version":3,"file":"slaMonitoring.d.ts","sourceRoot":"","sources":["../../src/component/slaMonitoring.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,WAAW;;;;;;;;;;;GAgCtB,CAAC;AAEH,eAAO,MAAM,kBAAkB;;;;0BAgC7B,CAAC"}
@@ -1,111 +1,60 @@
1
1
  import { v } from 'convex/values';
2
- import { internalMutation, internalAction, internalQuery } from './_generated/server';
3
- import { internal } from './_generated/api';
4
- // NOTE: Notification sending (sendSLABreachNotifications, sendSLAWarningNotifications)
5
- // is NOT included in the component. The parent app is responsible for:
6
- // 1. Running checkSLAStatus periodically (via cron)
7
- // 2. After breaches/warnings are marked, querying for newly marked tickets
8
- // 3. Sending email notifications via its own emailActions
9
- export const checkSLAStatus = internalAction({
10
- args: {},
11
- handler: async (ctx) => {
12
- try {
13
- const tickets = await ctx.runQuery(internal.slaMonitoring.listTicketsNeedingSLACheck, {});
14
- const now = Date.now();
15
- let warningsCount = 0;
16
- let breachesCount = 0;
17
- for (const ticket of tickets) {
18
- const timeUntilDeadline = ticket.slaDeadline - now;
19
- const oneHour = 60 * 60 * 1000;
20
- if (timeUntilDeadline < 0 && !ticket.slaBreached) {
21
- breachesCount++;
22
- await ctx.runMutation(internal.slaMonitoring.markSLABreached, {
23
- ticketId: ticket._id,
24
- });
25
- }
26
- else if (timeUntilDeadline > 0 && timeUntilDeadline < oneHour && !ticket.slaWarningSent) {
27
- warningsCount++;
28
- await ctx.runMutation(internal.slaMonitoring.markSLAWarningSent, {
29
- ticketId: ticket._id,
30
- });
31
- }
32
- }
33
- return {
34
- checked: tickets.length,
35
- warnings: warningsCount,
36
- breaches: breachesCount,
37
- };
38
- }
39
- catch (error) {
40
- console.error('Error checking SLA status:', error);
41
- throw error;
42
- }
43
- },
44
- });
45
- export const listTicketsNeedingSLACheck = internalQuery({
46
- args: {},
47
- handler: async (ctx) => {
48
- const terminalStatuses = ['closed', 'completed', 'cancelled', 'resolved'];
49
- const ticketsWithSLA = await ctx.db
50
- .query('maintenance_tasks')
51
- .withIndex('by_slaDeadline')
52
- .order('asc')
53
- .take(150);
54
- return ticketsWithSLA
55
- .filter(t => t.slaDeadline && !terminalStatuses.includes(t.status))
56
- .map(t => ({
57
- _id: t._id,
58
- ticketNumber: t.ticketNumber,
59
- status: t.status,
60
- slaDeadline: t.slaDeadline,
61
- slaBreached: t.slaBreached,
62
- slaWarningSent: t.slaWarningSent,
63
- }));
64
- },
65
- });
66
- export const listAllTicketsForSLA = internalQuery({
67
- args: {},
68
- handler: async (ctx) => {
69
- const terminalStatuses = ['closed', 'completed', 'cancelled', 'resolved'];
70
- const tasks = await ctx.db
71
- .query('maintenance_tasks')
72
- .withIndex('by_slaDeadline')
73
- .order('asc')
74
- .take(500);
75
- return tasks
76
- .filter(t => t.slaDeadline && !terminalStatuses.includes(t.status))
77
- .map(t => ({
78
- _id: t._id,
79
- ticketNumber: t.ticketNumber,
80
- status: t.status,
81
- supplierId: t.supplierId,
82
- slaDeadline: t.slaDeadline,
83
- slaBreached: t.slaBreached,
84
- slaWarningSent: t.slaWarningSent,
85
- deviceName: '',
86
- clinicName: '',
87
- supplierName: null,
88
- }));
89
- },
90
- });
91
- export const markSLABreached = internalMutation({
2
+ import { query } from './_generated/server';
3
+ export const evaluateSLA = query({
92
4
  args: {
93
- ticketId: v.id('maintenance_tasks'),
5
+ tickets: v.array(v.object({
6
+ ticketId: v.string(),
7
+ status: v.string(),
8
+ slaDeadline: v.optional(v.number()),
9
+ slaBreached: v.optional(v.boolean()),
10
+ slaWarningSent: v.optional(v.boolean()),
11
+ })),
94
12
  },
95
13
  handler: async (ctx, args) => {
96
- await ctx.db.patch(args.ticketId, {
97
- slaBreached: true,
98
- });
14
+ const now = Date.now();
15
+ const oneHour = 60 * 60 * 1000;
16
+ const terminalStatuses = ['closed', 'completed', 'cancelled', 'resolved'];
17
+ const warnings = [];
18
+ const breaches = [];
19
+ for (const ticket of args.tickets) {
20
+ if (!ticket.slaDeadline || terminalStatuses.includes(ticket.status))
21
+ continue;
22
+ const timeUntilDeadline = ticket.slaDeadline - now;
23
+ if (timeUntilDeadline < 0 && !ticket.slaBreached) {
24
+ breaches.push(ticket.ticketId);
25
+ }
26
+ else if (timeUntilDeadline > 0 && timeUntilDeadline < oneHour && !ticket.slaWarningSent) {
27
+ warnings.push(ticket.ticketId);
28
+ }
29
+ }
30
+ return { warnings, breaches };
99
31
  },
100
32
  });
101
- export const markSLAWarningSent = internalMutation({
33
+ export const computeSLADeadline = query({
102
34
  args: {
103
- ticketId: v.id('maintenance_tasks'),
35
+ supplierId: v.optional(v.id('suppliers')),
36
+ priority: v.optional(v.string()),
37
+ deviceCategory: v.optional(v.string()),
104
38
  },
105
39
  handler: async (ctx, args) => {
106
- await ctx.db.patch(args.ticketId, {
107
- slaWarningSent: true,
108
- });
40
+ if (!args.supplierId || !args.priority)
41
+ return null;
42
+ const slaRule = await ctx.db
43
+ .query('sla_rules')
44
+ .withIndex('by_supplierId_category_priority', (q) => q.eq('supplierId', args.supplierId)
45
+ .eq('deviceCategory', args.deviceCategory || undefined)
46
+ .eq('priority', args.priority))
47
+ .first();
48
+ if (!slaRule) {
49
+ const genericRule = await ctx.db
50
+ .query('sla_rules')
51
+ .withIndex('by_supplierId_priority', (q) => q.eq('supplierId', args.supplierId).eq('priority', args.priority))
52
+ .first();
53
+ if (!genericRule)
54
+ return null;
55
+ return Date.now() + (genericRule.resolutionTimeHours * 60 * 60 * 1000);
56
+ }
57
+ return Date.now() + (slaRule.resolutionTimeHours * 60 * 60 * 1000);
109
58
  },
110
59
  });
111
60
  //# sourceMappingURL=slaMonitoring.js.map