Advertisement
jamboljack

List Proposal

Jan 14th, 2019
455
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 3.93 KB | None | 0 0
  1. public function listproposal_post()
  2.     {
  3.         $username = trim($this->post('username'));
  4.         $level    = trim($this->post('level'));
  5.         $type     = $this->post('type');
  6.  
  7.         if ($username == '') {
  8.             $response = [
  9.                 'resp_error' => true,
  10.                 'resp_msg'   => 'Username tidak ditemukan.',
  11.             ];
  12.         } elseif ($level == '') {
  13.             $response = [
  14.                 'resp_error' => true,
  15.                 'resp_msg'   => 'Level tidak diketahui.',
  16.             ];
  17.         } else {
  18.             if ($level == 'Member') {
  19.                 if ($type == 'all') {
  20.                     $listProposal = $this->db->order_by('propose_title', 'asc')->get_where('v_proposal', array('user_username' => $username, 'propose_status <=' => 2))->result();
  21.                 } else {
  22.                     $listProposal = $this->db->order_by('propose_title', 'asc')->get_where('v_proposal', array('user_username' => $username, 'propose_status' => (int) $type))->result();
  23.                 }
  24.             } elseif ($level == 'Admin') {
  25.                 if ($type == 'all') {
  26.                     $listProposal = $this->db->order_by('propose_title', 'asc')->get_where('v_proposal', array('propose_status <=' => 2))->result();
  27.                 } else {
  28.                     $listProposal = $this->db->order_by('propose_title', 'asc')->get_where('v_proposal', array('propose_status' => (int) $type))->result();
  29.                 }
  30.             } elseif ($level = 'Reviewer') {
  31.                 if ($type == 'all') {
  32.                     $this->db->select('p.*, s.skim_name, u.user_name');
  33.                     $this->db->from('lemlit_propose p');
  34.                     $this->db->join('lemlit_users u', 'p.user_username = u.user_username');
  35.                     $this->db->join('lemlit_skim s', 'p.skim_id = s.skim_id');
  36.                     $this->db->join('lemlit_reviewer t', 't.propose_id = p.propose_id');
  37.                     $this->db->where('t.user_username', $username);
  38.                     $this->db->where('p.propose_status <=', 2);
  39.                     $this->db->order_by('p.propose_title', 'asc');
  40.                 } else {
  41.                     $this->db->select('p.*, s.skim_name, u.user_name');
  42.                     $this->db->from('lemlit_propose p');
  43.                     $this->db->join('lemlit_users u', 'p.user_username = u.user_username');
  44.                     $this->db->join('lemlit_skim s', 'p.skim_id = s.skim_id');
  45.                     $this->db->join('lemlit_reviewer t', 't.propose_id = p.propose_id');
  46.                     $this->db->where('t.user_username', $username);
  47.                     $this->db->where('p.propose_status', $type);
  48.                     $this->db->order_by('p.propose_title', 'asc');
  49.                 }
  50.                 $listProposal = $this->db->get()->result();
  51.             }
  52.  
  53.             if (count($listProposal) == 0) {
  54.                 $response = [
  55.                     'resp_error' => false,
  56.                     'resp_msg'   => 'Belum Ada Proposal',
  57.                 ];
  58.             } else {
  59.                 foreach ($listProposal as $r) {
  60.                     if ($r->propose_status == 1) {
  61.                         $status = 'Baru';
  62.                     } else {
  63.                         $status = 'Proses';
  64.                     }
  65.  
  66.                     $response['items'][] = [
  67.                         'resp_error'    => false,
  68.                         'id'            => $r->propose_id,
  69.                         'tanggal'       => date("d-m-Y", strtotime($r->propose_date)),
  70.                         'user_username' => $r->user_username,
  71.                         'nama'          => trim($r->user_name),
  72.                         'judul'         => trim($r->propose_title),
  73.                         'kategori'      => trim($r->skim_name),
  74.                         'status'        => $status,
  75.                     ];
  76.                 }
  77.             }
  78.         }
  79.  
  80.         $this->response($response, 200);
  81.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement