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
@ -20,7 +20,3 @@ ### Steps:
|
|||||||
```bash
|
```bash
|
||||||
git commit -m "<ai_generated_message>"
|
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([
|
->schema([
|
||||||
Select::make('location_id')
|
Select::make('location_id')
|
||||||
->label('Lokus')
|
->label('Lokus')
|
||||||
->relationship('location', 'name')
|
->relationship('location', 'name', fn (Builder $query): Builder => $query->active())
|
||||||
->searchable()
|
->searchable()
|
||||||
->preload()
|
->preload()
|
||||||
->live()
|
->live()
|
||||||
@ -46,7 +46,7 @@ public static function configure(Schema $schema): Schema
|
|||||||
|
|
||||||
Select::make('sub_location_id')
|
Select::make('sub_location_id')
|
||||||
->label('Sub Lokus')
|
->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()
|
->searchable()
|
||||||
->preload()
|
->preload()
|
||||||
->required(),
|
->required(),
|
||||||
|
|||||||
@ -3,6 +3,8 @@
|
|||||||
namespace App\Models;
|
namespace App\Models;
|
||||||
|
|
||||||
use App\Enums\IsActive;
|
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\Factories\HasFactory;
|
||||||
use Illuminate\Database\Eloquent\Model;
|
use Illuminate\Database\Eloquent\Model;
|
||||||
use Illuminate\Database\Eloquent\Relations\HasMany;
|
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
|
public function issueManagements(): HasMany
|
||||||
{
|
{
|
||||||
return $this->hasMany(IssueManagement::class);
|
return $this->hasMany(IssueManagement::class);
|
||||||
|
|||||||
@ -3,6 +3,8 @@
|
|||||||
namespace App\Models;
|
namespace App\Models;
|
||||||
|
|
||||||
use App\Enums\IsActive;
|
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\Factories\HasFactory;
|
||||||
use Illuminate\Database\Eloquent\Model;
|
use Illuminate\Database\Eloquent\Model;
|
||||||
use Illuminate\Database\Eloquent\Relations\BelongsTo;
|
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
|
public function issueManagements(): HasMany
|
||||||
{
|
{
|
||||||
return $this->hasMany(IssueManagement::class);
|
return $this->hasMany(IssueManagement::class);
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user