# Dokumentation: Niederlassungen der Stadtbote GmbH

## Phoenix-Portal -- Konfiguration und Abweichungen pro Niederlassung

---

## 1. Systemarchitektur

Das Phoenix-Portal ist eine **Multi-Tenant PHP-Anwendung** zur Auftragsannahme und -vermittlung in der Logistikbranche. Jede Niederlassung (Headquarter/HQ) wird durch eine eindeutige `hq_id` identifiziert und teilt sich eine gemeinsame Codebasis mit individuellen Konfigurationsparametern.

### Konfigurationsebenen (Hierarchie)

```
1. Global         (hq_id=0, emp_id=0)     -- Systemweite Standardwerte
2. Niederlassung  (hq_id=N, emp_id=0)     -- HQ-spezifische Overrides
3. Mitarbeiter    (hq_id=N, emp_id=M)     -- Individuelle Einstellungen
```

Die Funktion `getParameterValue($empId, $key, $hqId)` in `include/dbglobal.inc.php` liest Parameter in dieser Reihenfolge: Mitarbeiter -> Niederlassung -> Global.

### Kernkomponenten

| Datei | Funktion |
|---|---|
| `include/dbglobal.inc.php` | Parameter-Verwaltung (`getParameterValue`, `setParameterValue`, `defineGlobalParameters`) |
| `include/auth.inc.php` | Authentifizierung und HQ-Zugriffskontrolle |
| `admin/hq_admin.php` | Admin-Oberflaeche "NIEDERLASSUNGEN" |
| `include/services_func.inc.php` | Preisberechnung pro HQ |
| `include/mcglobal.inc.php` | Datenbankfeld-Definitionen mit HQ-Bezug |

### Datenbanktabellen mit HQ-Bezug

| Tabelle | HQ-Felder | Zweck |
|---|---|---|
| `headquarters` | `hq_id`, `hq_mnemonic`, `hq_name` | Niederlassungsdefinitionen |
| `mandatorheadquarters` | `md_id`, `hq_id` | Zuordnung Mandant zu Niederlassung |
| `parameter` | `par_key`, `hq_id`, `emp_id`, `par_value` | Konfigurationsparameter |
| `job` | `hq_id_exec`, `hq_id_dispo`, `hq_id_sales` | Auftragszuordnung (Ausfuehrung, Disposition, Vertrieb) |
| `customer` | `hq_id` | Kundenzuordnung |
| `courier` | `hq_id` | Kurierzuordnung |
| `tour` | `hq_id_dispo` | Tourenzuordnung |
| `servicehistory` | `hq_id` | Preistabellen pro HQ |
| `serviceplzhistory` | `hq_id` | PLZ-basierte Preise pro HQ |
| `serviceplzareahistory` | `hq_id` | PLZ-Gebiet-Preise pro HQ |

---

## 2. Uebersicht der Niederlassungen

| hq_id | Kuerzel | HQ_INSTANCE | Stadt | MANDATOR_PREFIX | EXPORT_HQ_KEY |
|-------|---------|-------------|-------|-----------------|---------------|
| 0 | -- | (global) | -- | -- | -- |
| 101 | HT_HB | HT_HB | Bremen | HTHB | 003 |
| 102 | HT_HH | HT_HH | Hamburg | HTHH | 001 |
| 103 | HT_B | HT_B | Berlin | HTB | 007 |
| 104 | HT_H | HT_H | Hannover | HTH | 006 |
| 105 | HT_F | HT_F | Frankfurt | HTF | 002 |
| 106 | HT_DD | HT_DD | Dresden | HTDD | 005 |
| 107 | HT_E | HT_E | Essen | HTE | 009 |
| 108 | HT_L | HT_L | Leipzig | HTL | 008 |
| 109 | HT_M | HT_M | Muenchen | HTM | 013 |
| 110 | HT_N | HT_N | Nuernberg | HTN | 023 |
| 111 | HT_S | HT_S | Stuttgart | HTS | 014 |
| 112 | HT_K | HT_K | Koeln | HTK | 015 |
| 203 | HT_LG | HT_LG | Logistics (Zentrale) | HTLG | 010 |

