| 123456789101112131415161718192021222324252627282930313233343536373839404142434445 | 
							- <?php
 - 
 - namespace App\Enums\Setting;
 - 
 - use Filament\Support\Contracts\HasLabel;
 - 
 - enum PaymentTerms: string implements HasLabel
 - {
 -     case DueUponReceipt = 'due_upon_receipt';
 -     case Net7 = 'net_7';
 -     case Net10 = 'net_10';
 -     case Net15 = 'net_15';
 -     case Net30 = 'net_30';
 -     case Net60 = 'net_60';
 -     case Net90 = 'net_90';
 - 
 -     public const DEFAULT = self::DueUponReceipt->value;
 - 
 -     public function getLabel(): ?string
 -     {
 -         $label = ucwords(str_replace('_', ' ', $this->value));
 - 
 -         return translate($label);
 -     }
 - 
 -     public function getDays(): int
 -     {
 -         return match ($this) {
 -             self::DueUponReceipt => 0,
 -             self::Net7 => 7,
 -             self::Net10 => 10,
 -             self::Net15 => 15,
 -             self::Net30 => 30,
 -             self::Net60 => 60,
 -             self::Net90 => 90,
 -         };
 -     }
 - 
 -     public function getDueDate(string $format): string
 -     {
 -         $days = $this->getDays() ?? 0;
 - 
 -         return now()->addDays($days)->translatedFormat($format);
 -     }
 - }
 
 
  |