| 12345678910111213141516171819202122232425262728293031 |
- <?php
- use Illuminate\Database\Migrations\Migration;
- use Illuminate\Database\Schema\Blueprint;
- use Illuminate\Support\Facades\Schema;
- return new class extends Migration
- {
- public function up(): void
- {
- Schema::create('chat_messages', function (Blueprint $table) {
- $table->id();
- $table->foreignId('order_id')->nullable()->constrained()->cascadeOnDelete();
- $table->foreignId('reclamation_id')->nullable()->constrained()->cascadeOnDelete();
- $table->foreignId('user_id')->constrained()->cascadeOnDelete();
- $table->foreignId('target_user_id')->nullable()->constrained('users')->nullOnDelete();
- $table->string('notification_type')->default('none'); // none | all | user
- $table->text('message')->nullable();
- $table->timestamps();
- $table->index(['order_id', 'created_at']);
- $table->index(['reclamation_id', 'created_at']);
- $table->index(['user_id', 'created_at']);
- });
- }
- public function down(): void
- {
- Schema::dropIfExists('chat_messages');
- }
- };
|