diff --git a/docs/07-anleitung-benutzer.md b/docs/07-anleitung-benutzer.md index 3e998b8..fa13bcb 100644 --- a/docs/07-anleitung-benutzer.md +++ b/docs/07-anleitung-benutzer.md @@ -988,7 +988,8 @@ bei allen an). Ist er gesetzt, bekommt der Berater eine Mail von crm@perinco.de, sobald er in der Akquise einem Projekt zugeordnet wird - beim Anlegen und auch, wenn er später beim Bearbeiten dazukommt. Wer schon zugeordnet war, bekommt beim erneuten Speichern keine zweite Mail. Die Mail -enthält die Projektdaten und den Link zur Ausschreibung; eine Antwort darauf +sagt, dass der Berater auf das Projekt beworben wurde, und enthält die +Projektdaten samt ausgeschriebenem Link zum Projekt; eine Antwort darauf geht an den, der das Projekt eingetragen hat. Ohne hinterlegte Adresse geht nichts heraus, der Haken zeigt dann einen Hinweis. diff --git a/docs/11-postfach.md b/docs/11-postfach.md index 980c358..2fb3988 100644 --- a/docs/11-postfach.md +++ b/docs/11-postfach.md @@ -393,8 +393,10 @@ Fremdschlüssel nicht. Seit 21.10.2026 verschickt das CRM selbst Mails - bisher nur eine Sorte: Wird in der Akquise ein Projekt eingetragen und dabei ein Berater ausgewählt, bekommt -dieser eine Mail mit Titel, Endkunde, Anbieter, Tagessatz, Zeitraum, Link zur -Ausschreibung und Beschreibung (gekürzt auf 1500 Zeichen). +dieser eine Mail: Betreff „Du wurdest beworben: ‹Titel›", im Text „wir haben +dich auf folgendes Projekt beworben", dazu Titel, Endkunde, Anbieter, Kanal, +Tagessatz, Zeitraum, der **Link zum Projekt** ausgeschrieben, wer beworben hat +und die Beschreibung (gekürzt auf 1500 Zeichen). ```mermaid sequenceDiagram diff --git a/server/src/acquisitionNotify.js b/server/src/acquisitionNotify.js index c570d1c..da9b17d 100644 --- a/server/src/acquisitionNotify.js +++ b/server/src/acquisitionNotify.js @@ -65,14 +65,20 @@ export function buildMessage(acquisition, consultantName) { ['Projektpreis', formatEuro(acquisition.fixed_price)], ['Zeitraum', period || null], ['Laufzeit', acquisition.duration_days ? `${acquisition.duration_days} Tage` : null], - ['Eingetragen von', acquisition.created_by_name], + ['Link zum Projekt', acquisition.link], + ['Beworben von', acquisition.created_by_name], ].filter(([, value]) => value !== null && value !== undefined && value !== ''); + // Der Link steht ausgeschrieben da - auch wer die Mail als Text liest, sieht ihn. + const cell = (label, value) => + label === 'Link zum Projekt' + ? `${escapeHtml(value)}` + : escapeHtml(value); const table = rows .map( ([label, value]) => `
Hallo ${escapeHtml(firstName)},
`, - 'in der Akquise wurde ein neues Projekt eingetragen und dir zugeordnet:
', + 'wir haben dich auf folgendes Projekt beworben:
', `${escapeHtml(description)}
` : '', @@ -99,7 +102,7 @@ export function buildMessage(acquisition, consultantName) { '