Kundenakte → Zähler: Checkbox "Zähler ohne Verträge anzeigen"
Standardmäßig werden nur Zähler angezeigt, die mindestens einem Vertrag zugeordnet sind (entweder als Hauptzähler oder über die Folgezähler-Kette). Mit der neuen Checkbox lassen sich auch verwaiste Zähler ins Listing holen – nützlich beim Aufräumen. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -1296,7 +1296,17 @@ function MetersTab({
|
||||
onSuccess: () => queryClient.invalidateQueries({ queryKey: ['customer', customerId] }),
|
||||
});
|
||||
|
||||
const filtered = showInactive ? meters : meters.filter((m) => m.isActive);
|
||||
const [showWithoutContracts, setShowWithoutContracts] = useState(false);
|
||||
|
||||
// Liefert true, wenn der Zähler mindestens einem Vertrag zugeordnet ist
|
||||
// (entweder als Hauptzähler oder über die Folgezähler-Kette).
|
||||
const hasAnyContract = (m: Meter) =>
|
||||
(m.energyDetails?.some((ed) => ed.contract) ?? false)
|
||||
|| (m.contractMeters?.some((cm) => cm.energyContractDetails?.contract) ?? false);
|
||||
|
||||
const filtered = meters
|
||||
.filter((m) => showInactive ? true : m.isActive)
|
||||
.filter((m) => showWithoutContracts ? true : hasAnyContract(m));
|
||||
|
||||
// Sort readings by date (newest first)
|
||||
const getSortedReadings = (readings: any[] | undefined) => {
|
||||
@@ -1329,6 +1339,15 @@ function MetersTab({
|
||||
/>
|
||||
Inaktive anzeigen
|
||||
</label>
|
||||
<label className="flex items-center gap-2 text-sm">
|
||||
<input
|
||||
type="checkbox"
|
||||
checked={showWithoutContracts}
|
||||
onChange={(e) => setShowWithoutContracts(e.target.checked)}
|
||||
className="rounded"
|
||||
/>
|
||||
Zähler ohne Verträge anzeigen
|
||||
</label>
|
||||
</div>
|
||||
{canEdit && !hasDeliveryAddress && (
|
||||
<div className="mb-4 p-3 bg-yellow-50 border border-yellow-200 rounded-lg text-sm text-yellow-800">
|
||||
|
||||
Reference in New Issue
Block a user