Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public function verifikasi_data_jabatan($id)
- {
- // Cek PNS ID BKN dulu
- $dataDiklat = $this->db->get_where('v_diklat_pegawai', array('diklat_pegawai_id' => $id))->row();
- $pnsOrangId = $dataDiklat->pns_id;
- if ($pnsOrangId != '') {
- $data = array(
- 'jabatan_pegawai_verif' => 3,
- 'jabatan_pegawai_update' => date('Y-m-d H:i:s'),
- );
- $this->db->where('jabatan_pegawai_id', $id);
- $this->db->update('simpeg_jabatan_pegawai', $data);
- // Data Pegawai
- $dataPegawai = $this->db->get_where('v_jabatan_pegawai', array('jabatan_pegawai_id' => $id))->row();
- $pegawai_id = $dataPegawai->pegawai_id;
- $status = $dataPegawai->jabatan_pegawai_status;
- $jabatan_id = $dataPegawai->jabatan_id;
- $opd_status_pakai = $dataPegawai->opd_status_pakai;
- if ($status == 'Ya') {
- if ($jabatan_id == 1) {
- if ($opd_status_pakai == 'B') {
- $jab_struktur = $dataPegawai->jabatan_pegawai_jab_struktural;
- $tgl_tmt_struktur = $dataPegawai->jabatan_pegawai_tmt_jabatan;
- $tgl_tmt_eselon = $dataPegawai->jabatan_pegawai_tmt_jabatan;
- $jab_fung_tertentu_id = '';
- $jab_fung_umum_id = '';
- $pegawai_tmt_jab_fungsional = '';
- } else {
- $jab_struktur = $dataPegawai->jabatan_pegawai_jab_struktural;
- $tgl_tmt_struktur = $dataPegawai->jabatan_pegawai_tmt_jabatan;
- $tgl_tmt_eselon = $dataPegawai->jabatan_pegawai_tmt_jabatan;
- $jab_fung_tertentu_id = '';
- $jab_fung_umum_id = '';
- $pegawai_tmt_jab_fungsional = '';
- }
- } elseif ($jabatan_id == 2) {
- if ($opd_status_pakai == 'B') {
- $jab_struktur = $dataPegawai->jabatan_pegawai_jab_struktural;
- $tgl_tmt_struktur = '';
- $tgl_tmt_eselon = '';
- $jab_fung_tertentu_id = '';
- $jab_fung_umum_id = '';
- $pegawai_tmt_jab_fungsional = $dataPegawai->jabatan_pegawai_tmt_jabatan;
- } else {
- $jab_struktur = '';
- $tgl_tmt_struktur = '';
- $tgl_tmt_eselon = '';
- $jab_fung_tertentu_id = $dataPegawai->jab_fung_tertentu_id;
- $jab_fung_umum_id = '';
- $pegawai_tmt_jab_fungsional = $dataPegawai->jabatan_pegawai_tmt_jabatan;
- }
- } else {
- if ($opd_status_pakai == 'B') {
- $jab_struktur = $dataPegawai->jabatan_pegawai_jab_struktural;
- $tgl_tmt_struktur = '';
- $tgl_tmt_eselon = '';
- $jab_fung_tertentu_id = '';
- $jab_fung_umum_id = '';
- $pegawai_tmt_jab_fungsional = $dataPegawai->jabatan_pegawai_tmt_jabatan;
- } else {
- $jab_struktur = '';
- $tgl_tmt_struktur = '';
- $tgl_tmt_eselon = '';
- $jab_fung_tertentu_id = '';
- $jab_fung_umum_id = $dataPegawai->jab_fung_umum_id;
- $pegawai_tmt_jab_fungsional = $dataPegawai->jabatan_pegawai_tmt_jabatan;
- }
- }
- if ($dataPegawai->jabatan_pegawai_tpp == 1) {
- $opd_id_tpp = $dataPegawai->opd_id;
- } else {
- $opd_id_tpp = 0;
- }
- if ($dataPegawai->sekolah_id == 0) {
- $unor_id = $dataPegawai->unor_id;
- } else {
- $unor_id = $dataPegawai->unor_id_sekolah;
- }
- $dataUpdate = array(
- 'jabatan_id' => $jabatan_id,
- 'unor_id' => $unor_id,
- 'opd_id' => $dataPegawai->opd_id,
- 'opd_id_tpp' => $opd_id_tpp,
- 'eselon_id' => $dataPegawai->eselon_id,
- 'sekolah_id' => $dataPegawai->sekolah_id,
- 'pegawai_nm_jab_struktur' => $jab_struktur,
- 'pegawai_tmt_jab_struktur' => $tgl_tmt_struktur,
- 'pegawai_tmt_eselon' => $tgl_tmt_eselon,
- 'jab_fung_tertentu_id' => $jab_fung_tertentu_id,
- 'jab_fung_umum_id' => $jab_fung_umum_id,
- 'pegawai_no_sk' => $dataPegawai->jabatan_pegawai_no_sk,
- 'pegawai_tgl_sk' => $dataPegawai->jabatan_pegawai_tgl_sk,
- 'pegawai_tmt_jab_fungsional' => $pegawai_tmt_jab_fungsional,
- 'pegawai_pensiun' => $dataPegawai->jabatan_pegawai_usia_pensiun,
- 'pegawai_status_angkat' => $dataPegawai->jabatan_pegawai_diangkat,
- );
- $this->db->where('pegawai_id', $pegawai_id);
- $this->db->update('simpeg_pegawai', $dataUpdate);
- // Update Data Jabatan
- $dataJabatan = array(
- 'jabatan_pegawai_status' => 'Tidak',
- );
- $this->db->where('jabatan_pegawai_id !=', $id);
- $this->db->where('pegawai_id', $pegawai_id);
- $this->db->update('simpeg_jabatan_pegawai', $dataJabatan);
- }
- // Kirim SIASN
- // Upload Dokumen SI-ASN dulu
- $jenisKompetensi = $dataDiklat->jenis_kompetensi_id_sapk;
- $namaPenyelenggara = $dataDiklat->diklat_pegawai_penyelenggara;
- $jmlJam = intval($dataDiklat->diklat_pegawai_jp);
- $latihanStrukturalId = $dataDiklat->diklat_id;
- $nomor = $dataDiklat->diklat_pegawai_no_sertifikat;
- $NamaKursus = $dataDiklat->diklat_pegawai_nama;
- $tahun = intval($dataDiklat->diklat_pegawai_tahun);
- $tanggal = date('d-m-Y', strtotime($dataDiklat->diklat_pegawai_tgl_mulai));
- $tanggalSelesai = date('d-m-Y', strtotime($dataDiklat->diklat_pegawai_tgl_selesai));
- $namaBerkas = $dataDiklat->diklat_pegawai_berkas;
- if ($namaBerkas != '') {
- $lokasiBerkas = FCPATH . 'dokumen/diklat/' . $namaBerkas;
- if ($jenisKompetensi == 1) {
- $id_ref_dokumen = '874';
- } else {
- $id_ref_dokumen = '881';
- }
- $tokenapim = $this->sync_m->tokenapim();
- $tokensso = $this->sync_m->tokensso();
- $curl = curl_init();
- curl_setopt_array($curl, array(
- CURLOPT_URL => 'https://apimws.bkn.go.id:8243/apisiasn/1.0/upload-dok',
- CURLOPT_RETURNTRANSFER => true,
- CURLOPT_ENCODING => '',
- CURLOPT_MAXREDIRS => 10,
- CURLOPT_TIMEOUT => 0,
- CURLOPT_FOLLOWLOCATION => true,
- CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
- CURLOPT_CUSTOMREQUEST => 'POST',
- CURLOPT_POSTFIELDS => array('file' => new CURLFILE($lokasiBerkas), 'id_ref_dokumen' => $id_ref_dokumen),
- CURLOPT_HTTPHEADER => array(
- "accept: application/json",
- 'Content-Type: multipart/form-data',
- "Auth: bearer $tokensso",
- "Authorization: Bearer $tokenapim",
- ),
- ));
- $rspDok = curl_exec($curl);
- curl_close($curl);
- $dataDok = json_decode($rspDok);
- $repCode = $dataDok->code;
- if ($repCode == 1) {
- $path = [
- [
- "dok_id" => $id_ref_dokumen,
- "dok_nama" => $dataDok->data->dok_nama,
- "dok_uri" => $dataDok->data->dok_uri,
- "object" => $dataDok->data->object,
- "slug" => $id_ref_dokumen,
- ],
- ];
- }
- } else {
- $path = null;
- }
- if ($jenisKompetensi == 1) {
- $dataString = array(
- "bobot" => 0,
- "id" => null,
- "institusiPenyelenggara" => $namaPenyelenggara,
- "jenisKompetensi" => $jenisKompetensi,
- "jumlahJam" => $jmlJam,
- "latihanStrukturalId" => $latihanStrukturalId,
- "nomor" => $nomor,
- "path" => $path,
- "pnsOrangId" => $pnsOrangId,
- "tahun" => $tahun,
- "tanggal" => $tanggal,
- "tanggalSelesai" => $tanggalSelesai,
- );
- $dataPost = json_encode($dataString, JSON_UNESCAPED_SLASHES);
- $curl = curl_init();
- curl_setopt_array($curl, array(
- CURLOPT_URL => 'https://apimws.bkn.go.id:8243/apisiasn/1.0/diklat/save',
- CURLOPT_RETURNTRANSFER => true,
- CURLOPT_ENCODING => '',
- CURLOPT_MAXREDIRS => 10,
- CURLOPT_TIMEOUT => 0,
- CURLOPT_FOLLOWLOCATION => true,
- CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
- CURLOPT_CUSTOMREQUEST => 'POST',
- CURLOPT_POSTFIELDS => $dataPost,
- CURLOPT_HTTPHEADER => array(
- "accept: application/json",
- "Auth: bearer $tokensso",
- 'Content-Type: application/json',
- "Authorization: Bearer $tokenapim",
- ),
- ));
- $response = curl_exec($curl);
- echo curl_error($curl);
- curl_close($curl);
- print_r($response);
- $Callback = json_decode($response, true);
- $status = $Callback['success'];
- if ($status == 1) {
- $id_sapk = $Callback['mapData']['rwDiklatId'];
- // Update ID Sapk
- $dataUpdate = array(
- 'diklat_pegawai_id_sapk' => $id_sapk,
- );
- $this->db->where('diklat_pegawai_id', $id);
- $this->db->update('simpeg_diklat_pegawai', $dataUpdate);
- $resp = ['status' => 'success', 'message' => 'Verifikasi dan Sync SIASN Berhasil.'];
- } else {
- $resp = ['status' => 'failed', 'message' => 'Verifikasi Berhasil, SIASN : ' . $data->message];
- }
- } else {
- // Jika Kursus
- $dataString = array(
- "id" => null,
- "instansiId" => "A5EB03E23C56F6A0E040640A040252AD",
- "institusiPenyelenggara" => $namaPenyelenggara,
- "jenisDiklatId" => $jenisKompetensi,
- "jenisKursus" => null,
- "jenisKursusSertipikat" => null,
- "jumlahJam" => $jmlJam,
- "lokasiId" => null,
- "namaKursus" => $NamaKursus,
- "nomorSertipikat" => $nomor,
- "path" => $path,
- "pnsOrangId" => $pnsOrangId,
- "tahunKursus" => $tahun,
- "tanggalKursus" => $tanggal,
- "tanggalSelesaiKursus" => $tanggalSelesai,
- );
- $dataPost = json_encode($dataString, JSON_UNESCAPED_SLASHES);
- // print_r($dataPost);
- $curl = curl_init();
- curl_setopt_array($curl, array(
- CURLOPT_URL => 'https://apimws.bkn.go.id:8243/apisiasn/1.0/kursus/save',
- CURLOPT_RETURNTRANSFER => true,
- CURLOPT_ENCODING => '',
- CURLOPT_MAXREDIRS => 10,
- CURLOPT_TIMEOUT => 0,
- CURLOPT_FOLLOWLOCATION => true,
- CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
- CURLOPT_CUSTOMREQUEST => 'POST',
- CURLOPT_POSTFIELDS => $dataPost,
- CURLOPT_HTTPHEADER => array(
- "accept: application/json",
- "Auth: bearer $tokensso",
- 'Content-Type: application/json',
- "Authorization: Bearer $tokenapim",
- ),
- ));
- $response = curl_exec($curl);
- echo curl_error($curl);
- curl_close($curl);
- // print_r($response);
- $Callback = json_decode($response, true);
- $status = $Callback['success'];
- if ($status == 1) {
- $id_sapk = $Callback['mapData']['rwKursusId'];
- // Update ID Sapk
- $dataUpdate = array(
- 'diklat_pegawai_id_sapk' => $id_sapk,
- );
- $this->db->where('diklat_pegawai_id', $id);
- $this->db->update('simpeg_diklat_pegawai', $dataUpdate);
- $resp = ['status' => 'success', 'message' => 'Verifikasi dan Sync SIASN Berhasil.'];
- } else {
- $resp = ['status' => 'failed', 'message' => 'Verifikasi Berhasil, SIASN : ' . $Callback['message']];
- }
- }
- } else {
- $resp = ['status' => 'kosong'];
- }
- $resp = ['status' => 'success'];
- echo json_encode($resp);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement