Файловый менеджер - Редактировать - /home/clickysoft/public_html/jmapi5.clickysoft.net/app/Http/Controllers/Admin/OrderController.php
Назад
<?php namespace App\Http\Controllers\Admin; use App\Http\Controllers\Controller; use App\Http\Requests\Admin\MassDestroyOrderRequest; use App\Http\Requests\Admin\StoreOrderRequest; use App\Http\Requests\Admin\UpdateOrderRequest; use App\Models\AddressBook; use App\Models\Order; use App\Models\Status; use App\Models\User; use Gate; use Illuminate\Http\Request; use Symfony\Component\HttpFoundation\Response; use Yajra\DataTables\Facades\DataTables; class OrderController extends Controller { public function index(Request $request) { abort_if(Gate::denies('order_access'), Response::HTTP_FORBIDDEN, '403 Forbidden'); if ($request->ajax()) { $query = Order::with(['user', 'current_status', 'assigned_to', 'shipping_address', 'billing_address'])->select(sprintf('%s.*', (new Order())->table)); $table = Datatables::of($query); $table->addColumn('placeholder', ' '); $table->addColumn('actions', ' '); $table->editColumn('actions', function ($row) { $viewGate = 'order_show'; $editGate = 'order_edit'; $deleteGate = 'order_delete'; $crudRoutePart = 'orders'; return view('partials.datatablesActions', compact( 'viewGate', 'editGate', 'deleteGate', 'crudRoutePart', 'row' )); }); $table->editColumn('id', function ($row) { return $row->id ? $row->id : ''; }); $table->addColumn('user_name', function ($row) { return $row->user ? $row->user->name : ''; }); $table->editColumn('user.email', function ($row) { return $row->user ? (is_string($row->user) ? $row->user : $row->user->email) : ''; }); $table->editColumn('order_number', function ($row) { return $row->order_number ? $row->order_number : ''; }); $table->addColumn('current_status_name', function ($row) { return $row->current_status ? $row->current_status->name : ''; }); $table->addColumn('assigned_to_name', function ($row) { return $row->assigned_to ? $row->assigned_to->name : ''; }); $table->editColumn('assigned_to.email', function ($row) { return $row->assigned_to ? (is_string($row->assigned_to) ? $row->assigned_to : $row->assigned_to->email) : ''; }); $table->editColumn('admin_approved', function ($row) { return '<input type="checkbox" disabled ' . ($row->admin_approved ? 'checked' : null) . '>'; }); $table->addColumn('shipping_address_contact_person', function ($row) { return $row->shipping_address ? $row->shipping_address->contact_person : ''; }); $table->editColumn('shipping_address.address_line_1', function ($row) { return $row->shipping_address ? (is_string($row->shipping_address) ? $row->shipping_address : $row->shipping_address->address_line_1) : ''; }); $table->addColumn('billing_address_contact_person', function ($row) { return $row->billing_address ? $row->billing_address->contact_person : ''; }); $table->editColumn('billing_address.address_line_1', function ($row) { return $row->billing_address ? (is_string($row->billing_address) ? $row->billing_address : $row->billing_address->address_line_1) : ''; }); $table->editColumn('payment_status', function ($row) { return $row->payment_status ? Order::PAYMENT_STATUS_RADIO[$row->payment_status] : ''; }); $table->editColumn('payment_type', function ($row) { return $row->payment_type ? Order::PAYMENT_TYPE_RADIO[$row->payment_type] : ''; }); $table->rawColumns(['actions', 'placeholder', 'user', 'current_status', 'assigned_to', 'admin_approved', 'shipping_address', 'billing_address']); return $table->make(true); } $users = User::get(); $statuses = Status::get(); $address_books = AddressBook::get(); return view('admin.orders.index', compact('users', 'statuses', 'address_books')); } public function create() { abort_if(Gate::denies('order_create'), Response::HTTP_FORBIDDEN, '403 Forbidden'); $users = User::pluck('name', 'id')->prepend(trans('global.pleaseSelect'), ''); $current_statuses = Status::pluck('name', 'id')->prepend(trans('global.pleaseSelect'), ''); $shipping_addresses = AddressBook::pluck('contact_person', 'id')->prepend(trans('global.pleaseSelect'), ''); $billing_addresses = AddressBook::pluck('contact_person', 'id')->prepend(trans('global.pleaseSelect'), ''); return view('admin.orders.create', compact('billing_addresses', 'current_statuses', 'shipping_addresses', 'users')); } public function store(StoreOrderRequest $request) { $order = Order::create($request->all()); return redirect()->route('admin.orders.index'); } public function edit(Order $order) { abort_if(Gate::denies('order_edit'), Response::HTTP_FORBIDDEN, '403 Forbidden'); $users = User::pluck('name', 'id')->prepend(trans('global.pleaseSelect'), ''); $current_statuses = Status::pluck('name', 'id')->prepend(trans('global.pleaseSelect'), ''); $shipping_addresses = AddressBook::pluck('contact_person', 'id')->prepend(trans('global.pleaseSelect'), ''); $billing_addresses = AddressBook::pluck('contact_person', 'id')->prepend(trans('global.pleaseSelect'), ''); $order->load('user', 'current_status', 'assigned_to', 'shipping_address', 'billing_address'); return view('admin.orders.edit', compact('billing_addresses', 'current_statuses', 'order', 'shipping_addresses', 'users')); } public function update(UpdateOrderRequest $request, Order $order) { $order->update($request->all()); return redirect()->route('admin.orders.index'); } public function show(Order $order) { abort_if(Gate::denies('order_show'), Response::HTTP_FORBIDDEN, '403 Forbidden'); $order->load('user', 'current_status', 'assigned_to', 'shipping_address', 'billing_address'); return view('admin.orders.show', compact('order')); } public function destroy(Order $order) { abort_if(Gate::denies('order_delete'), Response::HTTP_FORBIDDEN, '403 Forbidden'); $order->delete(); return back(); } public function massDestroy(MassDestroyOrderRequest $request) { Order::whereIn('id', request('ids'))->delete(); return response(null, Response::HTTP_NO_CONTENT); } }
| ver. 1.4 |
Github
|
.
| PHP 8.1.29 | Генерация страницы: 0 |
proxy
|
phpinfo
|
Настройка