Kundenansicht P6: Zusage-Mails K42 und K43 für Webshop- und Buchungskalender-Anfrage ohne Preis

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
ClaudeandClaude Sonnet 5.5 committed 2026-10-16 16:56:52 +00:00
1 parent bb1efa5c9e
commit 9a3ce7c8bf
10 files changed
+205 -7

No files matched your search

+11 -1
View File
@@ -2,6 +2,8 @@ import { config } from '../../config.js'
import { withLocks } from '../keyedLock.js'
import { sendAdminNotice, sendCustomerMail } from '../mailer.js'
import { assertOwnProject, customerOf, ensureFeatureDoc, getFeatureDoc } from '../siteFeatures.js'
import { aboModellFuerKunde } from '../aboFunktionen.js'
import { anfrageEntschiedenMail } from '../aboFunktionenMails.js'
import { unterkunftFuerKunde } from './schalter.js'
import { ladeEinstellungen, speichereEinstellungen } from './speicher.js'
@@ -268,7 +270,11 @@ export async function entscheideAnfrage({ customerId, projectId, entscheidung, b
return { anfrage: anfrageAnsicht(gespeichert), mailFehler }
}
/** K34 an den Kunden; true = gesendet. Jeder Fehler wird nur geloggt (die Entscheidung ist gespeichert). */
/**
* K34 an den Kunden; true = gesendet. Jeder Fehler wird nur geloggt (die Entscheidung ist gespeichert). Fuer Kunden der neuen Ansicht
* (aboModellFuerKunde, Kundenansicht P6) geht stattdessen K43 ohne Preis und ohne "bestellen"; ist das nicht lesbar, geht keine Mail raus
* (lieber keine als eine mit Preis, die Antwort traegt mailFehler).
*/
async function sendeEntscheidung({ customerId, projectId, project, angenommen, begruendung }) {
try {
const kunde = await customerOf(customerId)
@@ -276,6 +282,10 @@ async function sendeEntscheidung({ customerId, projectId, project, angenommen, b
console.warn(`[unterkunft] K34 nicht gesendet: Kunde ${customerId} ohne E-Mail-Adresse`)
return false
}
if (await aboModellFuerKunde(customerId)) {
await _versand.kunde(kunde.email, anfrageEntschiedenMail({ kunde, projekt: project?.projectName || projectId, key: 'unterkunft', projectId, angenommen, begruendung }))
return true
}
await _versand.kunde(kunde.email, {
template: 'K34',
values: {