connect(); header('Content-Type: application/json'); if (!isset($_SESSION['login-dosen'])) { echo json_encode(['status' => 403, 'msg' => 'Forbidden']); exit; } $lewat = intval($_GET['lewat']); $bimbingan = intval($_GET['bimbingan']); $nipDosen = $_SESSION['login-dosen']['nip']; $whereLewat = ''; $whereBimbingan = ''; $time1Year = strtotime(date('Y-m-d').' -1 year'); $date1Year = date('Y-m-d', $time1Year); if ($lewat == 0) { $whereLewat = " AND tgl_kep >= '$date1Year'"; } if ($lewat == 1) { $whereLewat = " AND tgl_kep < '$date1Year'"; } if ($bimbingan == 0) { $whereBimbingan = " AND (pemb1 = '$nipDosen' OR pemb2 = '$nipDosen') "; } $listTahunMasukMahasiswa = []; $sql = "SELECT * FROM tbmhs"; $stmt = $dbh->prepare($sql); $stmt->execute(); while($row = $stmt->fetch(PDO::FETCH_ASSOC)){ $nimDb = $row['nim']; $thnMasukDb = $row['thnmasuk']; $listTahunMasukMahasiswa[$nimDb] = intval($thnMasukDb); } $sql = "SELECT * FROM tbrekaphasil LEFT JOIN (SELECT tbjadwal.id as idJadwal, tbjadwal.idMhs as idMahasiswa, tbmhs.nim as nimMahasiswa FROM tbjadwal LEFT JOIN tbmhs ON tbjadwal.idMhs = tbmhs.idmhs WHERE tbjadwal.jenis = 'Sidang' AND tbjadwal.publish = 'Y') tJadwal ON tbrekaphasil.nim = tJadwal.nimMahasiswa WHERE kep_akhir = 1 $whereLewat $whereBimbingan ORDER BY tgl_kep ASC"; $stmt = $dbh->prepare($sql); $stmt->execute(); $currentYear = date('Y'); $limitYear = $currentYear - 8; $listData = []; while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) { $idJadwal = $row['idJadwal']; $nim = $row['nim']; if(isset($listTahunMasukMahasiswa[$nim])){ $tahunMasuk = $listTahunMasukMahasiswa[$nim]; if($tahunMasuk < $limitYear){ continue; } } if ($idJadwal == null) { $nim = $row['nim']; $sql = "SELECT * FROM tbmhs WHERE nim = '$nim'"; $stmt1 = $dbh->prepare($sql); $stmt1->bindParam(':nim', $nim); $stmt1->execute(); $namaMahasiswa = ''; $idMhs = ''; while ($row1 = $stmt1->fetch(PDO::FETCH_ASSOC)) { $namaMahasiswa = $row1['nmLengkap']; $idMhs = $row1['idmhs']; } $sql = "SELECT * FROM tbjadwal WHERE idMhs = '$idMhs' AND jenis = 'Outline'"; $stmt1 = $dbh->prepare($sql); $stmt1->execute(); $tanggalSeminar = null; while ($row1 = $stmt1->fetch(PDO::FETCH_ASSOC)) { $tanggalSeminar = $row1['start']; $arrTglSeminar = explode(' ', $tanggalSeminar); if (sizeof($arrTglSeminar) > 0) { $arrYmd = explode('-', $arrTglSeminar[0]); $tanggalSeminar = $arrYmd[2].'-'.$arrYmd[1].'-'.$arrYmd[0]; } } $tglKep = $row['tgl_kep']; $date1 = date_create(date('Y-m-d')); $date2 = date_create($tglKep); $diff = date_diff($date1, $date2); $diffHari = intval($diff->format('%a')); $lewatHari = intval($diff->format('%d')); $diffTahun = intval($diff->format('%y')); $diffBulan = intval($diff->format('%m')); if ($diffTahun > 0) { $diffBulan = ($diffTahun * 12) + $diffBulan; } if ($lewatHari > 0) { ++$diffBulan; } if ($diffBulan > 12) { $diffBulan = 12; } array_push($listData, [ 'id' => $row['idpraoutline'], 'nama' => $namaMahasiswa, 'nim' => $row['nim'], 'judul' => $row['judul_final'], 'pemb1' => $row['pemb1'], 'pemb2' => $row['pemb2'], 'peng1' => $row['peng1'], 'peng2' => $row['peng2'], 'tglKeputusan' => date('d-m-Y', strtotime($row['tgl_kep'])), 'semester' => $row['semester'], 'tahun' => $row['tahun_ajaran'], 'waktuBerjalan' => $diffHari, 'bulanBerjalan' => $diffBulan, 'tanggalSeminar' => $tanggalSeminar, ]); } } echo json_encode(utf8ize($listData));