Alle Niederlassungen teilen: `SRV_INSTANCE = HT1`, `PATH_DOCROOT = /home/www/hansetrans`

---

## 3. Globale Einstellungen (fuer alle NL gleich)

### 3.1 System & Sicherheit

| Parameter | Wert | Beschreibung |
|---|---|---|
| `TA_STATUS` | 1 | Transaktionsmodus aktiviert (InnoDB) |
| `AD_STATUS` | 1 | Adressprufung aktiv |
| `MG_STATUS` | 0 | M&G-Server Adressprufung deaktiviert |
| `LOG_DB` | 1 | Datenbank-Logging aktiv |
| `HTTP_VARS_SEC_STATE` | 1 | HTTP-Parameter-Verschluesselung aktiv |
| `HTTP_VARS_SEC_SEQ` | __ | Verschluesselungs-Identifikator |
| `ENCRYPT_EXPORTDATA` | 0 | Export-Datenverschluesselung deaktiviert |
| `ENCRYPT_FILEEXTENSION` | gpg | Verschluesselungs-Dateiendung |

### 3.2 Automailer

| Parameter | Wert | Beschreibung |
|---|---|---|
| `AUTOMAILER_ENABLED` | 1 | Automatischer Mailversand aktiv |
| `AUTOMAILER_STARTTIME_IN_DAYS` | 3 | Mails fuer Auftraege der letzten 3 Tage |
| `AUTOMAILER_LOGFILE` | ../log/automailer.log | Logdatei-Pfad |
| `AUTOMAILER_SLEEP_TIME` | 5 | Wartezeit zwischen Mails (Sekunden) |

### 3.3 Autoranking (Kurierzuweisung)

| Parameter | Wert | Beschreibung |
|---|---|---|
| `AUTORANKING_ASSIGNMENT_ENABLED` | 0 | Automatische Zuweisung deaktiviert |
| `AUTORANKING_REVOCATION_ENABLED` | 1 | Ruecknahme aktiviert |
| `AUTORANKING_REVOKETIME_IN_MINUTES` | 1 | Ruecknahme nach 1 Min. (automat.) |
| `AUTORANKING_REVOKETIME_MANUELL_IN_MINUTES` | 3 | Ruecknahme nach 3 Min. (manuell) |
| `AUTORANKING_MAXNUMBER_OF_CHALLENGES` | 2 | Max. Anfragen pro Kurier |
| `AUTORANKING_NUMBER_OF_ITERATIONS` | 2 | Anzahl Iterationen |
| `AUTORANKING_NEIGHBOUR_LEVEL` | 1 | Nachbargebiete pruefen: 1 Ebene |
| `AUTORANKING_VEHICLE_LKW` | 10 | Fahrzeugtyp ab dem LKW-Jobs vergeben werden |
| `RANKING_CR2CRVH_MULTI_RELATION` | 1 | Kurier-Fahrzeug-Pflichtverknuepfung |
| `RANKING_FAVOURED_COURIER_FOR_PAYER` | 1 | Bevorzugte Kuriere fuer Zahler pruefen |
| `RANKING_FAVOURED_COURIER_FOR_STATION` | 0 | Bevorzugte Kuriere fuer Stationen nicht pruefen |
| `RANKING_FAVOURED_COURIER_AREA_RESTRICTION` | 0 | Keine Gebietseinschraenkung fuer bevorzugte Kuriere |

### 3.4 Geo & Lokalisierung

| Parameter | Wert | Beschreibung |
|---|---|---|
| `GEO_EARTH_RADIUS` | 6371.0 | Erdradius in km (WGS84 Mittelwert) |
| `LOCATING_MODE` | 0 | Polygon-Modus (Standard) |
| `MAXIMUM_SEARCH_RADIUS` | 20 | Suchradius in km |
| `LOCATING_LBS_SERVER` | 139.7.25.166 | LBS-Server IP |

### 3.5 Auftragserfassung (UI)

