<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsTo;
class ReturPenjualan extends Model
{
use HasFactory;
protected $fillable = [
"pengguna_id",
"no_retur",
"penjualan_id",
"no_penjualan",
"pelanggan_id",
"keterangan",
"sale_id",
"tanggal",
];
public function penjualan()
{
return $this->belongsTo(Penjualan::class);
}
public function pelanggan()
{
return $this->belongsTo(Pelanggan::class);
}
public function detail()
{
return $this->hasMany(DetailReturPenjualan::class);
}
public function sales(): BelongsTo
{
return $this->belongsTo(Pengguna::class, 'sale_id', 'id')->withDefault([
'nama_pengguna'=>'-'
]);
}
public function tokos()
{
return $this->morphToMany(Toko::class, 'tokoable', 'tokoables', 'tokoable_id', 'toko_id')
->where('tokoable_type', ReturPenjualan::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);
});
}
}
}
Anons79 File Manager Version 1.0, Coded By Anons79
Email: [email protected]