id(); $table->string('name'); $table->foreignId('branch_id')->constrained('branches')->onDelete('cascade'); $table->text('description')->nullable(); $table->enum('status', ['active', 'inactive'])->default('active'); $table->foreignId('created_by')->constrained('users')->onDelete('cascade'); $table->timestamps(); // Composite unique constraint for department name within a branch $table->unique(['name', 'branch_id']); }); } public function down(): void { Schema::dropIfExists('departments'); } };