This commit is contained in:
Simon Pocrnjič
2026-01-10 20:11:20 +01:00
parent 711438d79f
commit c4d2f6e473
21 changed files with 1744 additions and 1889 deletions
@@ -26,6 +26,14 @@ public function index(Request $request): Response
$packages = Package::query()
->latest('id')
->paginate(25);
return Inertia::render('Admin/Packages/Index', [
'packages' => $packages,
]);
}
public function create(Request $request): Response
{
// Minimal lookups for create form (active only)
$profiles = \App\Models\SmsProfile::query()
->where('active', true)
@@ -58,8 +66,7 @@ public function index(Request $request): Response
})
->values();
return Inertia::render('Admin/Packages/Index', [
'packages' => $packages,
return Inertia::render('Admin/Packages/Create', [
'profiles' => $profiles,
'senders' => $senders,
'templates' => $templates,
@@ -312,7 +319,7 @@ public function contracts(Request $request, PhoneSelector $selector): \Illuminat
$request->validate([
'segment_id' => ['nullable', 'integer', 'exists:segments,id'],
'q' => ['nullable', 'string'],
'per_page' => ['nullable', 'integer', 'min:1', 'max:100'],
'client_id' => ['nullable', 'integer', 'exists:clients,id'],
'only_mobile' => ['nullable', 'boolean'],
'only_validated' => ['nullable', 'boolean'],
@@ -323,7 +330,7 @@ public function contracts(Request $request, PhoneSelector $selector): \Illuminat
]);
$segmentId = $request->input('segment_id') ? (int) $request->input('segment_id') : null;
$perPage = (int) ($request->input('per_page') ?? 25);
$query = Contract::query()
->with([
@@ -390,9 +397,9 @@ public function contracts(Request $request, PhoneSelector $selector): \Illuminat
});
}
$contracts = $query->paginate($perPage);
$contracts = $query->get();
$data = collect($contracts->items())->map(function (Contract $contract) use ($selector) {
$data = collect($contracts)->map(function (Contract $contract) use ($selector) {
$person = $contract->clientCase?->person;
$selected = $person ? $selector->selectForPerson($person) : ['phone' => null, 'reason' => 'no_person'];
$phone = $selected['phone'];
@@ -431,13 +438,7 @@ public function contracts(Request $request, PhoneSelector $selector): \Illuminat
});
return response()->json([
'data' => $data,
'meta' => [
'current_page' => $contracts->currentPage(),
'last_page' => $contracts->lastPage(),
'per_page' => $contracts->perPage(),
'total' => $contracts->total(),
],
'data' => $data
]);
}