diff --git a/app/Nova/Resources/Order/Loan/Concerns/LoanOrderFieldsForIndex.php b/app/Nova/Resources/Order/Loan/Concerns/LoanOrderFieldsForIndex.php index e9ac18c..b8ee762 100644 --- a/app/Nova/Resources/Order/Loan/Concerns/LoanOrderFieldsForIndex.php +++ b/app/Nova/Resources/Order/Loan/Concerns/LoanOrderFieldsForIndex.php @@ -2,11 +2,13 @@ namespace App\Nova\Resources\Order\Loan\Concerns; +use App\Nova\Resources\Branch\Branch; use App\Repos\Branch\BranchRepo; use App\Repos\Order\Loan\LoanTypeRepo; use App\Repos\Order\OrderRepo; use App\Repos\System\Settings\Location\RegionRepo; use Laravel\Nova\Fields\Badge; +use Laravel\Nova\Fields\BelongsTo; use Laravel\Nova\Fields\ID; use Laravel\Nova\Fields\Select; use Laravel\Nova\Fields\Text; @@ -33,9 +35,7 @@ class LoanOrderFieldsForIndex ->options(RegionRepo::values()) ->sortable(), - Select::make(__('Branch'), 'branch_id') - ->displayUsingLabels() - ->options(BranchRepo::values()) + BelongsTo::make(__('Branch'), 'branch', Branch::class) ->sortable(), Text::make(__('Name'), 'customer_name'), diff --git a/app/Nova/Resources/Order/Loan/LoanOrder.php b/app/Nova/Resources/Order/Loan/LoanOrder.php index 5c3f65a..8393b92 100644 --- a/app/Nova/Resources/Order/Loan/LoanOrder.php +++ b/app/Nova/Resources/Order/Loan/LoanOrder.php @@ -111,7 +111,7 @@ class LoanOrder extends Resource } if ($user->isOperator()) { - return $query->whereIn('branch_id', $user->branches()->pluck('id')); + return $query->whereIn('branch_id', $user->branches()->pluck('branches.id')); } return $query->where('user_id', $request->user()->id); diff --git a/app/Policies/Order/Loan/LoanOrderPolicy.php b/app/Policies/Order/Loan/LoanOrderPolicy.php index b1c682e..8864b32 100644 --- a/app/Policies/Order/Loan/LoanOrderPolicy.php +++ b/app/Policies/Order/Loan/LoanOrderPolicy.php @@ -26,7 +26,7 @@ class LoanOrderPolicy } if ($user->isOperator()) { - return $user->branches()->where('id', $loanOrder->branch_id)->exists(); + return $user->branches()->where('branches.id', $loanOrder->branch_id)->exists(); } if ($user->ownsLoanOrder($loanOrder)) { @@ -54,7 +54,7 @@ class LoanOrderPolicy } if ($user->isOperator()) { - return $user->branches()->where('id', $loanOrder->branch_id)->exists(); + return $user->branches()->where('branches.id', $loanOrder->branch_id)->exists(); } if ($user->ownsLoanOrder($loanOrder) && in_array($loanOrder->status, [ @@ -76,7 +76,7 @@ class LoanOrderPolicy } if ($user->isOperator()) { - return $user->branches()->where('id', $loanOrder->branch_id)->exists(); + return $user->branches()->where('branches.id', $loanOrder->branch_id)->exists(); } if ($user->ownsLoanOrder($loanOrder)) { diff --git a/app/Providers/NovaServiceProvider.php b/app/Providers/NovaServiceProvider.php index 12f18fc..063ad32 100644 --- a/app/Providers/NovaServiceProvider.php +++ b/app/Providers/NovaServiceProvider.php @@ -92,9 +92,9 @@ class NovaServiceProvider extends NovaApplicationServiceProvider ->canSee(fn () => auth()->user()->isMe()), LogsTool::make() - ->canSee(fn () => Gate::allowIf(fn ($user) => $user->isMe())) - ->canDownload(fn () => Gate::allowIf(fn ($user) => $user->isMe())) - ->canDelete(fn () => Gate::allowIf(fn ($user) => $user->isMe())), + ->canSee(fn () => Gate::allows('isMe', auth()->user())) + ->canDownload(fn () => Gate::allows('isMe', auth()->user())) + ->canDelete(fn () => Gate::allows('isMe', auth()->user())), ]; }