diff --git a/app/Enums/Channel.php b/app/Enums/Channel.php index 53ef484..67cb05d 100644 --- a/app/Enums/Channel.php +++ b/app/Enums/Channel.php @@ -3,19 +3,20 @@ namespace App\Enums; use App\Traits\Enum\WithComment; +use App\Traits\Enum\WithValue; use Filament\Support\Contracts\HasLabel; -enum Channel: string implements HasLabel +enum Channel: int implements HasLabel { - use WithComment; + use WithComment, WithValue; - case WEBSITE = 'website'; - case TIKTOK = 'tiktok'; - case YOUTUBE = 'youtube'; - case FACEBOOK = 'facebook'; - case INSTAGRAM = 'instagram'; - case TWITTER = 'twitter'; - case OTHER = 'other'; + case WEBSITE = 1; + case TIKTOK = 2; + case YOUTUBE = 3; + case FACEBOOK = 4; + case INSTAGRAM = 5; + case TWITTER = 6; + case OTHER = 7; public function getLabel(): ?string { diff --git a/app/Enums/ContentType.php b/app/Enums/ContentType.php index e61de1a..4115c93 100644 --- a/app/Enums/ContentType.php +++ b/app/Enums/ContentType.php @@ -6,14 +6,14 @@ use App\Traits\Enum\WithValue; use Filament\Support\Contracts\HasLabel; -enum ContentType: string implements HasLabel +enum ContentType: int implements HasLabel { use WithComment, WithValue; - case FOTO = 'Foto'; - case TEXT = 'Teks'; - case GRAPHIC = 'Grafis'; - case VIDEO = 'Video'; + case FOTO = 1; + case TEXT = 2; + case GRAPHIC = 3; + case VIDEO = 4; public function getLabel(): ?string { diff --git a/app/Enums/IssueSentiment.php b/app/Enums/IssueSentiment.php index 030b8ff..477208e 100644 --- a/app/Enums/IssueSentiment.php +++ b/app/Enums/IssueSentiment.php @@ -8,14 +8,14 @@ use Filament\Support\Contracts\HasColor; use Filament\Support\Contracts\HasLabel; -enum IssueSentiment: string implements HasColor, HasLabel +enum IssueSentiment: int implements HasColor, HasLabel { use WithComment, WithValue; - case POSITIVE = 'positive'; - case NEGATIVE = 'negative'; - case NEUTRAL = 'neutral'; - case CRISIS = 'krisis'; + case POSITIVE = 1; + case NEGATIVE = 2; + case NEUTRAL = 3; + case CRISIS = 4; public function getLabel(): ?string { diff --git a/app/Enums/SocialMedia.php b/app/Enums/SocialMedia.php index b11c3dd..a1d8a61 100644 --- a/app/Enums/SocialMedia.php +++ b/app/Enums/SocialMedia.php @@ -3,15 +3,16 @@ namespace App\Enums; use App\Traits\Enum\WithComment; +use App\Traits\Enum\WithValue; use Filament\Support\Contracts\HasLabel; -enum SocialMedia: string implements HasLabel +enum SocialMedia: int implements HasLabel { - use WithComment; + use WithComment, WithValue; - case PPID_DISKOMINFO_PURWAKARTA = 'PPID Diskominfo Purwakarta'; - case DISKOMINFO_PURWAKARTA = 'Diskominfo Purwakarta'; - case PURWAKARTA_SABER_HOAKS = 'Purwakarta Saber Hoaks'; + case PPID_DISKOMINFO_PURWAKARTA = 1; + case DISKOMINFO_PURWAKARTA = 2; + case PURWAKARTA_SABER_HOAKS = 3; public function getLabel(): ?string { diff --git a/database/migrations/2025_11_20_041125_create_partner_media_table.php b/database/migrations/2025_11_20_041125_create_partner_media_table.php index 8cab49f..2f72016 100644 --- a/database/migrations/2025_11_20_041125_create_partner_media_table.php +++ b/database/migrations/2025_11_20_041125_create_partner_media_table.php @@ -19,7 +19,7 @@ public function up(): void $table->string('name', 50)->index(); $table->text('address'); $table->string('link')->nullable(); - $table->enum('type', MediaType::values())->default(MediaType::ONLINE)->comment(MediaType::comment())->index(); + $table->enum('type', MediaType::values())->default(MediaType::ONLINE->value)->comment(MediaType::comment())->index(); $table->enum('classification', MediaClassification::values())->comment(MediaClassification::comment())->index(); $table->string('journalism_organization')->nullable(); $table->string('press_council_certificate')->nullable(); diff --git a/database/migrations/2025_12_05_095022_create_media_monitorings_table.php b/database/migrations/2025_12_05_095022_create_media_monitorings_table.php index 561c4aa..32d8d31 100644 --- a/database/migrations/2025_12_05_095022_create_media_monitorings_table.php +++ b/database/migrations/2025_12_05_095022_create_media_monitorings_table.php @@ -1,5 +1,6 @@ string('code', 10); $table->string('media_name', 50)->index(); $table->text('title', 255); - $table->string('channel', 20)->index(); + $table->enum('channel', Channel::values())->default(Channel::WEBSITE->value)->comment(Channel::comment())->index(); $table->string('writter', 50); $table->text('link')->nullable(); $table->string('news_page', 20)->nullable(); diff --git a/database/migrations/2025_12_09_113331_create_content_recaps_table.php b/database/migrations/2025_12_09_113331_create_content_recaps_table.php index f1ce206..a163a50 100644 --- a/database/migrations/2025_12_09_113331_create_content_recaps_table.php +++ b/database/migrations/2025_12_09_113331_create_content_recaps_table.php @@ -1,6 +1,8 @@ text('title'); $table->text('link')->nullable(); $table->date('posting_date')->index(); - $table->enum('type', ContentType::values())->default(ContentType::FOTO)->index(); - $table->string('channel', 20)->index(); - $table->string('social_media', 50)->index(); + $table->enum('type', ContentType::values())->default(ContentType::FOTO->value)->comment(ContentType::comment())->index(); + $table->enum('channel', Channel::values())->default(Channel::WEBSITE->value)->comment(Channel::comment())->index(); + $table->enum('social_media', SocialMedia::values())->default(SocialMedia::DISKOMINFO_PURWAKARTA->value)->comment(SocialMedia::comment())->index(); $table->timestamp('created_at')->useCurrent(); $table->timestamp('updated_at')->nullable()->useCurrentOnUpdate(); $table->softDeletes(); diff --git a/database/migrations/2025_12_10_144144_create_issue_management_table.php b/database/migrations/2025_12_10_144144_create_issue_management_table.php index 6214e72..7881c44 100644 --- a/database/migrations/2025_12_10_144144_create_issue_management_table.php +++ b/database/migrations/2025_12_10_144144_create_issue_management_table.php @@ -19,8 +19,8 @@ public function up(): void $table->foreignId('classification_id')->constrained()->cascadeOnDelete(); $table->foreignId('sub_classification_id')->nullable()->constrained()->nullOnDelete(); $table->foreignId('media_monitoring_id')->constrained()->cascadeOnDelete(); - $table->enum('issue', IssueSentiment::values())->comment(IssueSentiment::comment())->index(); - $table->enum('response', IssueSentiment::values())->comment(IssueSentiment::comment())->index(); + $table->enum('issue', IssueSentiment::values())->default(IssueSentiment::NEUTRAL->value)->comment(IssueSentiment::comment())->index(); + $table->enum('response', IssueSentiment::values())->default(IssueSentiment::NEUTRAL->value)->comment(IssueSentiment::comment())->index(); $table->text('description'); $table->timestamp('created_at')->useCurrent(); $table->timestamp('updated_at')->nullable()->useCurrentOnUpdate(); diff --git a/database/migrations/2025_12_11_155214_create_categories_table.php b/database/migrations/2025_12_11_155214_create_categories_table.php index f94785b..8b37025 100644 --- a/database/migrations/2025_12_11_155214_create_categories_table.php +++ b/database/migrations/2025_12_11_155214_create_categories_table.php @@ -15,7 +15,7 @@ public function up(): void Schema::create('categories', function (Blueprint $table) { $table->id(); $table->string('name', 50); - $table->enum('is_active', [IsActive::values()])->default(IsActive::ACTIVE->value)->comment(IsActive::comment()); + $table->enum('is_active', IsActive::values())->default(IsActive::ACTIVE->value)->comment(IsActive::comment()); $table->timestamp('created_at')->useCurrent(); $table->timestamp('updated_at')->nullable()->useCurrentOnUpdate(); $table->softDeletes(); diff --git a/database/migrations/2025_12_12_082036_create_news_table.php b/database/migrations/2025_12_12_082036_create_news_table.php index 477ecd4..1d92d69 100644 --- a/database/migrations/2025_12_12_082036_create_news_table.php +++ b/database/migrations/2025_12_12_082036_create_news_table.php @@ -21,7 +21,7 @@ public function up(): void $table->text('excerpt'); $table->string('link')->nullable(); $table->unsignedInteger('views')->default(0)->index(); - $table->enum('status', NewsStatus::values())->comment(NewsStatus::comment())->index(); + $table->enum('status', NewsStatus::values())->default(NewsStatus::DRAFT->value)->comment(NewsStatus::comment())->index(); $table->timestamp('published_at')->nullable()->index(); $table->timestamp('created_at')->useCurrent(); $table->timestamp('updated_at')->nullable()->useCurrentOnUpdate(); diff --git a/database/migrations/2025_12_12_090552_create_announcements_table.php b/database/migrations/2025_12_12_090552_create_announcements_table.php index 492f863..2b6199b 100644 --- a/database/migrations/2025_12_12_090552_create_announcements_table.php +++ b/database/migrations/2025_12_12_090552_create_announcements_table.php @@ -16,7 +16,7 @@ public function up(): void $table->id(); $table->string('title', 200); $table->text('content'); - $table->enum('type', AnnouncementType::values())->default(AnnouncementType::PUBLIC)->comment(AnnouncementType::comment()); + $table->enum('type', AnnouncementType::values())->default(AnnouncementType::PUBLIC->value)->comment(AnnouncementType::comment()); $table->timestamp('created_at')->useCurrent(); $table->timestamp('updated_at')->nullable()->useCurrentOnUpdate(); $table->softDeletes(); diff --git a/database/migrations/2025_12_12_111212_create_cooperations_table.php b/database/migrations/2025_12_12_111212_create_cooperations_table.php index 0d6890e..4a867aa 100644 --- a/database/migrations/2025_12_12_111212_create_cooperations_table.php +++ b/database/migrations/2025_12_12_111212_create_cooperations_table.php @@ -21,7 +21,7 @@ public function up(): void $table->unsignedInteger('payment_amount')->nullable(); $table->date('payment_date')->nullable(); $table->date('completed_at')->nullable(); - $table->enum('status', CooperationStatus::values())->default(CooperationStatus::PENDING)->comment(CooperationStatus::comment())->index(); + $table->enum('status', CooperationStatus::values())->default(CooperationStatus::PENDING->value)->comment(CooperationStatus::comment())->index(); $table->timestamp('created_at')->useCurrent(); $table->timestamp('updated_at')->nullable()->useCurrentOnUpdate(); $table->softDeletes(); diff --git a/database/migrations/2025_12_12_111307_create_cooperation_media_table.php b/database/migrations/2025_12_12_111307_create_cooperation_media_table.php index a6fe42f..ca1baf6 100644 --- a/database/migrations/2025_12_12_111307_create_cooperation_media_table.php +++ b/database/migrations/2025_12_12_111307_create_cooperation_media_table.php @@ -16,7 +16,7 @@ public function up(): void $table->id(); $table->foreignId('cooperation_id')->constrained()->cascadeOnDelete(); $table->foreignId('partner_media_id')->constrained()->cascadeOnDelete(); - $table->enum('status', ApprovalStatus::values())->default(ApprovalStatus::PENDING)->comment(ApprovalStatus::comment())->index(); + $table->enum('status', ApprovalStatus::values())->default(ApprovalStatus::PENDING->value)->comment(ApprovalStatus::comment())->index(); $table->timestamp('created_at')->useCurrent(); $table->timestamp('updated_at')->nullable()->useCurrentOnUpdate(); }); diff --git a/database/migrations/2025_12_12_132245_create_cooperation_proposals_table.php b/database/migrations/2025_12_12_132245_create_cooperation_proposals_table.php index 443004c..1d16257 100644 --- a/database/migrations/2025_12_12_132245_create_cooperation_proposals_table.php +++ b/database/migrations/2025_12_12_132245_create_cooperation_proposals_table.php @@ -20,7 +20,7 @@ public function up(): void $table->foreignIdFor(PartnerMedia::class)->constrained()->cascadeOnDelete(); $table->text('description')->nullable(); $table->string('e_catalog', 200)->nullable(); - $table->enum('status', ApprovalStatus::values())->default(ApprovalStatus::PENDING)->comment(ApprovalStatus::comment()); + $table->enum('status', ApprovalStatus::values())->default(ApprovalStatus::PENDING->value)->comment(ApprovalStatus::comment()); $table->timestamp('submitted_at')->useCurrent(); $table->timestamp('responded_at')->nullable(); $table->timestamp('created_at')->useCurrent(); diff --git a/database/migrations/2025_12_12_133823_create_media_task_assignment_table.php b/database/migrations/2025_12_12_133823_create_media_task_assignment_table.php index a10573c..74337dd 100644 --- a/database/migrations/2025_12_12_133823_create_media_task_assignment_table.php +++ b/database/migrations/2025_12_12_133823_create_media_task_assignment_table.php @@ -16,7 +16,7 @@ public function up(): void $table->id(); $table->foreignId('task_assignment_id')->constrained()->cascadeOnDelete(); $table->foreignId('partner_media_id')->constrained()->cascadeOnDelete(); - $table->enum('status', ApprovalStatus::values())->default(ApprovalStatus::PENDING)->comment(ApprovalStatus::comment())->index(); + $table->enum('status', ApprovalStatus::values())->default(ApprovalStatus::PENDING->value)->comment(ApprovalStatus::comment())->index(); $table->timestamp('created_at')->useCurrent(); $table->timestamp('updated_at')->nullable()->useCurrentOnUpdate(); }); diff --git a/database/migrations/2025_12_12_135847_create_reports_table.php b/database/migrations/2025_12_12_135847_create_reports_table.php index 3160de8..1f2e857 100644 --- a/database/migrations/2025_12_12_135847_create_reports_table.php +++ b/database/migrations/2025_12_12_135847_create_reports_table.php @@ -19,7 +19,7 @@ public function up(): void $table->date('publication_date')->index(); $table->string('link'); $table->text('description'); - $table->enum('status', ApprovalStatus::values())->default(ApprovalStatus::PENDING)->comment(ApprovalStatus::comment())->index(); + $table->enum('status', ApprovalStatus::values())->default(ApprovalStatus::PENDING->value)->comment(ApprovalStatus::comment())->index(); $table->timestamp('created_at')->useCurrent(); $table->timestamp('updated_at')->nullable()->useCurrentOnUpdate(); $table->softDeletes();