alit adlı üyeden alıntı: mesajı görüntüle
Laravel'de Eloquent ile verilerinizi toplamak için kullanabileceğiniz birkaç yol var. Örneğin, aşağıdaki gibi bir sorgu yazabilirsiniz:
$tahsilat_toplami = Tahsilat::where('satis_id', $satis_id)->sum('tahsilat_tutar');
Bu sorgu, belirli bir satış için tahsilatlar tablosundaki "tahsilat_tutar" sütununun toplamını döndürür. Aynı şekilde, satışlar ve ürünler modellerinizi kullanarak da tahsilatlar tablosundaki verileri toplamak için Eloquent ile sorgu yazabilirsiniz. Örneğin, aşağıdaki gibi bir sorgu yazabilirsiniz:
$urun = Urun::find($urun_id);
$tahsilat_toplami = $urun->satislar->sum(function ($satislar) {
    return $satislar->tahsilatlar->sum('tahsilat_tutar');
});
Bu sorgu, belirli bir ürün için satışlar tablosundaki verileri kullanarak tahsilatlar tablosundaki "tahsilat_tutar" sütununun toplamını döndürür. Bu yolları kullanarak verilerinizi toplayabilirsiniz.


Ayrıca;

"Tahsilat_tutar" verisini Mysql'ın SUM işleviyle toplattırıp verilere eklemek için, satışlar modelinde tahsilatlar relasyonunu tanımlarken, "tahsilatlar" metodunu kullanarak join yapabilir ve "Tahsilat_tutar" verisini SUM işleviyle toplatabilirsiniz. Örnek olarak aşağıdaki kodu kullanabilirsiniz:
public function tahsilatlar()
{
    return $this->hasMany('App\Models\Tahsilatlar', 'satislar_id', 'id')
        ->selectRaw('SUM(Tahsilat_tutar) as total_tahsilat')
        ->groupBy('satislar_id');
}
Satışlar modelinde tahsilatlar relasyonunu tanımlarken, "Tahsilat_tutar" verisini SUM işleviyle toplatıp "total_tahsilat" adlı bir sütun olarak ekler. Daha sonra, satışlar modelinde "tahsilatlar" metodunu kullanarak bu veriyi çağırabilirsiniz.
$satislar = Satislar::with('tahsilatlar')->get();
foreach($satislar as $satis) {
    echo $satis->tahsilatlar->total_tahsilat;
}
Satışlar veri setini alır ve her satış için tahsilatlar verilerinin toplam tutarını yazdırır.
satislar modelinde şu şekil Hersatışın Tahsilatını Toplattırmayı Konuyu açtığım gün Şu Şekilde çözebilmiştim
    public function tahsilattoplam()
    {
        return $this->hasOne('App\Models\tahsilatlar','satis_id','id')->selectRaw('tahsilatlars.satis_id,SUM(tahsilatlars.tahsilat_tutar) as total')->groupBy('tahsilatlars.satis_id');
    }
ama şöyle bir sıkıntı var., selectRaw İçerisinde "tahsilatlars.satis_id," Değerini Vermediğim Sürece Tahsilatlartoplam verisi boş Geliyor.
Son Olarak Tahsilatların Türüne görede bir toplattırma işlemi yapmak istiyorum fakat iki Kere Groupby Kullanamıyorum. Veya tek groupby kullansam bile sadece direk 'odeme_turu' verisi ile gruplandırmaya çalıştığımda odeme_turu bulunamadı şeklinde hata alıyorum. Bu İşlemlerin Tamamını Normal Sorgularla yapabiliyorum fakat, Model'leri Tam Verimli Şekilde Kolay Anlaşılır Şekilde Yapmak İstiyorum.
Yani kısaca Yapmak İstediğim Her satış id'sinin İçerisindeki Ödeme Türlerine göre Toplam tahsilat Tutarlarını Toplattırmak. ve bunu model içerisinde HasMany İle Yapmak.