221 lines
7.1 KiB
PHP
221 lines
7.1 KiB
PHP
<?php
|
|
|
|
header("Content-Type: application/json");
|
|
|
|
include '../conf/class.server.php';
|
|
include '../conf/koneksiPDO.php';
|
|
include '../conf/function.php';
|
|
|
|
$conn = new createCon();
|
|
$dbh = $conn->connect();
|
|
|
|
requireRobotSecret();
|
|
|
|
$jsonData = getRequestJson();
|
|
|
|
if (!isset($jsonData['id'], $jsonData['peng1'], $jsonData['peng2'])) {
|
|
jsonResponse([
|
|
'status' => 0,
|
|
'msg' => 'Parameter tidak lengkap',
|
|
], 422);
|
|
}
|
|
|
|
$id = $jsonData['id'];
|
|
$peng1 = $jsonData['peng1'];
|
|
$peng2 = $jsonData['peng2'];
|
|
|
|
if(empty($peng1) || empty($peng2)){
|
|
echo json_encode([
|
|
'status' => 0,
|
|
'msg' => "Penguji Tidak Boleh Kosong",
|
|
]);
|
|
exit;
|
|
}
|
|
/**
|
|
$jsonInput = json_encode($jsonData);
|
|
$sql = "INSERT INTO tescurldaridoxid(data) VALUES (:data)";
|
|
$stmt = $dbh->prepare($sql);
|
|
$stmt->bindParam(':data', $jsonInput);
|
|
$stmt->execute();
|
|
*/
|
|
|
|
$sql = "UPDATE tbrekaphasil SET peng1 = :peng1, peng2 = :peng2 WHERE id = :id";
|
|
$stmt = $dbh->prepare($sql);
|
|
$stmt->bindParam(':peng1', $peng1);
|
|
$stmt->bindParam(':peng2', $peng2);
|
|
$stmt->bindParam(':id', $id);
|
|
$stmt->execute();
|
|
|
|
$error = $stmt->errorInfo();
|
|
|
|
$isError = true;
|
|
|
|
if ($error[0] == '00000') {
|
|
$isError = false;
|
|
}
|
|
|
|
if ($isError) {
|
|
echo json_encode(
|
|
[
|
|
'status' => 0,
|
|
'msg' => 'Terjadi kesalahan teknis!!!',
|
|
]
|
|
);
|
|
} else {
|
|
$listNomorWA = [];
|
|
|
|
$sql = "SELECT * FROM tbdosen";
|
|
$stmt = $dbh->prepare($sql);
|
|
$stmt->execute();
|
|
|
|
$listDosen = [];
|
|
while($row = $stmt->fetch(PDO::FETCH_ASSOC)){
|
|
$listDosen[$row['nip']] = $row;
|
|
}
|
|
|
|
$sql = "SELECT tbrekaphasil.*, tbmhs.nmLengkap, tbmhs.noHP FROM tbrekaphasil LEFT JOIN tbmhs ON tbrekaphasil.nim = tbmhs.nim WHERE tbrekaphasil.id = :id";
|
|
$stmt = $dbh->prepare($sql);
|
|
$stmt->bindParam(':id', $id);
|
|
$stmt->execute();
|
|
|
|
if($stmt->rowCount() == 0){
|
|
echo json_encode([
|
|
'status' => 0,
|
|
'msg' => "Data Skripsi Tidak Ditemukan",
|
|
]);
|
|
exit;
|
|
}
|
|
|
|
while($row = $stmt->fetch(PDO::FETCH_ASSOC)){
|
|
$todayDate = date('d-m-Y');
|
|
$tanggalPenunjukanPenguji = $row['timestampPenunjukanPenguji'];
|
|
$semesterPenunjukanPenguji = $row['semesterPenunjukanPenguji'];
|
|
if(empty($tanggalPenunjukanPenguji)){
|
|
$tanggalPenunjukanPenguji = date('Y-m-d');
|
|
$bulanKeputusan = date('m', strtotime($tanggalPenunjukanPenguji));
|
|
$tahunKeputusan = date('Y', strtotime($tanggalPenunjukanPenguji));
|
|
|
|
if ($bulanKeputusan >= 2 && $bulanKeputusan <= 7) {
|
|
$tahunKeputusan = $tahunKeputusan - 1;
|
|
$semesterKeputusan = 'GEN';
|
|
} else {
|
|
$semesterKeputusan = 'GAS';
|
|
$tahunKeputusan = $tahunKeputusan;
|
|
}
|
|
|
|
$semesterPenunjukanPenguji = $semesterKeputusan.'-'.$tahunKeputusan;
|
|
|
|
$sql = "UPDATE tbrekaphasil SET timestampPenunjukanPenguji = :tanggal, semesterPenunjukanPenguji = :semester WHERE id = :id";
|
|
$stmt1 = $dbh->prepare($sql);
|
|
$stmt1->bindParam(':tanggal', $tanggalPenunjukanPenguji);
|
|
$stmt1->bindParam(':semester', $semesterPenunjukanPenguji);
|
|
$stmt1->bindParam(':id', $id);
|
|
$stmt1->execute();
|
|
}
|
|
|
|
$waktuPenguji = date('Y-m-d');
|
|
$hari = date('w');
|
|
|
|
$hariText = '';
|
|
switch ($hari) {
|
|
case '0': $hariText = 'Minggu'; break;
|
|
case '1': $hariText = 'Senin'; break;
|
|
case '2': $hariText = 'Selasa'; break;
|
|
case '3': $hariText = 'Rabu'; break;
|
|
case '4': $hariText = 'Kamis'; break;
|
|
case '5': $hariText = 'Jumat'; break;
|
|
case '6': $hariText = 'Sabtu'; break;
|
|
}
|
|
|
|
$idPraoutline = $row['idpraoutline'];
|
|
$judul = $row['judul_final'];
|
|
|
|
$noHPMahasiswa = $row['noHP'];
|
|
$namaMahasiswa = strtoupper($row['nmLengkap']);
|
|
$nimMahasiswa = strtoupper($row['nim']);
|
|
|
|
//kirimkan ke no bu tuning
|
|
array_push($listNomorWA, "082350250892");
|
|
|
|
if(!empty($noHPMahasiswa)){
|
|
array_push($listNomorWA, $noHPMahasiswa);
|
|
}
|
|
|
|
$nipPemb1 = $row['pemb1'];
|
|
$nipPemb2 = $row['pemb2'];
|
|
$nipPeng1 = $row['peng1'];
|
|
$nipPeng2 = $row['peng2'];
|
|
|
|
$namaPemb1 = '';
|
|
$namaPemb2 = '';
|
|
$namaPeng1 = '';
|
|
$namaPeng2 = '';
|
|
|
|
$noPemb1 = '';
|
|
$noPemb2 = '';
|
|
$noPeng1 = '';
|
|
$noPeng2 = '';
|
|
|
|
if(!empty($nipPemb1) && isset($listDosen[$nipPemb1])){
|
|
$namaPemb1 = $listDosen[$nipPemb1]['nmLengkap'];
|
|
|
|
if(!empty($listDosen[$nipPemb1]['nohp'])){
|
|
$noPemb1 = $listDosen[$nipPemb1]['nohp'];
|
|
array_push($listNomorWA, $listDosen[$nipPemb1]['nohp']);
|
|
}
|
|
}
|
|
|
|
if(!empty($nipPemb2) && isset($listDosen[$nipPemb2])){
|
|
$namaPemb2 = $listDosen[$nipPemb2]['nmLengkap'];
|
|
|
|
if(!empty($listDosen[$nipPemb2]['nohp'])){
|
|
$noPemb2 = $listDosen[$nipPemb2]['nohp'];
|
|
array_push($listNomorWA, $listDosen[$nipPemb2]['nohp']);
|
|
}
|
|
}
|
|
|
|
if(!empty($nipPeng1) && isset($listDosen[$nipPeng1])){
|
|
$namaPeng1 = $listDosen[$nipPeng1]['nmLengkap'];
|
|
|
|
if(!empty($listDosen[$nipPeng1]['nohp'])){
|
|
$noPeng1 = $listDosen[$nipPeng1]['nohp'];
|
|
array_push($listNomorWA, $listDosen[$nipPeng1]['nohp']);
|
|
}
|
|
}
|
|
|
|
|
|
if(!empty($nipPeng2) && isset($listDosen[$nipPeng2])){
|
|
$namaPeng2 = $listDosen[$nipPeng2]['nmLengkap'];
|
|
|
|
if(!empty($listDosen[$nipPeng2]['nohp'])){
|
|
$noPeng2 = $listDosen[$nipPeng2]['nohp'];
|
|
array_push($listNomorWA, $listDosen[$nipPeng2]['nohp']);
|
|
}
|
|
}
|
|
|
|
$isiNotif = "*KEPUTUSAN PENUNJUKKAN PENGUJI (SPOTA)*\n\nDosen penguji untuk skripsi mahasiswa *$namaMahasiswa / $nimMahasiswa* ($noHPMahasiswa) dengan judul *$judul* pada *$hariText, $todayDate* untuk pelaksanaan Seminar Hasil (Sidang Tertutup) dengan susunan Tim Penguji sebagai berikut:\n\nPembimbing 1 (Ketua): *$namaPemb1* ($noPemb1)\nPembimbing 2 (Sekretaris) : *$namaPemb2* ($noPemb2)\nPenguji 1 : *$namaPeng1* ($noPeng1)\nPenguji 2 : *$namaPeng2* ($noPeng2)\n\n*SPOTA INFORMATIKA UNTAN*\nKlik Disini :\nhttps://spota.untan.ac.id/dosen/dashboard.php?page=praoutline&menu=review&prid=$idPraoutline";
|
|
}
|
|
|
|
$listNomorWA = array_values(array_unique($listNomorWA));
|
|
|
|
foreach($listNomorWA as $key => $val){
|
|
if (empty($val)) {
|
|
continue;
|
|
}
|
|
|
|
$nomorWA = '62'.intval($val);
|
|
$sql = "INSERT INTO tbl_notif_wa(toX,isiPesan, status) VALUES (:toX, :isiPesan, '0')";
|
|
$stmt = $dbh->prepare($sql);
|
|
$stmt->bindParam(':toX', $nomorWA);
|
|
$stmt->bindParam(':isiPesan', $isiNotif);
|
|
$stmt->execute();
|
|
}
|
|
|
|
echo json_encode(
|
|
[
|
|
'status' => 1,
|
|
'msg' => 'Berhasil mengupdate data penguji untuk data ini!!!',
|
|
]
|
|
);
|
|
}
|