hcc_rateplans
Vertiefte Sicht auf fachlichen Zweck, Mandantenbezug, Nutzungsstatus, Datenverantwortung, Risiken und Spaltenstruktur dieser Tabelle.
Diese Datei oder Tabelle ist fachlich bzw. technisch besonders sensibel. Änderungen sollten immer mit Blick auf Abhängigkeiten, Scope und Seiteneffekte geprüft werden.
Dieser Bereich ist für sichtbare, operative oder produktive Abläufe besonders relevant.
Dieser Bereich arbeitet direkt mit hotel- bzw. mandantenbezogenem Scope. Änderungen sollten immer auf saubere Zuordnung und Scope-Logik geprüft werden.
Langbeschreibung
Ratenpläne und buchbare Preislogik
Die Tabelle `hcc_rateplans` verwaltet die Ratenpläne eines Hotels. Sie legt fest, unter welchen preislichen und fachlichen Modellen Zimmer später buchbar, berechnet, importiert oder angezeigt werden. Damit bildet sie eine wichtige Grundlage zwischen reinen Zimmer-Stammdaten und der eigentlichen Preissteuerung, weil sie definiert, in welchen buchbaren Preisvarianten ein Hotel überhaupt arbeitet.
Überblick
Die Tabelle `hcc_rateplans` verwaltet die Ratenpläne eines Hotels. Sie legt fest, unter welchen preislichen und fachlichen Modellen Zimmer später buchbar, berechnet, importiert oder angezeigt werden. Damit bildet sie eine wichtige Grundlage zwischen reinen Zimmer-Stammdaten und der eigentlichen Preissteuerung, weil sie definiert, in welchen buchbaren Preisvarianten ein Hotel überhaupt arbeitet.
Fachlicher Zweck
Der Hauptzweck dieser Tabelle besteht darin, hotelbezogene Ratenpläne als eigenständige Objekte zu führen. Ein Ratenplan beschreibt dabei nicht nur irgendeinen Preis, sondern eine klar definierte Preis- und Buchungslogik, zum Beispiel Standardrate, flexible Rate, nicht stornierbare Rate, Firmenrate, Aktionsrate oder andere betriebliche Preisvarianten. `hcc_rateplans` hält diese Preisrahmen strukturiert fest, damit weitere Tabellen wie Zimmerpreise, Preisregeln, Saisons, Importe oder Angebotslogiken sauber an einen konkreten Ratenplan andocken können.
Diese Tabelle existiert, weil ein Hotel in der Praxis fast nie nur mit einem einzigen Preis pro Zimmer arbeitet. Stattdessen gibt es meist mehrere tarifliche Modelle, die sich in Preis, Konditionen, Flexibilität, Sichtbarkeit oder Zielgruppe unterscheiden. Ohne eine zentrale Tabelle für Ratenpläne müssten solche Unterschiede direkt in einzelnen Preisdatensätzen oder Sonderlogiken verstreut werden. `hcc_rateplans` löst dieses Problem, indem die übergeordneten Preisvarianten zuerst sauber definiert werden. Dadurch wird die eigentliche Preissteuerung verständlicher, stabiler und später deutlich einfacher erweiterbar.
Aus geschäftlicher Sicht hilft diese Tabelle dabei, die Preisstrategie eines Hotels sauber und professionell im System abzubilden. Statt Preise ungeordnet oder nur als Einzelwerte zu verwalten, können verschiedene Tarifmodelle getrennt geführt und klar benannt werden. Das verbessert Pflege, Nachvollziehbarkeit und spätere Erweiterbarkeit. Für den operativen Betrieb bedeutet das weniger Chaos in der Preislogik und eine bessere Grundlage für Aktionen, flexible Konditionen, unterschiedliche Zielgruppen und saubere Buchungsprozesse.
Einfach erklärt
Einfach erklärt ist diese Tabelle das Verzeichnis der Preisarten eines Hotels. Sie beantwortet nicht direkt die Frage, wie teuer ein Zimmer an einem bestimmten Tag ist, sondern eher: In welchen Buchungs- oder Tarifmodellen verkauft das Hotel seine Zimmer überhaupt? Man kann sich `hcc_rateplans` wie eine geordnete Liste von Preisvarianten vorstellen. Ein Zimmer kann dann zum Beispiel als Standardrate, Frühbucher-Rate, flexible Rate oder Spezialtarif angeboten werden. Die genauen Preise liegen oft in anderen Tabellen, aber `hcc_rateplans` beschreibt den Rahmen, in dem diese Preise organisiert sind. Für nicht-technische Leser ist wichtig: Diese Tabelle ist also keine einfache Preisliste, sondern eher die Struktur hinter den verschiedenen buchbaren Tarifarten.
Technische Einordnung
Technisch ist `hcc_rateplans` eine zentrale Referenz- und Steuerungstabelle innerhalb des Preis- und Buchungsmodells. Sie verbindet den Hotel-Scope mit einer tariflichen Preislogik und wird typischerweise von Tabellen wie `hcc_zimmer_preise`, `hcc_price_rules` oder saisonalen Preisstrukturen referenziert. In Import- und Verwaltungsprozessen dient der Ratenplan oft als fachlich sprechender Schlüssel, über den Preisdatensätze gruppiert, validiert oder überschrieben werden. Änderungen an Codes, Statuswerten, Aktivitätslogik oder Scope-relevanten Feldern dieser Tabelle können daher direkte Auswirkungen auf Preisimporte, Berechnungen, Buchungsdarstellung und regelbasierte Preissteuerung haben.
Änderungen an `hcc_rateplans` haben meist direkte Auswirkungen auf angrenzende Preisprozesse. Das gilt insbesondere für Codes, Aktivstatus, Scope und andere Felder, die in Importen, Preiszuordnungen oder Regelwerken weiterverwendet werden. Wer diese Tabelle verändert, sollte immer prüfen, welche Preisimporte, Verwaltungsseiten, Regeln, saisonalen Abhängigkeiten und buchbaren Ausgabekanäle daran hängen. Ein Ratenplan ist im Datenmodell kein bloßes Label, sondern ein operativ relevanter Preisanker.
Typische Nutzung und Inhalte
- Ein Hotel legt verschiedene Ratenpläne an, etwa Standardrate, flexible Rate oder Sondertarife.
- Preisimporte ordnen eingehende Preisdaten einem bestimmten Ratenplan zu.
- Zimmerpreise werden pro Zimmer, Zeitraum und Ratenplan gespeichert oder berechnet.
- Preisregeln und saisonale Logik referenzieren einen Ratenplan, um ihre Wirkung klar einzugrenzen.
- Backend-Seiten zeigen dem Hotel, welche Preisarten aktiv sind und für welche Prozesse sie genutzt werden.
- Hotelbezogene Kennung des Ratenplans.
- Technische und fachliche Identifikation, zum Beispiel Code oder interne Bezeichnung.
- Status- und Aktivitätsinformationen für die operative Nutzung.
- Strukturierende Felder, die für Importe, Preisverwaltung und Zuordnung wichtig sind.
- Gegebenenfalls Sichtbarkeits-, Scope- oder Organisationsmerkmale des Tarifmodells.
- Ein Hotel nutzt eine flexible Standardrate und zusätzlich eine günstigere nicht stornierbare Rate.
- Ein Import schreibt Zimmerpreise für einen bestimmten Zeitraum gezielt in den passenden Ratenplan.
- Eine Preisregel erhöht nur die flexible Rate in der Hochsaison, während andere Tarife unverändert bleiben.
- Im Backend wird geprüft, welche Tarifmodelle aktiv sind, bevor weitere Preisdaten gepflegt oder angezeigt werden.
Beziehungen und Risiken
- `hcc_rateplans` steht in enger Beziehung zu Zimmerpreisen, Preisregeln und saisonalen Preisstrukturen.
- Importprozesse und Preisverwaltungsseiten nutzen den Ratenplan oft als zentrale Zuordnungsbasis.
- Angebots- und Buchungslogik baut auf der tariflichen Struktur auf, die in dieser Tabelle definiert wird.
- Wenn ein Ratenplan verändert oder deaktiviert wird, können viele abhängige Preisdatensätze und Regeln indirekt betroffen sein.
- Falsche Codes oder Statuswerte können dazu führen, dass Preise falsch importiert, zugeordnet oder dargestellt werden.
- Unklare oder doppelte Tarifstrukturen machen die Preislogik für Hotel und Entwickler unnötig schwer nachvollziehbar.
- Änderungen an aktiven Ratenplänen ohne Prüfung der Folgeprozesse können sich auf Preisregeln, Saisons oder Buchungsdarstellungen auswirken.
- Historisch gewachsene Tarifmodelle können zu Verwirrung führen, wenn nicht klar dokumentiert ist, welche Ratenpläne noch aktiv produktiv genutzt werden.
- Diese Tabelle ist fachlich sehr wichtig, auch wenn sie für Nicht-Techniker auf den ersten Blick abstrakter wirkt als Zimmer- oder Bildtabellen.
- Für die Dokumentation sollte klar erklärt werden, dass ein Ratenplan nicht selbst der einzelne Preis ist, sondern das tarifliche Modell dahinter.
- Wenn Preisimporte im Projekt eine große Rolle spielen, gehört `hcc_rateplans` zu den sensiblen Kernobjekten des Buchungsmoduls.
Steckbrief
Wofür diese Tabelle da ist
Dieser Bereich erklärt in kompakter Form, welche Aufgabe die Tabelle im Projekt hat und wie wichtig sie für Betrieb und Weiterentwicklung ist.
Verwaltet Ratenpläne pro Hotel inklusive Code, Status und preisbezogenem Scope für buchungsnahe Prozesse.
Mandantenbezug läuft über rp_hotel_nr. | Wird im Code von 3 Datei(en) direkt referenziert. | Soft-Delete- oder Statuslogik ist in der Struktur erkennbar. | Wichtiger Baustein für Preislogik und buchungsnahe Konfiguration. | Relevanz für Import, Preisverwaltung und Rateplan-Zuordnung.
Fehlerhafte Änderungen können Preis- und Buchungslogik direkt beeinträchtigen.
Produktiv relevante Tabelle innerhalb des dokumentierten Moduls.
Datenverantwortung
Datenart und Verantwortung
Hier siehst du, welche Art von Daten in der Tabelle liegt und worauf man bei Pflege, Historie und Umbauten achten sollte.
Produktionsrelevante Daten nur mit fachlicher Archivierungsstrategie bereinigen.
Tenant-Key, Primärschlüssel und Mapping-Bezüge konsistent halten.
Änderungen nur mit Blick auf Seiteneffekte, Scope und abhängige Prozesse durchführen.
Fachlich führende Tabelle innerhalb ihres Teilbereichs.
Nutzung
Wo die Tabelle verwendet wird
Dieser Bereich zeigt, in welchen Dateien oder Abläufen die Tabelle vorkommt. Das hilft beim Verstehen von Auswirkungen vor Änderungen.
Verwendet in Dateien
Wird gelesen von
Wird beschrieben von
Zusätzliche Hinweise
Schlüssel & Lifecycle
Wichtige Strukturmerkmale
Hier werden technische Merkmale der Tabelle zusammengefasst, zum Beispiel Schlüssel, Statusfelder und typische Verknüpfungsspalten.
Weiterarbeiten
Was noch dazugehört
Wenn du die Tabelle weiter untersuchen willst, findest du hier passende Dateien und fachlich verwandte Tabellen.
Spaltenstruktur
Spalten im Überblick
Hier siehst du die Felder der Tabelle mit Typ, Standardwerten und technischen Zusatzinformationen.
Spaltenstruktur öffnen
| Spalte | Typ | Null | Default | Key | Extra | Kommentar |
|---|---|---|---|---|---|---|
| rp_id | bigint(20) unsigned | NO | PRI | auto_increment | ||
| rp_hotel_nr | int(10) unsigned | NO | MUL | |||
| rp_name | varchar(160) | NO | ||||
| rp_code | varchar(80) | NO | ||||
| rp_status | enum('active','inactive') | NO | 'active' | |||
| rp_deleted | tinyint(1) | NO | 0 | |||
| rp_sort | int(10) unsigned | NO | 10 | |||
| rp_note | varchar(255) | YES | NULL | |||
| rp_created_at | datetime | NO | current_timestamp() | |||
| rp_updated_at | datetime | NO | current_timestamp() | on update current_timestamp() | ||
| rp_created_by | int(10) unsigned | YES | NULL | |||
| rp_updated_by | int(10) unsigned | YES | NULL |