count(); $nbCodeUsed = Code::query()->where('code_used', true)->count(); $nbCodeExported = Code::query()->where('code_exported', true)->count(); $nbCodeRemainingToExport = Code::query()->where('code_exported', false)->count(); return view('back::pages.codes.index', compact( 'settings', 'nbCodeBase', 'nbCodeUsed', 'nbCodeExported', 'nbCodeRemainingToExport' )); } /** * Run generate codes action * * @param \App\Http\Controllers\Bo\GenerateCodesRequest $request * @return \Illuminate\Http\RedirectResponse */ public function generate(GenerateCodesRequest $request): \Illuminate\Http\RedirectResponse { Queue::push( new ProcessUniqueCode( intval($request->quantity), $request->code_length ) ); return back()->with( 'success', trans( // phpcs:ignore Generic.Files.LineLength.TooLong 'La tache de génération à été ajoutée, un mail de notification sera envoyé à l\'adresse :email lorsque le traitement sera terminé.', [ 'email' => config('mail.admin') ] ) ); } /** * Run export codes * * @param \App\Http\Requests\Bo\ExportCodesRequest $request * @return \Illuminate\Http\RedirectResponse */ public function export(ExportCodesRequest $request): \Illuminate\Http\RedirectResponse { Queue::push( new ProcessExportCodesUniques( intval($request->nb_code_fic), intval($request->nb_code_tot), intval($request->nb_code_ligne) ) ); return back()->with( 'success', // phpcs:ignore Generic.Files.LineLength.TooLong 'L\'export des codes à commencé, un mail de notification sera envoyé à l\'adresse :email lorsque le traitement sera terminé.', [ 'email' => config('mail.admin') ] ); } /** * Search for a specific code. * * @param \App\Http\Requests\Bo\CodeSearchRequest $request * @return \Illuminate\Contracts\View\View */ public function search(CodeSearchRequest $request): \Illuminate\Contracts\View\View { $code = null; try { $code = Code::query()->where('id', Code::serialToInt($request->code))->first(); } catch (\Throwable $e) { if (\get_class($e) === SerialCasterException::class) { $code = false; } } finally { if ($code === false) { \session()->flash('warning', trans('Code non valide.')); } if ($code === null) { \session()->flash('warning', trans('Code introuvable.')); } } return view('back::pages.codes.search', compact('code')); } }