Chào các anh chị trên diễn đàn, hiện tại thì em đang viết một API bằng laravel cho một ứng dụng để xử lý các function bên backend. Em đang viết API cho function checkout, nhưng em đang gặp vấn đề khi lấy và xử lý dữ liệu dạng JSON khi mà ứng dụng truyền lên cho server. Bên front-end (ứng dụng React-Native) gửi về server (Laravel) một json tên là cart, nó chứa các thông tin về các sản phẩm mà user mua. [{product_id: 24, quantity: 4}, {product_id: 2, quantity: 12}]. Em có search trên google để tìm cách lấy giá trị của cái biến cart này nhưng vẫn không được. Không biết trên diễn đàn các anh chị có thể chỉ giúp em cách get cũng như xử lý dữ liệu từ biến JSON này được không ạ?
public function order(Request $request)
{
$user_id = $request->user_id;
$responseArray = $request->json();
json_decode($responseArray->content(), true);
if($user_id) {
$order = Order::create([
'user_id' => $request->user_id,
'orderDate' => $request->orderDate,
'customerDelivery' => $request->customerDelivery,
'deliveryAddress' => $request->deliveryAddress,
'phoneNumber' => $request->phoneNumber,
'note' => $request->note,
'status' => 0,
'isDeleted' => 0,
]);
foreach ($responseArray as $response) {
$order_details = new order_details;
$order_details->order_id = $order->id;
$order_details->product_id = $response['produc_id'];
$key = $response['produc_id'];
if($key){
$quantity_db= Product::select('id','quantity')->where([['id', $key], ['is_delete','=', 0]])->get();
foreach($quantity_db as $key=>$data){
$quantity_data = $data['quantity'];
}
$quantity_order = $response['quantity'];
$quantity_order = $quantity_order + 0;
$quantity_now = $quantity_data - $quantity_order;
$quantity_product = DB::table('products')->where('id', $key)
->update(['quantity' => $quantity_now]);
}
$order_details->quantity = $response['quantity'];
$order_details->save();
}
return response()->json([
"message" => "Successfully",
"note" => "Order thành công!",
"data" => $responseArray
]);
} else {
return response()->json([
"message" => "Fail",
"note" => "Vui lòng đăng nhập!"
]);
}
}