<?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]);
    }
}
