<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
class ReturPembelian extends Model
{
use HasFactory;
protected $fillable = [
"pengguna_id",
"no_retur",
"pembelian_id",
"no_pembelian",
"pelanggan_id",
"keterangan",
"tanggal",
"supplier_id",
"ket_tambahan",
"bukti_retur",
"status_retur"
];
public function pengguna()
{
return $this->belongsTo(Pengguna::class);
}
public function pembelian()
{
return $this->belongsTo(Pembelian::class);
}
public function supplier()
{
return $this->belongsTo(Supplier::class);
}
public function detail()
{
return $this->hasMany(DetailReturPembelian::class);
}
public function tokos()
{
return $this->morphToMany(Toko::class, 'tokoable', 'tokoables', 'tokoable_id', 'toko_id')
->where('tokoable_type', ReturPembelian::class);
}
public function scopeFilterToko($query, $toko_id = null)
{
if ($toko_id == null) {
return $query->whereHas("tokos", function ($q) {
$q->whereIn('tokos.id',auth()->user()->role->tokos->pluck('id')->toArray());
});
} else {
return $query->whereHas("tokos", function ($q)use ($toko_id) {
$q->where('tokos.id',$toko_id);
});
}
}
public function getTotalAttribute()
{
$total = 0;
foreach ($this->detail as $detail) {
$total += $detail->qty * $detail->harga_item;
}
return $total;
}
}
Anons79 File Manager Version 1.0, Coded By Anons79
Email: [email protected]