feat: Filter location and sub-location selections in issue management forms to only display active records.
This commit is contained in:
parent
ac36fe3051
commit
94f1a06b44
@ -19,8 +19,4 @@ ### Steps:
|
||||
3. **Generate & Commit**: Generate a professional message following [Conventional Commits](https://www.conventionalcommits.org/) and execute the commit.
|
||||
```bash
|
||||
git commit -m "<ai_generated_message>"
|
||||
```
|
||||
4. **Push**: Optionally push the changes.
|
||||
```bash
|
||||
git push
|
||||
```
|
||||
@ -35,7 +35,7 @@ public static function configure(Schema $schema): Schema
|
||||
->schema([
|
||||
Select::make('location_id')
|
||||
->label('Lokus')
|
||||
->relationship('location', 'name')
|
||||
->relationship('location', 'name', fn (Builder $query): Builder => $query->active())
|
||||
->searchable()
|
||||
->preload()
|
||||
->live()
|
||||
@ -46,7 +46,7 @@ public static function configure(Schema $schema): Schema
|
||||
|
||||
Select::make('sub_location_id')
|
||||
->label('Sub Lokus')
|
||||
->relationship('subLocation', 'name', fn (Builder $query, Get $get): Builder => $query->where('location_id', $get('location_id')))
|
||||
->relationship('subLocation', 'name', fn (Builder $query, Get $get): Builder => $query->active()->where('location_id', $get('location_id')))
|
||||
->searchable()
|
||||
->preload()
|
||||
->required(),
|
||||
|
||||
@ -3,6 +3,8 @@
|
||||
namespace App\Models;
|
||||
|
||||
use App\Enums\IsActive;
|
||||
use Illuminate\Database\Eloquent\Attributes\Scope;
|
||||
use Illuminate\Database\Eloquent\Builder;
|
||||
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use Illuminate\Database\Eloquent\Relations\HasMany;
|
||||
@ -23,6 +25,12 @@ protected function casts(): array
|
||||
];
|
||||
}
|
||||
|
||||
#[Scope]
|
||||
protected function active(Builder $query): void
|
||||
{
|
||||
$query->where('is_active', IsActive::ACTIVE);
|
||||
}
|
||||
|
||||
public function issueManagements(): HasMany
|
||||
{
|
||||
return $this->hasMany(IssueManagement::class);
|
||||
|
||||
@ -3,6 +3,8 @@
|
||||
namespace App\Models;
|
||||
|
||||
use App\Enums\IsActive;
|
||||
use Illuminate\Database\Eloquent\Attributes\Scope;
|
||||
use Illuminate\Database\Eloquent\Builder;
|
||||
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use Illuminate\Database\Eloquent\Relations\BelongsTo;
|
||||
@ -24,6 +26,12 @@ protected function casts(): array
|
||||
];
|
||||
}
|
||||
|
||||
#[Scope]
|
||||
protected function active(Builder $query): void
|
||||
{
|
||||
$query->where('is_active', IsActive::ACTIVE);
|
||||
}
|
||||
|
||||
public function issueManagements(): HasMany
|
||||
{
|
||||
return $this->hasMany(IssueManagement::class);
|
||||
|
||||
Loading…
Reference in New Issue
Block a user