payment plans wip

This commit is contained in:
salam committed 2025-09-28 09:11:26 +02:00
1 parent 3a74e45a3a
commit 61594777d7
15 files changed
+560 -158

No files matched your search

+8 -12
View File
@@ -8,34 +8,30 @@ use Filament\Support\Contracts\HasLabel;
enum ProjektStatus: string implements HasColor, HasIcon, HasLabel
{
case TEST = 'test';
case ENTWURF = 'entwurf';
case ENFASSUNG = 'endfassung';
case Entwurf = 'entwurf';
case Endfassung = 'endfassung';
public function getLabel(): ?string
{
return match ($this) {
self::TEST => 'Test',
self::ENTWURF => 'Entwurf',
self::ENFASSUNG => 'Endfassung',
self::Entwurf => 'Entwurf',
self::Endfassung => 'Endfassung',
};
}
public function getColor(): string|array|null
{
return match ($this) {
self::TEST => 'gray',
self::ENTWURF => 'primary',
self::ENFASSUNG => 'success',
self::Entwurf => 'primary',
self::Endfassung => 'success',
};
}
public function getIcon(): ?string
{
return match ($this) {
self::TEST => 'lucide-file-cog',
self::ENTWURF => 'lucide-file-pen',
self::ENFASSUNG => 'lucide-file-check',
self::Entwurf => 'lucide-file-pen',
self::Endfassung => 'lucide-file-check',
};
}
}
+60
View File
@@ -0,0 +1,60 @@
<?php
namespace App\Enums;
use Filament\Support\Contracts\HasDescription;
use Filament\Support\Contracts\HasIcon;
use Filament\Support\Contracts\HasLabel;
use ToneGabes\BetterOptions\Contracts\HasExtraText;
enum Zahlungen: string implements HasDescription, HasExtraText, HasIcon, HasLabel
{
case gutachten = 'gutachten';
case monat = 'monat';
case jahr = 'jahr';
public function getIcon(): string
{
return match ($this) {
self::gutachten => 'licude-credit-card',
self::monat => 'licude-credit-card',
self::jahr => 'licude-credit-card',
};
}
public function getLabel(): ?string
{
return match ($this) {
self::gutachten => 'Zahlung pro Gutachten',
self::monat => 'Zahlung Monatlich',
self::jahr => 'Zahlung Jährlich',
};
}
public function getExtraText(): string
{
return match ($this) {
self::gutachten => 'Zahlung pro Gutachten',
self::monat => 'Zahlung Monatlich',
self::jahr => 'Zahlung Jährlich',
};
}
public function getDescription(): ?string
{
return match ($this) {
self::gutachten => 'Zahlungen können für jedes Gutachten einzeln getätigt werden',
self::monat => 'Zahlung erfolgt monatlich, ohne Begrenzung für die erstellten Gutachten',
self::jahr => 'Zahlung erfolgt jährlich, ohne Begrenzung für die erstellten Gutachten, Gutachter oder Auftraggeber',
};
}
public function getIcons(): ?string
{
return match ($this) {
self::gutachten => 'licude-battery-low',
self::monat => 'licude-battery-medium',
self::jahr => 'licude-battery-full',
};
}
}