Advertisement
jamboljack

Validasi Data Petugas

Sep 13th, 2018
239
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 4.76 KB | None | 0 0
  1. // Validasi Petugas
  2.     public function validasidata_post()
  3.     {
  4.         $username = trim($this->post('username'));
  5.         $level    = $this->post('level');
  6.         $id       = $this->post('id');
  7.  
  8.         if ($username == '') {
  9.             $response = [
  10.                 'resp_error' => true,
  11.                 'resp_msg'   => 'Username Kosong.',
  12.             ];
  13.         } elseif ($id == '') {
  14.             $response = [
  15.                 'resp_error' => true,
  16.                 'resp_msg'   => 'ID Permohonan Tidak Boleh Kosong.',
  17.             ];
  18.         } else {
  19.             // Update Status Permohonan
  20.             if ($level == 'Front Office') {
  21.                 $status = $this->post('lstStatus'); // Combo Box
  22.  
  23.                 if ($status == '') {
  24.                     $response = [
  25.                         'resp_error' => true,
  26.                         'resp_msg'   => 'Status Validasi harus dipilih.',
  27.                     ];
  28.                 } else {
  29.                     $data = array(
  30.                         'sts_proses'          => ($status == 'Valid' ? 1 : 2),
  31.                         'izin_status'         => $status,
  32.                         'izin_alasan'         => $this->post('alasan'),
  33.                         'tgl_validasi'        => date('Y-m-d'),
  34.                         'user_validasi'       => $username,
  35.                         'pemohon_date_update' => date('Y-m-d'),
  36.                         'pemohon_time_update' => date('Y-m-d H:i:s'),
  37.                     );
  38.  
  39.                     $this->db->where('id', $id);
  40.                     $this->db->update('c39_imb_pemohon', $data);
  41.                 }
  42.             } elseif ($level == 'Pemroses') {
  43.                 $data = array(
  44.                     'sts_proses'          => 3,
  45.                     'tgl_validasi'        => date('Y-m-d'),
  46.                     'user_validasi'       => $username,
  47.                     'pemohon_date_update' => date('Y-m-d'),
  48.                     'pemohon_time_update' => date('Y-m-d H:i:s'),
  49.                 );
  50.  
  51.                 $this->db->where('id', $id);
  52.                 $this->db->update('c39_imb_pemohon', $data);
  53.             }
  54.  
  55.             // Insert ke Notifikasi Member
  56.             $dataijin  = $this->db->get_where('v_imb_2', array('id' => $id))->row();
  57.             $pesan     = 'Permohonan IMB Anda No. ' . $dataijin->no_register . ' Atas Nama : ' . $dataijin->nama . '. Status : ' . $status . ', ' . strip_tags($this->post('alasan'));
  58.             $dataNotif = array(
  59.                 'user_username'          => $username,
  60.                 'user_tujuan'            => $dataijin->user_username,
  61.                 'id'                     => $id,
  62.                 'notifikasi_no_register' => $dataijin->no_register,
  63.                 'notifikasi_date'        => date('Y-m-d'),
  64.                 'notifikasi_desc'        => $pesan,
  65.                 'notifikasi_level'       => 'Member',
  66.             );
  67.  
  68.             $this->db->insert('bpmppt_notifikasi', $dataNotif);
  69.             // Send Notifikasi ke Pemohon
  70.             sendNotification($dataijin->device_id, $pesan);
  71.  
  72.             // Insert ke Notifikasi Pemroses
  73.             $pesanPetugas    = $level . ' : Permohonan IMB No. ' . $dataijin->no_register . ' Atas Nama : ' . $dataijin->nama . '. Status : ' . $status . ', ' . strip_tags($this->post('alasan'));
  74.             $dataNotifProses = array(
  75.                 'user_username'          => $username,
  76.                 'id'                     => $id,
  77.                 'notifikasi_no_register' => $dataijin->no_register,
  78.                 'notifikasi_date'        => date('Y-m-d'),
  79.                 'notifikasi_desc'        => $pesanPetugas,
  80.                 'notifikasi_level'       => 'Pemroses',
  81.             );
  82.  
  83.             $this->db->insert('bpmppt_notifikasi', $dataNotifProses);
  84.             // Send Notifikasi ke Petugas di Atasnya
  85.             if ($level = 'Front Office') {
  86.                 $petugas = 'Pemroses';
  87.             } elseif ($level = 'Pemroses') {
  88.                 $petugas = 'Ka. Seksi';
  89.             } elseif ($level = 'Ka. Seksi') {
  90.                 $petugas = 'Ka. Bidang';
  91.             } elseif ($level = 'Ka. Bidang') {
  92.                 $petugas = 'Bendahara';
  93.             } elseif ($level = 'Bendahara') {
  94.                 $petugas = 'Kepala Badan';
  95.             }
  96.  
  97.             $listUser = $this->db->get_where('bpmppt_users', array('device_id !=' => '', 'user_level' => $petugas))->result();
  98.             if (count($listUser) > 0) {
  99.                 foreach ($listUser as $r) {
  100.                     sendNotification($r->device_id, $pesanPetugas);
  101.                 }
  102.             }
  103.  
  104.             $response = [
  105.                 'resp_error' => false,
  106.                 'resp_msg'   => 'Validasi Permohonan Selesai.',
  107.             ];
  108.         }
  109.  
  110.         $this->response($response, 200);
  111.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement