From bdfd550f4ec1e2cef6cf9a09610f95ab17404e40 Mon Sep 17 00:00:00 2001 From: Nurmuhammet Allanov Date: Tue, 10 Jun 2025 19:42:11 +0500 Subject: [PATCH] fix update --- .../Controllers/LoanOrderController.php | 116 +++++++++++------- 1 file changed, 72 insertions(+), 44 deletions(-) diff --git a/app/Modules/LoanOrder/Controllers/LoanOrderController.php b/app/Modules/LoanOrder/Controllers/LoanOrderController.php index 0dc37a9..40b0ec3 100644 --- a/app/Modules/LoanOrder/Controllers/LoanOrderController.php +++ b/app/Modules/LoanOrder/Controllers/LoanOrderController.php @@ -39,11 +39,81 @@ class LoanOrderController extends Controller * * `Karz sargytlary save`. Example bar, online panelkadan gorup hem bilersin. Update store daky yaly, yone oz ugratyan zadyn update bolyar, eger ugratmasaň, üýtgemez. */ - public function store(LoanOrderStoreRequest $request, LoanOrder $loanOrder): JsonResponse + public function store(LoanOrderStoreRequest $request): JsonResponse + { + Log::channel('form_logs')->info('loan-order-store-request', $request->all()); + + $data = $request->validated(); + + $months = DateHelperRepository::monthsAsNumber(); + $years = DateHelperRepository::yearsUntil(); + + $data['card_month'] = indexByValue($request->card_month, $months); + $data['card_year'] = indexByValue($request->card_year, $years); + + $data['guarantor_card_month'] = indexByValue($request->guarantor_card_month, $months); + $data['guarantor_card_year'] = indexByValue($request->guarantor_card_year, $years); + + $data['guarantor_2_card_month'] = indexByValue($request->guarantor_2_card_month, $months); + $data['guarantor_2_card_year'] = indexByValue($request->guarantor_2_card_year, $years); + + LoanOrder::forceCreate([ + ...$data, + ...[ + 'user_id' => auth()->id(), + 'status' => OrderRepo::PENDING, + 'source' => OrderRepo::MOBILE_DEVICE, + ], + ...$this->uploadedFiles($request), + ]); + + return response()->json([ + 'message' => __('Successfully created'), + ], 201); + } + + /** + * Upload files + * + * @return array + */ + public function uploadedFiles(Request $request): array + { + $files = []; + + foreach (['passport_one', 'passport_two', 'passport_three', 'passport_four'] as $field) { + if ($request->hasFile($field)) { + $files[$field] = Str::after($request->file($field)->store('public'), 'public/'); + } + } + + return $files; + } + + /** + * SHOW* Loan order + * + * `Karz sargytlary show by id`. ID ugradyp alyan route -da. Base App Enum-lardan peydalan. Panelkadan gor. + */ + public function show(LoanOrder $loanOrder): JsonResponse + { + if ($loanOrder->user_id != auth()->id()) { + return response()->json(status: 403); + } + + return response()->json(new LoanOrderShowResource($loanOrder)); + } + + /** + * UPDATE* Loan order + * + * `Karz sargytlary update`. ID ugradyp `route`-da update edip bilyan. Base App Enum-lardan peydalan. Panelkadan gor. + */ + public function update(Request $request, LoanOrder $loanOrder): JsonResponse { Log::channel('form_logs')->info('loan-order-update-request', $request->all()); - $data = $request->validated(); + $data = $request->all(); $months = DateHelperRepository::monthsAsNumber(); $years = DateHelperRepository::yearsUntil(); @@ -83,48 +153,6 @@ class LoanOrderController extends Controller ]); } - /** - * Upload files - * - * @return array - */ - public function uploadedFiles(Request $request): array - { - $files = []; - - foreach (['passport_one', 'passport_two', 'passport_three', 'passport_four'] as $field) { - if ($request->hasFile($field)) { - $files[$field] = Str::after($request->file($field)->store('public'), 'public/'); - } - } - - return $files; - } - - /** - * SHOW* Loan order - * - * `Karz sargytlary show by id`. ID ugradyp alyan route -da. Base App Enum-lardan peydalan. Panelkadan gor. - */ - public function show(LoanOrder $loanOrder): JsonResponse - { - if ($loanOrder->user_id != auth()->id()) { - return response()->json(status: 403); - } - - return response()->json(new LoanOrderShowResource($loanOrder)); - } - - /** - * Update the specified resource in storage. - * - * `Karz sargytlary update`. ID ugradyp `route`-da update edip bilyan. Base App Enum-lardan peydalan. Panelkadan gor. - */ - public function update(Request $request): void - { - // - } - /** * DELETE* loan order resource */