From 7c5a4cfb8052544b8cadc108f5fac1750266f7e8 Mon Sep 17 00:00:00 2001 From: tamadamanik <tama.damanik@gmail.com> Date: Tue, 17 May 2016 21:29:16 +0700 Subject: [PATCH] Persetujuan dengan validasi hari --- P3/controller/persetujuan_controller.php | 120 ++++++++++++++++++++++- P3/lihat_penilaian.php | 28 +++++- P3/lihat_persetujuan.php | 28 +++++- 3 files changed, 166 insertions(+), 10 deletions(-) diff --git a/P3/controller/persetujuan_controller.php b/P3/controller/persetujuan_controller.php index 7cf222e..56496c1 100644 --- a/P3/controller/persetujuan_controller.php +++ b/P3/controller/persetujuan_controller.php @@ -2,9 +2,11 @@ ob_start(); require_once 'connectdb.php'; require_once '../header.php'; - $func = $_GET['func']; + + + if ($func == 1){ setujuPenilaian() ; } else if ($func==2) { @@ -27,9 +29,44 @@ function setujuPenilaian() { $id_pegawai = $nip_login ; $id_penilai = $nip_atasan ; + $nip = $id_pegawai ; $conn = connect_database(); + $sql = "SELECT modified_at FROM penilaian WHERE id_pegawai='$nip'"; + $result = $conn->query($sql); + $lastmod = ""; + if ($result->num_rows > 0) { + while($row = $result->fetch_assoc()) { + $lastmod = $row['modified_at']; + } + //cek waktu + $timestamp = strtotime($lastmod); + + $tmstp = $row['modified_at'] + strtotime('+ 336 hours'); + $currenttime = date("Y-m-d h:m:s"); + $nextf = date("Y-m-d h:m:s", $tmstp); + $lastm = date("Y-m-d h:m:s", $lastmod); + echo "cur : ". $currenttime ; + echo "lastm : " . $lastmod ; + echo "next 14 daysss : ".$nextf; + if ($nextf < $currenttime) echo "update"; + else { + echo "not update (otomatis setuju)"; + $sql = "UPDATE penilaian SET id_penilai='$id_penilai' , persetujuan_pegawai='4', persetujuan_atasan_pejabat='9',id_atasan='$id_atasan', modified_at=now() WHERE id_pegawai='$nip'" ; + echo $sql ; + if ($conn->query($sql) === TRUE) { + echo "Record updated successfully"; + } else { + echo "Error updating record: " . $conn->error; + } + header( 'Location: ../lihat_penilaian.php' ) ; + exit(); + } + } + + $conn = connect_database(); + $id_atasan = getIDAtasan($nip_login); - $sql = "UPDATE penilaian SET id_penilai='$id_penilai' , persetujuan_pegawai='1', persetujuan_atasan='9',id_atasan='$id_atasan' WHERE id_pegawai='$id_pegawai'" ; + $sql = "UPDATE penilaian SET id_penilai='$id_penilai' , persetujuan_pegawai='1', persetujuan_atasan_pejabat='9',id_atasan='$id_atasan', modified_at=now() WHERE id_pegawai='$id_pegawai'" ; echo $sql ; if ($conn->query($sql) === TRUE) { echo "Record updated successfully"; @@ -49,8 +86,43 @@ function tolakPenilaian($alasan) { $id_pegawai = $nip_login ; $id_penilai = $nip_atasan ; + $nip = $id_pegawai ; + $conn = connect_database(); + $sql = "SELECT modified_at FROM penilaian WHERE id_pegawai='$nip'"; + $result = $conn->query($sql); + $lastmod = ""; + if ($result->num_rows > 0) { + while($row = $result->fetch_assoc()) { + $lastmod = $row['modified_at']; + } + //cek waktu + $tomorrow = strtotime('- 336 hours'); + $timestamp = strtotime($lastmod); + $tmstp = $row['modified_at'] + strtotime('+ 336 hours'); + + $currenttime = date("Y-m-d h:m:s"); + $nextf = date("Y-m-d h:m:s", $tmstp); + $lastm = date("Y-m-d h:m:s", $lastmod); + echo "cur : ". $currenttime ; + echo "lastm : " . $lastmod ; + echo "next 14 day : ".$nextf; + if ($nextf < $currenttime) echo "update"; + else { + echo "not update (otomatis setuju)"; + $sql = "UPDATE penilaian SET id_penilai='$id_penilai' , persetujuan_pegawai='4', persetujuan_atasan_pejabat='9',id_atasan='$id_atasan', modified_at=now() WHERE id_pegawai='$nip'" ; + echo $sql ; + if ($conn->query($sql) === TRUE) { + echo "Record updated successfully"; + } else { + echo "Error updating record: " . $conn->error; + } + //header( 'Location: ../lihat_penilaian.php' ) ; + //exit(); + } + } + $conn = connect_database(); - $sql = "UPDATE penilaian SET id_penilai='$id_penilai' , persetujuan_pegawai='2', persetujuan_atasan='0', alasan='$alasan' WHERE id_pegawai='$id_pegawai'" ; + $sql = "UPDATE penilaian SET id_penilai='$id_penilai' , persetujuan_pegawai='2', persetujuan_atasan='0', alasan='$alasan', modified_at=now() WHERE id_pegawai='$id_pegawai'" ; echo $sql ; if ($conn->query($sql) === TRUE) { echo "Record updated successfully"; @@ -65,9 +137,43 @@ function tolakPenilaian($alasan) { function tanggapanPenolakan($nip,$alasan) { //echo "nip : " .$nip."|" ; + $conn = connect_database(); + $sql = "SELECT modified_at FROM penilaian WHERE id_pegawai='$nip'"; + $result = $conn->query($sql); + $lastmod = ""; + if ($result->num_rows > 0) { + while($row = $result->fetch_assoc()) { + $lastmod = $row['modified_at']; + } + //cek waktu + $tomorrow = strtotime('- 336 hours'); + $timestamp = strtotime($lastmod); + $tmstp = $row['modified_at'] + strtotime('+ 336 hours'); + + $currenttime = date("Y-m-d h:m:s"); + $nextf = date("Y-m-d h:m:s", $tmstp); + $lastm = date("Y-m-d h:m:s", $lastmod); + echo "cur : ". $currenttime ; + echo "lastm : " . $lastmod ; + echo "next 14 day : ".$nextf; + if ($nextf < $currenttime) echo "update"; + else { + echo "not update (otomatis setuju)"; + $sql = "UPDATE penilaian SET id_penilai='$id_penilai' , persetujuan_pegawai='4', persetujuan_atasan_pejabat='9',id_atasan='$id_atasan', modified_at=now() WHERE id_pegawai='$nip'" ; + echo $sql ; + if ($conn->query($sql) === TRUE) { + echo "Record updated successfully"; + } else { + echo "Error updating record: " . $conn->error; + } + //header( 'Location: ../list_persetujuan_penilaian.php' ) ; + //exit(); + } + } + $conn = connect_database(); $id_atasan = getIDAtasan($nip); - $sql = "UPDATE penilaian SET tanggapan='$alasan' , persetujuan_pegawai='3', persetujuan_atasan='9',id_atasan='$id_atasan' WHERE id_pegawai='$nip'" ; + $sql = "UPDATE penilaian SET tanggapan='$alasan' , persetujuan_pegawai='3', persetujuan_atasan_pejabat='9',id_atasan='$id_atasan', modified_at=now() WHERE id_pegawai='$nip'" ; //echo $sql ; if ($conn->query($sql) === TRUE) { echo "Record updated successfully"; @@ -99,7 +205,7 @@ function getIDAtasan($nip) { function persetujuanAtasan($nip) { $conn = connect_database(); - $sql = "UPDATE penilaian SET persetujuan_atasan_pejabat='1' WHERE id_pegawai='$nip'" ; + $sql = "UPDATE penilaian SET persetujuan_atasan_pejabat='1', modified_at=now() WHERE id_pegawai='$nip'" ; if ($conn->query($sql) === TRUE) { echo "Record updated successfully"; @@ -112,4 +218,8 @@ function persetujuanAtasan($nip) { } +function checkDays($nip) { + +} + ob_end_flush(); \ No newline at end of file diff --git a/P3/lihat_penilaian.php b/P3/lihat_penilaian.php index 0bd23b5..20d905f 100644 --- a/P3/lihat_penilaian.php +++ b/P3/lihat_penilaian.php @@ -47,8 +47,25 @@ if ($status_persetujuan==3) { } } } + $last_mod = ""; + $sql = "SELECT modified_at FROM penilaian WHERE id_pegawai='$nip_login'"; + $result = $conn->query($sql); + if ($result->num_rows > 0) { + while($row = $result->fetch_assoc()) { + $last_mod = $row['modified_at']; + } + } - + $alasan=""; + if ($status_persetujuan==2 || $status_persetujuan==3) { + $sql = "SELECT alasan FROM penilaian WHERE id_pegawai='$nip_login'"; + $result = $conn->query($sql); + if ($result->num_rows > 0) { + while($row = $result->fetch_assoc()) { + $alasan = $row['alasan']; + } + } + } ?> @@ -214,11 +231,16 @@ if ($status_persetujuan==3) { <br> <div class="panel-body text-center no-padder"> <?php if ($status_persetujuan==2) { echo "<h4 class=\"text-warning\">Dalam penolakan. Menunggu tangapan pejabat penilai.</h4> " ; } - else if ($status_persetujuan==1 || $status_persetujuan==3) { echo " <h4 class=\"text-success\">Berhasil disetujui</h4>";} + else if ($status_persetujuan==1 || $status_persetujuan==3||$status_persetujuan==4) { echo " <h4 class=\"text-success\">Berhasil disetujui</h4>";} else if ($status_persetujuan==0 ) { echo " <h4 class=\"text-info\">Butuh tanggapan dari anda</h4>";} - echo "<small class=\"text-light-grey block\">Pada 23 April 2016 . . .</small>"; + if ($status_persetujuan !=0) {echo "<small class=\"text-light-grey block\">Pada ". $last_mod ." </small>";} + if ($status_persetujuan==3 || $status_persetujuan==2) { + echo "<br><small class=\"text-light-grey block\">Alasan penolakan : ". $alasan . "</small>"; + } if ($status_persetujuan==3) { echo "<br><small class=\"text-light-grey block\">Dengan tanggapan penolakan : <br> ". $tanggapan . "</small>"; + } else if ($status_persetujuan==4) { + echo "<br><small class=\"text-light-grey block\">Disetujui oleh sistem (tanggapan melewati 14 hari)</small>"; } /*echo "<h4 class=\"text-warning\">Dalam penolakan. Menunggu tangapan pejabat penilai.</h4> " ; echo " <h4 class=\"text-success\">Berhasil disetujui</h4>"; diff --git a/P3/lihat_persetujuan.php b/P3/lihat_persetujuan.php index 94837fb..4135d56 100644 --- a/P3/lihat_persetujuan.php +++ b/P3/lihat_persetujuan.php @@ -46,6 +46,16 @@ } } } + $alasan=""; + if ($status_persetujuan==2||$status_persetujuan==3) { + $sql = "SELECT alasan FROM penilaian WHERE id_pegawai='$nip_pegawai'"; + $result = $conn->query($sql); + if ($result->num_rows > 0) { + while($row = $result->fetch_assoc()) { + $alasan = $row['alasan']; + } + } + } ?> @@ -88,11 +98,25 @@ <br> <div class="panel-body text-center no-padder"> <?php if ($status_persetujuan==2) { echo "<h4 class=\"text-warning\">Ditolak oleh pegawai. Butuh tanggapan anda.</h4> " ; } - else if ($status_persetujuan==1 || $status_persetujuan==3) { echo " <h4 class=\"text-success\">Berhasil disetujui</h4>";} + else if ($status_persetujuan==1 || $status_persetujuan==3||$status_persetujuan==4) { echo " <h4 class=\"text-success\">Berhasil disetujui</h4>";} else if ($status_persetujuan==0 ) { echo " <h4 class=\"text-info\">Belum ditanggapi oleh pegawai</h4>";} if ($status_persetujuan==3) { + echo "<small class=\"text-light-grey block\">Dengan alasan penolakan : <br> ". $alasan . "</small><br>"; echo "<small class=\"text-light-grey block\">Dengan tanggapan penolakan : <br> ". $tanggapan . "</small>"; + } else if ($status_persetujuan==4) { + echo "<small class=\"text-light-grey block\">Disetujui oleh sistem (Tanggapan melewati 14 hari)</small>"; + } + if ($status_persetujuan==2) { + echo "<br><form role=\"form\" > + <div class=\"form-group\"> + <label>Alasan penolakan</label> + <textarea class=\"form-control\" name=\"alasan2\" id=\"alasan2\"> " . $alasan . "</textarea> + <span class=\"help-block m-b-none\">Berikan tanggapan penolakan anda. Penilaian akan otomatis disetujui oleh sistem setelah tanggapan dikirimkan.</span> + </div> + </form>" ; + + } $action_ = "controller/persetujuan_controller.php?func=4&nip=" .$nip_pegawai ; if ($status_persetujuan==2) { @@ -147,6 +171,6 @@ <script src="js/ui-nav.js"></script> <script src="js/ui-toggle.js"></script> <script src="js/ui-client.js"></script> - +<script> document.getElementById("alasan2").readOnly = true; </script> </body> </html> -- GitLab