<?php
/*
Author : Nikolius
Email : n1colius.lau@gmail.com
Date : 14-Jul-2015 12:40 PM
*/
require_once $cfg->mValue['docroot'] . "module/sia_setting/business/sia_setting.class.php";
class Mahasiswa_pt extends SiaSetting {
   function Mahasiswa_pt(&$configObject, $dataProceed) {
      SiaSetting::SiaSetting($configObject, $dataProceed);
      $this->AppendSqlQueries("module/mahasiswa_pt/business/mahasiswa_pt.sql.php");
   }

   function GetDataForSync(){
      $dataList = $this->GetProperty("DataProceed");

      $this->StartTransaction();
      $prosesInsertUpdate = TRUE;

      //update data terlebih dahulu
      for ($i=0; $i < count($dataList); $i++) {
         $p = array(
            $dataList[$i]['id_pd'],
            $dataList[$i]['nm_pd'],
            $dataList[$i]['jk'],
            $dataList[$i]['nisn'],
            $dataList[$i]['nik'],
            $dataList[$i]['tmpt_lahir'],
            $dataList[$i]['tgl_lahir'],
            $dataList[$i]['id_agama'],
            $dataList[$i]['id_kk'],
            $dataList[$i]['id_sp'],
            $dataList[$i]['jln'],
            $dataList[$i]['rt'],
            $dataList[$i]['rw'],
            $dataList[$i]['nm_dsn'],
            $dataList[$i]['ds_kel'],
            $dataList[$i]['id_wil'],
            $dataList[$i]['kode_pos'],
            $dataList[$i]['id_jns_tinggal'],
            $dataList[$i]['id_alat_transport'],
            $dataList[$i]['telepon_rumah'],
            $dataList[$i]['telepon_seluler'],
            $dataList[$i]['email'],
            $dataList[$i]['a_terima_kps'],
            $dataList[$i]['no_kps'],
            $dataList[$i]['stat_pd'],
            $dataList[$i]['nm_ayah'],
            $dataList[$i]['tgl_lahir_ayah'],
            $dataList[$i]['id_jenjang_pendidikan_ayah'],
            $dataList[$i]['id_pekerjaan_ayah'],
            $dataList[$i]['id_penghasilan_ayah'],
            $dataList[$i]['id_kebutuhan_khusus_ayah'],
            $dataList[$i]['nm_ibu_kandung'],
            $dataList[$i]['tgl_lahir_ibu'],
            $dataList[$i]['id_jenjang_pendidikan_ibu'],
            $dataList[$i]['id_penghasilan_ibu'],
            $dataList[$i]['id_pekerjaan_ibu'],
            $dataList[$i]['id_kebutuhan_khusus_ibu'],
            $dataList[$i]['nm_wali'],
            $dataList[$i]['tgl_lahir_wali'],
            $dataList[$i]['id_jenjang_pendidikan_wali'],
            $dataList[$i]['id_pekerjaan_wali'],
            $dataList[$i]['id_penghasilan_wali'],
            $dataList[$i]['kewarganegaraan'],
            $dataList[$i]['nm_pd'], //update
            $dataList[$i]['jk'],
            $dataList[$i]['nisn'],
            $dataList[$i]['nik'],
            $dataList[$i]['tmpt_lahir'],
            $dataList[$i]['tgl_lahir'],
            $dataList[$i]['id_agama'],
            $dataList[$i]['id_kk'],
            $dataList[$i]['id_sp'],
            $dataList[$i]['jln'],
            $dataList[$i]['rt'],
            $dataList[$i]['rw'],
            $dataList[$i]['nm_dsn'],
            $dataList[$i]['ds_kel'],
            $dataList[$i]['id_wil'],
            $dataList[$i]['kode_pos'],
            $dataList[$i]['id_jns_tinggal'],
            $dataList[$i]['id_alat_transport'],
            $dataList[$i]['telepon_rumah'],
            $dataList[$i]['telepon_seluler'],
            $dataList[$i]['email'],
            $dataList[$i]['a_terima_kps'],
            $dataList[$i]['no_kps'],
            $dataList[$i]['stat_pd'],
            $dataList[$i]['nm_ayah'],
            $dataList[$i]['tgl_lahir_ayah'],
            $dataList[$i]['id_jenjang_pendidikan_ayah'],
            $dataList[$i]['id_pekerjaan_ayah'],
            $dataList[$i]['id_penghasilan_ayah'],
            $dataList[$i]['id_kebutuhan_khusus_ayah'],
            $dataList[$i]['nm_ibu_kandung'],
            $dataList[$i]['tgl_lahir_ibu'],
            $dataList[$i]['id_jenjang_pendidikan_ibu'],
            $dataList[$i]['id_penghasilan_ibu'],
            $dataList[$i]['id_pekerjaan_ibu'],
            $dataList[$i]['id_kebutuhan_khusus_ibu'],
            $dataList[$i]['nm_wali'],
            $dataList[$i]['tgl_lahir_wali'],
            $dataList[$i]['id_jenjang_pendidikan_wali'],
            $dataList[$i]['id_pekerjaan_wali'],
            $dataList[$i]['id_penghasilan_wali'],
            $dataList[$i]['kewarganegaraan']
         );
         $proses = $this->ExecuteUpdateQuery($this->mSqlQueries['syncDataMahasiswa'], $p);
         if($proses == FALSE) $prosesInsertUpdate = FALSE;
      }

      $this->CompleteTransaction($prosesInsertUpdate);
      return $prosesInsertUpdate;
   }

