Implement board columns and project workflow settings

This commit is contained in:
2026-03-25 01:16:09 +01:00
parent 840d01f6fc
commit 3f9b83ec16
17 changed files with 895 additions and 1 deletions
+21
View File
@@ -0,0 +1,21 @@
<?php
namespace App\Models;
use Database\Factories\BoardColumnFactory;
use Illuminate\Database\Eloquent\Attributes\Fillable;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsTo;
#[Fillable(['name', 'position', 'project_id'])]
class BoardColumn extends Model
{
/** @use HasFactory<BoardColumnFactory> */
use HasFactory;
public function project(): BelongsTo
{
return $this->belongsTo(Project::class);
}
}
+7
View File
@@ -7,6 +7,7 @@ use Illuminate\Database\Eloquent\Attributes\Fillable;
use Illuminate\Database\Eloquent\Casts\Attribute;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\HasMany;
use Illuminate\Support\Str;
#[Fillable(['name', 'key'])]
@@ -21,4 +22,10 @@ class Project extends Model
set: fn (string $value): string => Str::upper(trim($value)),
);
}
public function boardColumns(): HasMany
{
return $this->hasMany(BoardColumn::class)
->orderBy('position');
}
}