Add consultation module assets and libraries
This commit is contained in:
226
konsultasi/API/datatable/data_kerja_praktek.php
Normal file
226
konsultasi/API/datatable/data_kerja_praktek.php
Normal file
@@ -0,0 +1,226 @@
|
||||
<?php
|
||||
|
||||
session_start();
|
||||
|
||||
include '../../conf/koneksiPDO.php';
|
||||
include '../../conf/function.php';
|
||||
|
||||
header('Content-Type: application/json');
|
||||
|
||||
$search = $_GET['search']['value'];
|
||||
$length = intval($_GET['length']);
|
||||
$start = intval($_GET['start']);
|
||||
$draw = $_GET['draw'];
|
||||
$verif = $_GET['verif'];
|
||||
$searchText = '%'.$search.'%';
|
||||
|
||||
$conn = new createCon();
|
||||
$dbh = $conn->connect();
|
||||
|
||||
$connBio = new createCon();
|
||||
$dbhBio = $connBio->connectDbBio();
|
||||
|
||||
$connDosen = new createCon();
|
||||
$dbhDosen = $connDosen->connectDbDosen();
|
||||
|
||||
if (!isset($_SESSION['konsulDosen'])) {
|
||||
echo getUnauthorizedMessage();
|
||||
exit();
|
||||
}
|
||||
|
||||
$whereVerif = '';
|
||||
if (!($verif == 'all')) {
|
||||
$verif = intval($verif);
|
||||
$whereVerif = " AND setuju = '$verif' ";
|
||||
|
||||
if (isset($_GET['kp'])) {
|
||||
$whereVerif = " AND proposalApproved = '$verif' ";
|
||||
}
|
||||
}
|
||||
|
||||
$nipDosen = $_SESSION['konsulDosen']['nip'];
|
||||
|
||||
$sql = 'SELECT * FROM dosen';
|
||||
$stmt = $dbhDosen->prepare($sql);
|
||||
$stmt->execute();
|
||||
|
||||
$listDosen = [];
|
||||
while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
|
||||
$listDosen[$row['id_dosen']] = $row['nama_dosen'];
|
||||
}
|
||||
|
||||
$sql = 'SELECT * FROM dosen WHERE nip = :nip';
|
||||
$stmt = $dbhDosen->prepare($sql);
|
||||
$stmt->bindParam(':nip', $nipDosen);
|
||||
$stmt->execute();
|
||||
|
||||
if ($stmt->rowCount() == 0) {
|
||||
echo getDataNotFoundMessage();
|
||||
exit();
|
||||
}
|
||||
|
||||
while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
|
||||
$idDosen = $row['id_dosen'];
|
||||
}
|
||||
$whereJenisDosen = "AND (id_dosen_pa = '$idDosen' OR pembimbingLapangan = '$idDosen')";
|
||||
|
||||
if (isset($_GET['pa'])) {
|
||||
$whereJenisDosen = "AND id_dosen_pa = '$idDosen'";
|
||||
}
|
||||
|
||||
if (isset($_GET['kp'])) {
|
||||
$whereJenisDosen = "AND pembimbingLapangan = '$idDosen'";
|
||||
}
|
||||
|
||||
$sql = "SELECT kerja_praktek.*, nama_lengkap, id_dosen_pa, no_telp, no_hp, email FROM kerja_praktek LEFT JOIN bio_mahasiswa ON kerja_praktek.nim = bio_mahasiswa.nim WHERE (nama_lengkap LIKE :search OR kerja_praktek.nim LIKE :search2) $whereJenisDosen $whereVerif";
|
||||
$stmt = $dbhBio->prepare($sql);
|
||||
$stmt->bindParam(':search', $searchText);
|
||||
$stmt->bindParam(':search2', $searchText);
|
||||
$stmt->execute();
|
||||
|
||||
$totalData = $stmt->rowCount();
|
||||
|
||||
$sqlLimit = "SELECT kerja_praktek.*, nama_lengkap, id_dosen_pa, no_telp, no_hp, email FROM kerja_praktek LEFT JOIN bio_mahasiswa ON kerja_praktek.nim = bio_mahasiswa.nim WHERE (nama_lengkap LIKE :search OR kerja_praktek.nim LIKE :search2) $whereJenisDosen $whereVerif ORDER BY waktuInput DESC LIMIT $start, $length";
|
||||
$stmt = $dbhBio->prepare($sqlLimit);
|
||||
$stmt->bindParam(':search', $searchText);
|
||||
$stmt->bindParam(':search2', $searchText);
|
||||
$stmt->execute();
|
||||
$data = [];
|
||||
|
||||
$no = 1;
|
||||
while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
|
||||
$noPushed = $start + $no;
|
||||
$idKerjaPraktek = convertKosong($row['idKerjaPraktek']);
|
||||
$semester = convertKosong($row['semester']);
|
||||
$tahun = convertKosong($row['tahun']);
|
||||
$instansi = convertKosong($row['namaInstansi']);
|
||||
$alamatInstansi = convertKosong($row['alamatInstansi']);
|
||||
$idDosenPA = $row['id_dosen_pa'];
|
||||
$topik = convertKosong($row['topik']);
|
||||
$pimpinan = convertKosong($row['namaPimpinan']);
|
||||
$pembimbing = convertKosong($row['pembimbingLapangan']);
|
||||
$alamatInstansi = convertKosong($row['alamatInstansi']);
|
||||
$noTelp = convertKosong($row['no_telp']);
|
||||
$noHP = convertKosong($row['no_hp']);
|
||||
$email = convertKosong($row['email']);
|
||||
$proposalApproved = $row['proposalApproved'];
|
||||
$catatanProposalKP = '';
|
||||
|
||||
if (isset($_GET['kp'])) {
|
||||
$catatanProposalKP = $row['catatanRevisiProposal'];
|
||||
}
|
||||
$fileProposal = $row['proposal'];
|
||||
if ($fileProposal != null && $fileProposal != '') {
|
||||
$fileProposal = "../../biodata/berkas/$fileProposal";
|
||||
}
|
||||
|
||||
$pembimbingKP = false;
|
||||
if ($pembimbing === $idDosen) {
|
||||
$pembimbingKP = true;
|
||||
}
|
||||
|
||||
$pembimbingPA = false;
|
||||
if ($idDosenPA === $idDosen) {
|
||||
$pembimbingPA = true;
|
||||
}
|
||||
|
||||
if (isset($listDosen[$pembimbing])) {
|
||||
$namaPembimbing = $listDosen[$pembimbing];
|
||||
} else {
|
||||
$namaPembimbing = '-';
|
||||
}
|
||||
|
||||
if ($pembimbing == '0') {
|
||||
$namaPembimbing = 'Belum Ditentukan';
|
||||
}
|
||||
|
||||
$narahubung = convertKosong($row['naraHubung']);
|
||||
$telpNarahubung = convertKosong($row['telpNarahubung']);
|
||||
$deskripsiKP = convertKosong($row['deskripsiKP']);
|
||||
$catatanKajur = convertKosong($row['catatanKajur']);
|
||||
$waktuInput = convertKosong($row['waktuInput']);
|
||||
$setuju = convertKosong($row['setuju']);
|
||||
$timestampSetuju = convertKosong($row['timestampSetuju']);
|
||||
$setujuAdmin = convertKosong($row['setujuAdmin']);
|
||||
$timestampSetujuAdmin = convertKosong($row['timestampSetujuAdmin']);
|
||||
$catatanPA = $row['catatanPA'];
|
||||
|
||||
$dateTimeInput = '-';
|
||||
if ($waktuInput !== '0') {
|
||||
$dateTimeInput = date('d-m-Y H:i:s', $waktuInput);
|
||||
}
|
||||
|
||||
$dateTimeSetuju = '-';
|
||||
if ($timestampSetuju !== '0') {
|
||||
$dateTimeSetuju = date('d-m-Y H:i:s', $timestampSetuju);
|
||||
}
|
||||
|
||||
$dateTimeSetujuAdmin = '-';
|
||||
if ($timestampSetujuAdmin !== '0') {
|
||||
$dateTimeSetujuAdmin = date('d-m-Y H:i:s', $timestampSetujuAdmin);
|
||||
}
|
||||
$namaMahasiswa = $row['nama_lengkap'];
|
||||
$nim = $row['nim'];
|
||||
|
||||
$waktuTerakhirKonsul = $row['waktuTerakhirKonsul'];
|
||||
if ($waktuTerakhirKonsul == '') {
|
||||
$diffDay = '';
|
||||
$terakhirKonsulText = '-';
|
||||
} else {
|
||||
$timeAwal = intval($waktuTerakhirKonsul);
|
||||
$timeAkhir = time();
|
||||
$datediff = $timeAkhir - $timeAwal;
|
||||
|
||||
$diffDay = round($datediff / (60 * 60 * 24));
|
||||
|
||||
if ($diffDay < 0) {
|
||||
$diffDay = 0;
|
||||
}
|
||||
$terakhirKonsulText = date('d-m-Y', $waktuTerakhirKonsul).'<br>('.$diffDay.' Hari)';
|
||||
}
|
||||
|
||||
array_push($data, [
|
||||
$noPushed,
|
||||
$topik,
|
||||
$instansi,
|
||||
$semester,
|
||||
$tahun,
|
||||
$namaPembimbing,
|
||||
$setuju,
|
||||
$idKerjaPraktek,
|
||||
$narahubung,
|
||||
$telpNarahubung,
|
||||
$deskripsiKP,
|
||||
$catatanKajur,
|
||||
$dateTimeInput,
|
||||
$dateTimeSetuju,
|
||||
$pimpinan,
|
||||
$alamatInstansi,
|
||||
$setujuAdmin,
|
||||
$namaMahasiswa,
|
||||
$nim,
|
||||
$catatanPA,
|
||||
$pembimbingKP,
|
||||
$pembimbingPA,
|
||||
$dateTimeSetujuAdmin,
|
||||
$proposalApproved,
|
||||
$fileProposal,
|
||||
$catatanProposalKP,
|
||||
intval($row['lanjutanDari']),
|
||||
$noTelp,
|
||||
$noHP,
|
||||
$email,
|
||||
]
|
||||
);
|
||||
++$no;
|
||||
}
|
||||
|
||||
$recordsTotal = $totalData;
|
||||
|
||||
$res = [];
|
||||
$res['draw'] = $draw;
|
||||
$res['recordsTotal'] = $recordsTotal;
|
||||
$res['recordsFiltered'] = $recordsTotal;
|
||||
$res['data'] = $data;
|
||||
|
||||
echo json_encode($res);
|
||||
107
konsultasi/API/datatable/data_tugas_akhir.php
Normal file
107
konsultasi/API/datatable/data_tugas_akhir.php
Normal file
@@ -0,0 +1,107 @@
|
||||
<?php
|
||||
|
||||
session_start();
|
||||
|
||||
include '../../conf/koneksiPDO.php';
|
||||
include '../../conf/function.php';
|
||||
|
||||
header('Content-Type: application/json');
|
||||
|
||||
$search = $_GET['search']['value'];
|
||||
$length = intval($_GET['length']);
|
||||
$start = intval($_GET['start']);
|
||||
$draw = $_GET['draw'];
|
||||
$orderBy = $_GET['orderBy'];
|
||||
$searchText = '%'.$search.'%';
|
||||
|
||||
$conn = new createCon();
|
||||
$dbh = $conn->connect();
|
||||
|
||||
if (!isset($_SESSION['konsulDosen'])) {
|
||||
echo getUnauthorizedMessage();
|
||||
exit();
|
||||
}
|
||||
|
||||
$orderQ = '';
|
||||
switch ($orderBy) {
|
||||
case 'judulTerbaru': $orderQ = ' ORDER BY tugas_akhir.idTugasAkhir DESC '; break;
|
||||
case 'konsultasiTerbaru': $orderQ = ' ORDER BY waktuTerakhirKonsul DESC '; break;
|
||||
case 'konsultasiTerlama': $orderQ = ' ORDER BY waktuTerakhirKonsul ASC '; break;
|
||||
}
|
||||
|
||||
$whereSelesai = '';
|
||||
if (isset($_GET['selesai'])) {
|
||||
$selesai = $_GET['selesai'];
|
||||
if ($selesai != 'all') {
|
||||
$selesai = intval($selesai);
|
||||
$whereSelesai = " AND selesai = '$selesai' ";
|
||||
}
|
||||
}
|
||||
|
||||
$nipDosen = $_SESSION['konsulDosen']['nip'];
|
||||
|
||||
$sql = "SELECT * FROM tugas_akhir LEFT JOIN mahasiswa ON tugas_akhir.nim = mahasiswa.nim LEFT JOIN (SELECT * FROM konsultasi GROUP BY idTugasAkhir) t ON tugas_akhir.idTugasAkhir = t.idTugasAkhir WHERE (pemb1 = '$nipDosen' OR pemb2 = '$nipDosen') AND (judul LIKE :search OR nama LIKE :search2 OR tugas_akhir.nim LIKE :search3) AND keputusan = '1' $whereSelesai";
|
||||
$stmt = $dbh->prepare($sql);
|
||||
$stmt->bindParam(':search', $searchText);
|
||||
$stmt->bindParam(':search2', $searchText);
|
||||
$stmt->bindParam(':search3', $searchText);
|
||||
$stmt->execute();
|
||||
|
||||
$totalData = $stmt->rowCount();
|
||||
|
||||
$sqlLimit = "SELECT tugas_akhir.idTugasAkhir, judul, nama, tugas_akhir.nim, semester, waktuTerakhirKonsul, selesai FROM tugas_akhir LEFT JOIN mahasiswa ON tugas_akhir.nim = mahasiswa.nim LEFT JOIN (SELECT idTugasAkhir, MAX(timestamp) AS waktuTerakhirKonsul FROM konsultasi GROUP BY idTugasAkhir) t ON tugas_akhir.idTugasAkhir = t.idTugasAkhir WHERE (pemb1 = '$nipDosen' OR pemb2 = '$nipDosen') AND (judul LIKE :search OR nama LIKE :search2 OR tugas_akhir.nim LIKE :search3) AND keputusan = '1' $whereSelesai $orderQ LIMIT $start, $length";
|
||||
$stmt = $dbh->prepare($sqlLimit);
|
||||
$stmt->bindParam(':search', $searchText);
|
||||
$stmt->bindParam(':search2', $searchText);
|
||||
$stmt->bindParam(':search3', $searchText);
|
||||
$stmt->execute();
|
||||
$data = [];
|
||||
|
||||
$no = 1;
|
||||
while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
|
||||
$noPushed = $start + $no;
|
||||
$idTA = $row['idTugasAkhir'];
|
||||
$judul = $row['judul'];
|
||||
$nama = $row['nama'];
|
||||
$nim = $row['nim'];
|
||||
$semester = $row['semester'];
|
||||
|
||||
$waktuTerakhirKonsul = $row['waktuTerakhirKonsul'];
|
||||
if ($waktuTerakhirKonsul == '') {
|
||||
$diffDay = '';
|
||||
$terakhirKonsulText = '-';
|
||||
} else {
|
||||
$timeAwal = intval($waktuTerakhirKonsul);
|
||||
$timeAkhir = time();
|
||||
$datediff = $timeAkhir - $timeAwal;
|
||||
|
||||
$diffDay = round($datediff / (60 * 60 * 24));
|
||||
|
||||
if ($diffDay < 0) {
|
||||
$diffDay = 0;
|
||||
}
|
||||
$terakhirKonsulText = date('d-m-Y', $waktuTerakhirKonsul).'<br>('.$diffDay.' Hari)';
|
||||
}
|
||||
|
||||
array_push($data, [
|
||||
$noPushed,
|
||||
$judul,
|
||||
$nama.'<br>NIM <b>'.$nim.'</b>',
|
||||
$semester,
|
||||
$terakhirKonsulText,
|
||||
$idTA,
|
||||
intval($row['selesai']),
|
||||
]
|
||||
);
|
||||
++$no;
|
||||
}
|
||||
|
||||
$recordsTotal = $totalData;
|
||||
|
||||
$res = [];
|
||||
$res['draw'] = $draw;
|
||||
$res['recordsTotal'] = $recordsTotal;
|
||||
$res['recordsFiltered'] = $recordsTotal;
|
||||
$res['data'] = $data;
|
||||
|
||||
echo json_encode($res);
|
||||
0
konsultasi/API/datatable/index.php
Normal file
0
konsultasi/API/datatable/index.php
Normal file
Reference in New Issue
Block a user