public function KotaOdemeKontrolWithId($IstekId,$doviz){ $db = JFactory::getOracleDBO (); $sql = "SELECT * FROM AB_HIBE_KURULUS_ISTEK WHERE ID = ?"; $data = $db->prep_exec($sql, array($IstekId)); $kId = $data[0]['USER_ID']; $KurPro = FormABHibeUcretHesabi::KuruluABHibeProtokol($kId); $ToplamKota = FormABHibeUcretHesabi::KuruluABHibeToplamKota($kId); $KulTop = FormABHibeUcretHesabi::KuruluABHibeKullanilanKota($kId, $IstekId); $KulDez = FormABHibeUcretHesabi::KuruluABHibeKullanilanDezKota($kId, $IstekId); $KulNorKota = $KulTop - $KulDez; $KurKdv = FormABHibeUcretHesabi::UcretDuzenle(1+($KurPro['KDV']/100)); $doviz = FormABHibeUcretHesabi::UcretDuzenle($doviz); $maxUcret = FormABHibeUcretHesabi::ABHibeMaxUcret(); $TopUcret = 0; $TopDez = 0; $TopNorUcret = 0; //******** ADAYLARIN UCRETLERI *****************************************************// $sqlAday = "SELECT MTA.*,MBS.*, ABHDA.DOKUMAN AS DEZDOK FROM AB_HIBE_KURULUS_ADAY MTA INNER JOIN M_BELGE_SORGU MBS ON(MTA.BELGE_NO = MBS.BELGENO) LEFT JOIN AB_HIBE_DEZAVANTAJ_ADAY ABHDA ON(MTA.BELGE_NO = ABHDA.BELGE_NO) WHERE MTA.ISTEK_ID = ?"; $adays = $db->prep_exec($sqlAday, array($IstekId)); $hata = 0; foreach($adays as $cow){ $Hesap = 0; $sqlItiraz = "SELECT * FROM AB_HIBE_ITIRAZ WHERE BELGE_NO = ?"; $dataItiraz = $db->prep_exec($sqlItiraz, array($cow['BELGE_NO'])); $birimUcreti = FormABHibeUcretHesabi::BasariliBirimUcretiHesabi($cow['TCKIMLIKNO'],$cow['YETERLILIK_ID'], $cow['SINAV_TARIHI'],$cow['KURULUS_ID']); if($dataItiraz && $dataItiraz['DURUM'] == 1){ $Hesap = FormABHibeUcretHesabi::UcretDuzenle($dataItiraz[0]['ITIRAZ_UCRET']); }else{ foreach ($birimUcreti as $tow){ $Hesap += $tow['ucret']; } } $Hesap = FormABHibeUcretHesabi::UcretDuzenle($Hesap/$KurKdv); $Hesap = $Hesap/$doviz; if($Hesap > FormABHibeUcretHesabi::UcretDuzenle($maxUcret)){ $TopUcret += FormABHibeUcretHesabi::UcretDuzenle($maxUcret); if($cow['DEZDOK'] != null){ $TopDez += FormABHibeUcretHesabi::UcretDuzenle($maxUcret); }else{ $TopNorUcret += FormABHibeUcretHesabi::UcretDuzenle($maxUcret); } }else{ $TopUcret += FormABHibeUcretHesabi::UcretDuzenle($Hesap); if($cow['DEZDOK'] != null){ $TopDez += FormABHibeUcretHesabi::UcretDuzenle($Hesap); }else{ $TopNorUcret += FormABHibeUcretHesabi::UcretDuzenle($Hesap); } } } //******** ADAYLARIN UCRETLERI SON *****************************************************// $tt = FormABHibeUcretHesabi::UcretDuzenle($TopUcret) + $KulTop; if($tt > $ToplamKota){ return array('hata'=>1, 'mesaj'=>'Talep etmek istediğiniz ücret iadesi Kalan Toplam Kotanızı aşmaktadır.'); } if($KurPro['DEZAVANTAJ'] == 1){ $ToplamDezKota = $ToplamKota/10; $ToplamNorKota = $ToplamKota - $ToplamDezKota; // $tt = FormABHibeUcretHesabi::UcretDuzenle($TopDez) + $KulDez; // if($tt > $ToplamDezKota){ // return array('hata'=>1, 'mesaj'=>'Talep etmek istediğiniz ücret iadesindeki Dezavantajlı adayların ücret toplamı Kalan Dezavantajlı Toplam Kotanızı aşmaktadır.'); // } $tt = FormABHibeUcretHesabi::UcretDuzenle($TopNorUcret) + $KulNorKota; if($tt > $ToplamNorKota){ return array('hata'=>1, 'mesaj'=>'Talep etmek istediğiniz ücret iadesindeki Dezavantajlı olmayan adayların ücret toplamı Kalan Dezavantajlı Olmayan Toplam Kotanızı aşmaktadır.'); } } return array('hata'=>0); }