| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798 | <?phpnamespace App\Http\Controllers\Admin\Orders;use App\Shop\OrderStatuses\Repositories\Interfaces\OrderStatusRepositoryInterface;use App\Shop\OrderStatuses\Repositories\OrderStatusRepository;use App\Shop\OrderStatuses\Requests\CreateOrderStatusRequest;use App\Shop\OrderStatuses\Requests\UpdateOrderStatusRequest;use Illuminate\Database\QueryException;use Illuminate\Http\Request;use App\Http\Controllers\Controller;class OrderStatusController extends Controller{    private $orderStatuses;    public function __construct(OrderStatusRepositoryInterface $orderStatusRepository)    {        $this->orderStatuses = $orderStatusRepository;    }    /**     * Display a listing of the resource.     *     * @return \Illuminate\Http\Response     */    public function index()    {        return view('admin.order-statuses.list', ['orderStatuses' => $this->orderStatuses->listOrderStatuses()]);    }    /**     * Show the form for creating a new resource.     *     * @return \Illuminate\Http\Response     */    public function create()    {        return view('admin.order-statuses.create');    }    /**     * Store a newly created resource in storage.     *     * @param  CreateOrderStatusRequest $request     * @return \Illuminate\Http\Response     */    public function store(CreateOrderStatusRequest $request)    {        $this->orderStatuses->createOrderStatus($request->except('_token', '_method'));        $request->session()->flash('message', 'Create successful');        return redirect()->route('admin.order-statuses.index');    }    /**     * Show the form for editing the specified resource.     *     * @param  int  $id     * @return \Illuminate\Http\Response     */    public function edit(int $id)    {        return view('admin.order-statuses.edit', ['orderStatus' => $this->orderStatuses->findOrderStatusById($id)]);    }    /**     * Update the specified resource in storage.     *     * @param  UpdateOrderStatusRequest $request     * @param  int  $id     * @return \Illuminate\Http\Response     */    public function update(UpdateOrderStatusRequest $request, int $id)    {        $orderStatus = $this->orderStatuses->findOrderStatusById($id);        $update = new OrderStatusRepository($orderStatus);        $update->updateOrderStatus($request->all());        $request->session()->flash('message', 'Update successful');        return redirect()->route('admin.order-statuses.edit', $id);    }    /**     * Remove the specified resource from storage.     *     * @param  int  $id     * @return \Illuminate\Http\Response     */    public function destroy(int $id)    {        $this->orderStatuses->findOrderStatusById($id)->delete();        request()->session()->flash('message', 'Delete successful');        return redirect()->route('admin.order-statuses.index');    }}
 |