This commit is contained in:
Simon Pocrnjič
2025-01-02 18:38:47 +01:00
parent 0c3bbfe18f
commit 0f8cfd3f16
41 changed files with 2013 additions and 591 deletions
+30 -20
View File
@@ -1,6 +1,7 @@
<?php
use App\Charts\ExampleChart;
use App\Http\Controllers\PersonController;
use App\Http\Controllers\ClientCaseContoller;
use App\Http\Controllers\ClientController;
use App\Http\Controllers\ContractController;
@@ -21,7 +22,7 @@
])->group(function () {
Route::get('/dashboard', function () {
$chart = new ExampleChart(new LarapexChart());
$people = Person::with(['group','type', 'client', 'clientCase'])
$people = Person::with(['group', 'type', 'client', 'clientCase'])
->where([
['active','=',1],
])
@@ -29,11 +30,21 @@
->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
'people' => $people,
'terrain' => $terrain
]
);
})->name('dashboard');
@@ -45,24 +56,6 @@
Route::get('search', function(Request $request) {
if( !empty($request->input('query')) ) {
/*$clients = App\Models\Client::search($request->input('query'))
->query( function($builder) use($request){
$builder->leftJoin('person', 'clients.person_id', '=', 'person.id')
->leftJoin('person_addresses', 'person_addresses.person_id', '=', 'person.id')
->select('clients.*', 'person.full_name as person_fullname')
->limit($request->input('limit'));
})
->get();
$clientCases = App\Models\ClientCase::search($request->input('query'))
->query(function($builder) use($request){
$builder->join('person', 'client_cases.person_id', '=', 'person.id')
->select('client_cases.*', 'person.full_name as person_fullname')
->limit($request->input('limit'));
})
->get();*/
$clients = App\Models\Person\Person::search($request->input('query'))
->query(function($builder) use($request): void {
@@ -95,10 +88,17 @@
return [];
})->name('search');
//person
Route::put('person/{person:uuid}', [PersonController::class, 'update'])->name('person.update');
Route::post('person/{person:uuid}/address', [PersonController::class, 'createAddress'])->name('person.address.create');
Route::put('person/{person:uuid}/address/{address_id}', [PersonController::class, 'updateAddress'])->name('person.address.update');
Route::post('person/{person:uuid}/phone', [PersonController::class, 'createPhone'])->name('person.phone.create');
Route::put('person/{person:uuid}/phone/{phone_id}', [PersonController::class, 'updatePhone'])->name('person.phone.update');
//client
Route::get('clients', [ClientController::class, 'index'])->name('client');
Route::get('clients/{client:uuid}', [ClientController::class, 'show'])->name('client.show');
Route::post('clients', [ClientController::class, 'store'])->name('client.store');
Route::put('clients/{client:uuid}', [ClientController::class, 'update'])->name('client.update');
//client-case
Route::get('client-cases', [ClientCaseContoller::class, 'index'])->name('clientCase');
@@ -113,4 +113,14 @@
Route::get('settings', [SettingController::class, 'index'])->name('settings');
//types
Route::get('types/address', function(Request $request){
$types = App\Models\Person\AddressType::all();
return response()->json([
'types' => $types
]);
})->name('types.address');
});