@aleonnet/healthcare-scheduler 0.1.39 → 0.1.41
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/database/repositories/EventsRepository.d.ts +1 -0
- package/dist/database/repositories/EventsRepository.d.ts.map +1 -1
- package/dist/database/repositories/EventsRepository.js +82 -49
- package/dist/database/repositories/EventsRepository.js.map +1 -1
- package/dist/database/repositories/OccurrencesRepository.d.ts.map +1 -1
- package/dist/database/repositories/OccurrencesRepository.js +9 -0
- package/dist/database/repositories/OccurrencesRepository.js.map +1 -1
- package/dist/plugins/gamification/GamificationPlugin.d.ts +9 -0
- package/dist/plugins/gamification/GamificationPlugin.d.ts.map +1 -1
- package/dist/plugins/gamification/GamificationPlugin.js +105 -56
- package/dist/plugins/gamification/GamificationPlugin.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EventsRepository.d.ts","sourceRoot":"","sources":["../../../src/database/repositories/EventsRepository.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAElF,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAE/C,qBAAa,gBAAgB;IAEzB,OAAO,CAAC,EAAE;IACV,OAAO,CAAC,QAAQ;gBADR,EAAE,EAAE,aAAa,EACjB,QAAQ,EAAE,QAAQ;
|
|
1
|
+
{"version":3,"file":"EventsRepository.d.ts","sourceRoot":"","sources":["../../../src/database/repositories/EventsRepository.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAElF,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAE/C,qBAAa,gBAAgB;IAEzB,OAAO,CAAC,EAAE;IACV,OAAO,CAAC,QAAQ;gBADR,EAAE,EAAE,aAAa,EACjB,QAAQ,EAAE,QAAQ;IAG5B,OAAO,CAAC,qBAAqB;YAWf,kBAAkB;IAoBhC,OAAO,CAAC,iBAAiB;YAeX,uBAAuB;IAsB/B,WAAW,CACf,YAAY,EAAE,MAAM,EACpB,MAAM,EAAE,WAAW,EACnB,IAAI,GAAE;QACJ,MAAM,CAAC,EAAE,WAAW,CAAC;QACrB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;KAC1B,GACL,OAAO,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,WAAW,CAAA;KAAE,CAAC;IA8H/D,iBAAiB,CACrB,aAAa,EAAE,MAAM,EAAE,EACvB,MAAM,EAAE,WAAW,EACnB,IAAI,GAAE;QACJ,MAAM,CAAC,EAAE,WAAW,CAAC;QACrB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;KAC1B,GACL,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAuFvB,gBAAgB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;IAkBxD,gBAAgB,CAAC,OAAO,GAAE,MAAW,GAAG,OAAO,CAAC,MAAM,CAAC;IAoBvD,iBAAiB,CACrB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,WAAW,EACnB,IAAI,GAAE;QAAE,MAAM,CAAC,EAAE,WAAW,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;KAAO,GAChF,OAAO,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,WAAW,CAAA;KAAE,CAAC;IAwB/D,iBAAiB,IAAI,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;CAuBzE"}
|
|
@@ -7,6 +7,16 @@ class EventsRepository {
|
|
|
7
7
|
this.db = db;
|
|
8
8
|
this.eventBus = eventBus;
|
|
9
9
|
}
|
|
10
|
+
parseOccurrenceIdHint(occurrenceId) {
|
|
11
|
+
const idx = occurrenceId.indexOf(':');
|
|
12
|
+
if (idx <= 0)
|
|
13
|
+
return null;
|
|
14
|
+
const planId = occurrenceId.slice(0, idx).trim();
|
|
15
|
+
const slotISO = occurrenceId.slice(idx + 1).trim();
|
|
16
|
+
if (!planId || !slotISO)
|
|
17
|
+
return null;
|
|
18
|
+
return { planId, slotISO };
|
|
19
|
+
}
|
|
10
20
|
async ensurePendingTable() {
|
|
11
21
|
await this.db.runAsync(`CREATE TABLE IF NOT EXISTS events_pending (
|
|
12
22
|
id TEXT PRIMARY KEY DEFAULT ('pending:' || strftime('%s','now') || ':' || abs(random())),
|
|
@@ -50,60 +60,79 @@ class EventsRepository {
|
|
|
50
60
|
return row?.id || null;
|
|
51
61
|
}
|
|
52
62
|
async recordEvent(occurrenceId, action, meta = {}) {
|
|
53
|
-
|
|
54
|
-
const
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
const
|
|
63
|
-
if (
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
63
|
+
const payload = meta.payload ? JSON.stringify(meta.payload) : null;
|
|
64
|
+
const payloadObj = meta?.payload || {};
|
|
65
|
+
const hint = this.parseOccurrenceIdHint(occurrenceId);
|
|
66
|
+
const hintedPlanId = String(payloadObj.planId || payloadObj.plan_id || hint?.planId || '');
|
|
67
|
+
const hintedSlotISO = String(payloadObj.slotISO || payloadObj.slot_iso || hint?.slotISO || '');
|
|
68
|
+
const result = await (0, queue_1.enqueueWrite)(async () => {
|
|
69
|
+
let txResult = { id: '', occurrenceId, action };
|
|
70
|
+
await this.db.transaction(async () => {
|
|
71
|
+
let resolvedOccurrenceId = occurrenceId;
|
|
72
|
+
const occ = await this.db.getFirstAsync('SELECT status, deleted_at FROM occurrences WHERE id = ?', [resolvedOccurrenceId]);
|
|
73
|
+
if (!occ) {
|
|
74
|
+
if (hintedPlanId && hintedSlotISO) {
|
|
75
|
+
const slotMinute = this.normalizeToMinute(hintedSlotISO);
|
|
76
|
+
const naturalId = `${hintedPlanId}:${slotMinute}`;
|
|
77
|
+
const naturalOcc = await this.db.getFirstAsync('SELECT status, deleted_at FROM occurrences WHERE id = ?', [naturalId]);
|
|
78
|
+
if (naturalOcc) {
|
|
79
|
+
resolvedOccurrenceId = naturalId;
|
|
80
|
+
if (naturalOcc.deleted_at && naturalOcc.status !== 'DONE' && naturalOcc.status !== 'SKIPPED') {
|
|
81
|
+
console.warn(`⚠️ [Events] Cannot create event for soft-deleted resolved occurrence ${resolvedOccurrenceId} with status ${naturalOcc.status}`);
|
|
82
|
+
txResult = { id: '', occurrenceId, action };
|
|
83
|
+
return;
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
else {
|
|
87
|
+
const resolved = await this.resolveOccurrenceBySlot(hintedPlanId, hintedSlotISO, 2);
|
|
88
|
+
if (resolved) {
|
|
89
|
+
resolvedOccurrenceId = resolved;
|
|
90
|
+
const resolvedOcc = await this.db.getFirstAsync('SELECT status, deleted_at FROM occurrences WHERE id = ?', [resolvedOccurrenceId]);
|
|
91
|
+
if (resolvedOcc?.deleted_at && resolvedOcc.status !== 'DONE' && resolvedOcc.status !== 'SKIPPED') {
|
|
92
|
+
console.warn(`⚠️ [Events] Cannot create event for soft-deleted resolved occurrence ${resolvedOccurrenceId} with status ${resolvedOcc.status}`);
|
|
93
|
+
txResult = { id: '', occurrenceId, action };
|
|
94
|
+
return;
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
else {
|
|
98
|
+
await this.ensurePendingTable();
|
|
99
|
+
await this.db.runAsync(`INSERT INTO events_pending (plan_id, slot_iso_minute, action, source, note, payload) VALUES (?, ?, ?, ?, ?, ?)`, [hintedPlanId, slotMinute, action, meta.source || 'screen', meta.note || null, payload]);
|
|
100
|
+
console.warn(`⏳ [Events] Enqueued pending event (plan=${hintedPlanId} slot=${slotMinute} action=${action})`);
|
|
101
|
+
txResult = { id: '', occurrenceId, action };
|
|
102
|
+
return;
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
else {
|
|
107
|
+
console.warn(`⚠️ Orphan event detected (no slot fallback): ${occurrenceId}`);
|
|
108
|
+
txResult = { id: '', occurrenceId, action };
|
|
109
|
+
return;
|
|
69
110
|
}
|
|
70
111
|
}
|
|
71
112
|
else {
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
const resolvedOcc = await this.db.getFirstAsync('SELECT status, deleted_at FROM occurrences WHERE id = ?', [resolvedOccurrenceId]);
|
|
77
|
-
if (resolvedOcc?.deleted_at && resolvedOcc.status !== 'DONE' && resolvedOcc.status !== 'SKIPPED') {
|
|
78
|
-
console.warn(`⚠️ [Events] Cannot create event for soft-deleted resolved occurrence ${resolvedOccurrenceId} with status ${resolvedOcc.status}`);
|
|
79
|
-
return { id: '', occurrenceId, action };
|
|
80
|
-
}
|
|
113
|
+
if (occ.deleted_at && occ.status !== 'DONE' && occ.status !== 'SKIPPED') {
|
|
114
|
+
console.warn(`⚠️ [Events] Cannot create event for soft-deleted occurrence ${occurrenceId} with status ${occ.status}`);
|
|
115
|
+
txResult = { id: '', occurrenceId, action };
|
|
116
|
+
return;
|
|
81
117
|
}
|
|
82
|
-
|
|
118
|
+
}
|
|
119
|
+
const id = `evt:${resolvedOccurrenceId}:${action}:${Date.now()}`;
|
|
120
|
+
try {
|
|
121
|
+
await this.db.runAsync("INSERT INTO events (id, occurrence_id, action, source, note, payload, updated_at, version) VALUES (?, ?, ?, ?, ?, ?, datetime('now'), 1)", [id, resolvedOccurrenceId, action, meta.source || 'screen', meta.note || null, payload]);
|
|
122
|
+
}
|
|
123
|
+
catch (e) {
|
|
124
|
+
const msg = String(e?.message || e || '');
|
|
125
|
+
const isFk = msg.toLowerCase().includes('foreign key constraint failed');
|
|
126
|
+
if (isFk && hintedPlanId && hintedSlotISO) {
|
|
127
|
+
const slotMinute = this.normalizeToMinute(hintedSlotISO);
|
|
83
128
|
await this.ensurePendingTable();
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
return
|
|
129
|
+
await this.db.runAsync(`INSERT INTO events_pending (plan_id, slot_iso_minute, action, source, note, payload) VALUES (?, ?, ?, ?, ?, ?)`, [hintedPlanId, slotMinute, action, meta.source || 'screen', meta.note || null, payload]);
|
|
130
|
+
console.warn(`⏳ [Events] FK race → enqueued pending (plan=${hintedPlanId} slot=${slotMinute} action=${action})`);
|
|
131
|
+
txResult = { id: '', occurrenceId, action };
|
|
132
|
+
return;
|
|
88
133
|
}
|
|
134
|
+
throw e;
|
|
89
135
|
}
|
|
90
|
-
}
|
|
91
|
-
else {
|
|
92
|
-
console.warn(`⚠️ Orphan notification detected (no slot fallback): ${occurrenceId}`);
|
|
93
|
-
return { id: '', occurrenceId, action };
|
|
94
|
-
}
|
|
95
|
-
}
|
|
96
|
-
else {
|
|
97
|
-
if (occ.deleted_at && occ.status !== 'DONE' && occ.status !== 'SKIPPED') {
|
|
98
|
-
console.warn(`⚠️ [Events] Cannot create event for soft-deleted occurrence ${occurrenceId} with status ${occ.status}`);
|
|
99
|
-
return { id: '', occurrenceId, action };
|
|
100
|
-
}
|
|
101
|
-
}
|
|
102
|
-
const id = `evt:${resolvedOccurrenceId}:${action}:${Date.now()}`;
|
|
103
|
-
const payload = meta.payload ? JSON.stringify(meta.payload) : null;
|
|
104
|
-
await (0, queue_1.enqueueWrite)(async () => {
|
|
105
|
-
await this.db.transaction(async () => {
|
|
106
|
-
await this.db.runAsync("INSERT INTO events (id, occurrence_id, action, source, note, payload, updated_at, version) VALUES (?, ?, ?, ?, ?, ?, datetime('now'), 1)", [id, resolvedOccurrenceId, action, meta.source || 'screen', meta.note || null, payload]);
|
|
107
136
|
let newStatus = 'PENDING';
|
|
108
137
|
if (action === 'TAKEN')
|
|
109
138
|
newStatus = 'DONE';
|
|
@@ -114,10 +143,14 @@ class EventsRepository {
|
|
|
114
143
|
if (newStatus !== 'PENDING') {
|
|
115
144
|
await this.db.runAsync("UPDATE occurrences SET status = ?, updated_at = datetime('now'), version = version + 1 WHERE id = ? AND status <> ?", [newStatus, resolvedOccurrenceId, newStatus]);
|
|
116
145
|
}
|
|
146
|
+
txResult = { id, occurrenceId: resolvedOccurrenceId, action };
|
|
117
147
|
});
|
|
148
|
+
return txResult;
|
|
118
149
|
});
|
|
119
|
-
|
|
120
|
-
|
|
150
|
+
if (result?.id) {
|
|
151
|
+
this.eventBus.emit('occurrences:changed', { occurrenceId: result.occurrenceId, action });
|
|
152
|
+
}
|
|
153
|
+
return result;
|
|
121
154
|
}
|
|
122
155
|
async recordEventsBatch(occurrenceIds, action, meta = {}) {
|
|
123
156
|
if (!Array.isArray(occurrenceIds) || occurrenceIds.length === 0) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EventsRepository.js","sourceRoot":"","sources":["../../../src/database/repositories/EventsRepository.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"EventsRepository.js","sourceRoot":"","sources":["../../../src/database/repositories/EventsRepository.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OccurrencesRepository.d.ts","sourceRoot":"","sources":["../../../src/database/repositories/OccurrencesRepository.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,aAAa,EAAE,UAAU,EAAgB,MAAM,kBAAkB,CAAC;AAI3E,qBAAa,qBAAqB;IACpB,OAAO,CAAC,EAAE;gBAAF,EAAE,EAAE,aAAa;IAM/B,UAAU,CAAC,WAAW,EAAE,KAAK,CAAC;QAClC,EAAE,EAAE,MAAM,CAAC;QACX,OAAO,EAAE,MAAM,CAAC;QAChB,YAAY,EAAE,MAAM,CAAC;QACrB,IAAI,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC;QACzB,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,MAAM,CAAC,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC;QAC9B,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;KAC5B,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"OccurrencesRepository.d.ts","sourceRoot":"","sources":["../../../src/database/repositories/OccurrencesRepository.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,aAAa,EAAE,UAAU,EAAgB,MAAM,kBAAkB,CAAC;AAI3E,qBAAa,qBAAqB;IACpB,OAAO,CAAC,EAAE;gBAAF,EAAE,EAAE,aAAa;IAM/B,UAAU,CAAC,WAAW,EAAE,KAAK,CAAC;QAClC,EAAE,EAAE,MAAM,CAAC;QACX,OAAO,EAAE,MAAM,CAAC;QAChB,YAAY,EAAE,MAAM,CAAC;QACrB,IAAI,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC;QACzB,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,MAAM,CAAC,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC;QAC9B,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;KAC5B,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IA6EZ,iBAAiB,CAAC,OAAO,EAAE;QAC/B,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IAuCnB,QAAQ,CAAC,GAAG,EAAE,IAAI,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IAoC1C,eAAe,CAAC,GAAG,EAAE,IAAI,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IAyBjD,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;IA+BhD,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAcrE,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IA0B7E,OAAO,CAAC,OAAO;IAcT,qBAAqB,CAAC,OAAO,GAAE,MAAW,GAAG,OAAO,CAAC,MAAM,CAAC;CA6BnE"}
|
|
@@ -32,6 +32,15 @@ class OccurrencesRepository {
|
|
|
32
32
|
}
|
|
33
33
|
for (const occ of toUpdate) {
|
|
34
34
|
const n = normalize(occ);
|
|
35
|
+
const hasExplicitState = occ.status !== undefined ||
|
|
36
|
+
occ.updated_at !== undefined ||
|
|
37
|
+
occ.deleted_at !== undefined;
|
|
38
|
+
if (!hasExplicitState) {
|
|
39
|
+
await this.db.runAsync(`UPDATE occurrences
|
|
40
|
+
SET qty = ?
|
|
41
|
+
WHERE id = ?`, [n.qty, occ.id]);
|
|
42
|
+
continue;
|
|
43
|
+
}
|
|
35
44
|
await this.db.runAsync(`UPDATE occurrences
|
|
36
45
|
SET qty = ?,
|
|
37
46
|
status = ?,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OccurrencesRepository.js","sourceRoot":"","sources":["../../../src/database/repositories/OccurrencesRepository.ts"],"names":[],"mappings":";;;AAOA,6CAAiD;AACjD,mDAA2F;AAE3F,MAAa,qBAAqB;IAChC,YAAoB,EAAiB;QAAjB,OAAE,GAAF,EAAE,CAAe;IAAI,CAAC;IAM1C,KAAK,CAAC,UAAU,CAAC,WASf;QACA,IAAI,CAAC,WAAW,CAAC,MAAM;YAAE,OAAO;QAEhC,MAAM,IAAA,oBAAY,EAAC,KAAK,IAAI,EAAE;YAC5B,MAAM,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,KAAK,IAAI,EAAE;gBACnC,MAAM,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;gBACxC,MAAM,SAAS,GAAG,CAAC,GAAQ,EAAE,EAAE,CAAC,CAAC;oBAC/B,GAAG,EAAE,GAAG,CAAC,GAAG,IAAI,CAAC;oBACjB,MAAM,EAAE,GAAG,CAAC,MAAM,IAAI,SAAS;oBAC/B,UAAU,EAAE,GAAG,CAAC,UAAU,IAAI,MAAM;oBACpC,UAAU,EAAE,GAAG,CAAC,UAAU,IAAI,IAAI;iBACnC,CAAC,CAAC;gBAEH,MAAM,GAAG,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gBACvC,MAAM,YAAY,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBAClD,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,WAAW,CAC5C,2CAA2C,YAAY,GAAG,EAC1D,GAAG,CACJ,CAAC;gBACF,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBACxE,MAAM,QAAQ,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBACjE,MAAM,QAAQ,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBAGhE,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;oBAC3B,MAAM,CAAC,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC;oBACzB,MAAM,IAAI,CAAC,EAAE,CAAC,QAAQ,CACpB;6CACiC,EACjC,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,YAAY,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,UAAU,CAAC,CAC/F,CAAC;gBACJ,CAAC;
|
|
1
|
+
{"version":3,"file":"OccurrencesRepository.js","sourceRoot":"","sources":["../../../src/database/repositories/OccurrencesRepository.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,19 +6,28 @@ export declare class GamificationPlugin implements AdherencePluginInterface {
|
|
|
6
6
|
private eventBus;
|
|
7
7
|
private schemaReady;
|
|
8
8
|
private config;
|
|
9
|
+
private opQueue;
|
|
10
|
+
private runSerial;
|
|
11
|
+
private fullRecomputeRequested;
|
|
12
|
+
private fullRecomputeInFlight;
|
|
9
13
|
constructor(config: GamificationConfig);
|
|
10
14
|
bootstrap(context: PluginContext): Promise<void>;
|
|
11
15
|
dispose(): Promise<void>;
|
|
12
16
|
private ensureSchema;
|
|
13
17
|
recomputeDay(dateLocal: Date): Promise<DailyAdherence>;
|
|
14
18
|
recomputeRange(startLocal: Date, endLocal: Date): Promise<DailyAdherence[]>;
|
|
19
|
+
private _recomputeByOccurrenceIds;
|
|
15
20
|
recomputeByOccurrenceIds(occurrenceIds: string[]): Promise<void>;
|
|
21
|
+
private _recomputeLastWindow;
|
|
22
|
+
private requestFullRecompute;
|
|
16
23
|
getDayAdherence(dateLocal: Date): Promise<DailyAdherence>;
|
|
17
24
|
getAdherenceRange(startLocal: Date, endLocal: Date): Promise<DailyAdherence[]>;
|
|
18
25
|
getCurrentLevelsState(): Promise<DailyLevelsState>;
|
|
19
26
|
recomputeLevelsToday(): Promise<DailyLevelsState>;
|
|
27
|
+
private _recomputeLevelsToday;
|
|
20
28
|
private recomputeLevelsDay;
|
|
21
29
|
backfill(daysBack?: number): Promise<void>;
|
|
30
|
+
private _getAdherenceRangeNoSerial;
|
|
22
31
|
private mapAdherenceRow;
|
|
23
32
|
}
|
|
24
33
|
export default GamificationPlugin;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GamificationPlugin.d.ts","sourceRoot":"","sources":["../../../src/plugins/gamification/GamificationPlugin.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EACV,aAAa,EACb,wBAAwB,EACxB,gBAAgB,EAChB,kBAAkB,EACnB,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAwBvD,qBAAa,kBAAmB,YAAW,wBAAwB;IACjE,QAAQ,CAAC,IAAI,kBAAkB;IAE/B,OAAO,CAAC,OAAO,CAAiB;IAChC,OAAO,CAAC,QAAQ,CAAY;IAC5B,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,MAAM,CAAqB;
|
|
1
|
+
{"version":3,"file":"GamificationPlugin.d.ts","sourceRoot":"","sources":["../../../src/plugins/gamification/GamificationPlugin.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EACV,aAAa,EACb,wBAAwB,EACxB,gBAAgB,EAChB,kBAAkB,EACnB,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAwBvD,qBAAa,kBAAmB,YAAW,wBAAwB;IACjE,QAAQ,CAAC,IAAI,kBAAkB;IAE/B,OAAO,CAAC,OAAO,CAAiB;IAChC,OAAO,CAAC,QAAQ,CAAY;IAC5B,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,MAAM,CAAqB;IAInC,OAAO,CAAC,OAAO,CAAmC;IAClD,OAAO,CAAC,SAAS;IAYjB,OAAO,CAAC,sBAAsB,CAAS;IACvC,OAAO,CAAC,qBAAqB,CAA8B;gBAE/C,MAAM,EAAE,kBAAkB;IAIhC,SAAS,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IA+BhD,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;YAIhB,YAAY;IAwCpB,YAAY,CAAC,SAAS,EAAE,IAAI,GAAG,OAAO,CAAC,cAAc,CAAC;IA4EtD,cAAc,CAAC,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;YAYnE,yBAAyB;IAuCjC,wBAAwB,CAAC,aAAa,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;YAMxD,oBAAoB;IAoBlC,OAAO,CAAC,oBAAoB;IAetB,eAAe,CAAC,SAAS,EAAE,IAAI,GAAG,OAAO,CAAC,cAAc,CAAC;IAqBzD,iBAAiB,CAAC,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;IAM9E,qBAAqB,IAAI,OAAO,CAAC,gBAAgB,CAAC;IAWlD,oBAAoB,IAAI,OAAO,CAAC,gBAAgB,CAAC;YAMzC,qBAAqB;YAIrB,kBAAkB;IAmG1B,QAAQ,CAAC,QAAQ,GAAE,MAAW,GAAG,OAAO,CAAC,IAAI,CAAC;YAUtC,0BAA0B;IA8BxC,OAAO,CAAC,eAAe;CAwBxB;AAED,eAAe,kBAAkB,CAAC"}
|
|
@@ -18,44 +18,38 @@ function plusDays(d, n) {
|
|
|
18
18
|
}
|
|
19
19
|
const recomputingDays = new Set();
|
|
20
20
|
class GamificationPlugin {
|
|
21
|
+
runSerial(task) {
|
|
22
|
+
const run = () => task();
|
|
23
|
+
const next = this.opQueue.then(run, run);
|
|
24
|
+
this.opQueue = next.then(() => undefined, () => undefined);
|
|
25
|
+
return next;
|
|
26
|
+
}
|
|
21
27
|
constructor(config) {
|
|
22
28
|
this.name = 'gamification';
|
|
23
29
|
this.schemaReady = false;
|
|
30
|
+
this.opQueue = Promise.resolve();
|
|
31
|
+
this.fullRecomputeRequested = false;
|
|
32
|
+
this.fullRecomputeInFlight = null;
|
|
24
33
|
this.config = config;
|
|
25
34
|
}
|
|
26
35
|
async bootstrap(context) {
|
|
27
36
|
this.storage = context.storage;
|
|
28
37
|
this.eventBus = context.eventBus;
|
|
29
38
|
await this.ensureSchema();
|
|
30
|
-
const
|
|
31
|
-
|
|
32
|
-
const start = plusDays(today, -Math.max(1, this.config.recomputeWindowDays - 1));
|
|
33
|
-
const startKey = ymd(start);
|
|
34
|
-
const endKey = ymd(today);
|
|
35
|
-
console.log(`🎮 [GamificationPlugin] Recomputing ${this.config.recomputeWindowDays} days (${startKey} → ${endKey})`);
|
|
36
|
-
for (let i = 0; i < this.config.recomputeWindowDays; i++) {
|
|
37
|
-
const d = new Date(today);
|
|
38
|
-
d.setDate(d.getDate() - i);
|
|
39
|
-
await this.recomputeDay(d);
|
|
40
|
-
}
|
|
41
|
-
try {
|
|
42
|
-
await this.recomputeLevelsToday();
|
|
43
|
-
}
|
|
44
|
-
catch (e) {
|
|
45
|
-
console.warn('⚠️ [GamificationPlugin] Failed to recompute levels after adherence backfill:', e);
|
|
46
|
-
}
|
|
47
|
-
console.log('🎮 [GamificationPlugin] Recompute complete');
|
|
39
|
+
const requestFullRecompute = () => {
|
|
40
|
+
void this.requestFullRecompute();
|
|
48
41
|
};
|
|
49
42
|
this.eventBus.on('occurrences:changed', async (data) => {
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
43
|
+
const ids = (data?.occurrenceIds && Array.isArray(data.occurrenceIds)) ? data.occurrenceIds :
|
|
44
|
+
(data?.occurrenceId ? [data.occurrenceId] : []);
|
|
45
|
+
if (ids.length === 0)
|
|
46
|
+
return;
|
|
47
|
+
void this.runSerial(async () => {
|
|
48
|
+
await this._recomputeByOccurrenceIds(ids);
|
|
49
|
+
});
|
|
56
50
|
});
|
|
57
|
-
this.eventBus.on('plans:changed',
|
|
58
|
-
this.eventBus.on('window:filled',
|
|
51
|
+
this.eventBus.on('plans:changed', requestFullRecompute);
|
|
52
|
+
this.eventBus.on('window:filled', requestFullRecompute);
|
|
59
53
|
}
|
|
60
54
|
async dispose() {
|
|
61
55
|
}
|
|
@@ -153,7 +147,7 @@ class GamificationPlugin {
|
|
|
153
147
|
}
|
|
154
148
|
return results;
|
|
155
149
|
}
|
|
156
|
-
async
|
|
150
|
+
async _recomputeByOccurrenceIds(occurrenceIds) {
|
|
157
151
|
if (!Array.isArray(occurrenceIds) || occurrenceIds.length === 0)
|
|
158
152
|
return;
|
|
159
153
|
const placeholders = occurrenceIds.map(() => '?').join(',');
|
|
@@ -174,54 +168,86 @@ class GamificationPlugin {
|
|
|
174
168
|
for (const d of daysToProcess) {
|
|
175
169
|
await this.recomputeDay(d);
|
|
176
170
|
}
|
|
177
|
-
await this.
|
|
171
|
+
await this._recomputeLevelsToday();
|
|
178
172
|
}
|
|
179
173
|
finally {
|
|
180
174
|
daysToProcess.forEach(d => recomputingDays.delete(ymd(d)));
|
|
181
175
|
}
|
|
182
176
|
}
|
|
183
|
-
async
|
|
184
|
-
await this.
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
177
|
+
async recomputeByOccurrenceIds(occurrenceIds) {
|
|
178
|
+
return await this.runSerial(async () => {
|
|
179
|
+
await this._recomputeByOccurrenceIds(occurrenceIds);
|
|
180
|
+
});
|
|
181
|
+
}
|
|
182
|
+
async _recomputeLastWindow() {
|
|
183
|
+
const today = new Date();
|
|
184
|
+
const start = plusDays(today, -Math.max(1, this.config.recomputeWindowDays - 1));
|
|
185
|
+
const startKey = ymd(start);
|
|
186
|
+
const endKey = ymd(today);
|
|
187
|
+
console.log(`🎮 [GamificationPlugin] Recomputing ${this.config.recomputeWindowDays} days (${startKey} → ${endKey})`);
|
|
188
|
+
for (let i = 0; i < this.config.recomputeWindowDays; i++) {
|
|
189
|
+
const d = new Date(today);
|
|
190
|
+
d.setDate(d.getDate() - i);
|
|
191
|
+
await this.recomputeDay(d);
|
|
190
192
|
}
|
|
191
|
-
|
|
193
|
+
try {
|
|
194
|
+
await this._recomputeLevelsToday();
|
|
195
|
+
}
|
|
196
|
+
catch (e) {
|
|
197
|
+
console.warn('⚠️ [GamificationPlugin] Failed to recompute levels after adherence backfill:', e);
|
|
198
|
+
}
|
|
199
|
+
console.log('🎮 [GamificationPlugin] Recompute complete');
|
|
192
200
|
}
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
201
|
+
requestFullRecompute() {
|
|
202
|
+
this.fullRecomputeRequested = true;
|
|
203
|
+
if (this.fullRecomputeInFlight)
|
|
204
|
+
return this.fullRecomputeInFlight;
|
|
205
|
+
this.fullRecomputeInFlight = this.runSerial(async () => {
|
|
206
|
+
while (this.fullRecomputeRequested) {
|
|
207
|
+
this.fullRecomputeRequested = false;
|
|
208
|
+
await this._recomputeLastWindow();
|
|
209
|
+
}
|
|
210
|
+
}).finally(() => {
|
|
211
|
+
this.fullRecomputeInFlight = null;
|
|
212
|
+
});
|
|
213
|
+
return this.fullRecomputeInFlight;
|
|
214
|
+
}
|
|
215
|
+
async getDayAdherence(dateLocal) {
|
|
216
|
+
return await this.runSerial(async () => {
|
|
217
|
+
await this.ensureSchema();
|
|
218
|
+
const key = ymd(dateLocal);
|
|
219
|
+
let row = await this.storage.getFirstAsync('SELECT * FROM adherence_daily WHERE date_local = ?', [key]);
|
|
204
220
|
if (!row) {
|
|
205
|
-
await this.recomputeDay(
|
|
221
|
+
await this.recomputeDay(dateLocal);
|
|
206
222
|
row = await this.storage.getFirstAsync('SELECT * FROM adherence_daily WHERE date_local = ?', [key]);
|
|
207
223
|
}
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
224
|
+
return row ? this.mapAdherenceRow(row) : { date: key, startISO: '', endISO: '', total: 0, done: 0, skipped: 0, pending: 0, percent: -1 };
|
|
225
|
+
});
|
|
226
|
+
}
|
|
227
|
+
async getAdherenceRange(startLocal, endLocal) {
|
|
228
|
+
return await this.runSerial(async () => {
|
|
229
|
+
return await this._getAdherenceRangeNoSerial(startLocal, endLocal);
|
|
230
|
+
});
|
|
212
231
|
}
|
|
213
232
|
async getCurrentLevelsState() {
|
|
214
|
-
await this.
|
|
215
|
-
|
|
233
|
+
return await this.runSerial(async () => {
|
|
234
|
+
await this.ensureSchema();
|
|
235
|
+
return await this.recomputeLevelsDay(new Date());
|
|
236
|
+
});
|
|
216
237
|
}
|
|
217
238
|
async recomputeLevelsToday() {
|
|
239
|
+
return await this.runSerial(async () => {
|
|
240
|
+
return await this._recomputeLevelsToday();
|
|
241
|
+
});
|
|
242
|
+
}
|
|
243
|
+
async _recomputeLevelsToday() {
|
|
218
244
|
return await this.recomputeLevelsDay(new Date());
|
|
219
245
|
}
|
|
220
246
|
async recomputeLevelsDay(dateLocal) {
|
|
221
247
|
await this.ensureSchema();
|
|
222
248
|
const start = plusDays(dateLocal, -this.config.streakCalculationWindowDays);
|
|
223
249
|
const end = dateLocal;
|
|
224
|
-
const days = await this.
|
|
250
|
+
const days = await this._getAdherenceRangeNoSerial(start, end);
|
|
225
251
|
const streak = (0, levelsEngine_1.computeSoftStreak)(days, dateLocal, this.config.streakThresholdPercent);
|
|
226
252
|
let lvl = (0, levelsEngine_1.getLevelForStreak)(streak, this.config.levels);
|
|
227
253
|
const key = ymd(dateLocal);
|
|
@@ -307,7 +333,30 @@ class GamificationPlugin {
|
|
|
307
333
|
async backfill(daysBack = 90) {
|
|
308
334
|
const today = new Date();
|
|
309
335
|
const start = plusDays(today, -Math.max(1, daysBack));
|
|
310
|
-
await this.
|
|
336
|
+
await this.runSerial(async () => {
|
|
337
|
+
await this.recomputeRange(start, today);
|
|
338
|
+
await this._recomputeLevelsToday();
|
|
339
|
+
});
|
|
340
|
+
}
|
|
341
|
+
async _getAdherenceRangeNoSerial(startLocal, endLocal) {
|
|
342
|
+
await this.ensureSchema();
|
|
343
|
+
const startKey = ymd(startLocal);
|
|
344
|
+
const endKey = ymd(endLocal);
|
|
345
|
+
const rows = await this.storage.getAllAsync('SELECT * FROM adherence_daily WHERE date_local BETWEEN ? AND ? ORDER BY date_local ASC', [startKey, endKey]);
|
|
346
|
+
const byKey = new Map(rows.map(r => [r.date_local, r]));
|
|
347
|
+
const result = [];
|
|
348
|
+
let cur = new Date(startLocal.getTime());
|
|
349
|
+
while (cur <= endLocal) {
|
|
350
|
+
const key = ymd(cur);
|
|
351
|
+
let row = byKey.get(key);
|
|
352
|
+
if (!row) {
|
|
353
|
+
await this.recomputeDay(cur);
|
|
354
|
+
row = await this.storage.getFirstAsync('SELECT * FROM adherence_daily WHERE date_local = ?', [key]);
|
|
355
|
+
}
|
|
356
|
+
result.push(this.mapAdherenceRow(row));
|
|
357
|
+
cur = plusDays(cur, 1);
|
|
358
|
+
}
|
|
359
|
+
return result;
|
|
311
360
|
}
|
|
312
361
|
mapAdherenceRow(row) {
|
|
313
362
|
if (!row) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GamificationPlugin.js","sourceRoot":"","sources":["../../../src/plugins/gamification/GamificationPlugin.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"GamificationPlugin.js","sourceRoot":"","sources":["../../../src/plugins/gamification/GamificationPlugin.ts"],"names":[],"mappings":"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"}
|