refactor(basicdata): optimasi middleware autentikasi dan seeder perizinan
- Mengoptimalkan middleware autentikasi di controller berikut:
- `BranchController`, `CurrencyController`, dan `HolidayCalendarController`.
- Mengganti penggunaan `Auth::guard('web')->user()` menjadi middleware `auth`.
- Menambahkan middleware closure untuk menetapkan properti `$this->user` setelah middleware `auth`.
- Penyesuaian pada semua pemanggilan terkait autentikasi pengguna untuk menggunakan `$this->user`.
- Refaktor `PermissionSeeder`:
- Menghapus metode `crudActions` beserta logika iterasi CRUD yang tidak digunakan.
- Menyederhanakan proses seeding untuk model `PermissionGroup` dengan `updateOrCreate`.
- Menghilangkan logika assignment izin dari seeder untuk mempercepat proses seeding.
This commit is contained in:
@@ -17,7 +17,14 @@
|
|||||||
|
|
||||||
public function __construct()
|
public function __construct()
|
||||||
{
|
{
|
||||||
$this->user = Auth::guard('web')->user();
|
// Mengatur middleware auth
|
||||||
|
$this->middleware('auth');
|
||||||
|
|
||||||
|
// Mengatur user setelah middleware auth dijalankan
|
||||||
|
$this->middleware(function ($request, $next) {
|
||||||
|
$this->user = Auth::user();
|
||||||
|
return $next($request);
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
public function index()
|
public function index()
|
||||||
|
|||||||
@@ -9,6 +9,7 @@
|
|||||||
use Modules\Basicdata\Exports\CurrencyExport;
|
use Modules\Basicdata\Exports\CurrencyExport;
|
||||||
use Modules\Basicdata\Http\Requests\CurrencyRequest;
|
use Modules\Basicdata\Http\Requests\CurrencyRequest;
|
||||||
use Modules\Basicdata\Models\Currency;
|
use Modules\Basicdata\Models\Currency;
|
||||||
|
use Illuminate\Support\Facades\Auth;
|
||||||
|
|
||||||
class CurrencyController extends Controller
|
class CurrencyController extends Controller
|
||||||
{
|
{
|
||||||
@@ -16,7 +17,14 @@
|
|||||||
|
|
||||||
public function __construct()
|
public function __construct()
|
||||||
{
|
{
|
||||||
$this->user = Auth::guard('web')->user();
|
// Mengatur middleware auth
|
||||||
|
$this->middleware('auth');
|
||||||
|
|
||||||
|
// Mengatur user setelah middleware auth dijalankan
|
||||||
|
$this->middleware(function ($request, $next) {
|
||||||
|
$this->user = Auth::user();
|
||||||
|
return $next($request);
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
public function index()
|
public function index()
|
||||||
|
|||||||
@@ -9,6 +9,7 @@
|
|||||||
use Modules\Basicdata\Exports\HolidayCalendarExport;
|
use Modules\Basicdata\Exports\HolidayCalendarExport;
|
||||||
use Modules\Basicdata\Http\Requests\HolidayCalendarRequest;
|
use Modules\Basicdata\Http\Requests\HolidayCalendarRequest;
|
||||||
use Modules\Basicdata\Models\HolidayCalendar;
|
use Modules\Basicdata\Models\HolidayCalendar;
|
||||||
|
use Illuminate\Support\Facades\Auth;
|
||||||
|
|
||||||
class HolidayCalendarController extends Controller
|
class HolidayCalendarController extends Controller
|
||||||
{
|
{
|
||||||
@@ -16,7 +17,14 @@
|
|||||||
|
|
||||||
public function __construct()
|
public function __construct()
|
||||||
{
|
{
|
||||||
$this->user = Auth::guard('web')->user();
|
// Mengatur middleware auth
|
||||||
|
$this->middleware('auth');
|
||||||
|
|
||||||
|
// Mengatur user setelah middleware auth dijalankan
|
||||||
|
$this->middleware(function ($request, $next) {
|
||||||
|
$this->user = Auth::user();
|
||||||
|
return $next($request);
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
public function index()
|
public function index()
|
||||||
|
|||||||
@@ -16,14 +16,10 @@
|
|||||||
$data = $this->data();
|
$data = $this->data();
|
||||||
|
|
||||||
foreach ($data as $value) {
|
foreach ($data as $value) {
|
||||||
$group = PermissionGroup::updateOrCreate([
|
PermissionGroup::updateOrCreate([
|
||||||
'name' => $value['name'],
|
'name' => $value['name'],
|
||||||
'slug' => Str::slug($value['name'])
|
'slug' => Str::slug($value['name'])
|
||||||
]);
|
]);
|
||||||
|
|
||||||
foreach ($this->crudActions($group->name) as $action) {
|
|
||||||
$data[] = ['name' => $action, 'group' => $group->id];
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -33,18 +29,4 @@
|
|||||||
['name' => 'basic-data']
|
['name' => 'basic-data']
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
public function crudActions($name)
|
|
||||||
{
|
|
||||||
$actions = [];
|
|
||||||
// list of permission actions
|
|
||||||
$crud = ['create', 'read', 'update', 'delete','export', 'authorize', 'report','restore'];
|
|
||||||
|
|
||||||
|
|
||||||
foreach ($crud as $value) {
|
|
||||||
$actions[] = $name . '.' . $value;
|
|
||||||
}
|
|
||||||
|
|
||||||
return $actions;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user