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:
240
dosen/page/praoutline/list.statistikdosen.php
Normal file
240
dosen/page/praoutline/list.statistikdosen.php
Normal file
@@ -0,0 +1,240 @@
|
||||
<?php
|
||||
|
||||
session_start();
|
||||
$smt = 'all';
|
||||
$whereSmt = '';
|
||||
$whereSmtPenguji = '';
|
||||
if (isset($_GET['smt'])) {
|
||||
if ($_GET['smt'] != 'all') {
|
||||
$smt = $_GET['smt'];
|
||||
$whereSmt = " AND semester = '$smt' ";
|
||||
$whereSmtPenguji = " AND semesterPenunjukanPenguji = '$smt' ";
|
||||
}
|
||||
}
|
||||
$idprodi = $_SESSION['login-dosen']['prodi'];
|
||||
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
|
||||
* Easy set variables
|
||||
*/
|
||||
|
||||
/* Array of database columns which should be read and sent back to DataTables. Use a space where
|
||||
* you want to insert a non-database field (for example a counter or static image)
|
||||
*/
|
||||
$aColumns = ['td.nmLengkap'];
|
||||
|
||||
/* Indexed column (used for fast and accurate table cardinality) */
|
||||
$sIndexColumn = 'trh.id';
|
||||
|
||||
/* DB table to use */
|
||||
//rev1$sTable = 'tbrekaphasil trh,tbdosen td ';
|
||||
$sTable = 'tbdosen td ';
|
||||
|
||||
/* Database connection information */
|
||||
include '../../../inc/helper.php';
|
||||
include '../../../inc/konfigurasi.php';
|
||||
include '../../../inc/db.pdo.class.php';
|
||||
|
||||
$db = new dB($dbsetting);
|
||||
|
||||
/*
|
||||
* Paging
|
||||
*/
|
||||
$sLimit = '';
|
||||
if (isset($_GET['iDisplayStart']) && $_GET['iDisplayLength'] != '-1') {
|
||||
$sLimit = 'LIMIT '.intval($_GET['iDisplayStart']).', '.
|
||||
intval($_GET['iDisplayLength']);
|
||||
}
|
||||
|
||||
/*
|
||||
* Ordering
|
||||
*/
|
||||
$sOrder = 'ORDER BY td.nmLengkap, td.nip';
|
||||
|
||||
/*
|
||||
* Filtering
|
||||
*/
|
||||
$sWhere = '';
|
||||
if (isset($_GET['sSearch']) && $_GET['sSearch'] != '') {
|
||||
$sWhere = 'WHERE (';
|
||||
for ($i = 0; $i < count($aColumns); ++$i) {
|
||||
if (isset($_GET['bSearchable_'.$i]) && $_GET['bSearchable_'.$i] == 'true') {
|
||||
$sWhere .= ''.$aColumns[$i]." LIKE '%".$_GET['sSearch']."%' OR ";
|
||||
}
|
||||
}
|
||||
$sWhere = substr_replace($sWhere, '', -3);
|
||||
$sWhere .= ')';
|
||||
}
|
||||
|
||||
/* Individual column filtering */
|
||||
for ($i = 0; $i < count($aColumns); ++$i) {
|
||||
if (isset($_GET['bSearchable_'.$i]) && $_GET['bSearchable_'.$i] == 'true' && $_GET['sSearch_'.$i] != '') {
|
||||
if ($sWhere == '') {
|
||||
$sWhere = 'WHERE ';
|
||||
} else {
|
||||
$sWhere .= ' AND ';
|
||||
}
|
||||
$sWhere .= ''.$aColumns[$i]." LIKE '%".$_GET['sSearch_'.$i]."%' ";
|
||||
}
|
||||
}
|
||||
|
||||
$where2 = '';
|
||||
/**rev1
|
||||
if ($sWhere != '') {
|
||||
$where2 = " AND td.status='A' AND trh.idProdi='$idprodi' ";
|
||||
} else {
|
||||
$where2 = " WHERE td.status='A' AND trh.idProdi='$idprodi' ";
|
||||
}
|
||||
*/
|
||||
if ($sWhere != '') {
|
||||
$where2 = " AND td.status='A'";
|
||||
} else {
|
||||
$where2 = " WHERE td.status='A'";
|
||||
}
|
||||
/*
|
||||
* SQL queries
|
||||
* Get data to display
|
||||
*/
|
||||
/**rev1
|
||||
$sQuery0 = "
|
||||
SELECT td.nip,td.nmLengkap,
|
||||
COUNT(if(trh.pemb1=td.nip,1,null)) as pemb1,
|
||||
COUNT(if(trh.pemb2=td.nip,1,null)) as pemb2,
|
||||
COUNT(if(trh.peng1=td.nip,1,null)) as peng1,
|
||||
COUNT(if(trh.peng2=td.nip,1,null)) as peng2
|
||||
FROM $sTable
|
||||
$sWhere
|
||||
$where2
|
||||
$whereSmt
|
||||
AND td.status = 'A'
|
||||
GROUP BY td.nip
|
||||
$sOrder
|
||||
";
|
||||
*/
|
||||
|
||||
$sQuery0 = "
|
||||
SELECT td.nip,td.nmLengkap,
|
||||
(SELECT COUNT(id) FROM tbrekaphasil WHERE tbrekaphasil.pemb1 = td.nip $whereSmt ) as pemb1,
|
||||
(SELECT COUNT(id) FROM tbrekaphasil WHERE tbrekaphasil.pemb2 = td.nip $whereSmt ) as pemb2,
|
||||
(SELECT COUNT(id) FROM tbrekaphasil WHERE tbrekaphasil.peng1 = td.nip $whereSmt ) as peng1,
|
||||
(SELECT COUNT(id) FROM tbrekaphasil WHERE tbrekaphasil.peng2 = td.nip $whereSmt ) as peng2
|
||||
FROM $sTable
|
||||
$sWhere
|
||||
$where2
|
||||
AND td.status = 'A'
|
||||
$sOrder";
|
||||
|
||||
|
||||
|
||||
$db->runQuery($sQuery0);
|
||||
$iFilteredTotal = $db->dbRows();
|
||||
|
||||
$result = $db->runQuery($sQuery0.$sLimit);
|
||||
|
||||
/* Total data set length */
|
||||
$sQuery2 = "
|
||||
SELECT COUNT(DISTINCT(td.nip)) as total FROM tbrekaphasil trh,tbdosen td $sWhere $where2 $whereSmt AND td.status = 'A'
|
||||
";
|
||||
//echo $sQuery2;
|
||||
$db->runQuery($sQuery2);
|
||||
$aResultTotal = $db->dbFetch();
|
||||
$iTotal = $aResultTotal['total'];
|
||||
|
||||
/*$rResultTotal = mysql_query( $sQuery, $gaSql['link'] ) or fatal_error( 'MySQL Error: ' . mysql_errno() );
|
||||
$aResultTotal = mysql_fetch_array($rResultTotal);
|
||||
$iTotal = $aResultTotal[0];*/
|
||||
|
||||
/*
|
||||
* Output
|
||||
*/
|
||||
|
||||
$output = [
|
||||
'sEcho' => intval($_GET['sEcho']),
|
||||
'iTotalRecords' => $iTotal,
|
||||
'iTotalDisplayRecords' => $iFilteredTotal,
|
||||
'aaData' => [],
|
||||
];
|
||||
|
||||
/**rev1
|
||||
$sQuery0 = "
|
||||
SELECT td.nip,td.nmLengkap,
|
||||
COUNT(if(trh.pemb1=td.nip,1,null)) as pemb1,
|
||||
COUNT(if(trh.pemb2=td.nip,1,null)) as pemb2,
|
||||
COUNT(if(trh.peng1=td.nip,1,null)) as peng1,
|
||||
COUNT(if(trh.peng2=td.nip,1,null)) as peng2
|
||||
FROM $sTable
|
||||
$sWhere
|
||||
$where2
|
||||
$whereSmtPenguji
|
||||
AND td.status = 'A'
|
||||
GROUP BY td.nip
|
||||
$sOrder
|
||||
";
|
||||
*/
|
||||
|
||||
$sQuery0 = "
|
||||
SELECT td.nip,td.nmLengkap,
|
||||
(SELECT COUNT(id) FROM tbrekaphasil WHERE tbrekaphasil.pemb1 = td.nip $whereSmtPenguji ) as pemb1,
|
||||
(SELECT COUNT(id) FROM tbrekaphasil WHERE tbrekaphasil.pemb2 = td.nip $whereSmtPenguji ) as pemb2,
|
||||
(SELECT COUNT(id) FROM tbrekaphasil WHERE tbrekaphasil.peng1 = td.nip $whereSmtPenguji ) as peng1,
|
||||
(SELECT COUNT(id) FROM tbrekaphasil WHERE tbrekaphasil.peng2 = td.nip $whereSmtPenguji ) as peng2
|
||||
FROM $sTable
|
||||
$sWhere
|
||||
$where2
|
||||
AND td.status = 'A'
|
||||
$sOrder
|
||||
";
|
||||
$db->runQuery($sQuery0);
|
||||
$resultPenguji = $db->runQuery($sQuery0.$sLimit);
|
||||
|
||||
$listPenguji = [];
|
||||
while ($aRow = $db->dbFetch($resultPenguji)) {
|
||||
$nipDosen = $aRow['nip'];
|
||||
$listPenguji[$nipDosen] = [
|
||||
'peng1' => $aRow['peng1'],
|
||||
'peng2' => $aRow['peng2'],
|
||||
];
|
||||
}
|
||||
|
||||
while ($aRow = $db->dbFetch($result)) {
|
||||
//print_r($aRow);
|
||||
$row = [];
|
||||
|
||||
$pemb1 = $aRow['pemb1'];
|
||||
$pemb2 = $aRow['pemb2'];
|
||||
|
||||
$bgPemb1 = "";
|
||||
$bgPemb2 = "";
|
||||
|
||||
if($pemb1 == null || $pemb1 == 0){
|
||||
$bgPemb1 = "font-weight:bold;color:red";
|
||||
}
|
||||
|
||||
if($pemb2 == null || $pemb2 == 0){
|
||||
$bgPemb2 = "font-weight:bold;color:red";
|
||||
}
|
||||
|
||||
// $jumlahPemb = intval($pemb1) + intval($pemb2);
|
||||
// if($jumlahPemb == 0){
|
||||
// $bgPemb1 = "font-weight:bold;color:red";
|
||||
// $bgPemb2 = "font-weight:bold;color:red";
|
||||
// }
|
||||
|
||||
$banyakPenguji1 = 0;
|
||||
$banyakPenguji2 = 0;
|
||||
if(isset($listPenguji[$aRow['nip']])){
|
||||
$banyakPenguji1 = $listPenguji[$aRow['nip']]['peng1'];
|
||||
$banyakPenguji2 = $listPenguji[$aRow['nip']]['peng2'];
|
||||
}
|
||||
|
||||
$row[0] = $aRow['nmLengkap'];
|
||||
$row[1] = $aRow['nip'];
|
||||
$row[2] = '<a href="#stat-keldosen" style="'.$bgPemb1.'" onClick="mhsPemb1(\''.$aRow['nip'].'\', \''.$smt.'\')">'.$aRow['pemb1'].'</a>';
|
||||
$row[3] = '<a href="#stat-keldosen" style="'.$bgPemb2.'" onClick="mhsPemb2(\''.$aRow['nip'].'\', \''.$smt.'\')">'.$aRow['pemb2'].'</a>';
|
||||
$row[4] = '<a href="#stat-keldosen" onClick="mhsPeng1(\''.$aRow['nip'].'\', \''.$smt.'\')">'.$banyakPenguji1.'</a>';
|
||||
$row[5] = '<a href="#stat-keldosen" onClick="mhsPeng2(\''.$aRow['nip'].'\', \''.$smt.'\')">'.$banyakPenguji2.'</a>';
|
||||
|
||||
$output['aaData'][] = $row;
|
||||
// print_r($row);
|
||||
}
|
||||
|
||||
|
||||
echo json_encode($output);
|
||||
Reference in New Issue
Block a user