Kundenansicht P6: Abo-Ende-Abgleich im Tagesjob
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
7a03f073bc
commit
db47f13510
3 files changed
+94
No files matched your search
@@ -299,3 +299,25 @@ export async function gleicheAboFunktionenAb(now = new Date()) {
|
||||
}
|
||||
return erg
|
||||
}
|
||||
|
||||
let tagesJobLaeuft = false
|
||||
|
||||
/**
|
||||
* Tagesjob (server/index.js): der Abo-Ende-Abgleich ohne Ueberlappung. Laeuft noch ein Lauf (Merker im Speicher des Prozesses, im finally
|
||||
* geloescht), kehrt der Aufruf sofort mit { uebersprungen: true } zurueck. Wirft nie: ein unerwarteter Fehler steht im Log, das Ergebnis
|
||||
* ist { fehler: 1 }. Das Log nennt weder Namen noch Adressen.
|
||||
* @param {Date} [now]
|
||||
* @returns {Promise<ReturnType<typeof gleicheAboFunktionenAb> | { uebersprungen: true } | { fehler: 1 }>}
|
||||
*/
|
||||
export async function aboFunktionenTagesJob(now = new Date()) {
|
||||
if (tagesJobLaeuft) return { uebersprungen: true }
|
||||
tagesJobLaeuft = true
|
||||
try {
|
||||
return await gleicheAboFunktionenAb(now)
|
||||
} catch (err) {
|
||||
console.error(`[abo-funktionen] Tagesjob fehlgeschlagen: ${fehlerText(err)}`)
|
||||
return { fehler: 1 }
|
||||
} finally {
|
||||
tagesJobLaeuft = false
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user