Finanzen: Warnung vor Ablauf des Bankzugangs (T18) und Abruf-Jobs
checkBankConsent mailt bei 30, 14, 3 Tagen und am Ablauftag (Berliner Kalendertage), merkt sich die erreichten Stufen in warnedThresholds und holt eine nicht versandte Mail beim naechsten Lauf nach. Jobs nur mit Enable Banking: Abruf nach 2 Minuten und alle 6 Stunden, Pruefung nach 3 Minuten und taeglich. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
cba14ed0f0
commit
7b35ed67a5
5 files changed
+375
-5
No files matched your search
@@ -6,6 +6,7 @@ import { config, assertServerConfig, WOMS_DATABASE_ID } from './config.js'
|
||||
import { verifyDatabaseAccess } from './services/appwriteAdmin.js'
|
||||
import { syncPreviewTlsOnStartup } from './services/previewDeploy.js'
|
||||
import { runReconcile } from './services/previewReconcile.js'
|
||||
import { checkBankConsent, syncBank } from './services/finance/bankSync.js'
|
||||
import { requireSession, sessionMiddleware } from './middleware/session.js'
|
||||
import authRoutes from './routes/auth.js'
|
||||
import projectsRoutes from './routes/projects.js'
|
||||
@@ -186,6 +187,23 @@ const server = app.listen(config.port, '0.0.0.0', () => {
|
||||
setTimeout(repoAssign, 60 * 1000).unref()
|
||||
setInterval(repoAssign, 10 * 60 * 1000).unref()
|
||||
|
||||
// Finanzen (nur wenn Enable Banking eingerichtet ist): Bankabruf 2 Minuten nach dem Start und alle 6 Stunden,
|
||||
// Warnung vor dem Ablauf des Bankzugangs 3 Minuten nach dem Start und taeglich. syncBank wirft nie, meldet einen
|
||||
// Fehlschlag aber im Ergebnis; die Meldung enthaelt keine Sitzungs- oder Schluesselangaben.
|
||||
if (config.enableBanking.enabled) {
|
||||
const bankSync = () =>
|
||||
syncBank()
|
||||
.then((r) => !r.ok && console.warn('[finanzen] Bankabruf fehlgeschlagen:', r.error))
|
||||
.catch((err) => console.warn('[finanzen] Bankabruf fehlgeschlagen:', err.message))
|
||||
setTimeout(bankSync, 2 * 60 * 1000).unref()
|
||||
setInterval(bankSync, 6 * 60 * 60 * 1000).unref()
|
||||
|
||||
const bankConsent = () =>
|
||||
checkBankConsent().catch((err) => console.warn('[finanzen] Prüfung des Bankzugangs fehlgeschlagen:', err.message))
|
||||
setTimeout(bankConsent, 3 * 60 * 1000).unref()
|
||||
setInterval(bankConsent, 24 * 60 * 60 * 1000).unref()
|
||||
}
|
||||
|
||||
// Preview-Runner: Zustaende mit dem Runner abgleichen (alle 2 Minuten, nur wenn eingeschaltet)
|
||||
if (config.previewRunner.enabled) {
|
||||
setTimeout(runReconcile, 30 * 1000).unref()
|
||||
|
||||
Reference in new issue
Block a user