| Parameter | Wert | Beschreibung |
|---|---|---|
| `MASK_CALCULATOR` | 1 | Preisrechner aktiviert |
| `MASK_CALCULATOR_SRV` | 1 | Services im Rechner waehlbar |
| `MASK_MANUAL_DISPOSITION` | 1 | Manuelle Disposition als Standard |
| `MASK_COMMISSION_NO` | 1 | Kommissionsnummer immer aktiviert |
| `MASK_CASH_PAYER_SELECT` | 1 | Barzahler muss gewaehlt werden |
| `MASK_ASK_DEFAULTPAYER_CHANGE` | 1 | Nachfrage bei Zahleraenderung |
| `MASK_COURIERDETAILS_TARGET` | 1 | Kurierdetails in separatem Fenster |
| `MASK_CUSTOMERDETAILS_TARGET` | 1 | Kundendetails in separatem Fenster |
| `MASK_LOCKTIME_TIMEOUT` | 5 | Sperr-Timeout: 5 Minuten |
| `MASK_JOBLIST_BROWSE_MAX` | 100 | Max. 100 Zeilen in Auftragsliste |
| `MASK_JOBLIST_DEFAULTLIST` | 8,9,0,1 | Standard-Auftragslisten: Vermittlung, Abgeholt, Offen, Zugewiesen |
| `MASK_DATE_PLUSOFFSETDAYS` | 2 | Datumsoffset: 2 Tage voraus |
| `MASK_COURIER_FREETIME_MINUTES` | 30 | Kurier als frei: 30 Min. vor Auftragszeit |
| `MASK_COURIER_NEWBIE_TIME` | 30 | Kurier als Neuling markiert: 30 Tage |
| `LATEST_TAKETIME_IN_MINUTES` | 30 | Standard-Uebernahmezeit: 30 Min. |

### 3.6 Rechnungswesen

| Parameter | Wert | Beschreibung |
|---|---|---|
| `INV_MAXCOLS` | 50 | Max. Spalten Rechnungstext (Anzeige) |
| `INV_MAXCOLS_EXPORT` | 70 | Max. Spalten Rechnungstext (Export) |
| `INV_JB_CR_PRICE` | 1 | Fuhrlohn in Rechnungsmodul anzeigen |
| `INV_JB_INVOICE_CR` | 1 | Separate Kurierrechnung generieren |
| `INV_PRINT_DISCOUNT` | 1 | Rabatt auf Rechnung drucken |
| `INV_PRINT_REMARK` | 0 | Bemerkung nicht auf Rechnung drucken |
| `JB_PAYMODE_CASH` | BZ | Barzahlung-Kuerzel |
| `JB_TAX_RATE_SIGN` | OM | Standard-Steuersatz-Kennzeichen |

### 3.7 FTP & Export-Pfade

| Parameter | Wert | Beschreibung |
|---|---|---|
| `FTP_SERVER` | 172.16.0.104 | Interner FTP-Server |
| `FTP_USER` | sap | FTP-Benutzer |
| `FTP_UPLOADPATH` | /stadtbote/ | Upload-Verzeichnis |
| `EXPORT_PATH` | ../export/download/ | Export-Dateipfad |
| `EXPORT_FILES_ON_SERVER` | 100 | Max. Export-Dateien (HQ) |
| `EXPORT_FILES_ON_SERVER_CUSTOMER` | 10 | Max. Export-Dateien (Kunde) |

### 3.8 Sonstige globale Einstellungen

| Parameter | Wert | Beschreibung |
|---|---|---|
| `COUNTRY_FON_PREFIX` | 49 | Laendervorwahl Deutschland |
| `ZIPCODE_LENGTH` | 5 | PLZ-Laenge |
| `ZIPCODEAREA_PADLENGTH` | 4 | PLZ-Gebiet-Laenge (z.B. "0057") |
| `MODE_INTERMEDIATION` | 2 | Vermittlungsmodus: PLZ-Gebiet |
| `MESSAGE_MAX_BODY_LENGTH` | 200 | Max. Nachrichtenlaenge |
| `MASK_MARKUP_MODE` | 2 | Kraftstoffzuschlag-Modus: HT |
| `MANDATOR_SERVICE_ENABLED` | 1 | Service-Modul aktiviert |
| `MANDATOR_SERVICE2_ENABLED` | 1 | Service2-Modul aktiviert |
| `MD_GLOBAL_SHORTNAME` | HTG | Globales Mandantenkuerzel |
| `MASTER_PREFIX` | HT | Master-Praefix |
| `FRAMEWORK_USED` | 1 | Framework aktiviert |

