Add SPOTA core PHP application
Add the main admin, dosen, mahasiswa, API, and service code needed to run the core legacy application with configurable upload storage.
This commit is contained in:
147
dosen/API/getEarlyWarningMonitoringByOutline.php
Normal file
147
dosen/API/getEarlyWarningMonitoringByOutline.php
Normal file
@@ -0,0 +1,147 @@
|
||||
<?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 start >= '$date1Year'";
|
||||
}
|
||||
|
||||
if ($lewat == 1) {
|
||||
$whereLewat = " AND start < '$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, start as tanggalSeminar, thnmasuk FROM tbjadwal LEFT JOIN tbmhs ON tbjadwal.idMhs = tbmhs.idmhs WHERE tbjadwal.jenis = 'Outline' AND tbjadwal.publish = 'Y' $whereLewat) tJadwal ON tbrekaphasil.nim = tJadwal.nimMahasiswa WHERE kep_akhir = 1 $whereBimbingan ORDER BY tanggalSeminar 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;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
$idMhs = $row['idMahasiswa'];
|
||||
$tanggalSeminar = $row['tanggalSeminar'];
|
||||
$tanggalSeminarYmd = $row['tanggalSeminar'];
|
||||
|
||||
$arrTglSeminar = explode(' ', $tanggalSeminar);
|
||||
if (sizeof($arrTglSeminar) > 0) {
|
||||
//$tanggalSeminar = date('d-m-Y', $arrTglSeminar[0]);
|
||||
$arrYmd = explode('-', $arrTglSeminar[0]);
|
||||
$tanggalSeminar = $arrYmd[2].'-'.$arrYmd[1].'-'.$arrYmd[0];
|
||||
}
|
||||
|
||||
if ($idJadwal != null) {
|
||||
$nim = $row['nim'];
|
||||
|
||||
$sql = "SELECT * FROM tbjadwal WHERE idMhs = '$idMhs' AND jenis = 'Sidang'";
|
||||
$stmt1 = $dbh->prepare($sql);
|
||||
$stmt1->execute();
|
||||
|
||||
if ($stmt1->rowCount() > 0) {
|
||||
continue;
|
||||
}
|
||||
|
||||
$sql = "SELECT * FROM tbmhs WHERE nim = '$nim'";
|
||||
$stmt1 = $dbh->prepare($sql);
|
||||
//$stmt1->bindParam(':nim', $nim);
|
||||
$stmt1->execute();
|
||||
|
||||
$namaMahasiswa = '';
|
||||
while ($row1 = $stmt1->fetch(PDO::FETCH_ASSOC)) {
|
||||
$namaMahasiswa = $row1['nmLengkap'];
|
||||
}
|
||||
|
||||
$tglKep = $row['tgl_kep'];
|
||||
|
||||
$date1 = date_create(date('Y-m-d'));
|
||||
$date2 = date_create($tanggalSeminarYmd);
|
||||
$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'],
|
||||
'tanggalSeminar' => $tanggalSeminar,
|
||||
'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,
|
||||
]);
|
||||
}
|
||||
}
|
||||
|
||||
echo json_encode(utf8ize($listData));
|
||||
Reference in New Issue
Block a user