public function purchase(Request $request, Product $product) {
$invoice = new Invoice();
$paymentId = md5(uniqid());
$invoice->amount($product->price);
$user = Auth::user();
$request->validate([
'name' => 'required',
'phone' => 'required',
'address' => 'required'
]);
$order = $user->orders()->create([
'user_name' => $request->name,
'phone' => $request->phone,
'product_id' => $product->id,
'price' => $product->price,
'count' => $product->count,
'address' => $request->address,
'payment_id' => $paymentId,
]);
$callbackUrl = route('purchase.result',[$product->id, 'payment_id' => $paymentId]);
$payment = Payment::callbackUrl($callbackUrl);
$payment->purchase($invoice, function($driver, $transactionId) use($order) {
$order->transaction_id = $transactionId;
$order->save();
});
return $payment->pay()->render();
}
public function result(Request $request, Product $product) {
$order = new Order();
if($request->missing('payment_id')) {
return redirect()->route('account.dashboard')->with('pr' , 'خرید شما ناموفق است');
}
$receipt = Payment::amount($product->price);
if($receipt) {
return redirect()->route('account.dashboard')->with('success' , 'پرداخت شما با موفقیت انجام شد');
}
}
سلام وقت بخیر من عملیات پرداخت شتابیت از این روش استفاده کردم و سوال اصلیم اینه که پر کردن table-> order رو باید داخل متد purchase انجام بدم یا متد result؟
و اینکه الان وصله به درگاه idapy من بر روی دکمه خرید سایتم زدم وارد درگاه شد بجای اینکه خرید کنم دکمه لغو رو زدم ولی باز برگشت به داشبورد کاربری و گفت پرداخت شما با موفقیت انجام شده میخوام کمکم کنید که چطوری status رو درست وارد بکنه و اینکه من پیام رو داخل sweetalert میفرستم اگر میشه کمک کنید یه پیغام مناسب هنگام کالبک به کاربر نمایش داده بشه اگر موفق بود بگه موفقه اگر نبود که .
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