---

## 4. Abweichungen pro Niederlassung

### 4.1 Kostenstellen (CSC_ID_PAYER)

| NL | Stadt | CSC_ID_PAYER_CASH | CSC_ID_PAYER_EXTERN | CSC_ID_PAYER_CALCULATOR |
|----|-------|-------------------|---------------------|------------------------|
| 101 | Bremen | 5688 | 44539 | individuell |
| 102 | Hamburg | 7797 | 44540 | individuell |
| 103 | Berlin | 6758 | 44541 | individuell |
| 104 | Hannover | 7402 | 44542 | individuell |
| 105 | Frankfurt | 9286 | 44543 | individuell |
| 106 | Dresden | 6533 | 44544 | individuell |
| 107 | Essen | 9374 | 44545 | individuell |
| 108 | Leipzig | 9117 | 44546 | individuell |
| 109 | Muenchen | 9750 | 44547 | individuell |
| 110 | Nuernberg | 10041 | 44548 | individuell |
| 111 | Stuttgart | 10142 | 44549 | individuell |
| 112 | Koeln | 55240 | 55241 | individuell |
| 203 | Logistics | 6758* | 44541* | individuell |

*) LG teilt Kostenstellen mit Berlin

### 4.2 EID-Nummernkreise (Kunden/Kuriere/Artikel)

| NL | Stadt | CS_EID_GENERATION | CR_EID_GENERATION | CS_EID_PREFIX | CR_EID_PREFIX | AT_EID_PREFIX |
|----|-------|-------------------|-------------------|---------------|---------------|---------------|
| 101 | Bremen | HTHB64999 | 28800 | HB | HB | HB |
| 102 | Hamburg | HTHH64999 | 28800 | HH | HH | HH |
| 103 | Berlin | HTB64999 | 28800 | B | B | B |
| 104 | Hannover | HTH64999 | 28800 | H | H | H |
| 105 | Frankfurt | HTF64999 | 28800 | F | F | F |
| 106 | Dresden | HTDD64999 | 28800 | DD | DD | DD |
| 107 | Essen | HTE64999 | 28800 | E | E | E |
| 108 | Leipzig | HTL64999 | 28800 | L | L | L |
| 109 | Muenchen | HTM64999 | 28800 | M | M | M |
| 110 | Nuernberg | HTN64999 | 28800 | N | N | N |
| 111 | Stuttgart | HTS64999 | 28800 | S (aber ESL*) | S (aber ES*) | S (aber ES*) |
| **112** | **Koeln** | **HTK79999** | **HTK89999** | HTK | HTK | HTK |
| 203 | Logistics | HTLG64999 | 28800 | LG | LG | LG |

**Abweichung Koeln (112):** Abweichende Nummernkreise (79999 statt 64999, HTK89999 statt 28800). Koeln verwendet einen hoeheren Bereich und alphanumerische Praefixe in der Kurier-EID-Generierung.

### 4.3 E-Mail-Konfiguration

| NL | MAIL_SENDER_ADDRESS | MAIL_BCC_ADDRESS | MAIL_SALUTATION_TEXT |
|----|---------------------|------------------|----------------------|
| 101 | hb.transport@hansetrans.de | hb.transport@hansetrans.de | Ihre HANSETRANS |
| 102 | hh.transport@hansetrans.de | hh.transport@hansetrans.de | Ihre HANSETRANS |
| 103 | b.transport@hansetrans.de | b.transport@hansetrans.de | Ihre HANSETRANS |
| 104 | h.transport@hansetrans.de | h.transport@hansetrans.de | Ihre HANSETRANS |
| 105 | f.transport@hansetrans.de | f.transport@hansetrans.de | Ihre HANSETRANS |
| 106 | dd.transport@hansetrans.de | dd.transport@hansetrans.de | Ihre HANSETRANS |
| 107 | e.transport@hansetrans.de | e.transport@hansetrans.de | Ihre HANSETRANS |
| **108** | **HANSETRANS Leipzig <l.transport@hansetrans.de>** | l.transport@hansetrans.de | Ihre HANSETRANS |
| 109 | m.transport@hansetrans.de | m.transport@hansetrans.de | Ihre HANSETRANS |
| 110 | n.transport@hansetrans.de | n.transport@hansetrans.de | Ihre HANSETRANS |
| 111 | info@es-l.eu* | (leer) | Ihre ES-Logistic* |
| 112 | k.transport@hansetrans.de | k.transport@hansetrans.de | Ihre HANSETRANS |
| 203 | fnl.transport@hansetrans.de | fnl.transport@hansetrans.de | Ihre HANSETRANS |

