<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
use DateTimeInterface;
use Spatie\Activitylog\LogOptions;
use \Spatie\Activitylog\Traits\LogsActivity;
class PurchaseVoucher extends Model
{
use LogsActivity;
protected $guarded = [];
protected function serializeDate(DateTimeInterface $date)
{
return $date->format('d-m-Y H:i:s');
}
protected static $logAttributes = [
'transaction',
'vouchername',
'vouchercode',
'vouchervalue',
'price',
'comissao',
'barcode',
'reqterminalMsgID',
'reqterminalID',
'reqMsgID',
'respDateTime',
'voucherinfo',
'pin',
'datepurchased',
'receiptFormat',
'receipt',
'smsreceipt',
'status',
'type',
'terminal',
'user_id',
'voucher_list_id',
'client_id',
'smartCard',
'category_id',
'old_balance',
'new_balance'
];
protected static $logName = 'comprarCredito';
public function getDescriptionForEvent(string $eventName): string
{
return "This model has been {$eventName}";
}
public function location()
{
return $this->hasOne(TransactionLocation::class);
}
function transactionHistory(){
return $this->belongsTo(TransactionHistory::class);
}
function transactionHistories(){
return $this->hasMany(TransactionHistory::class);
}
function voucherHistory() {
return $this->belongsTo(VoucherHistory::class);
}
public function getActivitylogOptions(): LogOptions
{
return LogOptions::defaults()->logOnly(["*"]);
}
}