From 5a5d1a33b80215ad646ae392da8387ae9c1f5737 Mon Sep 17 00:00:00 2001 From: s152483 Date: Mon, 13 Jan 2020 16:47:02 +0000 Subject: [PATCH] =?UTF-8?q?Prze=C5=9Blij=20pliki=20do=20''?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit PARAG-61, PARAG-58 --- ReceiptController.php | 131 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 131 insertions(+) create mode 100644 ReceiptController.php diff --git a/ReceiptController.php b/ReceiptController.php new file mode 100644 index 0000000..d54254d --- /dev/null +++ b/ReceiptController.php @@ -0,0 +1,131 @@ +attempt([ + 'email' => $request->email, + 'password' => $request->password])) + { + return response()->json(Receipt::with('receipt_items')->where('user_id', Auth::guard('api')->user()->id)->get(), 200); + } + else{ + return response()->json(["message " => "User auth failed."], 404); + } + + } + + /** + * Store a newly created resource in storage. + * + * @param \Illuminate\Http\Request $request + * @return \Illuminate\Http\Response + */ + public function store(Request $request) + { + if(Auth::guard('store')->attempt([ + 'email' => $request->email, + 'password' => $request->password])) + { + $receipt = Receipt::create([ + 'payment_date' => $request->payment_date, + 'payment_amount' => $request->payment_amount, + 'user_id' => $this->findUserByBarcode($request->barcode), + 'store_id' => Auth::guard('store')->check() ? Auth::guard('store')->user()->id : null, + ]); + } + else{ + return response()->json(["message " => "Store auth failed."], 404); + } + + + return response()->json($receipt, 201); + } + + /** + * Display the specified resource. + * + * @param int $id + * @return \Illuminate\Http\Response + */ + public function show(Request $request, $id) + { + if(Auth::guard('api')->attempt([ + 'email' => $request->email, + 'password' => $request->password])) + { + $receipt = Receipt::with('receipt_items')->where('user_id', Auth::guard('api')->user()->id)->get()->find($id); + if(is_null($receipt)){ return response()->json(["message " => "Record not found."], 404);} + return response()->json($receipt, 200); + } + else{ + return response()->json(["message " => "User auth failed."], 404); + } + } + + /** + * Update the specified resource in storage. + * + * @param \Illuminate\Http\Request $request + * @param int $id + * @return \Illuminate\Http\Response + */ + public function update(Request $request, $id) + { + + if(Auth::guard('store')->attempt([ + 'email' => $request->email, + 'password' => $request->password])) + { + $receipt = Receipt::find($id); + if(is_null($receipt)){ return response()->json(["message " => "Record not found."], 404);} + $receipt->update($request->all()); + return response()->json($receipt, 200); + } + else{ + return response()->json(["message " => "Store auth failed."], 404); + } + } + + /** + * Remove the specified resource from storage. + * + * @param int $id + * @return \Illuminate\Http\Response + */ + public function destroy($id) + { + if(Auth::guard('store')->attempt([ + 'email' => $request->email, + 'password' => $request->password])) + { + $receipt = Receipt::where('store_id', Auth::id())->get()->find($id); + if(is_null($receipt)){ return response()->json(["message " => "Record not found."], 404);} + $receipt->delete(); + return response()->json(null, 204); + } + else{ + return response()->json(["message " => "User auth failed."], 404); + } + } + + public function findUserByBarcode($barcode) + { + $user = User::where('barcode', $barcode)->first(); + $id = $user->id; + return $id; + } +}