Files
usermanagement/routes/breadcrumbs.php
Daeng Deni Mardaeni 33fe30b443 feat(usermanagement): tambahkan fitur manajemen posisi
- Tambahkan model `Position` dengan atribut `code`, `name`, `level`, serta logging aktivitas dan relasi ke `roles`.
- Tambahkan migrasi untuk membuat tabel `positions` dengan soft deletes.
- Tambahkan `PositionExport` untuk kebutuhan ekspor data posisi ke Excel dengan penyaringan berdasarkan kata kunci.
- Buat `PositionsController` untuk CRUD posisi, termasuk validasi, ekspor, dan data API untuk DataTables.
  - Metode: `index`, `create`, `store`, `edit`, `update`, `destroy`, `export`, `dataForDatatables`.
- Tambahkan validasi berbasis request `PositionRequest` untuk memastikan data valid sebelum disimpan/diubah.
- Tambahkan tampilan blade untuk daftar posisi (`index.blade.php`) dan form tambah/edit posisi (`create.blade.php`) dengan dukungan DataTables dan SweetAlert.
- Perbarui file `module.json` untuk menambahkan menu "Positions" di User Management.
- Tambahkan breadcrumbs untuk halaman posisi (daftar, tambah, edit) di file `breadcrumbs.php`.
- Perbarui `routes/web.php` untuk menambahkan route terkait posisi.

Fitur ini memungkinkan pengelolaan posisi lengkap termasuk CRUD, ekspor, dan integrasi dengan DataTables.
2025-05-17 14:10:41 +07:00

71 lines
2.3 KiB
PHP

<?php
use Diglactic\Breadcrumbs\Breadcrumbs;
use Diglactic\Breadcrumbs\Generator as BreadcrumbTrail;
// Home
Breadcrumbs::for('users', function (BreadcrumbTrail $trail) {
$trail->push('Users', route('users.index'));
});
Breadcrumbs::for('users.profile', function (BreadcrumbTrail $trail) {
$trail->parent('users');
$trail->push('Profile');
});
Breadcrumbs::for('users.create', function (BreadcrumbTrail $trail) {
$trail->parent('users');
$trail->push('Add User', route('users.create'));
});
Breadcrumbs::for('users.edit', function (BreadcrumbTrail $trail) {
$trail->parent('users');
$trail->push('Edit User');
});
Breadcrumbs::for('users.roles', function (BreadcrumbTrail $trail) {
$trail->parent('users');
$trail->push('Roles', route('users.roles.index'));
});
Breadcrumbs::for('users.roles.create', function (BreadcrumbTrail $trail) {
$trail->parent('users.roles');
$trail->push('Add Role', route('users.roles.create'));
});
Breadcrumbs::for('users.roles.edit', function (BreadcrumbTrail $trail) {
$trail->parent('users.roles');
$trail->push('Edit Role');
});
Breadcrumbs::for('users.permissions', function (BreadcrumbTrail $trail) {
$trail->parent('users');
$trail->push('Permissions', route('users.permissions.index'));
});
Breadcrumbs::for('users.permissions.create', function (BreadcrumbTrail $trail) {
$trail->parent('users.permissions');
$trail->push('Add Permission', route('users.permissions.create'));
});
Breadcrumbs::for('users.permissions.edit', function (BreadcrumbTrail $trail) {
$trail->parent('users.permissions');
$trail->push('Edit Permission');
});
Breadcrumbs::for('users.positions', function (BreadcrumbTrail $trail) {
$trail->parent('users');
$trail->push('Positions', route('users.positions.index'));
});
Breadcrumbs::for('users.positions.create', function (BreadcrumbTrail $trail) {
$trail->parent('users.positions');
$trail->push('Add Position', route('users.positions.create'));
});
Breadcrumbs::for('users.positions.edit', function (BreadcrumbTrail $trail) {
$trail->parent('users.positions');
$trail->push('Edit Position');
});