Energievertrag: Ankreuzfeld "Keine Bonis erwuenscht"

Neues Feld EnergyContractDetails.noBonusDesired (Boolean, default false) +
Migration. Checkbox im Vertragsformular (Strom/Gas, bei den Bonus-Feldern),
Anzeige im Vertragsdetail wenn gesetzt.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-08-18 14:03:15 +02:00
co-authored by Claude Opus 4.8
parent 1a45c24abf
commit db4b9edd13
6 changed files with 18 additions and 0 deletions
@@ -2825,6 +2825,12 @@ export default function ContractDetail() {
</div>
) : null;
})()}
{c.energyDetails.noBonusDesired && (
<div>
<dt className="text-sm text-gray-500">Bonis</dt>
<dd className="text-orange-700 font-medium">Keine Bonis erwünscht</dd>
</div>
)}
{c.energyDetails.annualConsumption ? (
<div>
<dt className="text-sm text-gray-500">
@@ -356,6 +356,7 @@ export default function ContractForm() {
unitPriceNt: c.energyDetails?.unitPriceNt || '',
instantBonus: c.energyDetails?.instantBonus || '',
newCustomerBonus: c.energyDetails?.newCustomerBonus || '',
noBonusDesired: c.energyDetails?.noBonusDesired || false,
// Internet details
downloadSpeed: c.internetDetails?.downloadSpeed || '',
uploadSpeed: c.internetDetails?.uploadSpeed || '',
@@ -679,6 +680,7 @@ export default function ContractForm() {
unitPriceNt: data.unitPriceNt ? parseFloat(data.unitPriceNt) : null,
instantBonus: data.instantBonus ? parseFloat(data.instantBonus) : null,
newCustomerBonus: data.newCustomerBonus ? parseFloat(data.newCustomerBonus) : null,
noBonusDesired: !!data.noBonusDesired,
};
}
@@ -1558,6 +1560,11 @@ export default function ContractForm() {
<Input label="Neukunden-Bonus ()" type="number" step="0.01" {...register('newCustomerBonus')} />
</div>
<label className="flex items-center gap-2 mt-3">
<input type="checkbox" {...register('noBonusDesired')} className="rounded" />
<span className="text-sm text-gray-700">Keine Bonis erwünscht</span>
</label>
{/* Hinweis für Zählerstände und Rechnungen */}
{isEdit && (
<div className="mt-4 p-3 bg-blue-50 border border-blue-200 rounded-lg text-sm text-blue-700">
+1
View File
@@ -661,6 +661,7 @@ export interface EnergyContractDetails {
unitPriceNt?: number; // €/kWh NT-Preis (nur bei Zweitarifzähler)
instantBonus?: number; // Sofort-Bonus
newCustomerBonus?: number; // Neukunden-Bonus
noBonusDesired?: boolean; // Kunde wünscht keine Bonis
previousProviderName?: string;
previousCustomerNumber?: string;
invoices?: Invoice[]; // Rechnungen