Kundenansicht P5: Kundenart-Helfer und Felder in /api/auth/me
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
c5b1333953
commit
8d3eb73db7
3 files changed
+76
No files matched your search
@@ -42,6 +42,7 @@ import {
|
||||
import { logViewAction } from '../services/customerViewLog.js'
|
||||
import { isStaffAccount } from '../services/staffLabels.js'
|
||||
import { neueAnsichtFuerSession } from '../services/kundenansicht/schalter.js'
|
||||
import { kundenartGespeichert, kundenartWirksam } from '../services/kundenart.js'
|
||||
|
||||
const router = Router()
|
||||
|
||||
@@ -56,6 +57,8 @@ function sanitizeCustomer(customer) {
|
||||
location: customer.location || '',
|
||||
customerStatus: customer.customerStatus || '',
|
||||
portalAccessEnabled: Boolean(customer.portalAccessEnabled),
|
||||
kundenart: kundenartGespeichert(customer),
|
||||
kundenartWirksam: kundenartWirksam(customer),
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -0,0 +1,21 @@
|
||||
import { KUNDENARTEN } from './auftraege/konstanten.js'
|
||||
|
||||
/**
|
||||
* Kundenart (V4, Spec E4): Der Server ist die einzige Quelle; er nimmt die Kundenart nie vom Client.
|
||||
* Gespeichert wird sie am Kundendokument (customers.kundenart). Vergleich exakt: kein Trimmen, kein Kleinschreiben.
|
||||
* Eine leere oder unbekannte Kundenart gilt ueberall als privat (kundenartWirksam).
|
||||
*/
|
||||
export { KUNDENARTEN }
|
||||
|
||||
/** 'unternehmen' | 'privat' | '' (leer, unbekannt, kein Dokument) */
|
||||
export function kundenartGespeichert(customerDoc) {
|
||||
const wert = customerDoc?.kundenart
|
||||
return KUNDENARTEN.includes(wert) ? wert : ''
|
||||
}
|
||||
|
||||
/** 'unternehmen' | 'privat'; leer oder unbekannt gilt als 'privat' */
|
||||
export function kundenartWirksam(customerDoc) {
|
||||
return kundenartGespeichert(customerDoc) || 'privat'
|
||||
}
|
||||
|
||||
export const NUR_BETRIEB_TEXT = 'Diese Funktion gibt es nur für Betriebe. Schreib uns im Chat, wenn du Fragen dazu hast.'
|
||||
Reference in new issue
Block a user