Add the main admin, dosen, mahasiswa, API, and service code needed to run the core legacy application with configurable upload storage.
145 lines
4.1 KiB
PHP
145 lines
4.1 KiB
PHP
<?php
|
|
|
|
session_start();
|
|
|
|
include '../../steven/conf/koneksiPDO.php';
|
|
include '../../steven/conf/function.php';
|
|
|
|
$conn = new createCon();
|
|
$dbh = $conn->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));
|