Files
backend/app/Services/PaymentService.php

73 lines
2.6 KiB
PHP

<?php
namespace App\Services;
use Illuminate\Support\Facades\App;
class PaymentService
{
public function invoiceBillApi($driver_national_code, $final_amount)
{
if (App::isProduction())
{
try {
$post = array(
'username' => env("PAYMENT_USERNAME"),
'password' => env("PAYMENT_PASSWORD"),
'amount' => $final_amount,
'serial' => "12345",
'type' => 1,
'instanceid' => 123,
'ownerid' => $driver_national_code,
'calculationBox' => "{\"rows\":[{\"amount\":" . $final_amount . ",\"code\":\"7070021060000015\"}]}"
);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "http://payment.rmto.ir/acc/rest/payid/gen");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post));
$response = curl_exec($ch);
curl_close($ch);
return $response;
}
catch (\Throwable $th) {
abort(500);
}
}
return 0;
}
public function callPaymentStatusBillApi($bill_code)
{
if (App::isProduction())
{
try {
$post = array(
// 'username' => env("PAYMENT_USERNAME"),
// 'password' => env("PAYMENT_PASSWORD"),
// 'amount' => $final_amount,
// 'serial' => "12345",
// 'type' => 1,
// 'instanceid' => 123,
// 'ownerid' => $driver_national_code,
// 'calculationBox' => "{\"rows\":[{\"amount\":". $final_amount .",\"code\":\"7070021060000015\"}]}"
);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "http://payment.rmto.ir/acc/rest/payid/track2/" . env("PAYMENT_USERNAME") . "/" . env("PAYMENT_PASSWORD") . "/" . $bill_code);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
// curl_setopt($ch, CURLOPT_POST, true);
// curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post));
$response = curl_exec($ch);
curl_close($ch);
return $response;
} catch (\Throwable $th) {
abort(500);
}
}
return json_encode(['isPayed' => 1]);
}
}