Added the support for generating docs from template doc
This commit is contained in:
+32
-30
@@ -31,34 +31,7 @@
|
||||
config('jetstream.auth_session'),
|
||||
'verified',
|
||||
])->group(function () {
|
||||
Route::get('/dashboard', function () {
|
||||
$chart = new ExampleChart(new LarapexChart);
|
||||
$people = Person::with(['group', 'type', 'client', 'clientCase'])
|
||||
->where([
|
||||
['active', '=', 1],
|
||||
])
|
||||
->limit(10)
|
||||
->orderByDesc('created_at')
|
||||
->get();
|
||||
|
||||
$terrain = \App\Models\ClientCase::join('client_case_segment', 'client_cases.id', '=', 'client_case_segment.client_case_id')
|
||||
->select('client_cases.*', 'client_case_segment.created_at as added_segment')
|
||||
->where('client_case_segment.segment_id', '=', 2)
|
||||
->where('client_case_segment.active', '=', true)
|
||||
->orderByDesc('client_case_segment.created_at')
|
||||
->limit(10)
|
||||
->with('person')
|
||||
->get();
|
||||
|
||||
return Inertia::render(
|
||||
'Dashboard',
|
||||
[
|
||||
'chart' => $chart->build(),
|
||||
'people' => $people,
|
||||
'terrain' => $terrain,
|
||||
]
|
||||
);
|
||||
})->name('dashboard');
|
||||
Route::get('/dashboard', \App\Http\Controllers\DashboardController::class)->name('dashboard');
|
||||
|
||||
Route::get('testing', function () {
|
||||
return Inertia::render('Testing/Index', [
|
||||
@@ -66,6 +39,34 @@
|
||||
]);
|
||||
})->name('testing.index');
|
||||
|
||||
// Admin panel - user role management
|
||||
Route::middleware(['permission:manage-settings'])->prefix('admin')->name('admin.')->group(function () {
|
||||
// Admin dashboard
|
||||
Route::get('/', function () {
|
||||
return Inertia::render('Admin/Index');
|
||||
})->name('index');
|
||||
Route::get('users', [\App\Http\Controllers\Admin\UserRoleController::class, 'index'])->name('users.index');
|
||||
Route::put('users/{user}', [\App\Http\Controllers\Admin\UserRoleController::class, 'update'])->name('users.update');
|
||||
|
||||
// Permissions management
|
||||
Route::get('permissions', [\App\Http\Controllers\Admin\PermissionController::class, 'index'])->name('permissions.index');
|
||||
Route::get('permissions/create', [\App\Http\Controllers\Admin\PermissionController::class, 'create'])->name('permissions.create');
|
||||
Route::post('permissions', [\App\Http\Controllers\Admin\PermissionController::class, 'store'])->name('permissions.store');
|
||||
|
||||
// Document templates & global document settings
|
||||
Route::get('document-templates', [\App\Http\Controllers\Admin\DocumentTemplateController::class, 'index'])->name('document-templates.index');
|
||||
Route::post('document-templates', [\App\Http\Controllers\Admin\DocumentTemplateController::class, 'store'])->name('document-templates.store');
|
||||
Route::post('document-templates/{template}/toggle', [\App\Http\Controllers\Admin\DocumentTemplateController::class, 'toggleActive'])->name('document-templates.toggle');
|
||||
Route::put('document-templates/{template}/settings', [\App\Http\Controllers\Admin\DocumentTemplateController::class, 'updateSettings'])->name('document-templates.settings.update');
|
||||
Route::get('document-templates/{template}', [\App\Http\Controllers\Admin\DocumentTemplateController::class, 'show'])->name('document-templates.show');
|
||||
Route::get('document-templates/{template}/edit', [\App\Http\Controllers\Admin\DocumentTemplateController::class, 'edit'])->name('document-templates.edit');
|
||||
Route::get('document-settings', [\App\Http\Controllers\Admin\DocumentSettingsController::class, 'edit'])->name('document-settings.index');
|
||||
Route::put('document-settings', [\App\Http\Controllers\Admin\DocumentSettingsController::class, 'update'])->name('document-settings.update');
|
||||
});
|
||||
|
||||
// Contract document generation (JSON) - protected by auth+verified; permission enforced inside controller service
|
||||
Route::post('contracts/{contract:uuid}/generate-document', \App\Http\Controllers\ContractDocumentGenerationController::class)->name('contracts.generate-document');
|
||||
|
||||
// Phone page
|
||||
Route::get('phone', [PhoneViewController::class, 'index'])->name('phone.index');
|
||||
Route::get('phone/case/{client_case:uuid}', [PhoneViewController::class, 'showCase'])->name('phone.case');
|
||||
@@ -104,7 +105,7 @@
|
||||
->join('person', 'client_cases.person_id', '=', 'person.id')
|
||||
->leftJoin('contract_segment', function ($j) {
|
||||
$j->on('contract_segment.contract_id', '=', 'contracts.id')
|
||||
->where('contract_segment.active', true);
|
||||
->where('contract_segment.active', true);
|
||||
})
|
||||
->leftJoin('segments', 'segments.id', '=', 'contract_segment.segment_id')
|
||||
// case-insensitive reference match
|
||||
@@ -133,7 +134,7 @@
|
||||
->join('contracts', 'contracts.client_case_id', '=', 'client_cases.id')
|
||||
->join('contract_segment', function ($j) {
|
||||
$j->on('contract_segment.contract_id', '=', 'contracts.id')
|
||||
->where('contract_segment.active', true);
|
||||
->where('contract_segment.active', true);
|
||||
})
|
||||
->join('segments', 'segments.id', '=', 'contract_segment.segment_id')
|
||||
->whereIn('client_cases.id', $caseIds)
|
||||
@@ -159,6 +160,7 @@
|
||||
$row->case_segments = [];
|
||||
}
|
||||
}
|
||||
|
||||
return $row;
|
||||
})->take($limit);
|
||||
} else {
|
||||
|
||||
Reference in New Issue
Block a user