   function SyncDataMahasiswaPt(){
      $dataList = $this->GetProperty("DataProceed");

      $this->StartTransaction();
      $prosesInsertUpdate = TRUE;

      for ($i=0; $i < count($dataList); $i++) {
         $p = array(
            $dataList[$i]['id_reg_pd'],
            $dataList[$i]['id_sms'],
            $dataList[$i]['id_pd'],
            $dataList[$i]['id_sp'],
            $dataList[$i]['id_jns_daftar'],
            $dataList[$i]['nipd'],
            $dataList[$i]['tgl_masuk_sp'],
            $dataList[$i]['id_jns_keluar'],
            $dataList[$i]['tgl_keluar'],
            $dataList[$i]['ket'],
            $dataList[$i]['skhun'],
            $dataList[$i]['a_pernah_paud'],
            $dataList[$i]['a_pernah_tk'],
            $dataList[$i]['mulai_smt'],
            $dataList[$i]['sks_diakui'],
            $dataList[$i]['jalur_skripsi'],
            $dataList[$i]['judul_skripsi'],
            $dataList[$i]['bln_awal_bimbingan'],
            $dataList[$i]['bln_akhir_bimbingan'],
            $dataList[$i]['sk_yudisium'],
            $dataList[$i]['tgl_sk_yudisium'],
            $dataList[$i]['ipk'],
            $dataList[$i]['no_seri_ijazah'],
            $dataList[$i]['sert_prof'],
            $dataList[$i]['a_pindah_mhs_asing'],
            $dataList[$i]['nm_pt_asal'],
            $dataList[$i]['nm_prodi_asal'],
            $dataList[$i]['id_sms'], //update
            $dataList[$i]['id_pd'],
            $dataList[$i]['id_sp'],
            $dataList[$i]['id_jns_daftar'],
            $dataList[$i]['nipd'],
            $dataList[$i]['tgl_masuk_sp'],
            $dataList[$i]['id_jns_keluar'],
            $dataList[$i]['tgl_keluar'],
            $dataList[$i]['ket'],
            $dataList[$i]['skhun'],
            $dataList[$i]['a_pernah_paud'],
            $dataList[$i]['a_pernah_tk'],
            $dataList[$i]['mulai_smt'],
            $dataList[$i]['sks_diakui'],
            $dataList[$i]['jalur_skripsi'],
            $dataList[$i]['judul_skripsi'],
            $dataList[$i]['bln_awal_bimbingan'],
            $dataList[$i]['bln_akhir_bimbingan'],
            $dataList[$i]['sk_yudisium'],
            $dataList[$i]['tgl_sk_yudisium'],
            $dataList[$i]['ipk'],
            $dataList[$i]['no_seri_ijazah'],
            $dataList[$i]['sert_prof'],
            $dataList[$i]['a_pindah_mhs_asing'],
            $dataList[$i]['nm_pt_asal'],
            $dataList[$i]['nm_prodi_asal']
         );
         $proses = $this->ExecuteUpdateQuery($this->mSqlQueries['SyncDataMahasiswaPt'], $p);
         if($proses == FALSE) $prosesInsertUpdate = FALSE;
      }

      $this->CompleteTransaction($prosesInsertUpdate);
      return $prosesInsertUpdate;
   }

   function DataParamInsertMahasiswaPt(){
      $param = $this->GetProperty("DataProceed");
      $id_kampus = $param[0]['id_kampus'];

      $dataParam = $this->GetAllDataAsArray($this->mSqlQueries['DataParamInsertMahasiswaPt'], array($id_kampus));
      return $dataParam;
   }
}
?>