Файловый менеджер - Редактировать - /home/clickysoft/public_html/calvary-p2.clickysoft.net/app/Http/Controllers/Front/BoutiqueVendorController.php
Назад
<?php namespace App\Http\Controllers\Front; use App\Http\Controllers\Controller; use App\Mail\BoutiqueOrderPlacedForAdmin; use App\Mail\BoutiqueOrderPlacedForUser; use App\Models\BoutiqueVendor; use App\Models\BoutiqueVendorPayment; use App\Models\BoutiqueVendorSubmission; use App\Models\SiteSetting; use Illuminate\Http\Request; use Exception; use Illuminate\Support\Facades\Log; use Illuminate\Support\Facades\Mail; use Illuminate\Support\Facades\Session; use Illuminate\Support\Facades\Storage; class BoutiqueVendorController extends Controller { public function index() { $vendor_data = BoutiqueVendor::first(); $table_price = $vendor_data->table_price ?? 0; $rack_price = $vendor_data->rack_price ?? 0; return view('front.boutique-vendor.index', compact('table_price', 'rack_price', 'vendor_data')); } public function submit(Request $request) { $data = $request->all(); $vendor_data = BoutiqueVendor::first(); $table_price = $vendor_data->table_price ?? 0; $rack_price = $vendor_data->rack_price ?? 0; $data['table_price'] = $table_price; $data['rack_price'] = $rack_price; session()->put('vendor_data', $data); return redirect()->route('front.boutique.vendor.checkout'); } public function checkout() { if (!session()->has('vendor_data')) { return redirect()->route('front.boutique.vendor.index'); } return view('front.boutique-vendor.checkout'); } public function checkoutData(Request $request) { $vendor_data = Session::get('vendor_data'); $table_price_total = $vendor_data['number_of_tables'] * $vendor_data['table_price']; $rack_price_total = $vendor_data['rack_space'] * $vendor_data['rack_price']; $final_price = $table_price_total + $rack_price_total; $input = $request->input(); $input['amount'] = $final_price; $payee_name = explode(' ', $input['payee_name'], 2); $input['first_name'] = $payee_name[0]; if (isset($payee_name[1])) { $input['last_name'] = $payee_name[1]; } $response = processAuthorizeDotNetPayment($input); $message_text = "Transaction failed. Please try again later."; $msg_type = "error_msg"; if ($response != null) { // Check to see if the API request was successfully received and acted upon if ($response->getMessages()->getResultCode() == "Ok") { $t_response = $response->getTransactionResponse(); if ($t_response != null && $t_response->getMessages() != null) { $boutique_order = BoutiqueVendorSubmission::create(array_merge($vendor_data, [ 'table_price_total' => $table_price_total, 'rack_price_total' => $rack_price_total, 'final_price' => $final_price, ])); $payment = BoutiqueVendorPayment::create([ 'order_id' => $boutique_order->id, 'name_on_card' => $input['payee_name'], 'response_code' => $t_response->getResponseCode(), 'transaction_id' => $t_response->getTransId(), 'auth_id' => $t_response->getAuthCode(), 'message_code' => $t_response->getMessages()[0]->getCode() ]); $boutique_order->payment_id = $payment->id; $boutique_order->save(); Storage::disk('vendor_orders')->makeDirectory($boutique_order->id); try { pdfGenerator(array_merge($boutique_order->toArray(), [ 'table_price' => $vendor_data['table_price'], 'rack_space_price' => $vendor_data['rack_price'] ])); } catch (Exception $e) { Log::info("error generating pdf for vendor order " . $boutique_order->id); Log::info($e->getMessage()); } $boutique_order->pdf_1_url = $boutique_order->id . '/pdf-1.pdf'; $boutique_order->pdf_2_url = $boutique_order->id . '/pdf-2.pdf'; $boutique_order->pdf_3_url = $boutique_order->id . '/pdf-3.pdf'; $boutique_order->pdf_4_url = $boutique_order->id . '/pdf-4.pdf'; $boutique_order->pdf_5_url = $boutique_order->id . '/pdf-5.pdf'; $boutique_order->save(); $site_setting = SiteSetting::first(); Mail::to($boutique_order->email)->later(now()->addSeconds(1), (new BoutiqueOrderPlacedForUser($boutique_order))); Mail::to($site_setting->admin_email)->later(now()->addSeconds(2), (new BoutiqueOrderPlacedForAdmin($boutique_order))); Session::put('vendor_data', []); return redirect()->route('front.boutique.vendor.index')->with('success_msg', 'Your request has been submitted successfully. Kindly check your Junk/Spam folder for order information/receipt'); } else { $message_text = 'There were some issue with the payment. Please try again later.'; if ($t_response->getErrors() != null) { $message_text = $t_response->getErrors()[0]->getErrorText(); } } } } else { $message_text = 'Unable to process payment. Please try again.'; } return redirect()->back()->withInput()->with($msg_type, $message_text); } public function generateOrderPDF() { $order = BoutiqueVendorSubmission::orderBy('id', 'DESC')->first(); return pdfGenerator($order->toArray()); } }
| ver. 1.4 |
Github
|
.
| PHP 8.1.29 | Генерация страницы: 0 |
proxy
|
phpinfo
|
Настройка