**Abweichung Leipzig (108):** Verwendet Absendername mit Klammern-Format `HANSETRANS Leipzig <...>` statt nur E-Mail-Adresse.

**Abweichung Stuttgart (111):** Laeuft unter der Marke **ES-Logistic** (eigene Domain `es-l.eu`) statt Hansetrans.

### 4.4 PDA-Lokalisierung

| NL | LOCATING_PDA_ENABLED | LOCATING_PDA_INTERVAL |
|----|---------------------|-----------------------|
| 101 Bremen | 1 (aktiv) | **8,0,9,0** (nur 08:00-09:00) |
| 102 Hamburg | 1 (aktiv) | **0,0,12,13** (00:00-12:13) |
| 103-107, 109-112 | 1 (aktiv) | 0,0,23,59 (ganztaegig) |
| **108 Leipzig** | **0 (deaktiviert)** | 0,0,23,59 |
| 203 Logistics | 0 (deaktiviert) | 0,0,23,59 |

**Abweichungen:**
- **Bremen:** Extrem eingeschraenktes Lokalisierungsfenster (nur 1 Stunde morgens)
- **Hamburg:** Halbtaegiges Fenster bis mittags
- **Leipzig & Logistics:** PDA-Lokalisierung komplett deaktiviert

### 4.5 Max. Stationen pro Tour (MASK_MAXTOUR)

| NL | Wert |
|----|------|
| **102 Hamburg** | **49** |
| **105 Frankfurt** | **49** |
| **109 Muenchen** | **49** |
| Alle anderen | 19 |

Hamburg, Frankfurt und Muenchen erlauben wesentlich mehr Stationen pro Auftrag.

### 4.6 Kundenprovision

| Parameter | Bremen (101) | Hannover (104) | Alle anderen |
|---|---|---|---|
| `JB_EDITBATCH_CS_PROV_ENABLED` | **1** (aktiv) | **1** (aktiv) | 0 (deaktiviert) |
| `MASK_CS_PROV_DEFAULT` | **14.00%** | **10.0%** | 0% |

Nur Bremen und Hannover haben die Kundenprovisionsberechnung aktiviert.

### 4.7 Rechnungseinstellungen (Abweichungen)

| Parameter | Beschreibung | Abweichende NL | Wert | Standard |
|---|---|---|---|---|
| `INV_JB_CR_PRICE_STATIONS` | Stationen im Kurier-Rechnungsmodul | **101 Bremen, 103 Berlin** | **1** (aktiv) | 0 |
| `INV_SHOW_INVOICE_TEXT` | Rechnungstext fuer Kuriere sichtbar | **101 Bremen, 106 Dresden, 108 Leipzig** | **0** (deaktiviert) | 1 |

### 4.8 Auftragsverhalten (Abweichungen)

| Parameter | Beschreibung | Abweichende NL | Wert | Standard |
|---|---|---|---|---|
| `MODE_COPY_JOB_DISPOINFO` | Dispoinfo beim Kopieren ignorieren | **101 Bremen** | **1** | 0 |
| `MASK_JB_TYPE_DEFAULT` | Standard-Auftragstyp | alle NL | 2 (Guetertaxi) | -- |
| `MASK_INVOICE_SIDS_SID` | Spezial-SID fuer Multi-SID | **111 Stuttgart** | **S888** | {Stadt}1888 |

### 4.9 Mail-Footer (Adresse & Kontakt)

Jede Niederlassung hat individuelle Postadresse und Telefonnummern im Mail-Footer. Beispiele:

