Add the main admin, dosen, mahasiswa, API, and service code needed to run the core legacy application with configurable upload storage.
117 lines
3.0 KiB
PHP
117 lines
3.0 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-mhs'])) {
|
|
echo json_encode(['status' => 403, 'msg' => 'Forbidden']);
|
|
exit;
|
|
}
|
|
|
|
$status = $_GET['status'];
|
|
$kk = $_GET['kk'];
|
|
|
|
$idMahasiswa = $_SESSION['login-mhs']['id'];
|
|
|
|
$sql = "SELECT * FROM tb_kelompok_keahlian";
|
|
$stmt = $dbh->prepare($sql);
|
|
$stmt->execute();
|
|
|
|
$listKK = [];
|
|
while($row = $stmt->fetch(PDO::FETCH_ASSOC)){
|
|
$listKK[$row['idKK']] = $row['namaKK'];
|
|
}
|
|
|
|
$sql = "SELECT * FROM tbdosen";
|
|
$stmt = $dbh->prepare($sql);
|
|
$stmt->execute();
|
|
|
|
$listDosen = [];
|
|
while($row = $stmt->fetch(PDO::FETCH_ASSOC)){
|
|
$listDosen[$row['iddosen']] = $row['nmLengkap'];
|
|
}
|
|
|
|
|
|
$sql = "SELECT tData.*, tbmhs.nim, tbmhs.nmLengkap FROM (SELECT * FROM tb_penawaran_judul LEFT JOIN (SELECT t.idPenawaranAmbil, t.idMhs, t.statusPengambilan, t.waktuPengambilan, t.waktuVerifikasi, r.maxWaktu
|
|
FROM (
|
|
SELECT idPenawaranAmbil, MAX(waktuPengambilan) as maxWaktu
|
|
FROM tb_ambil_judul
|
|
GROUP BY idPenawaranAmbil
|
|
) r
|
|
INNER JOIN tb_ambil_judul t
|
|
ON t.idPenawaranAmbil = r.idPenawaranAmbil AND t.waktuPengambilan = r.maxWaktu) as tAmbil ON tb_penawaran_judul.idPenawaran = tAmbil.idPenawaranAmbil) tData LEFT JOIN tbmhs ON tData.idMhs = tbmhs.idmhs ORDER BY waktuInput DESC";
|
|
$stmt = $dbh->prepare($sql);
|
|
$stmt->execute();
|
|
|
|
$listData = [];
|
|
|
|
while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
|
|
$judul = $row['judul'];
|
|
$idPenawaran = $row['idPenawaran'];
|
|
$maxWaktu = $row['maxWaktu'];
|
|
$statusDb = $row['statusPengambilan'];
|
|
$namaMhs = $row['nmLengkap'];
|
|
$nimMhs = $row['nim'];
|
|
$idKK = $row['kk'];
|
|
$idDosenInput = $row['idDosen'];
|
|
$deskripsi = $row['deskripsi'];
|
|
|
|
$namaKK = '-';
|
|
if(isset($listKK[$idKK])){
|
|
$namaKK = $listKK[$idKK];
|
|
}
|
|
|
|
$namaDosen = '-';
|
|
if(isset($listDosen[$idDosenInput])){
|
|
$namaDosen = $listDosen[$idDosenInput];
|
|
}
|
|
|
|
if($statusDb == "2"){
|
|
$namaMhs = null;
|
|
}
|
|
|
|
if($status == "0"){
|
|
if(!($statusDb == null || $statusDb == "2")){
|
|
continue;
|
|
}
|
|
}
|
|
|
|
if($status == "1"){
|
|
if($statusDb == null || $statusDb == "2"){
|
|
continue;
|
|
}
|
|
}
|
|
|
|
|
|
if($kk != "Semua"){
|
|
if($idKK != $kk){
|
|
continue;
|
|
}
|
|
}
|
|
|
|
$tglHangusOtomatis = date('d-m-Y 00:00:00', strtotime($maxWaktu. ' +6 day'));
|
|
|
|
array_push($listData, [
|
|
'id' => $idPenawaran,
|
|
'judul' => $judul,
|
|
'kk' => $namaKK,
|
|
'dosen' => $namaDosen,
|
|
'waktuBooking' => date('d-m-Y H:i:s', strtotime($maxWaktu)),
|
|
'hangus' => $tglHangusOtomatis,
|
|
'status' => $statusDb,
|
|
'nama' => $namaMhs,
|
|
'nim' => $nimMhs,
|
|
'deskripsi' => $deskripsi
|
|
]);
|
|
|
|
}
|
|
|
|
echo json_encode(utf8ize($listData));
|
|
|
|
?>
|