refactor(admin): split vvt-baseline-catalog into domain barrel
Extracted 630-LOC monolith into 6 domain files (all <200 LOC) plus a 29-line barrel re-exporting everything for zero breaking-change impact. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
67
admin-compliance/lib/sdk/vvt-baseline-catalog/sales-crm.ts
Normal file
67
admin-compliance/lib/sdk/vvt-baseline-catalog/sales-crm.ts
Normal file
@@ -0,0 +1,67 @@
|
||||
/**
|
||||
* VVT Baseline-Katalog — Sales / CRM
|
||||
*/
|
||||
|
||||
import type { BaselineTemplate } from './types'
|
||||
|
||||
export const SALES_CRM_VVT_TEMPLATES: BaselineTemplate[] = [
|
||||
{
|
||||
templateId: 'sales-kundenverwaltung',
|
||||
businessFunction: 'sales_crm',
|
||||
name: 'Kundenverwaltung (CRM)',
|
||||
description: 'Verwaltung von Kundenbeziehungen, Kontakten und Vertriebsaktivitaeten',
|
||||
purposes: ['Kundenbetreuung', 'Vertragserfuellung', 'Vertriebssteuerung'],
|
||||
legalBases: [
|
||||
{ type: 'CONTRACT', description: 'Kundenvertrag', reference: 'Art. 6 Abs. 1 lit. b DSGVO' },
|
||||
{ type: 'LEGITIMATE_INTEREST', description: 'Kundenbindung', reference: 'Art. 6 Abs. 1 lit. f DSGVO' },
|
||||
],
|
||||
dataSubjectCategories: ['CUSTOMERS', 'PROSPECTIVE_CUSTOMERS', 'BUSINESS_PARTNERS'],
|
||||
personalDataCategories: ['NAME', 'CONTACT', 'ADDRESS', 'CONTRACT_DATA', 'COMMUNICATION_DATA'],
|
||||
recipientCategories: [
|
||||
{ type: 'INTERNAL', name: 'Vertrieb' },
|
||||
{ type: 'INTERNAL', name: 'Kundenservice' },
|
||||
],
|
||||
retentionPeriod: { duration: 3, durationUnit: 'YEARS', description: '3 Jahre nach letzter Interaktion (Verjaeherung)', legalBasis: 'BGB § 195', deletionProcedure: 'Loeschung nach Inaktivitaetsfrist' },
|
||||
tomDescription: 'Zugriffskontrolle nach Kundengruppen, Verschluesselung, regemaessige Datenpflege',
|
||||
structuredToms: {
|
||||
accessControl: ['RBAC nach Vertriebsgebiet', 'Kundendaten-Owner'],
|
||||
confidentiality: ['Verschluesselung in CRM', 'VPN fuer Fernzugriff'],
|
||||
integrity: ['Aenderungshistorie im CRM'],
|
||||
availability: ['Cloud-CRM mit SLA 99.9%'],
|
||||
separation: ['Mandantentrennung'],
|
||||
},
|
||||
typicalSystems: ['CRM-System', 'E-Mail', 'Telefon'],
|
||||
protectionLevel: 'MEDIUM',
|
||||
dpiaRequired: false,
|
||||
tags: ['sales', 'crm', 'kunden', 'vertrieb'],
|
||||
},
|
||||
{
|
||||
templateId: 'sales-vertriebssteuerung',
|
||||
businessFunction: 'sales_crm',
|
||||
name: 'Vertriebssteuerung',
|
||||
description: 'Analyse von Vertriebskennzahlen und Pipeline-Management',
|
||||
purposes: ['Vertriebsoptimierung', 'Umsatzplanung'],
|
||||
legalBases: [
|
||||
{ type: 'LEGITIMATE_INTEREST', description: 'Unternehmenssteuerung', reference: 'Art. 6 Abs. 1 lit. f DSGVO' },
|
||||
],
|
||||
dataSubjectCategories: ['CUSTOMERS', 'PROSPECTIVE_CUSTOMERS'],
|
||||
personalDataCategories: ['NAME', 'CONTRACT_DATA', 'COMMUNICATION_DATA'],
|
||||
recipientCategories: [
|
||||
{ type: 'INTERNAL', name: 'Vertriebsleitung' },
|
||||
{ type: 'INTERNAL', name: 'Geschaeftsfuehrung' },
|
||||
],
|
||||
retentionPeriod: { duration: 3, durationUnit: 'YEARS', description: '3 Jahre', legalBasis: 'Berechtigtes Interesse', deletionProcedure: 'Anonymisierung nach Ablauf' },
|
||||
tomDescription: 'Aggregierte Auswertungen wo moeglich, Zugriffsbeschraenkung auf Fuehrungsebene',
|
||||
structuredToms: {
|
||||
accessControl: ['Nur Management'],
|
||||
confidentiality: ['Aggregierte Reports bevorzugt'],
|
||||
integrity: ['Nachvollziehbare Berechnungen'],
|
||||
availability: ['Dashboard-Verfuegbarkeit'],
|
||||
separation: ['Reporting getrennt von Operativdaten'],
|
||||
},
|
||||
typicalSystems: ['CRM-System', 'BI-Tool'],
|
||||
protectionLevel: 'LOW',
|
||||
dpiaRequired: false,
|
||||
tags: ['sales', 'vertrieb', 'reporting'],
|
||||
},
|
||||
]
|
||||
Reference in New Issue
Block a user