Advertisement
jamboljack

Update Nilai dari Reviewer

Jan 10th, 2019
419
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 3.15 KB | None | 0 0
  1. public function updatenilai_post()
  2.     {
  3.         $username    = trim($this->post('username'));
  4.         $id          = $this->post('id');
  5.         $point_id    = $this->post('point_id');
  6.         $reviewer_id = $this->post('reviewer_id');
  7.         $score       = $this->post('score');
  8.  
  9.         if ($username == '') {
  10.             $response = [
  11.                 'resp_error' => true,
  12.                 'resp_msg'   => 'Username Kosong.',
  13.             ];
  14.         } elseif ($id == '') {
  15.             $response = [
  16.                 'resp_error' => true,
  17.                 'resp_msg'   => 'ID Proposal Kosong.',
  18.             ];
  19.         } elseif ($point_id == '') {
  20.             $response = [
  21.                 'resp_error' => true,
  22.                 'resp_msg'   => 'ID Nilai Kosong.',
  23.             ];
  24.         } elseif ($reviewer_id == '') {
  25.             $response = [
  26.                 'resp_error' => true,
  27.                 'resp_msg'   => 'ID Reviewer Kosong.',
  28.             ];
  29.         } elseif ($score > 5) {
  30.             $response = [
  31.                 'resp_error' => true,
  32.                 'resp_msg'   => 'Score maksimal 5.',
  33.             ];
  34.         } else {
  35.             $dataBobot = $this->db->get_where('lemlit_point_proposal', array('point_id' => $point_id))->row();
  36.             $total     = ($score * $dataBobot->component_bobot);
  37.             // Update Nilai
  38.             $dataNilai = array(
  39.                 'point_score'  => $this->post('score'),
  40.                 'point_total'  => $total,
  41.                 'point_update' => date('Y-m-d H:i:s'),
  42.             );
  43.  
  44.             $this->db->where('point_id', $point_id);
  45.             $this->db->update('lemlit_point_proposal', $dataNilai);
  46.  
  47.             // Update Total Nilai Proposal dari Reviewer
  48.             $QReviewer    = $this->db->query("SELECT * FROM lemlit_reviewer WHERE propose_id='$id'");
  49.             $HReview      = $QReviewer->result();
  50.             $Jml_reviewer = count($HReview);
  51.             $QNilai       = $this->db->query("SELECT SUM(point_total) as total FROM lemlit_point_proposal WHERE propose_id='$id'");
  52.             $HNilai       = $QNilai->row();
  53.             $Point        = ($HNilai->total / $Jml_reviewer);
  54.  
  55.             $dataTotal = array(
  56.                 'propose_point'  => $Point,
  57.                 'propose_update' => date('Y-m-d H:i:s'),
  58.             );
  59.  
  60.             $this->db->where('propose_id', $id);
  61.             $this->db->update('lemlit_propose', $dataTotal);
  62.  
  63.             $dataPoin = $this->db->get_where('lemlit_point_proposal', array('point_id' => $point_id))->row();
  64.             $response = [
  65.                 'resp_error'    => false,
  66.                 'resp_msg'      => 'sukses',
  67.                 'point_id'      => $dataPoin->point_id,
  68.                 'reviewer_id'   => $dataPoin->reviewer_id,
  69.                 'nama_komponen' => trim($dataPoin->component_name),
  70.                 'indikator'     => trim($dataPoin->component_indicator),
  71.                 'bobot'         => $dataPoin->component_bobot,
  72.                 'score'         => $dataPoin->point_score,
  73.                 'total'         => $dataPoin->point_total,
  74.             ];
  75.         }
  76.  
  77.         $this->response($response, 200);
  78.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement