Merhaba; Laravel ile çalışıyorum.
hesapOlustur adında bir tablom var. Ön yüzden aldığım veri ile bu tabloda hem kimlik numarası hem vergi numarası ile filtreleme yapmak istiyorum. Aynı zamanda bir ilişki kullanarak aynı sütunların aynı veri ile yani aynı TC nin ve vergi numarasının tahsilat tablosunda da filtrelenerek dönmesini istiyorum. İşte kodlar:
hesapOlustur.php (CONTROLLER)
$hesapBilgileri = t_hesap_olustur::with('tahsilatBilgileri')
->where('hasta_tc',$request->hasta_tc)
->where('vergi_no', $request->vergi_no)
->get();
t_tahsilat.php (MODEL)
public function tahsilatBilgileri()
{
return $this->hasMany(t_tahsilat::class, 'hasta_tc', 'hasta_tc')
->whereIn('t_tahsilats.hasta_tc', function ($query) {
$query->select('hasta_tc')
->from('t_hesap_olusturs')
->whereColumn('t_hesap_olusturs.vergi_no', 't_tahsilats.vergi_no');
})->select('pol_vergi_no', 'hasta_tc');
}
hesap oluştur tablosunda bir kişi aynı klinik birden fazla hesap oluşturulmuş olabilir. Aynı şekilde birden fazla tahsilatta olabilir. ama ilişkiye tek veri gitmesi yeterli yani bir tane vergi no bir tane TC her iki tabloda da ilişkiye girmesi yeterli gelecek. Bu sorular sonucu tahsilat bilgileri ilişkisi hasta_tc sorgulaması doğru sonuç dönüyor ama tahsilat tablosunda aynı hastanın farklı klinikler de ki tahsilatları da dönüyor. Bunun önüne geçmek için ne yapabilirim. Yardımcı olursanız sevinirim