feat(webstatement): implement periode statement management feature
- Menambahkan menu "Periode Statement" pada module.json dengan akses untuk role administrator. - Menambahkan model `PeriodeStatement` dengan fitur tracking user dan scoped query. - Menyediakan controller `PeriodeStatementController` dengan fungsi CRUD, otorisasi, proses, ekspor data ke Excel, dan datatables. - Menambahkan request validation melalui `PeriodeStatementRequest`. - Menyediakan view untuk list, create, edit, dan otorisasi periode statement. - Menambahkan routing termasuk resource routes dan breadcrumbs untuk mendukung fitur ini. - Menambahkan migrasi database `periode_statements` dengan kolom untuk menyimpan data periode, status, otorisasi, serta metadata. - Fitur ini memungkinkan pengelolaan dan pemrosesan periode statement secara terstruktur dan aman. Signed-off-by: Daeng Deni Mardaeni <ddeni05@gmail.com>
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Support\Facades\Route;
|
||||
use Modules\Webstatement\Http\Controllers\PeriodeStatementController;
|
||||
use Modules\Webstatement\Http\Controllers\SyncLogsController;
|
||||
use Modules\Webstatement\Http\Controllers\JenisKartuController;
|
||||
use Modules\Webstatement\Http\Controllers\KartuAtmController;
|
||||
@@ -58,6 +59,26 @@ Route::middleware(['auth'])->group(function () {
|
||||
Route::get('/{id}/view', [EmailBlastController::class, 'view'])->name('emailblast.view');
|
||||
Route::get('/datatables', [EmailBlastController::class, 'datatables'])->name('emailblast.datatables');
|
||||
});
|
||||
|
||||
// Periode Statement Routes
|
||||
Route::group(['prefix' => 'periode-statements', 'as' => 'periode-statements.', 'middleware' => ['auth']], function () {
|
||||
Route::get('/datatables', [PeriodeStatementController::class, 'dataForDatatables'])->name('datatables');
|
||||
Route::get('/export', [PeriodeStatementController::class, 'export'])->name('export');
|
||||
|
||||
// Process, complete, and fail routes
|
||||
Route::get('/{periodeStatement}/process', 'PeriodeStatementController@process')->name('process');
|
||||
Route::get('/{periodeStatement}/complete', 'PeriodeStatementController@complete')->name('complete');
|
||||
Route::post('/{periodeStatement}/fail', 'PeriodeStatementController@fail')->name('fail');
|
||||
|
||||
// Authorization routes
|
||||
Route::get('/pending-authorization', 'PeriodeStatementController@pendingAuthorization')->name('pending-authorization');
|
||||
Route::get('/{periodeStatement}/authorize', 'PeriodeStatementController@showAuthorize')->name('show-authorize');
|
||||
Route::post('/{periodeStatement}/authorize', 'PeriodeStatementController@authorize')->name('authorize');
|
||||
});
|
||||
|
||||
Route::resource('periode-statements', PeriodeStatementController::class);
|
||||
|
||||
|
||||
});
|
||||
|
||||
Route::get('migrasi', [MigrasiController::class, 'index'])->name('migrasi.index');
|
||||
|
||||
Reference in New Issue
Block a user