Files
lpj/routes/breadcrumbs_registrasi.php
Daeng Deni Mardaeni 4aeecf6a97 (pembayaran): Implementasi fitur create pembayaran baru dengan autocomplete debitur
- Menambahkan method create() di PembayaranController untuk menampilkan form pembayaran baru
- Menambahkan logika create pembayaran di method store() dengan validasi type 'create'
- Menambahkan penyimpanan data pembayaran baru ke tabel persetujuan_penawaran dan noc
- Menambahkan upload bukti bayar dengan penyimpanan ke storage public
- Menambahkan migration untuk kolom branch_id di tabel noc
- Menambahkan view create.blade.php dengan form pembayaran lengkap dan autocomplete debitur
- Menambahkan validasi JavaScript untuk format file dan ukuran maksimal 2MB
- Menambahkan TomSelect untuk pencarian debitur dengan AJAX real-time
- Menambahkan integrasi dengan API debitur search untuk autocomplete
- Memperbaiki method edit() untuk mendukung parameter tiket dalam pencarian persetujuan penawaran
- Mengubah query dataForDatatables untuk mendukung data dari persetujuan_penawaran dan permohonan
- Menambahkan mapping data yang fleksibel untuk menampilkan informasi dari berbagai sumber
- Menambahkan field nomor_tiket, nominal_bayar, dan catatan pada form create
- Menambahkan validasi client-side untuk memastikan file upload sesuai format
- Menambahkan relasi branch_id pada tabel noc untuk tracking cabang pembuat
- Menambahkan redirect ke pembayaran.index setelah berhasil menyimpan pembayaran baru
- Menambahkan import PhpParser\Node\Expr\Cast\Object_ (perlu dibersihkan)
- Mengoptimalkan query dengan eager loading dan mapping data yang efisien
- Menambahkan support untuk pembayaran tanpa permohonan (standalone payment)
- Menambahkan field is_permohonan untuk membedakan jenis pembayaran
- Menambahkan validasi dan error handling yang komprehensif
2025-09-15 11:32:59 +07:00

127 lines
4.4 KiB
PHP

<?php
use Diglactic\Breadcrumbs\Breadcrumbs;
use Diglactic\Breadcrumbs\Generator as BreadcrumbTrail;
// registrasi
Breadcrumbs::for('registrasi', function (BreadcrumbTrail $trail) {
$trail->push('Registrasi', route('registrasi.index'));
});
Breadcrumbs::for('registrasi.edit', function (BreadcrumbTrail $trail) {
$trail->parent('registrasi');
$trail->push('Tambah Registrasi');
});
Breadcrumbs::for('registrasi.show', function (BreadcrumbTrail $trail) {
$trail->parent('registrasi');
$trail->push('Detail Permohona');
});
// registrasi
// prosespenawaran
Breadcrumbs::for('tender.prosespenawaran', function (BreadcrumbTrail $trail) {
$trail->parent('tender');
$trail->push('Proses Penawaran', route('tender.prosespenawaran.index'));
});
Breadcrumbs::for('tender.prosespenawaran.edit', function (BreadcrumbTrail $trail) {
$trail->parent('tender.prosespenawaran');
$trail->push('Tambah Proses Penawaran');
});
Breadcrumbs::for('tender.prosespenawaran.show', function (BreadcrumbTrail $trail) {
$trail->parent('tender.prosespenawaran');
$trail->push('Detail Proses Penawaran');
});
Breadcrumbs::for('tender.prosespenawaran.editulang', function (BreadcrumbTrail $trail) {
$trail->parent('tender.prosespenawaran');
$trail->push('Tambah Proses Penawaran Ulang');
});
Breadcrumbs::for('tender.prosespenawaran.createPenawaran', function (BreadcrumbTrail $trail) {
$trail->parent('tender.prosespenawaran');
$trail->push('Tambah Data Penawaran');
});
Breadcrumbs::for('tender.prosespenawaran.showPermohonan', function (BreadcrumbTrail $trail) {
$trail->parent('tender.prosespenawaran');
$trail->push('Detail Proses Penawaran');
});
// prosespenawaran
// Proses Penawaran Ulang
Breadcrumbs::for('tender.prosespenawaranulang', function (BreadcrumbTrail $trail) {
$trail->parent('tender');
$trail->push('Proses Penawaran Ulang', route('tender.prosespenawaranulang.index'));
});
Breadcrumbs::for('tender.prosespenawaranulang.edit', function (BreadcrumbTrail $trail) {
$trail->parent('tender.prosespenawaranulang');
$trail->push('Tambah Proses Penawaran Ulang');
});
Breadcrumbs::for('tender.prosespenawaranulang.show', function (BreadcrumbTrail $trail) {
$trail->parent('tender.prosespenawaranulang');
$trail->push('Detail Proses Penawaran Ulang');
});
// Proses Penawaran Ulang
// Otorisasi Tender
Breadcrumbs::for('otorisasitender', function (BreadcrumbTrail $trail) {
$trail->push('Otorisasi Tender');
});
Breadcrumbs::for('otorisasitender.penawaran', function (BreadcrumbTrail $trail) {
$trail->parent('otorisasitender');
$trail->push('Data Otorisasi Penawaran', route('otorisasitender.penawaran.index'));
});
Breadcrumbs::for('otorisasitender.penawaran.edit', function (BreadcrumbTrail $trail) {
$trail->parent('otorisasitender.penawaran');
$trail->push('Tambah Data Otorisasi Penawaran ');
});
Breadcrumbs::for('otorisasitender.penawaran.show', function (BreadcrumbTrail $trail) {
$trail->parent('otorisasitender.penawaran');
$trail->push('Detail Data Otorisasi Penawaran');
});
// Otorisasi Tender
// spk
Breadcrumbs::for('spk', function (BreadcrumbTrail $trail) {
$trail->push('SPK', route('spk.index'));
});
Breadcrumbs::for('spk.edit', function (BreadcrumbTrail $trail) {
$trail->parent('spk');
$trail->push('Buat SPK');
});
// spk
// registrasi final
Breadcrumbs::for('registrasifinal', function (BreadcrumbTrail $trail) {
$trail->push('Registrasi Final', route('registrasifinal.index'));
});
Breadcrumbs::for('registrasifinal.show', function (BreadcrumbTrail $trail) {
$trail->parent('registrasifinal');
$trail->push('Detail Registrasi Final');
});
Breadcrumbs::for('registrasifinal.edit', function (BreadcrumbTrail $trail) {
$trail->parent('registrasifinal');
$trail->push('Tambah Registrasi Final');
});
// registrasi final
// pembayaran
Breadcrumbs::for('pembayaran', function (BreadcrumbTrail $trail) {
$trail->push('Pembayaran', route('pembayaran.index'));
});
Breadcrumbs::for('pembayaran.create', function (BreadcrumbTrail $trail) {
$trail->parent('pembayaran');
$trail->push('Buat Pembayaran');
});
Breadcrumbs::for('pembayaran.edit', function (BreadcrumbTrail $trail) {
$trail->parent('pembayaran');
$trail->push('Lakukan Pembayaran');
});
Breadcrumbs::for('pembayaran.approval', function (BreadcrumbTrail $trail) {
$trail->parent('pembayaran');
$trail->push('Approval Pembayaran');
});
// pembayaran