diff --git a/app/Http/Controllers/OrdersController.php b/app/Http/Controllers/OrdersController.php new file mode 100644 index 0000000..0fc77fb --- /dev/null +++ b/app/Http/Controllers/OrdersController.php @@ -0,0 +1,96 @@ +only(['total_price', 'description']); + $currentUserId = auth()->id(); + + try { + $data['user_id'] = $currentUserId; + Order::create($data); + } catch (Exception $e) { + return back()->with('status', 'Create fail'); + } + + return redirect("users/$currentUserId")->with('status', 'Profile updated!'); + } + + /** + * Display the specified resource. + * + * @param int $id + * @return \Illuminate\Http\Response + */ + public function show($id) + { + // + } + + /** + * Show the form for editing the specified resource. + * + * @param int $id + * @return \Illuminate\Http\Response + */ + public function edit($id) + { + // + } + + /** + * Update the specified resource in storage. + * + * @param \Illuminate\Http\Request $request + * @param int $id + * @return \Illuminate\Http\Response + */ + public function update(Request $request, $id) + { + // + } + + /** + * Remove the specified resource from storage. + * + * @param int $id + * @return \Illuminate\Http\Response + */ + public function destroy($id) + { + // + } +} diff --git a/app/Http/Controllers/UsersController.php b/app/Http/Controllers/UsersController.php index 45ee678..d346b06 100644 --- a/app/Http/Controllers/UsersController.php +++ b/app/Http/Controllers/UsersController.php @@ -4,6 +4,7 @@ use Illuminate\Http\Request; use App\User; +use App\Http\Requests\UpdateUser; class UsersController extends Controller { @@ -61,7 +62,13 @@ public function show($id) */ public function edit($id) { - // + $user = User::find($id); + + if (!$user) { + return back(); + } + + return view('users.edit', ['user' => $user]); } /** @@ -71,9 +78,18 @@ public function edit($id) * @param int $id * @return \Illuminate\Http\Response */ - public function update(Request $request, $id) + public function update(UpdateUser $request, $id) { - // + $data = $request->only(['name', 'email']); + + try { + $user = User::find($id); + $user->update($data); + } catch (Exception $e) { + return back()->with('status', 'Update fail'); + } + + return redirect('users')->with('status', 'Profile updated!'); } /** diff --git a/app/Http/Requests/OrderCreateRequest.php b/app/Http/Requests/OrderCreateRequest.php new file mode 100644 index 0000000..dc2af96 --- /dev/null +++ b/app/Http/Requests/OrderCreateRequest.php @@ -0,0 +1,31 @@ + ['required', 'integer'], + 'description' => ['required'], + ]; + } +} diff --git a/app/Http/Requests/UpdateUser.php b/app/Http/Requests/UpdateUser.php new file mode 100644 index 0000000..39eb267 --- /dev/null +++ b/app/Http/Requests/UpdateUser.php @@ -0,0 +1,33 @@ +user; + + return [ + 'name' => ['required', 'string', 'max:255'], + 'email' => ['required', 'string', 'email', 'max:255', 'unique:users,email,' . $userId], + ]; + } +} diff --git a/app/Order.php b/app/Order.php new file mode 100644 index 0000000..6614d47 --- /dev/null +++ b/app/Order.php @@ -0,0 +1,17 @@ +hasMany('App\Order'); + } } diff --git a/database/migrations/2019_02_28_122635_create_orders_table.php b/database/migrations/2019_02_28_122635_create_orders_table.php new file mode 100644 index 0000000..3834d20 --- /dev/null +++ b/database/migrations/2019_02_28_122635_create_orders_table.php @@ -0,0 +1,34 @@ +increments('id'); + $table->integer('user_id'); + $table->integer('total_price'); + $table->text('description'); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('orders'); + } +} diff --git a/resources/views/ducanh.blade.php b/resources/views/ducanh.blade.php new file mode 100644 index 0000000..e69de29 diff --git a/resources/views/orders/create.blade.php b/resources/views/orders/create.blade.php new file mode 100644 index 0000000..47b1c66 --- /dev/null +++ b/resources/views/orders/create.blade.php @@ -0,0 +1,55 @@ +@extends('layouts.app') + +@section('content') +
| # | +Description | +Total price | +Action | +
|---|---|---|---|
| + {{ $order->id }} + | ++ {{ $order->description }} + | +{{ $order->total_price }} | ++ Edit + Delete + | +