| NL | Adresse | Telefon |
|----|---------|---------|
| 101 Bremen | Hansetrans Guetertaxi GmbH, Am Wall 175, 28195 Bremen | 0421 39 39 39 |
| 102 Hamburg | Hansetrans Guetertaxi GmbH, Nagelsweg 10, 20097 Hamburg | 040 41 41 41 |
| 103 Berlin | Hansetrans Guetertaxi GmbH, Motzener Str. 6, 12277 Berlin | 030 75 75 75 |
| 111 Stuttgart | ES-Logistic GmbH, Ulmer Strasse 53/1, 73262 Reichenbach | 07153 99 67 353 |

### 4.10 Cron-Benachrichtigungen

Alle Niederlassungen senden Cron-Mails an `mail-cron@assecutor.de`, ergaenzt um standortspezifische Adressen:
- `kennziffer95-{stadt}@hansetrans.de`
- `eg-lizenz-{stadt}@hansetrans.de`
- `vorortpruefung-{stadt}@hansetrans.de`
- `unternehmerbefragung-{stadt}@hansetrans.de`

---

## 5. Niederlassungs-spezifische Dateien (Code-Ebene)

### 5.1 Cron-Jobs

| Datei | Niederlassung(en) | Funktion |
|---|---|---|
| `tools/cron_export_HTG.php` | HTG (alle NL) | RETRANS-Export mit Mapping aller 12 NL-IDs |
| `sysadmin/cron/cron_export_HTG.php` | HTG | Haupt-Export-Cron |
| `sysadmin/cron/cron_export_HTM.php` | HTM (109 Muenchen) | Moebel/Kuechen-Export |
| `export/cron_export_HHA.php` | HHA | Hamburg-spezifischer Export |
| `tools/cron_export_SB_MC.php` | MC | Maritim-spezifischer Export |
| `tools/cron_FTP_upload_HTG.php` | HTG | FTP-Upload fuer alle NL |

### 5.2 Spezialmodule

| Datei | Niederlassung | Funktion |
|---|---|---|
| `admin/jb_list_MC.php` | MC | Spezielle Auftragsliste |
| `statistic/statistic_MC.php` | MC | Eigenes Statistikmodul |
| `statistic/statistic_interface_cs_MC.inc.php` | MC | Kundenstatistik-Interface |
| `statistic/statistic_interface_hq_MC.inc.php` | MC | NL-Statistik-Interface |
| `include/jb_list_defineoutput_MC.inc.php` | MC | Spezielle Listenausgabe |
| `tools/auto_response_MC.php` | MC | Spezielle Auto-Antwort |
| `tools/statistic_special_GFL_MC.php` | MC | GFL-Spezialstatistik |
| `tools/statistic_HTM_01.php` | HTM | Kuechen-Montage-Statistik |

### 5.3 Dynamisch geladene Module

| Muster | Lademechanismus | Beispiele |
|---|---|---|
| `import/import_*.php` | `data_transfer.php` via `$f_ftp_servername` | import_HHA.php, import_FAMO.php, import_BMW.php, etc. |
| `tools/auto_response_*.php` | `auto_response.php` via Kundenkennung | auto_response_MC.php, etc. |
| `tools/auto_export_*.php` | `auto_export.php` | auto_export_stkat_DKT.php, etc. |

---

## 6. HTG Sub-Niederlassungen (Cron-Export-Mapping)

Die Datei `tools/cron_export_HTG.php` definiert das Mapping aller HTG-Niederlassungen:

| hq_id | Kuerzel | Stadt | FTP-Endpunkt |
|-------|---------|-------|-------------|
| 101 | HB | Bremen | eigener FTP-Pfad |
| 102 | HH | Hamburg | eigener FTP-Pfad |
| 103 | B | Berlin | eigener FTP-Pfad |
| 104 | H | Hannover | eigener FTP-Pfad |
| 105 | F | Frankfurt | eigener FTP-Pfad |
| 106 | DD | Dresden | eigener FTP-Pfad |
| 107 | E | Essen | eigener FTP-Pfad |
| 108 | L | Leipzig | eigener FTP-Pfad |
| 109 | M | Muenchen | eigener FTP-Pfad |
| 110 | N | Nuernberg | eigener FTP-Pfad |
| 111 | S | Stuttgart | eigener FTP-Pfad |
| 112 | K | Koeln | eigener FTP-Pfad |
| 203 | LG | Logistics | eigener FTP-Pfad |

