nang cap san sang import

This commit is contained in:
2026-05-01 04:33:00 +00:00
parent 6c74c17b48
commit 6ef2e9fe4e
93 changed files with 6542 additions and 12 deletions

View File

@@ -0,0 +1,28 @@
<?php
namespace App\Enums;
enum ContractStatus: string
{
case ACTIVE = 'active';
case EXPIRED = 'expired';
case LIQUIDATED = 'liquidated';
public function label(): string
{
return match ($this) {
self::ACTIVE => 'Đang hiệu lực',
self::EXPIRED => 'Hết hạn',
self::LIQUIDATED => 'Đã thanh lý',
};
}
public function options(): array
{
return [
self::ACTIVE->value => self::ACTIVE->label(),
self::EXPIRED->value => self::EXPIRED->label(),
self::LIQUIDATED->value => self::LIQUIDATED->label(),
];
}
}

View File

@@ -0,0 +1,28 @@
<?php
namespace App\Enums;
enum ContractType: string
{
case SALE = 'sale';
case LEASE = 'lease';
case BCC = 'bcc';
public function label(): string
{
return match ($this) {
self::SALE => 'HĐ Mua bán',
self::LEASE => 'HĐ Thuê',
self::BCC => 'HĐ Hợp tác kinh doanh (BCC)',
};
}
public static function options(): array
{
return [
self::SALE->value => self::SALE->label(),
self::LEASE->value => self::LEASE->label(),
self::BCC->value => self::BCC->label(),
];
}
}

View File

@@ -0,0 +1,31 @@
<?php
namespace App\Enums;
enum HandoverStatus: string
{
case NOT_READY = 'chua_du_dieu_kien';
case READY = 'du_dieu_kien';
case HANDED_OVER = 'da_ban_giao';
case SCHEDULED = 'da_len_lich';
public function label(): string
{
return match ($this) {
self::NOT_READY => 'Chưa đủ điều kiện',
self::READY => 'Đủ điều kiện',
self::HANDED_OVER => 'Đã bàn giao',
self::SCHEDULED => 'Đã lên lịch',
};
}
public function options(): array
{
return [
self::NOT_READY->value => self::NOT_READY->label(),
self::READY->value => self::READY->label(),
self::SCHEDULED->value => self::SCHEDULED->label(),
self::HANDED_OVER->value => self::HANDED_OVER->label(),
];
}
}

28
app/Enums/ServiceType.php Normal file
View File

@@ -0,0 +1,28 @@
<?php
namespace App\Enums;
enum ServiceType: string
{
case MANAGEMENT_FEE = 'management_fee';
case GRATITUDE = 'gratitude';
case SELF_BUSINESS = 'self_business';
public function label(): string
{
return match ($this) {
self::MANAGEMENT_FEE => 'Phí quản lý',
self::GRATITUDE => 'Tri ân',
self::SELF_BUSINESS => 'Tự doanh',
};
}
public function options(): array
{
return [
self::MANAGEMENT_FEE->value => self::MANAGEMENT_FEE->label(),
self::GRATITUDE->value => self::GRATITUDE->label(),
self::SELF_BUSINESS->value => self::SELF_BUSINESS->label(),
];
}
}