Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public function postCari()
- {
- $uMin = array('1','18','40');
- $uMax = array('18','40','80');
- $mMin = array('1','3');
- $mMax = array('3','6');
- $gMin = array('100000','500000','1500000');
- $gMax = array('500000','1500000','2000000');
- $umur = $this->input->post('umur');
- if ($umur == "Usia Muda") {
- $QW1_0 = "0";
- } elseif ($umur == "Usia Parobaya") {
- $QW1_0 = "1";
- } elseif ($umur == "Usia Tua") {
- $QW1_0 = "2";
- }
- $gaji =$this->input->post('gaji');
- if ($gaji == "Gaji Rendah") {
- $QW1_2 = "0";
- } elseif ($gaji == "Gaji Sedang") {
- $QW1_2 = "1";
- } elseif ($gaji == "Gaji Tinggi") {
- $QW1_2 = "2";
- }
- $ketentuan = $this->input->post('ketentuan');
- if ($ketentuan == "Dan") {
- $QW1_1 = "0";
- } else {
- $QW1_1 = "1";
- }
- $QW1 = array($QW1_0,$QW1_1,$QW1_2);//array(1,0,0);
- $this->get_data_karyawan();
- $uK = array(); $mK = array(); $gK = array();
- $uFinal = array();
- $gFinal = array();
- $nFinal = array();
- for ($i = 0; $i <= COUNT($this->DT) -1; $i++) {
- array_push($nFinal,array('nama'=>$this->DT[$i][1]));
- $uK[$i] = array(); $mK[$i] = array(); $gK[$i] = array();
- $uTengah = ($uMin[2]-$uMax[0])/2+$uMax[0];
- // HITUNG KEANGGOTAAN USIA MUDA
- if ($this->DT[$i][2] <= $uMax[0]) {
- //bernilai 1 jika x <= max usia muda
- $uK[$i][0] = 1;
- } else if ($this->DT[$i][2] >= $uMin[0] && $this->DT[$i][2] <= $uTengah) {
- //bernilai hitung jika x >= max usia muda dan x <= usia tengah
- $uK[$i][0] = ($uTengah - $this->DT[$i][2])/($uTengah - $uMax[0]);
- } else if ($this->DT[$i][2] >= $uTengah) {
- //bernilai 0 jika x => max usia muda
- $uK[$i][0] = 0;
- }
- // HITUNG KEANGGOTAAN USIA PAROBAYA
- //$nil = 45;
- if ($this->DT[$i][2] <= $uMax[0] || $this->DT[$i][2] >= $uMin[2]) {
- //bernilai 0 jika x <= max usia muda atau x => minimal usia tua
- $uK[$i][1] = 0;
- } else if ($this->DT[$i][2] >= $uMax[0] && $this->DT[$i][2] <= $uTengah) {
- //bernilai hitung jika x => max usia muda dan x <= minimal usia tengah
- $uK[$i][1] = ($this->DT[$i][2] - $uMax[0])/($uTengah - $uMax[0]);
- } else if ($this->DT[$i][2] >= $uTengah && $this->DT[$i][2] <= $uMin[2]) {
- //bernilai hitung jika x => usia tenagh dan x <= minimal usia tua
- $uK[$i][1] = ($uMin[2] - $this->DT[$i][2]) / ($uMin[2] - $uTengah);
- } elseif ($this->DT[$i][2] == $uTengah) {
- //bernilai 1 jika x == usia tengah
- $uK[$i][1] = 1;
- }
- // HITUNG KEANGGOTAAN USIA TUA
- if ($this->DT[$i][2] <= $uMin[2]) {
- //bernilai 0 jika x <= usia tengah
- $uK[$i][2] = 0;
- } else if ($this->DT[$i][2] >= $uTengah && $this->DT[$i][2] <= $uMin[2]) {
- //bernilai hitung jika => usia tengah dan x <= min usia tengah
- $uK[$i][2] = ($this->DT[$i][2] - $uMin[2])/($uMax[2] - $uMin[2]);
- } else if ($this->DT[$i][2] >= $uMin[2]) {
- //bernilai 1 jika x bernilai lebih dari min usia tua
- $uK[$i][2] = 1;
- }
- //hasil usia final
- array_push($uFinal, array('usia_muda'=>$uK[$i][0],'usia_parobaya'=>$uK[$i][1],'usia_tua'=>$uK[$i][2]));
- // HITUNG KEANGGOTAAN MASA KERJA BARU
- if ($this->DT[$i][3] <= $mMin[0]) {
- $mK[$i][0] = 1;
- } else if ($this->DT[$i][3] >= $mMin[0] && $this->DT[$i][3] <= $mMax[0]) {
- $mK[$i][0] = ($mMax[0] - $this->DT[$i][3])/($mMax[0] - $mMin[0]);
- } else if ($this->DT[$i][3] >= $mMax[0]) {
- $mK[$i][0] = 0;
- }
- // HITUNG KEANGGOTAAN MASA KERJA LAMA
- if ($this->DT[$i][3] <= $mMin[1]) {
- $mK[$i][1] = 0;
- } else if ($this->DT[$i][3] >= $mMin[1] && $this->DT[$i][3] <= $mMax[1]) {
- $mK[$i][1] = ($this->DT[$i][3] - $mMin[1])/($mMax[1] - $mMin[1]);
- } else if ($this->DT[$i][3] >= $mMax[1]) {
- $mK[$i][1] = 1;
- }
- // HITUNG KEANGGOTAAN GAJI RENDAH
- $gTengah = ($gMin[2]-$gMax[0])/2+$gMax[0];
- if ($this->DT[$i][4] <= $gMax[0]) {
- $gK[$i][0] = 1;
- } else if ($this->DT[$i][4] >= $gMax[0] && $this->DT[$i][4] <= $gTengah) {
- $gK[$i][0] = ($gTengah - $this->DT[$i][4])/($gTengah - $gMax[0]);
- } else if ($this->DT[$i][4] >= $gTengah) {
- $gK[$i][0] = 0;
- }
- //$nil = $uMin[1] + round(($uMax[1] - $uMin[1])/ 2);
- $nil1 = 1000000;
- // HITUNG KEANGGOTAAN GAJI SEDANG
- if ($this->DT[$i][4] <= $gMax[0] || $this->DT[$i][4] >= $gMin[2]) {
- $gK[$i][1] = 0;
- } else if ($this->DT[$i][4] >= $gMax[0] && $this->DT[$i][4] <= $gTengah) {
- $gK[$i][1] = ($this->DT[$i][4] - $gMax[0])/($gTengah - $gMax[0]);
- } else if ($this->DT[$i][4] >= $gTengah && $this->DT[$i][4] <= $gMin[2]) {
- $gK[$i][1] = ($gMin[2] - $this->DT[$i][4]) / ($gMin[2] - $gTengah);
- } elseif ($this->DT[$i][4] == $gTengah) {
- $gK[$i][1] = 1;
- }
- // HITUNG KEANGGOTAAN GAJI TINGGI
- if ($this->DT[$i][4] <= $gTengah) {
- $gK[$i][2] = 0;
- } else if ($this->DT[$i][4] >= $gTengah && $this->DT[$i][4] <= $gMin[2]) {
- $gK[$i][2] = ($this->DT[$i][4] - $gTengah)/($gMin[2] - $gTengah);
- } else if ($this->DT[$i][4] >= $gMin[2]) {
- $gK[$i][2] = 1;
- }
- array_push($gFinal, array('gaji_rendah'=>$gK[$i][0],'gaji_sedang'=>$gK[$i][1],'gaji_tinggi'=>$gK[$i][2]));
- }
- //array_push($uFinal,array('uMuda'=>$usia_muda));
- $hQW1 = array(); $j = 0;
- $nils = 0;
- $hQW2 = array(); $l = 0;
- $hQW3 = array(); $b = 0;
- $hQw4 = array(); $o = 0;
- for ($i = 0; $i <= COUNT($this->DT) - 1; $i++) {
- // HITUNG QUERY PERTAMA
- if ($QW1[1] == 1) {
- if ($uK[$i][$QW1[0]] <= $gK[$i][$QW1[2]]) { $nils = $gK[$i][$QW1[2]];
- } else {
- $nils = $uK[$i][$QW1[0]];
- }
- } else {
- if ($uK[$i][$QW1[0]] >= $gK[$i][$QW1[2]]) {
- $nils = $gK[$i][$QW1[2]];
- } else {
- $nils = $uK[$i][$QW1[0]];
- }
- }
- if ($nils > 0) {
- $hQW1[$j] = $this->DT[$i][1]; $j++;
- }
- }
- if (COUNT($hQW1) != 0) {
- for ($i = 0; $i <= COUNT($hQW1) - 1; $i++) {
- if ($i == 0 && COUNT($hQW1) >= 2) {
- $nQW1 = $hQW1[$i];
- } else if (COUNT($hQW1) >= 2 && $i != 0) {
- $nQW1 .= ", ".$hQW1[$i];
- } else {
- $nQW1 = $hQW1[$i];
- }
- }
- } else {
- $nQW1 = "Tidak ada data";
- }
- $nmFinal = array();
- array_push($nmFinal, array('Nama'=>$nQW1));
- $response = array("status"=>"1","result"=>$nmFinal,"usia"=>$uFinal,"gaji"=>$gFinal,"nama"=>$nFinal);
- $this->output
- ->set_status_header(200)
- ->set_content_type('application/json', 'utf-8')
- ->set_output(json_encode($response, JSON_PRETTY_PRINT))
- ->_display();
- exit;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement