Nevar pievienot vairāk kā 25 tēmas Tēmai ir jāsākas ar burtu vai ciparu, tā var saturēt domu zīmes ('-') un var būt līdz 35 simboliem gara.

AccountCategory.php 1.4KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. <?php
  2. namespace App\Enums\Accounting;
  3. use Filament\Support\Contracts\HasLabel;
  4. enum AccountCategory: string implements HasLabel
  5. {
  6. case Asset = 'asset';
  7. case Liability = 'liability';
  8. case Equity = 'equity';
  9. case Revenue = 'revenue';
  10. case Expense = 'expense';
  11. public function getLabel(): ?string
  12. {
  13. return $this->name;
  14. }
  15. public function getTypes(): array
  16. {
  17. return match ($this) {
  18. self::Asset => [
  19. AccountType::CurrentAsset,
  20. AccountType::NonCurrentAsset,
  21. AccountType::ContraAsset,
  22. ],
  23. self::Liability => [
  24. AccountType::CurrentLiability,
  25. AccountType::NonCurrentLiability,
  26. AccountType::ContraLiability,
  27. ],
  28. self::Equity => [
  29. AccountType::Equity,
  30. AccountType::ContraEquity,
  31. ],
  32. self::Revenue => [
  33. AccountType::OperatingRevenue,
  34. AccountType::NonOperatingRevenue,
  35. AccountType::ContraRevenue,
  36. AccountType::UncategorizedRevenue,
  37. ],
  38. self::Expense => [
  39. AccountType::OperatingExpense,
  40. AccountType::NonOperatingExpense,
  41. AccountType::ContraExpense,
  42. AccountType::UncategorizedExpense,
  43. ],
  44. };
  45. }
  46. }