PageRenderTime 43ms CodeModel.GetById 15ms RepoModel.GetById 1ms app.codeStats 0ms

/application/controllers/pekerja.php

https://github.com/allucardevil/emsbaru
PHP | 1010 lines | 808 code | 127 blank | 75 comment | 35 complexity | df84af480c873da2c65843aaabcf0a8e MD5 | raw file
Possible License(s): LGPL-2.1
  1. <?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
  2. class pekerja extends Application {
  3. public function __construct()
  4. {
  5. parent::__construct();
  6. $this->load->model('kepegawaian/kepegawaian');
  7. $this->load->library('table');
  8. $this->load->library('form_validation');
  9. $this->ag_auth->restrict('user');
  10. }
  11. /**
  12. * Index Page for this controller.
  13. *
  14. * Maps to the following URL
  15. * http://example.com/index.php/welcome
  16. * - or -
  17. * http://example.com/index.php/welcome/index
  18. * - or -
  19. * Since this controller is set as the default controller in
  20. * config/routes.php, it's displayed at http://example.com/
  21. *
  22. * So any other public methods not prefixed with an underscore will
  23. * map to /index.php/welcome/<method_name>
  24. * @see http://codeigniter.com/user_guide/general/urls.html
  25. */
  26. public function index()
  27. {
  28. #pagination config
  29. $config['base_url'] = base_url().'index.php/pekerja/index/'; //set the base url for pagination
  30. $config['total_rows'] = $this->kepegawaian->countPegawai(); //total rows
  31. $config['per_page'] = 10; //the number of per page for pagination
  32. $config['uri_segment'] = 3; //see from base_url. 3 for this case
  33. $this->pagination->initialize($config);
  34. $page = ($this->uri->segment(3)) ? $this->uri->segment(3) : 0;
  35. #data preparing
  36. $data['pegawai'] = $this->kepegawaian->get_data_pegawai($config['per_page'],$page);
  37. $data['list_unit'] = $this->kepegawaian->get_list_unit();
  38. $data['page'] = 'Pegawai';
  39. $data['view_pekerja'] = 'class="this"';
  40. $data['page_karyawan'] = 'yes';
  41. #calling view
  42. $this->load->view('kepegawaian/index',$data);
  43. }
  44. public function pegawai_pensiun()
  45. {
  46. $datestring = "%Y" ;
  47. $time = time();
  48. $tanggal = mdate($datestring, $time);
  49. $type = '52';
  50. $limit = '100';
  51. #pagination config
  52. $config['base_url'] = base_url().'index.php/pekerja/pegawai_pensiun/'; //set the base url for pagination
  53. $config['total_rows'] = $this->kepegawaian->countPegawaiPensiun($tanggal,$type, $limit); //total rows
  54. $config['per_page'] = 10; //the number of per page for pagination
  55. $config['uri_segment'] = 3; //see from base_url. 3 for this case
  56. $this->pagination->initialize($config);
  57. $page = ($this->uri->segment(3)) ? $this->uri->segment(3) : 0;
  58. #data preparing
  59. $data['pegawai'] = $this->kepegawaian->get_data_pegawai_pensiun($config['per_page'],$page, $tanggal, $type, $limit);
  60. $data['page'] = 'Data Pensiun';
  61. $data['tanggal'] = $tanggal;
  62. $data['type'] = 'ALL';
  63. $data['view_pensiun'] = 'class="this"';
  64. $data['page_karyawan'] = 'yes';
  65. #calling view
  66. $this->load->view('kepegawaian/index',$data);
  67. }
  68. public function sort_jenis_pegawai()
  69. {
  70. if ($this->input->post('jenis')==NULL)
  71. {
  72. $type = $this->uri->segment(3);
  73. }else{
  74. $type = $this->input->post('jenis');
  75. }
  76. #pagination config
  77. $config['base_url'] = base_url().'index.php/pekerja/sort_jenis_pegawai/'.$type.'/'; //set the base url for pagination
  78. $config['total_rows'] = $this->kepegawaian->count_jenis_Pegawai($type); //total rows
  79. $config['per_page'] = 10; //the number of per page for pagination
  80. $config['uri_segment'] = 4; //see from base_url. 3 for this case
  81. $this->pagination->initialize($config);
  82. $page = ($this->uri->segment(4)) ? $this->uri->segment(4) : 0;
  83. #data preparing
  84. $data['pegawai'] = $this->kepegawaian->get_data_jenis_pegawai($config['per_page'],$page,$type);
  85. $data['list_unit'] = $this->kepegawaian->get_list_unit();
  86. $data['page'] = 'Pegawai';
  87. $data['page_karyawan'] = 'yes';
  88. #calling view
  89. if ($type=='all')
  90. {
  91. redirect('pekerja/index');
  92. }else{
  93. $this->load->view('kepegawaian/index',$data);
  94. }
  95. }
  96. public function get_supervisor()
  97. {
  98. #pagination config
  99. $config['base_url'] = base_url().'index.php/pekerja/get_supervisor/'; //set the base url for pagination
  100. $config['total_rows'] = $this->kepegawaian->count_supervisor(); //total rows
  101. $config['per_page'] = 10; //the number of per page for pagination
  102. $config['uri_segment'] = 3; //see from base_url. 3 for this case
  103. $this->pagination->initialize($config);
  104. $page = ($this->uri->segment(3)) ? $this->uri->segment(3) : 0;
  105. $data['supervisor'] = $this->kepegawaian->get_supervisor($config['per_page'],$page);
  106. //print_r($data['supervisor']);
  107. $data['page'] = 'Data Supervisor';
  108. $data['view_supervisor'] = 'class="this"';
  109. $data['page_karyawan'] = 'yes';
  110. $this->load->view('kepegawaian/index',$data);
  111. }
  112. public function sort_tahun_pensiun()
  113. {
  114. if ($this->input->post('tahun')==NULL)
  115. {
  116. $tanggal = $this->uri->segment(3);
  117. }else{
  118. $tanggal = $this->input->post('tahun');
  119. }
  120. if ($this->input->post('jenis')==NULL)
  121. {
  122. $type = $this->uri->segment(4);
  123. }else{
  124. $type = $this->input->post('jenis');
  125. }
  126. if ($type === 'ALL')
  127. {
  128. $jenis = '55';
  129. $limit = '100';
  130. }else
  131. if ($type === 'MPP')
  132. {
  133. $jenis = '54';
  134. $limit = '56';
  135. }else
  136. if ($type === 'Pensiun')
  137. {
  138. $jenis = '55';
  139. $limit = '57';
  140. }else
  141. if ($type === 'PPB')
  142. {
  143. $jenis = '52';
  144. $limit = '54';
  145. }
  146. //print_r($type);print_r($jenis);print_r($limit);
  147. #pagination config
  148. $config['base_url'] = base_url().'index.php/pekerja/sort_tahun_pensiun/'.$tanggal.'/'.$type.'/'; //set the base url for pagination
  149. $config['total_rows'] = $this->kepegawaian->countPegawaiPensiun($tanggal, $jenis, $limit); //total rows
  150. $config['per_page'] = 10; //the number of per page for pagination
  151. $config['uri_segment'] = 5; //see from base_url. 3 for this case
  152. $this->pagination->initialize($config);
  153. $page = ($this->uri->segment(5)) ? $this->uri->segment(5) : 0;
  154. #data preparing
  155. $data['pegawai'] = $this->kepegawaian->get_data_pegawai_pensiun($config['per_page'],$page, $tanggal, $jenis, $limit);
  156. $data['tanggal'] = $tanggal;
  157. $data['type'] = $type;
  158. $data['page'] = 'Data Pensiun';
  159. $data['page_karyawan'] = 'yes';
  160. $data['view_pensiun'] = 'class="this"';
  161. #calling view
  162. $this->load->view('kepegawaian/index',$data);
  163. }
  164. public function sort_unit_pegawai()
  165. {
  166. if ($this->input->post('unit') == NULL )
  167. {
  168. $unit = str_replace('%20',' ',$this->uri->segment(3));
  169. }else{
  170. $unit = $this->input->post('unit');
  171. }
  172. #pagination config
  173. $config['base_url'] = base_url().'index.php/pekerja/sort_unit_pegawai/'.$unit.'/'; //set the base url for pagination
  174. $config['total_rows'] = $this->kepegawaian->count_unit_Pegawai($unit); //total rows
  175. $config['per_page'] = 10; //the number of per page for pagination
  176. $config['uri_segment'] = 4; //see from base_url. 3 for this case
  177. $this->pagination->initialize($config);
  178. $page = ($this->uri->segment(4)) ? $this->uri->segment(4) : 0;
  179. #data preparing
  180. $data['pegawai'] = $this->kepegawaian->get_data_unit_pegawai($config['per_page'], $page, $unit);
  181. $data['list_unit'] = $this->kepegawaian->get_list_unit();
  182. $data['page'] = 'Pegawai';
  183. $data['page_karyawan'] = 'yes';
  184. #calling view
  185. $this->load->view('kepegawaian/index',$data);
  186. }
  187. public function delete_pegawai()
  188. {
  189. $data['NIPP'] = $this->uri->segment(3);
  190. $data['page'] = 'Delete Pegawai';
  191. $data['page_karyawan'] = 'yes';
  192. $this->load->view('kepegawaian/index', $data);
  193. }
  194. public function search_pegawai()
  195. {
  196. if ($this->input->post('search') == NULL )
  197. {
  198. $search_data = str_replace('%20',' ',$this->uri->segment(3));
  199. }else{
  200. $search_data = $this->input->post('search');
  201. }
  202. #pagination config
  203. $config['base_url'] = base_url().'index.php/pekerja/search_pegawai/'.$search_data.'/'; //set the base url for pagination
  204. $config['total_rows'] = $this->kepegawaian->count_search_Pegawai($search_data); //total rows
  205. $config['per_page'] = 10; //the number of per page for pagination
  206. $config['uri_segment'] = 4; //see from base_url. 3 for this case
  207. $this->pagination->initialize($config);
  208. $page = ($this->uri->segment(4)) ? $this->uri->segment(4) : 0;
  209. $data['pegawai'] = $this->kepegawaian->search_data_pegawai($config['per_page'], $page, $search_data);
  210. $data['list_unit'] = $this->kepegawaian->get_list_unit();
  211. $data['page'] = 'Search Result';
  212. $data['page_karyawan'] = 'yes';
  213. #calling view
  214. $this->load->view('kepegawaian/index', $data);
  215. }
  216. // FUNGSI PENGAMBILAN DATA PEGAWAI //
  217. public function get_pegawai($nipp)
  218. {
  219. #retrieve data
  220. $data['page'] = 'Data Perorangan';
  221. $data['pegawai'] = $this->kepegawaian->get_data_pegawai_by_nipp($nipp);
  222. $data['data_agama'] = $this->kepegawaian->get_detail_pegawai_agama($nipp);
  223. $data['data_alamat'] = $this->kepegawaian->get_detail_pegawai_alamat($nipp);
  224. $data['data_ayah'] = $this->kepegawaian->get_detail_pegawai_ayah($nipp);
  225. $data['data_bahasa'] = $this->kepegawaian->get_detail_pegawai_bahasa($nipp);
  226. $data['data_fisik'] = $this->kepegawaian->get_detail_pegawai_fisik($nipp);
  227. $data['data_ibu'] = $this->kepegawaian->get_detail_pegawai_ibu($nipp);
  228. $data['data_jabatan_tmt'] = $this->kepegawaian->get_detail_pegawai_jabatan_tmt($nipp);
  229. $data['data_mert_ayah'] = $this->kepegawaian->get_detail_pegawai_mert_ayah($nipp);
  230. $data['data_mert_ibu'] = $this->kepegawaian->get_detail_pegawai_mert_ibu($nipp);
  231. $data['data_pasangan'] = $this->kepegawaian->get_detail_pegawai_pasangan($nipp);
  232. $data['data_pendidikan'] = $this->kepegawaian->get_detail_pegawai_pendidikan($nipp);
  233. $data['data_status_keluarga'] = $this->kepegawaian->get_detail_pegawai_status_keluarga($nipp);
  234. $data['data_tmt'] = $this->kepegawaian->get_detail_pegawai_tmt($nipp);
  235. $data['data_unit'] = $this->kepegawaian->get_detail_pegawai_unit($nipp);
  236. $data['data_grade'] = $this->kepegawaian->get_detail_pegawai_grade($nipp);
  237. $data['data_stkp'] = $this->kepegawaian->get_detail_pegawai_stkp($nipp);
  238. $data['data_anak'] = $this->kepegawaian->get_detail_pegawai_anak($nipp);
  239. #count data
  240. $data['jumlah_bahasa'] = $this->kepegawaian->count_result_bahasa($nipp);
  241. $data['page_karyawan'] = 'yes';
  242. $this->load->view('kepegawaian/index',$data);
  243. }
  244. // FUNGSI PEMANGGILAN VIEW ADD DATA //
  245. public function add_pegawai()
  246. {
  247. $data['list_unit'] = $this->kepegawaian->get_list_unit();
  248. $data['list_jabatan'] = $this->kepegawaian->get_list_jabatan();
  249. $data['view_add_pekerja'] = 'class="this"';
  250. $data['page'] = 'Input Data Diri';
  251. $data['page_karyawan'] = 'yes';
  252. $this->load->view('kepegawaian/index',$data);
  253. }
  254. public function add_pegawai_pasangan()
  255. {
  256. $data['page'] = 'Input Data Pasangan';
  257. $data['page_karyawan'] = 'yes';
  258. $this->load->view('kepegawaian/index',$data);
  259. }
  260. public function add_pegawai_ortu()
  261. {
  262. $data['page'] = 'Input Data Ortu';
  263. $data['page_karyawan'] = 'yes';
  264. $this->load->view('kepegawaian/index',$data);
  265. }
  266. public function add_pegawai_mertua()
  267. {
  268. $data['page'] = 'Input Data Mertua';
  269. $data['page_karyawan'] = 'yes';
  270. $this->load->view('kepegawaian/index',$data);
  271. }
  272. public function add_bahasa_pegawai()
  273. {
  274. $data['page'] = 'Add Data Bahasa';
  275. $data['page_karyawan'] = 'yes';
  276. $this->load->view('kepegawaian/index',$data);
  277. }
  278. // FUNGSI PENAMBAHAN DATA PEGAWAI KE DATABASE //
  279. public function submit_data_diri()
  280. {
  281. #preparing date update
  282. $datestring = "%Y-%m-%d" ;
  283. $time = time();
  284. $tanggal = mdate($datestring, $time);
  285. $data['list_unit'] = $this->kepegawaian->get_list_unit();
  286. $data['list_jabatan'] = $this->kepegawaian->get_list_jabatan();
  287. #set validation
  288. $this->load->library('form_validation');
  289. $this->form_validation->set_rules('nipp', 'nipp', 'required');
  290. $this->form_validation->set_rules('nama', 'nama', 'required');
  291. $this->form_validation->set_rules('tempat', 'tempat', 'required');
  292. $this->form_validation->set_rules('tanggal', 'tanggal', 'required');
  293. $this->form_validation->set_rules('jns_klm', 'jns_klm', 'required');
  294. $this->form_validation->set_rules('gol_drh', 'gol_drh', 'required');
  295. if ($this->form_validation->run() == FALSE)
  296. {
  297. $data['page'] = 'Input Data Diri';
  298. $data['page_karyawan'] = 'yes';
  299. $this->load->view('kepegawaian/index',$data);
  300. }
  301. else
  302. {
  303. #preparing data for input
  304. $data_pegawai = array(
  305. 'peg_nipp' => $this->input->post('nipp'),
  306. 'peg_nama' => $this->input->post('nama'),
  307. 'peg_tmpt_lahir' => $this->input->post('tempat'),
  308. 'peg_tgl_lahir' => mdate($datestring, strtotime($this->input->post('tanggal'))),
  309. 'peg_jns_kelamin' => $this->input->post('jns_klm'),
  310. 'peg_gol_darah' => $this->input->post('gol_drh'),
  311. 'peg_update_on' => $tanggal,
  312. 'peg_update_by' => 'admin'
  313. );
  314. #input data to table pegawai
  315. $this->kepegawaian->insert_data_pegawai($data_pegawai);
  316. $data_agama = array(
  317. 'p_ag_nipp' => $this->input->post('nipp'),
  318. 'p_ag_agama' => $this->input->post('agama'),
  319. 'p_ag_update_on' => $tanggal,
  320. 'p_ag_update_by' => 'admin'
  321. );
  322. $this->kepegawaian->insert_data_pegawai_agama($data_agama);
  323. $data_alamat = array(
  324. 'p_al_nipp' => $this->input->post('nipp'),
  325. 'p_al_jalan' => $this->input->post('jalan'),
  326. 'p_al_kelurahan' => $this->input->post('kelurahan'),
  327. 'p_al_kecamatan' => $this->input->post('kecamatan'),
  328. 'p_al_kabupaten' => $this->input->post('kabupaten'),
  329. 'p_al_provinsi' => $this->input->post('provinsi'),
  330. 'p_al_no_telp' => $this->input->post('notelp'),
  331. 'p_al_email' => $this->input->post('email'),
  332. 'p_al_update_on' => $tanggal,
  333. 'p_al_update_by' => 'admin'
  334. );
  335. $this->kepegawaian->insert_data_pegawai_alamat($data_alamat);
  336. $data_bahasa = array(
  337. 'p_bhs_nipp' => $this->input->post('nipp'),
  338. 'p_bhs_bahasa' => $this->input->post('bahasa'),
  339. 'p_bhs_update_on' => $tanggal,
  340. 'p_bhs_update_by' => 'admin'
  341. );
  342. $this->kepegawaian->insert_data_pegawai_bahasa($data_bahasa);
  343. $data_fisik = array(
  344. 'p_fs_nipp' => $this->input->post('nipp'),
  345. 'p_fs_tinggi' => $this->input->post('tinggi'),
  346. 'p_fs_berat' => $this->input->post('berat'),
  347. 'p_fs_foto' => '',
  348. 'p_fs_update_on' => $tanggal,
  349. 'p_fs_update_by' => 'admin'
  350. );
  351. $this->kepegawaian->insert_data_pegawai_fisik($data_fisik);
  352. $data_jabatan = array(
  353. 'p_jbt_nipp' => $this->input->post('nipp'),
  354. 'p_jbt_jabatan' => $this->input->post('jabatan'),
  355. 'p_jbt_update_on' => $tanggal,
  356. 'p_jbt_update_by' => 'admin'
  357. );
  358. $this->kepegawaian->insert_data_pegawai_jabatan($data_jabatan);
  359. $data_pendidikan = array(
  360. 'p_pdd_nipp' => $this->input->post('nipp'),
  361. 'p_pdd_tingkat' => $this->input->post('tgk_pdd'),
  362. 'p_pdd_lp' => $this->input->post('lembaga'),
  363. 'p_pdd_masuk' => $this->input->post('masuk'),
  364. 'p_pdd_keluar' => $this->input->post('keluar'),
  365. 'p_pdd_update_on' => $tanggal,
  366. 'p_pdd_update_by' => 'admin'
  367. );
  368. $this->kepegawaian->insert_data_pegawai_pendidikan($data_pendidikan);
  369. #preparing data
  370. #cek apakah pegawai tetap atau outsource
  371. if ($this->input->post('stp') == 'PKWT')
  372. {
  373. $provider = 'PT Gapura Angkasa';
  374. } else
  375. {
  376. $provider = $this->input->post('provider');
  377. }
  378. $data_tmt = array(
  379. 'p_tmt_nipp' => $this->input->post('nipp'),
  380. 'p_tmt_status' => $this->input->post('stp'),
  381. 'p_tmt_provider' => $provider,
  382. 'p_tmt_tmt' => mdate($datestring, strtotime($this->input->post('tmt'))),
  383. 'p_tmt_update_on' => $tanggal,
  384. 'p_tmt_update_by' => 'admin'
  385. );
  386. $this->kepegawaian->insert_data_pegawai_tmt($data_tmt);
  387. $data_unit = array(
  388. 'p_unt_nipp' => $this->input->post('nipp'),
  389. 'p_unt_kode_unit' => $this->input->post('unit'),
  390. 'p_unt_update_on' => $tanggal,
  391. 'p_unt_update_by' => 'admin'
  392. );
  393. $this->kepegawaian->insert_data_pegawai_unit($data_unit);
  394. $data_stk = array(
  395. 'p_stk_nipp' => $this->input->post('nipp'),
  396. 'p_stk_status_keluarga' => $this->input->post('stk'),
  397. 'p_stk_update_on' => $tanggal,
  398. 'p_stk_update_by' => 'admin'
  399. );
  400. $this->kepegawaian->insert_data_pegawai_status_keluarga($data_stk);
  401. #redirecting
  402. if (($this->input->post('stk') != 'TK') && ($this->input->post('stk') != 'K1'))
  403. {
  404. redirect('pekerja/add_pegawai_pasangan/'.$this->input->post('nipp'));
  405. }
  406. else
  407. {
  408. redirect('pekerja/add_pegawai_ortu/pribadi/'.$this->input->post('nipp'));
  409. }
  410. }
  411. }
  412. public function submit_data_pasangan()
  413. {
  414. #preparing date update
  415. $datestring = "%Y-%m-%d" ;
  416. $time = time();
  417. $tanggal = mdate($datestring, $time);
  418. $nipp = $this->input->post('nipp');
  419. $data_pasangan = array(
  420. 'p_ps_nipp' => $nipp,
  421. 'p_ps_nama' => $this->input->post('nama_psg'),
  422. 'p_ps_tmpt_lahir' => $this->input->post('tmpt_psgn'),
  423. 'p_ps_tgl_lahir' => mdate($datestring, strtotime($this->input->post('tanggal_psgn'))),
  424. 'p_ps_tgl_meninggal' => mdate($datestring, strtotime($this->input->post('meninggal_psgn'))),
  425. 'p_ps_alamat' => $this->input->post('almt_psgn'),
  426. 'p_ps_pekerjaan' => $this->input->post('kerja_psgn'),
  427. 'p_ps_update_on' => $tanggal,
  428. 'p_ps_update_by' => 'admin'
  429. );
  430. $this->kepegawaian->insert_data_pegawai_pasangan($data_pasangan);
  431. redirect('pekerja/add_pegawai_ortu/'.$nipp);
  432. }
  433. public function submit_data_ortu()
  434. {
  435. #preparing date update
  436. $datestring = "%Y-%m-%d" ;
  437. $time = time();
  438. $tanggal = mdate($datestring, $time);
  439. if ($this->uri->segment(3) != 'pribadi' )
  440. {
  441. $nipp = $this->input->post('nipp');
  442. $stk = $this->uri->segment(3);
  443. } else {
  444. $nipp = $this->input->post('nipp');
  445. $stk = $this->uri->segment(3);
  446. }
  447. $data_ayah = array(
  448. 'p_ay_nipp' => $nipp,
  449. 'p_ay_nama' => $this->input->post('nama_ayah'),
  450. 'p_ay_tmpt_lahir' => $this->input->post('tempat_ayah'),
  451. 'p_ay_tgl_lahir' => mdate($datestring, strtotime($this->input->post('tanggal_ayah'))),
  452. 'p_ay_tgl_meninggal' => mdate($datestring, strtotime($this->input->post('meninggal_ayah'))),
  453. 'p_ay_alamat' => $this->input->post('almt_ayah'),
  454. 'p_ay_pekerjaan' => $this->input->post('kerja_ayah'),
  455. 'p_ay_update_on' => $tanggal,
  456. 'p_ay_update_by' => 'admin'
  457. );
  458. $this->kepegawaian->insert_data_pegawai_ayah($data_ayah);
  459. $data_ibu = array(
  460. 'p_ibu_nipp' => $nipp,
  461. 'p_ibu_nama' => $this->input->post('nama_ibu'),
  462. 'p_ibu_tmpt_lahir' => $this->input->post('tempat_ibu'),
  463. 'p_ibu_tgl_lahir' => mdate($datestring, strtotime($this->input->post('tanggal_ibu'))),
  464. 'p_ibu_tgl_meninggal' => mdate($datestring, strtotime($this->input->post('meninggal_ibu'))),
  465. 'p_ibu_alamat' => $this->input->post('almt_ibu'),
  466. 'p_ibu_pekerjaan' => $this->input->post('kerja_ibu'),
  467. 'p_ibu_update_on' => $tanggal,
  468. 'p_ibu_update_by' => 'admin'
  469. );
  470. $this->kepegawaian->insert_data_pegawai_ibu($data_ibu);
  471. if ($stk != 'pribadi')
  472. {
  473. redirect('pekerja/add_pegawai_mertua/'.$nipp);
  474. } else {
  475. redirect('pekerja/index');
  476. }
  477. }
  478. public function submit_data_mertua()
  479. {
  480. #preparing date update
  481. $datestring = "%Y-%m-%d" ;
  482. $time = time();
  483. $tanggal = mdate($datestring, $time);
  484. $nipp = $this->input->post('nipp');
  485. $data_mert_ayah = array(
  486. 'p_may_nipp' => $nipp,
  487. 'p_may_nama' => $this->input->post('nama_mert_ayah'),
  488. 'p_may_tmpt_lahir' => $this->input->post('tempat_mert_ayah'),
  489. 'p_may_tgl_lahir' => mdate($datestring, strtotime($this->input->post('tanggal_mert_ayah'))),
  490. 'p_may_tgl_meninggal' => mdate($datestring, strtotime($this->input->post('meninggal_mert_ayah'))),
  491. 'p_may_alamat' => $this->input->post('almt_mert_ayah'),
  492. 'p_may_pekerjaan' => $this->input->post('kerja_mert_ayah'),
  493. 'p_may_update_on' => $tanggal,
  494. 'p_may_update_by' => 'admin'
  495. );
  496. $this->kepegawaian->insert_data_pegawai_mert_ayah($data_mert_ayah);
  497. $data_mert_ibu = array(
  498. 'p_mib_nipp' => $nipp,
  499. 'p_mib_nama' => $this->input->post('nama_mert_ibu'),
  500. 'p_mib_tmpt_lahir' => $this->input->post('tempat_mert_ibu'),
  501. 'p_mib_tgl_lahir' => mdate($datestring, strtotime($this->input->post('tanggal_mert_ibu'))),
  502. 'p_mib_tgl_meninggal' => mdate($datestring, strtotime($this->input->post('meninggal_mert_ibu'))),
  503. 'p_mib_alamat' => $this->input->post('almt_mert_ibu'),
  504. 'p_mib_pekerjaan' => $this->input->post('kerja_mert_ibu'),
  505. 'p_mib_update_on' => $tanggal,
  506. 'p_mib_update_by' => 'admin'
  507. );
  508. $this->kepegawaian->insert_data_pegawai_mert_ibu($data_mert_ibu);
  509. redirect('pekerja/index');
  510. }
  511. public function add_data_anak()
  512. {
  513. #preparing date update
  514. $datestring = "%Y-%m-%d" ;
  515. $time = time();
  516. $tanggal = mdate($datestring, $time);
  517. $nipp = $this->input->post('nipp');
  518. #set validation
  519. $this->load->library('form_validation');
  520. $this->form_validation->set_rules('nama', 'nama', 'required');
  521. $this->form_validation->set_rules('tempat', 'tempat', 'required');
  522. $this->form_validation->set_rules('tanggal', 'tanggal', 'required');
  523. $this->form_validation->set_rules('pendidikan', 'pendidikan', 'required');
  524. if ($this->form_validation->run() == FALSE)
  525. {
  526. redirect('pekerja/add_anak_pegawai/'.$nipp);
  527. }
  528. else
  529. {
  530. #preparing data for input
  531. $data_anak = array(
  532. 'peg_ank_nipp' => $nipp,
  533. 'peg_ank_nama' => $this->input->post('nama'),
  534. 'peg_ank_tempat_lahir' => $this->input->post('tempat'),
  535. 'peg_ank_tgl_lahir' => mdate($datestring, strtotime($this->input->post('tanggal'))),
  536. 'peg_ank_pendidikan' => $this->input->post('pendidikan'),
  537. 'p_ank_update_on' => $tanggal,
  538. 'p_ank_update_by' => 'admin'
  539. );
  540. $this->kepegawaian->insert_data_pegawai_anak($data_anak);
  541. redirect('pekerja/get_pegawai/'.$nipp);
  542. }
  543. }
  544. public function add_data_bahasa()
  545. {
  546. #preparing date update
  547. $datestring = "%Y-%m-%d" ;
  548. $time = time();
  549. $tanggal = mdate($datestring, $time);
  550. $nipp = $this->input->post('nipp');
  551. #set validation
  552. $this->load->library('form_validation');
  553. $this->form_validation->set_rules('bahasa', 'bahasa', 'required');
  554. if ($this->form_validation->run() == FALSE)
  555. {
  556. redirect('pekerja/add_bahasa_pegawai/'.$nipp);
  557. }
  558. else
  559. {
  560. #preparing data for input
  561. $data_bahasa = array(
  562. 'p_bhs_nipp' => $nipp,
  563. 'p_bhs_bahasa' => $this->input->post('bahasa'),
  564. 'p_bhs_update_on' => $tanggal,
  565. 'p_bhs_update_by' => 'admin'
  566. );
  567. $this->kepegawaian->insert_data_pegawai_bahasa($data_bahasa);
  568. redirect('pekerja/get_pegawai/'.$nipp);
  569. }
  570. }
  571. // FUNGSI PEMANGGILAN VIEW EDIT DATA //
  572. public function edit_data($nipp)
  573. {
  574. $data['pegawai'] = $this->kepegawaian->get_data_pegawai_by_nipp($nipp);
  575. $data['agama'] = $this->kepegawaian->get_detail_pegawai_agama($nipp);
  576. $data['fisik'] = $this->kepegawaian->get_detail_pegawai_fisik($nipp);
  577. $data['status_keluarga'] = $this->kepegawaian->get_detail_pegawai_status_keluarga($nipp);
  578. $data['page'] = 'Edit Data Diri';
  579. $data['page_karyawan'] = 'yes';
  580. $this->load->view('kepegawaian/index',$data);
  581. }
  582. public function edit_alamat_pegawai($nipp)
  583. {
  584. $data['alamat'] = $this->kepegawaian->get_detail_pegawai_alamat($nipp);
  585. $data['page'] = 'Edit Data Alamat';
  586. $data['page_karyawan'] = 'yes';
  587. $this->load->view('kepegawaian/index',$data);
  588. }
  589. public function edit_pasangan_pegawai($nipp)
  590. {
  591. $data['pasangan'] = $this->kepegawaian->get_detail_pegawai_pasangan($nipp);
  592. $data['page'] = 'Edit Data Pasangan';
  593. $data['page_karyawan'] = 'yes';
  594. $this->load->view('kepegawaian/index',$data);
  595. }
  596. public function edit_ortu_pegawai($nipp)
  597. {
  598. $data['ayah'] = $this->kepegawaian->get_detail_pegawai_ayah($nipp);
  599. $data['ibu'] = $this->kepegawaian->get_detail_pegawai_ibu($nipp);
  600. $data['page'] = 'Edit Data Ortu';
  601. $data['page_karyawan'] = 'yes';
  602. $this->load->view('kepegawaian/index',$data);
  603. }
  604. public function edit_mertua_pegawai($nipp)
  605. {
  606. $data['mertua_ayah'] = $this->kepegawaian->get_detail_pegawai_mert_ayah($nipp);
  607. $data['mertua_ibu'] = $this->kepegawaian->get_detail_pegawai_mert_ibu($nipp);
  608. $data['page'] = 'Edit Data Mertua';
  609. $data['page_karyawan'] = 'yes';
  610. $this->load->view('kepegawaian/index',$data);
  611. }
  612. public function edit_anak_pegawai($nipp)
  613. {
  614. $data['anak'] = $this->kepegawaian->get_detail_pegawai_anak($nipp);
  615. $data['page'] = 'Edit Data Anak';
  616. $data['page_karyawan'] = 'yes';
  617. $this->load->view('kepegawaian/index',$data);
  618. }
  619. public function edit_jabatan_pegawai($nipp)
  620. {
  621. $data['jabatan_tmt'] = $this->kepegawaian->get_detail_pegawai_jabatan_tmt($nipp);
  622. $data['list_jabatan'] = $this->kepegawaian->get_list_jabatan();
  623. $data['list_unit'] = $this->kepegawaian->get_list_unit();
  624. $data['unit'] = $this->kepegawaian->get_detail_pegawai_unit($nipp);
  625. $data['grade'] = $this->kepegawaian->get_detail_pegawai_grade($nipp);
  626. $data['page'] = 'Edit Data Jabatan';
  627. $data['page_karyawan'] = 'yes';
  628. $this->load->view('kepegawaian/index',$data);
  629. }
  630. public function edit_pendidikan_pegawai($nipp)
  631. {
  632. $data['bahasa'] = $this->kepegawaian->get_detail_pegawai_bahasa($nipp);
  633. $data['pendidikan'] = $this->kepegawaian->get_detail_pegawai_pendidikan($nipp);
  634. $data['page'] = 'Edit Data Pendidikan';
  635. $data['page_karyawan'] = 'yes';
  636. $this->load->view('kepegawaian/index',$data);
  637. }
  638. public function add_anak_pegawai($nipp)
  639. {
  640. $data['page'] = 'Add Data Anak';
  641. $data['page_karyawan'] = 'yes';
  642. $this->load->view('kepegawaian/index',$data);
  643. }
  644. //FUNGSI PENGUBAHAN DATA PEGAWAI YANG DI DATABASE //
  645. public function edit_data_diri()
  646. {
  647. #preparing date update
  648. $datestring = "%Y-%m-%d" ;
  649. $time = time();
  650. $tanggal = mdate($datestring, $time);
  651. #set validation
  652. $this->load->library('form_validation');
  653. $this->form_validation->set_rules('nama', 'nama', 'required');
  654. $this->form_validation->set_rules('tempat', 'tempat', 'required');
  655. $this->form_validation->set_rules('tanggal', 'tanggal', 'required');
  656. $this->form_validation->set_rules('jns_klm', 'jns_klm', 'required');
  657. $this->form_validation->set_rules('gol_drh', 'gol_drh', 'required');
  658. if ($this->form_validation->run() == FALSE)
  659. {
  660. $data['page'] = 'Input Data Diri';
  661. $this->load->view('kepegawaian/index',$data);
  662. }
  663. else
  664. {
  665. $nipp = $this->uri->segment(3);
  666. $data_pegawai = array(
  667. 'peg_nama' => $this->input->post('nama'),
  668. 'peg_tmpt_lahir' => $this->input->post('tempat'),
  669. 'peg_tgl_lahir' => mdate($datestring, strtotime($this->input->post('tanggal'))),
  670. 'peg_jns_kelamin' => $this->input->post('jns_klm'),
  671. 'peg_gol_darah' => $this->input->post('gol_drh'),
  672. 'peg_update_on' => $tanggal,
  673. 'peg_update_by' => 'admin'
  674. );
  675. $data_telp = array(
  676. 'p_al_no_telp' => $this->input->post('no_telp')
  677. );
  678. #input data to table pegawai
  679. $this->kepegawaian->update_data_pegawai($data_pegawai);
  680. $this->kepegawaian->update_data_telp($data_telp);
  681. }
  682. redirect('pekerja/get_pegawai/'.$nipp);
  683. }
  684. public function edit_data_alamat()
  685. {
  686. #preparing date update
  687. $datestring = "%Y-%m-%d" ;
  688. $time = time();
  689. $tanggal = mdate($datestring, $time);
  690. $nipp = $this->uri->segment(3);
  691. $data_alamat = array(
  692. 'p_al_jalan' => $this->input->post('jalan'),
  693. 'p_al_kelurahan' => $this->input->post('kelurahan'),
  694. 'p_al_kecamatan' => $this->input->post('kecamatan'),
  695. 'p_al_kabupaten' => $this->input->post('kabupaten'),
  696. 'p_al_provinsi' => $this->input->post('provinsi'),
  697. 'p_al_update_on' => $tanggal,
  698. 'p_al_update_by' => 'admin'
  699. );
  700. #input data to table pegawai
  701. $this->kepegawaian->update_data_alamat($data_alamat);
  702. redirect('pekerja/get_pegawai/'.$nipp);
  703. }
  704. public function edit_data_pasangan()
  705. {
  706. #preparing date update
  707. $datestring = "%Y-%m-%d" ;
  708. $time = time();
  709. $tanggal = mdate($datestring, $time);
  710. $nipp = $this->uri->segment(3);
  711. $data_pasangan = array(
  712. 'p_ps_nama' => $this->input->post('nama'),
  713. 'p_ps_tmpt_lahir' => $this->input->post('tempat_lahir'),
  714. 'p_ps_tgl_lahir' => mdate($datestring, strtotime($this->input->post('tgl_lahir'))),
  715. 'p_ps_tgl_meninggal'=> mdate($datestring, strtotime($this->input->post('tgl_meninggal'))),
  716. 'p_ps_alamat' => $this->input->post('alamat'),
  717. 'p_ps_pekerjaan' => $this->input->post('pekerjaan'),
  718. 'p_ps_update_on' => $tanggal,
  719. 'p_ps_update_by' => 'admin'
  720. );
  721. #input data to table pegawai
  722. $this->kepegawaian->update_data_pasangan($data_pasangan);
  723. redirect('pekerja/get_pegawai/'.$nipp);
  724. }
  725. public function edit_data_ortu()
  726. {
  727. #preparing date update
  728. $datestring = "%Y-%m-%d" ;
  729. $time = time();
  730. $tanggal = mdate($datestring, $time);
  731. $nipp = $this->uri->segment(3);
  732. $data_ayah = array(
  733. 'p_ay_nama' => $this->input->post('nama_ayah'),
  734. 'p_ay_tmpt_lahir' => $this->input->post('tempat_ayah'),
  735. 'p_ay_tgl_lahir' => mdate($datestring, strtotime($this->input->post('tgl_ayah'))),
  736. 'p_ay_tgl_meninggal' => mdate($datestring, strtotime($this->input->post('meninggal_ayah'))),
  737. 'p_ay_alamat' => $this->input->post('almt_ayah'),
  738. 'p_ay_pekerjaan' => $this->input->post('kerja_ayah'),
  739. 'p_ay_update_on' => $tanggal,
  740. 'p_ay_update_by' => 'admin'
  741. );
  742. $this->kepegawaian->update_data_ayah($data_ayah);
  743. $data_ibu = array(
  744. 'p_ibu_nama' => $this->input->post('nama_ibu'),
  745. 'p_ibu_tmpt_lahir' => $this->input->post('tempat_ibu'),
  746. 'p_ibu_tgl_lahir' => mdate($datestring, strtotime($this->input->post('tgl_ibu'))),
  747. 'p_ibu_tgl_meninggal' => mdate($datestring, strtotime($this->input->post('meninggal_ibu'))),
  748. 'p_ibu_alamat' => $this->input->post('almt_ibu'),
  749. 'p_ibu_pekerjaan' => $this->input->post('kerja_ibu'),
  750. 'p_ibu_update_on' => $tanggal,
  751. 'p_ibu_update_by' => 'admin'
  752. );
  753. $this->kepegawaian->update_data_ibu($data_ibu);
  754. redirect('pekerja/get_pegawai/'.$nipp);
  755. }
  756. public function edit_data_mertua()
  757. {
  758. #preparing date update
  759. $datestring = "%Y-%m-%d" ;
  760. $time = time();
  761. $tanggal = mdate($datestring, $time);
  762. $nipp = $this->uri->segment(3);
  763. $data_mert_ayah = array(
  764. 'p_may_nama' => $this->input->post('nama_ayah'),
  765. 'p_may_tmpt_lahir' => $this->input->post('tempat_ayah'),
  766. 'p_may_tgl_lahir' => mdate($datestring, strtotime($this->input->post('tgl_ayah'))),
  767. 'p_may_tgl_meninggal' => mdate($datestring, strtotime($this->input->post('meninggal_ayah'))),
  768. 'p_may_alamat' => $this->input->post('almt_ayah'),
  769. 'p_may_pekerjaan' => $this->input->post('kerja_ayah'),
  770. 'p_may_update_on' => $tanggal,
  771. 'p_may_update_by' => 'admin'
  772. );
  773. $this->kepegawaian->update_data_mert_ayah($data_mert_ayah);
  774. $data_mert_ibu = array(
  775. 'p_mib_nama' => $this->input->post('nama_ibu'),
  776. 'p_mib_tmpt_lahir' => $this->input->post('tempat_ibu'),
  777. 'p_mib_tgl_lahir' => mdate($datestring, strtotime($this->input->post('tgl_ibu'))),
  778. 'p_mib_tgl_meninggal' => mdate($datestring, strtotime($this->input->post('meninggal_ibu'))),
  779. 'p_mib_alamat' => $this->input->post('almt_ibu'),
  780. 'p_mib_pekerjaan' => $this->input->post('kerja_ibu'),
  781. 'p_mib_update_on' => $tanggal,
  782. 'p_mib_update_by' => 'admin'
  783. );
  784. $this->kepegawaian->update_data_mert_ibu($data_mert_ibu);
  785. redirect('pekerja/get_pegawai/'.$nipp);
  786. }
  787. public function edit_data_anak()
  788. {
  789. #preparing date update
  790. $datestring = "%Y-%m-%d" ;
  791. $time = time();
  792. $tanggal = mdate($datestring, $time);
  793. $nipp = $this->uri->segment(3);
  794. $data_anak = array(
  795. 'peg_ank_nama' => $this->input->post('nama'),
  796. 'peg_ank_tempat_lahir' => $this->input->post('tempat'),
  797. 'peg_ank_tgl_lahir' => mdate($datestring, strtotime($this->input->post('tanggal'))),
  798. 'peg_ank_pendidikan' => $this->input->post('pendidikan'),
  799. 'p_ank_update_on' => $tanggal,
  800. 'p_ank_update_by' => 'admin'
  801. );
  802. #input data to table pegawai
  803. $this->kepegawaian->update_data_anak($data_anak);
  804. redirect('pekerja/get_pegawai/'.$nipp);
  805. }
  806. public function edit_data_jabatan()
  807. {
  808. #preparing date update
  809. $datestring = "%Y-%m-%d" ;
  810. $time = time();
  811. $tanggal = mdate($datestring, $time);
  812. if ($this->input->post('status') == 'PKWT')
  813. {
  814. $provider = 'PT Gapura Angkasa';
  815. }else{
  816. $provider = $this->input->post('provider');
  817. }
  818. $tanggal_tmt = mdate($datestring, strtotime($this->input->post('tmt')));
  819. $nipp = $this->uri->segment(3);
  820. $data_jabatan = array(
  821. 'p_jbt_nipp' => $nipp,
  822. 'p_jbt_jabatan' => $this->input->post('jabatan'),
  823. 'p_jbt_update_on' => $tanggal,
  824. 'p_jbt_update_by' => 'admin'
  825. );
  826. $data_tmt = array(
  827. 'p_tmt_nipp' => $nipp,
  828. 'p_tmt_status' => $this->input->post('status'),
  829. 'p_tmt_provider' => $provider,
  830. 'p_tmt_tmt' => $tanggal_tmt,
  831. 'p_tmt_update_on' => $tanggal,
  832. 'p_tmt_update_by' => 'admin'
  833. );
  834. $data_update_tmt_tanggal = array ('p_tmt_end' => $tanggal);
  835. $data_grade = array(
  836. 'p_grd_nipp' => $nipp,
  837. 'p_grd_grade' => $this->input->post('grade'),
  838. 'p_grd_update_on' => $tanggal,
  839. 'p_grd_update_by' => 'admin'
  840. );
  841. #input data to table pegawai
  842. $this->kepegawaian->insert_data_pegawai_jabatan($data_jabatan);
  843. $this->kepegawaian->update_data_tmt($data_update_tmt_tanggal);
  844. $this->kepegawaian->insert_data_pegawai_tmt($data_tmt);
  845. $this->kepegawaian->insert_data_pegawai_grade($data_grade);
  846. redirect('pekerja/get_pegawai/'.$nipp);
  847. }
  848. public function edit_data_pendidikan()
  849. {
  850. #preparing date update
  851. $datestring = "%Y-%m-%d" ;
  852. $time = time();
  853. $tanggal = mdate($datestring, $time);
  854. $nipp = $this->uri->segment(3);
  855. $data_pendidikan = array(
  856. 'p_pdd_tingkat' => $this->input->post('pendidikan'),
  857. 'p_pdd_lp' => $this->input->post('lp'),
  858. 'p_pdd_masuk' => $this->input->post('masuk'),
  859. 'p_pdd_keluar' => $this->input->post('keluar'),
  860. 'p_pdd_update_on' => $tanggal,
  861. 'p_pdd_update_by' => 'admin'
  862. );
  863. $this->kepegawaian->update_data_pendidikan($data_pendidikan);
  864. $data_id_bahasa = $this->kepegawaian->get_detail_pegawai_bahasa($nipp);
  865. $nomer = 1;
  866. foreach ($data_id_bahasa as $row_bahasa) :
  867. {
  868. $data_bahasa = array(
  869. 'p_bhs_bahasa' => $this->input->post('bahasa'.$nomer),
  870. 'p_bhs_update_on' => $tanggal,
  871. 'p_bhs_update_by' => 'admin'
  872. );
  873. $id_bahasa = $row_bahasa['id_peg_bahasa'];
  874. $nomer++;
  875. $this->kepegawaian->update_data_bahasa($data_bahasa, $id_bahasa);
  876. } endforeach;
  877. #input data to table pegawai
  878. $this->kepegawaian->update_data_pendidikan($data_pendidikan);
  879. redirect('pekerja/get_pegawai/'.$nipp);
  880. }
  881. }
  882. /* End of file welcome.php */
  883. /* Location: ./application/controllers/welcome.php */