---

## 7. Besondere Niederlassungen

### 7.1 Stuttgart (hq_id=111) -- Eigenstaendige Marke

Stuttgart operiert unter der Marke **ES-Logistic GmbH** mit:
- Eigener Domain: `es-l.eu`
- Eigenem Logo: `esl_logo.png` (342x93 px)
- Eigener Absenderadresse: `info@es-l.eu`
- Eigenem Mail-Footer mit Reichenbach-Adresse
- Abweichende EID-Praefixe in SQL-Template: `ES` statt Stadtkuerzel

### 7.2 Koeln (hq_id=112) -- Abweichende Nummernkreise

- `CR_EID_GENERATION = HTK89999` (alle anderen: 28800)
- `CS_EID_GENERATION = HTK79999` (alle anderen: {Prefix}64999)
- `CSC_ID_PAYER_EXTERN = 55241` (alle anderen: 44539-44549)

### 7.3 Leipzig (hq_id=108) -- Eingeschraenkte Funktionen

- PDA-Lokalisierung deaktiviert
- Rechnungstext fuer Kuriere nicht sichtbar
- Absender-Mail mit Display-Name-Format

### 7.4 Logistics/Zentrale (hq_id=203) -- Shared mit Berlin

- Teilt Kostenstellen mit Berlin (CSC_ID_PAYER_CASH, CSC_ID_PAYER_EXTERN)
- PDA-Lokalisierung deaktiviert
- Dient als zentrale Verwaltungs-/Logistikeinheit

### 7.5 Bremen (hq_id=101) -- Meiste Sonderkonfiguration

- Kundenprovision aktiv (14%)
- MODE_COPY_JOB_DISPOINFO aktiviert (einzige NL)
- Stationen im Kurier-Rechnungsmodul aktiv
- Rechnungstext fuer Kuriere nicht sichtbar
- Stark eingeschraenktes PDA-Fenster (nur 08:00-09:00)
- Eigene Marketingtexte (MAIL_TEXT_COMPLETION_2/3/4)

---

## 8. Mehrfach-Niederlassungszugriff

Mitarbeiter koennen ueber den Parameter `HEADQUARTERS_MULTIPLE_ACCESS_EMPLOYEES` Zugriff auf mehrere Niederlassungen erhalten. Die Konfiguration erfolgt als Pipe-getrennte Liste von Mitarbeiter-IDs:

```
empId1|empId2|empId3
```

Die Pruefung erfolgt in `include/auth.inc.php` (Zeile 236).

---

## 9. Zusammenfassung der Abweichungen

### Matrix: Funktionsunterschiede

| Funktion | HB | HH | B | H | F | DD | E | L | M | N | S | K | LG |
|----------|----|----|---|---|---|----|---|---|---|---|---|---|----|
| PDA-Lokalisierung | eingeschraenkt | eingeschraenkt | voll | voll | voll | voll | voll | **AUS** | voll | voll | voll | voll | **AUS** |
| Max. Tourstationen | 19 | **49** | 19 | 19 | **49** | 19 | 19 | 19 | **49** | 19 | 19 | 19 | 19 |
| Kundenprovision | **14%** | - | - | **10%** | - | - | - | - | - | - | - | - | - |
| Kurier-Rechnung Stationen | **ja** | - | **ja** | - | - | - | - | - | - | - | - | - | - |
| Kurier sieht Rechnungstext | **nein** | ja | ja | ja | ja | **nein** | ja | **nein** | ja | ja | ja | ja | ja |
| Dispoinfo beim Kopieren | **ignoriert** | kopiert | kopiert | kopiert | kopiert | kopiert | kopiert | kopiert | kopiert | kopiert | kopiert | kopiert | kopiert |
| Eigene Marke | HT | HT | HT | HT | HT | HT | HT | HT | HT | HT | **ESL** | HT | HT |
| EID-Nummernkreis | Standard | Standard | Standard | Standard | Standard | Standard | Standard | Standard | Standard | Standard | Standard | **abweichend** | Standard |

---

*Dokumentation erstellt am 24.03.2026 auf Basis der Codebasis und SQL-Dumps im Verzeichnis `/Users/svencarstensen/Downloads/html`*
