本文整理汇总了PHP中app\Order::product方法的典型用法代码示例。如果您正苦于以下问题:PHP Order::product方法的具体用法?PHP Order::product怎么用?PHP Order::product使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类app\Order
的用法示例。
在下文中一共展示了Order::product方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: employeeStore
/**
* Store a newly created resource in storage.
*
* @param \Illuminate\Http\Request $request
* @return \Illuminate\Http\Response
*/
public function employeeStore(Request $request)
{
// $this->validate($request, [
// 'user' => 'required',
// 'payment' => 'required',
// ]);
$order = new Order();
$order->user_id = $request->user;
$order->status_id = 2;
//make status pending
$order->dateOrdered = \Carbon\Carbon::now();
$order->address = 'In store purchase';
// temporary
// $order->transaction_total = '10.00'; // temporary
$order->save();
$products = Product::all();
foreach ($products as $p) {
if ($request->input('quantity' . $p->id) > 0) {
$orderProduct = new OrderProduct();
$orderProduct->order_id = $order->id;
$orderProduct->product_id = $p->id;
$orderProduct->quantity = $request->input('quantity' . $p->id);
$orderProduct->save();
}
}
$items = $order->product()->get();
$sum = 0;
foreach ($items as $item) {
$sum += number_format($item->pivot->quantity * $item->price, 2);
}
$order = Order::find($order->id);
$order->transaction_total = $sum;
$order->save();
Stripe::setApiKey(env('STRIPE_TEST_KEY'));
// Get the credit card details submitted by the form
$token = $_POST['stripeToken'];
// Create the charge on Stripe's servers - this will charge the user's card
$stripeAmount = bcmul($order->transaction_total, 100);
try {
$charge = \Stripe\Charge::create(array("amount" => $stripeAmount, "currency" => "usd", "source" => $token, "description" => "Sweet Sweet Chocolates"));
} catch (Card $e) {
return "We're sorry your credit card has been declined.";
}
Activity::log('Created an in store order for ' . $order->user->fname . ' ' . $order->user->lname);
$request->session()->flash('status', 'Order has been submitted');
return Redirect::action('OrderController@create');
}