function generateTxt($tesvikid, $temp = false) { $db = JFactory::getOracleDBO(); $sql = "SELECT M_BELGE_TESVIK_ADAY.BELGE_NO,\n\t\t\t\t\t\tM_BELGE_TESVIK_ADAY.DAMGALI_UCRET AS UCRET,\n\t\t\t\t\t\tM_BELGE_TESVIK_ADAY.BELGE_MASRAF_UCRET,\n\t\t\t\t\t\tM_BELGE_TESVIK_ISTEK.ID AS TESVIK_ID,\n\t\t\t\t\t\tM_BELGE_TESVIK_ISTEK.BANKA_ODEME_TARIHI AS BANKA_ODEME_TARIHI,\n\t\t\t\t\t\tM_BELGE_TESVIK_ISTEK.TARIH AS TESVIK_TARIHI,\n\t\t\t\t\t\tM_BELGELENDIRME_OGRENCI.IBAN,\n\t\t\t\t\t\tM_BELGELENDIRME_OGRENCI.ADI,\n\t\t\t\t\t\tM_BELGELENDIRME_OGRENCI.SOYADI,\n\t\t\t\t\t\tM_BELGELENDIRME_OGRENCI.BABA_ADI,\n\t\t\t\t\t\tM_BELGELENDIRME_OGRENCI.TC_KIMLIK,\n\t\t\t\t\t\tM_BELGELENDIRME_OGRENCI.TELEFON,\n\t\t\t\t\t\tM_BELGELENDIRME_OGRENCI.EMAIL,\n\t\t\t\t\t\tM_BELGE_SORGU.BELGE_MASRAF\n\t\t\t\t FROM M_BELGE_TESVIK_ADAY\n\t\t\t INNER JOIN M_BELGE_TESVIK_ISTEK ON M_BELGE_TESVIK_ISTEK.ID = M_BELGE_TESVIK_ADAY.TESVIK_ID\n\t\tLEFT OUTER JOIN M_BELGE_SORGU ON M_BELGE_SORGU.BELGENO = M_BELGE_TESVIK_ADAY.BELGE_NO\n\t\tLEFT OUTER JOIN M_BELGELENDIRME_OGRENCI ON M_BELGELENDIRME_OGRENCI.TC_KIMLIK = M_BELGE_SORGU.TCKIMLIKNO\n\t\t\t\t WHERE TESVIK_ID = ? AND M_BELGE_TESVIK_ADAY.ODENDI = 0\n\t\t\t ORDER BY M_BELGE_SORGU.BELGE_DUZENLEME_TARIHI ASC, M_BELGE_SORGU.AD ASC, M_BELGE_SORGU.SOYAD ASC, M_BELGE_SORGU.BELGE_MASRAF DESC"; $datas = $db->prep_exec($sql, array($tesvikid)); if ($temp == true) { $directory = EK_FOLDER . "ziraat_eft/temp_kurumdan_bankaya/" . date('Ymd'); } else { $directory = EK_FOLDER . "ziraat_eft/kurumdan_bankaya/" . date('Ymd'); } if (!file_exists($directory)) { mkdir($directory, 0777, true); } $fileName = "eft_desen" . date('YmdHis') . ".txt"; $fileLocation = $directory . '/' . $fileName; $file = fopen($fileLocation, "w"); $headerDatas = current($datas); $content = ""; $content .= str_pad('H', 1); $content .= str_pad(trim(ZIRAAT_MYK_KURUM_KODU), 5, "0", STR_PAD_LEFT); //$kurum_kodu $content .= str_pad(trim(ZIRAAT_MYK_KURUM_ALT_KODU), 3, "0", STR_PAD_LEFT); //$kurum_alt_kodu $content .= str_pad(trim($headerDatas['TESVIK_ID']), 10, "0", STR_PAD_LEFT); //$bordro_no $tarihparts = explode(" ", $headerDatas['BANKA_ODEME_TARIHI']); $tarihparts = explode("/", $tarihparts[0]); $content .= str_pad($tarihparts[2] . $tarihparts[1] . $tarihparts[0], 8); //TESVIK_TARIHI yerine BANKA_ODEME_TARIHI YAPILDI $content .= str_pad('Mesleki Yeterlilik Kurumu', 50) . "\n"; //$bordro_aciklama $toplam_adet = 0; $toplam_tutar = 0; foreach ($datas as $data) { $toplam_adet++; $detay = "D"; if ($data['BELGE_MASRAF'] == 1) { $data['UCRET'] = number_format((double) str_replace(',', '.', $data['UCRET']), 2, '.', '') + number_format((double) str_replace(',', '.', $data['BELGE_MASRAF_UCRET']), 2, '.', ''); } else { $data['UCRET'] = number_format((double) str_replace(',', '.', $data['UCRET']), 2, '.', ''); } $data['UCRET'] = number_format(str_replace(',', '.', $data['UCRET']), 2, '.', ''); $date = new DateTime('+1 day'); $content .= str_pad(trim($detay), 1); $content .= str_pad(trim($toplam_adet), 7, "0", STR_PAD_LEFT); //$toplam_adet if ($data['BANKA_ODEME_TARIHI'] != "") { $content .= str_pad(trim(date('Ymd', strtotime(str_replace('/', '-', $data['BANKA_ODEME_TARIHI'])))), 8); } else { $content .= str_pad("", 8); } //str_pad($date->format('Ymd'),8); //$ödeme_tarihi $content .= str_pad('0000', 4); //$alacak_banka_kodu $content .= str_pad('00000', 5); //$alacak_hesap_no $content .= str_pad(trim($data['IBAN']), 26); $content .= str_pad("", 16); //$alacak_kredikart_no $content .= str_pad(trim($data['UCRET']), 16, "0", STR_PAD_LEFT); //tutar $content .= FormFactory2::mb_str_pad(trim($data['ADI']), 30, ' ', STR_PAD_RIGHT); //str_pad($data['ADI'],30); $content .= FormFactory2::mb_str_pad(trim($data['SOYADI']), 30, ' ', STR_PAD_RIGHT); //str_pad($data['SOYADI'],30); $content .= FormFactory2::mb_str_pad(trim($data['BABA_ADI']), 30, ' ', STR_PAD_RIGHT); $content .= str_pad(trim($data['TC_KIMLIK']), 11); $content .= FormFactory2::mb_str_pad(trim(mb_substr("MYK MeslekiYeterlilikBelgesi sınav ücreti iadesi hesabınıza yatırılmıştır.Mesleki Yeterlilik Kurumu", 0, 100, "UTF-8")), 100, ' ', STR_PAD_RIGHT); //$aciklama $content .= str_pad(substr(ltrim($data['TELEFON'], 0), 0, 10), 10); $content .= str_pad(trim($data['EMAIL'], 100)) . "\n"; $toplam_tutar += $data['UCRET']; } $trailer = "T"; $content .= str_pad(trim($trailer), 1); $content .= str_pad(trim($toplam_adet), 7, "0", STR_PAD_LEFT); $content .= str_pad(number_format(trim($toplam_tutar), 2, '.', ''), 16, "0", STR_PAD_LEFT); fwrite($file, $content); fclose($file); return date('Ymd') . "/" . $fileName; }