<?php
defined('BASEPATH') OR exit('No direct script access allowed');

class m_template_putusan_tun extends CI_Model {
	function get_data_putusan($idperkara){
			try {
			if(!is_numeric($idperkara)){
				return '';
			}
			return $this->db->query("SELECT * from (SELECT tanggal_sidang as tanggal_sidang_putusan,(CASE 
										WHEN dihadiri_oleh=1 THEN 'Semua Hadir' 
										WHEN dihadiri_oleh=2 THEN 'Penggugat'
										WHEN dihadiri_oleh=3 THEN 'Tergugat'
										WHEN dihadiri_oleh=4 THEN 'Para Pihak Tidak Hadir'
										WHEN dihadiri_oleh IS NULL THEN '.........'
										END) AS dihadiri_oleh
										FROM perkara_jadwal_sidang WHERE perkara_id=".$idperkara." ORDER BY tanggal_sidang_putusan DESC LIMIT 1) AS akhir_sidang,
									(SELECT tanggal_putusan,
											sumber_hukum_id,
											tanggal_cabut,
											tanggal_gugur,
											amar_putusan,
											tanggal_minutasi FROM perkara_putusan 
											WHERE perkara_id=".$idperkara.") as perkara_putusan");
				} catch (Exception $e) {
				return '';
			}
	}
		function get_data_dismissal($idperkara){
			try {
				if(!is_numeric($idperkara)){
					return '';
				}
				return $this->db->query("SELECT * FROM perkara_dismissal 
											 WHERE perkara_id=".$idperkara);
				} catch (Exception $e) {
				return '';
			}
		}

		function get_data_cabut($idperkara){
			try {
				if(!is_numeric($idperkara)){
					return '';
				}
				return $this->db->query("SELECT * FROM perkara_putusan
											 WHERE status_putusan_id='7' AND perkara_id=".$idperkara);
				} catch (Exception $e) {
				return '';
			}
		}
		function get_data_putusan_sela($idperkara,$idPutusanSela){
			try {
			if(!is_numeric($idperkara)){
				return '';
			}
			return $this->db->query("SELECT * from (SELECT tanggal_sidang as tanggal_sidang_putusan,(CASE 
										WHEN dihadiri_oleh=1 THEN 'Semua Hadir' 
										WHEN dihadiri_oleh=2 THEN 'Penggugat'
										WHEN dihadiri_oleh=3 THEN 'Tergugat'
										WHEN dihadiri_oleh=4 THEN 'Para Pihak Tidak Hadir'
										WHEN dihadiri_oleh IS NULL THEN '.........'
										END) AS dihadiri_oleh
										FROM perkara_jadwal_sidang WHERE perkara_id=".$idperkara." ORDER BY tanggal_sidang_putusan DESC LIMIT 1) AS akhir_sidang,
									(SELECT * FROM perkara_putusan_sela 
											WHERE perkara_id=".$idperkara." AND putusansela_id=".$idPutusanSela.") as perkara_putusan_sela");
				} catch (Exception $e) {
				return '';
			}
		}

		function get_biaya_perkara($idperkara){
			try {
				if(!is_numeric($idperkara)){
					return '';
				}
				return $this->db->query("SELECT a.kategori_id,a.tanggal_transaksi,b.nama,a.jumlah FROM perkara_biaya  AS a
											LEFT JOIN 
											(SELECT * FROM jenis_biaya) AS b
											ON a.`jenis_biaya_id`=b.id AND a.kategori_id=b.kategori_id
											 WHERE perkara_id=".$idperkara);
				} catch (Exception $e) {
				return '';
			}
		}

		function getPenetapanPersiapan($idperkara){
		try {
			return $this->db->query( "SELECT tanggal_penetapan_persiapan FROM perkara_persiapan WHERE perkara_id=".$idperkara);
			} catch(Exception $e) {
				return false;
			}
		}

		function get_data_penetapan($idperkara){
			try {
			if(!is_numeric($idperkara)){
				return '';
			}
			$sql = ("SELECT * FROM
								    (SELECT tanggal_penetapan  AS penetapan_majelis,
								    		nomor_sk_penetapan AS nomor_sk_penetapan_majelis,
											urutan as urutan_hakim,
											jabatan_hakim_nama,
											hakim_nip,
											hakim_nama 
											FROM perkara_hakim_pn WHERE perkara_id=".$idperkara.") AS penetepanhakim,
									(SELECT tanggal_penetapan AS penetapan_pp,
											nomor_sk_penetapan AS nomor_sk_penetapan_pp,
											panitera_nama,
											panitera_nip
											FROM perkara_panitera_pn  WHERE perkara_id=".$idperkara.") AS penetepanpanitera,
									(SELECT tanggal_sidang,
											jam_sidang
											FROM perkara_jadwal_sidang  WHERE perkara_id=".$idperkara." AND urutan=1) AS penetepansidang");
				return $this->db->query($sql);
			} catch (Exception $e) {
				return '';
			}
		}

		function get_data_perkara($idperkara){
		try {
			if(!is_numeric($idperkara)){
				return '';
			}
			$sql = ("SELECT * FROM
									(SELECT tanggal_pendaftaran,
										jenis_perkara_nama,
										nomor_perkara,
										tanggal_surat,
										nomor_surat,
										dakwaan,
										petitum
										FROM perkara WHERE perkara_id=".$idperkara.") AS perkara,
								    (SELECT tanggal_penetapan  AS penetapan_majelis,
								    		nomor_sk_penetapan AS nomor_sk_penetapan_majelis,
											urutan as urutan_hakim,
											jabatan_hakim_nama,
											hakim_nip,
											hakim_nama 
											FROM perkara_hakim_pn WHERE perkara_id=".$idperkara.") AS penetepanhakim,
									(SELECT tanggal_penetapan AS penetapan_pp,
											nomor_sk_penetapan AS nomor_sk_penetapan_pp,
											panitera_nama,
											panitera_nip
											FROM perkara_panitera_pn  WHERE perkara_id=".$idperkara.") AS penetepanpanitera,
									(SELECT tanggal_sidang,
											jam_sidang
											FROM perkara_jadwal_sidang  WHERE perkara_id=".$idperkara." AND urutan=1) AS penetepansidang");
				return $this->db->query($sql);
			} catch (Exception $e) {
				return '';
			}
	}

	function get_data_persiapan($idperkara){
		try {
			if(!is_numeric($idperkara)){
				return '';
			}
			return $this->db->query('SELECT tanggal_penetapan_persiapan,
										  petitum AS petitum_persiapan
											FROM perkara_persiapan  WHERE perkara_id='.$idperkara);
			} catch (Exception $e) {
				return '';
			}
	}

	function get_data_pihak($idperkara,$jenispihak){
		try {
			if(!is_numeric($idperkara)){
				return '';
			}
			return $this->db->query('SELECT b.*,  a.*,c.nama AS kewarganegaraan, d.nama as agama,
											group_concat(e.pengacara_id) as pengacara_id 
											FROM pihak AS a
											LEFT JOIN
											(SELECT * FROM perkara_pihak'.$jenispihak.') AS b
											ON a.id=b.pihak_id
											LEFT JOIN
											(SELECT id,nama FROM negara) AS c
											ON a.warga_negara_id=c.id
											LEFT JOIN
											(SELECT id,nama FROM agama) AS d
											ON a.agama_id=d.id
											LEFT JOIN
											(SELECT pengacara_id, pihak_id, perkara_id FROM perkara_pengacara) AS e
											ON b.pihak_id=e.pihak_id and e.perkara_id=b.perkara_id
											WHERE b.perkara_id='.$idperkara.' GROUP BY b.id ORDER BY b.id ASC');
			} catch (Exception $e) {
				return '';
			}
	}

	function get_data_pengacara($idperkara,$jenispihak){
		try {
			if(!is_numeric($idperkara)){
				return '';
			}
			return $this->db->query ("SELECT a.id,
						GROUP_CONCAT(a.pihak_id SEPARATOR ';') AS pihak_id,
						a.urutan,a.nama,a.alamat,
						a.aktif_mulai,'Indonesia' AS kewarganegaraan,
						b.pekerjaan,b.jenis_pihak_id
					FROM perkara_pengacara AS a
										LEFT JOIN
										(SELECT * FROM pihak ) AS b
										ON b.id=a.pengacara_id
										WHERE a.pihak_id IN 
										(SELECT pihak_id FROM perkara_pihak".$jenispihak." WHERE perkara_id=".$idperkara.")
										AND perkara_id=".$idperkara." 
										GROUP BY a.pengacara_id
										ORDER BY urutan ASC");
			} catch (Exception $e) {
				return '';
			}
	}

	function get_data_pn(){
			try {
				return $this->db->query( "SELECT * FROM 
			(SELECT value AS NamaPN FROM sys_config WHERE id = 62) AS T1,
			(SELECT value AS KetuaPNNama FROM sys_config WHERE id = 64) AS T2,
			(SELECT value AS AlamatPN FROM sys_config WHERE id = 63) AS T3,
			(SELECT value AS WakilKetuaPNNama FROM sys_config WHERE id = 66) AS T4,
			(SELECT value AS PansekPNNama FROM sys_config WHERE id = 68) AS T5,
			(SELECT value AS WaPanNama FROM sys_config WHERE id = 70) AS T6");
				
			} catch(Exception $e) {
				return false;
			}
	}

	function getAlurPerkara($idperkara){
		try {
			return $this->db->query( "SELECT alur_perkara_id FROM perkara WHERE perkara_id=$idperkara ");
			} catch(Exception $e) {
				return false;
			}
	}

}
?>