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

class m_template_penetapan_pidana_pra extends CI_Model {
	function getListInfoPenandatangan(){
		try {
			return $this->db->query("SELECT  a.id,
                       				 IF(a.name = 'KetuaPNNama','Ketua','Wakil Ketua') AS jabatan,
                        				a.value as nama
               						 FROM 
                        				(SELECT id,name,value FROM sys_config  
                         					UNION 
                        				SELECT id,name, value FROM sys_config )AS a
                					WHERE   a.id IN ('64','66')");
		} catch (Exception $e) {
		}
	}

	function getDataPenetapanHakim($idperkara,$pembuat){
		try {
			if(!is_numeric($idperkara) OR !is_numeric($pembuat)){
				return '';
			}
			return $this->db->query("SELECT	a.tanggal_pendaftaran, 
					a.nomor_perkara, 
					a.tanggal_surat, 
					a.nomor_surat,
					info.*, 
					d.*,
					IF(d.pengacara_idP IS NOT NULL,CONCAT('Berkedudukan di  ',d.alamatP,' dalam hal ini memberikan kuasa kepada ',d.namaPengacaraP,' beralamat di ',d.alamatPengacaraP,' berdasarkan Surat Kuasa Khusus tanggal  ',IF(a.tanggal_surat IS NULL,'.....',a.tanggal_surat),' sebagai '),
						CONCAT('Bertempat tinggal di ',d.alamatP,' , Sebagai ')) AS statusP,
					j.*,
					IF(j.pengacara_idT IS NOT NULL,CONCAT('Berkedudukan di  ',j.alamatT,' dalam hal ini memberikan kuasa kepada ',j.namaPengacaraT,' beralamat di ',j.alamatPengacaraT,' berdasarkan Surat Kuasa Khusus tanggal  ',IF(a.tanggal_surat IS NULL,'.....',a.tanggal_surat),' sebagai '),
						CONCAT('Bertempat tinggal di ',j.alamatT,' , Sebagai ')) AS statusT, 
					hakim.*
				FROM perkara AS a 
				LEFT JOIN (SELECT c.pengacara_id AS pengacara_idP, 
						a.perkara_id AS perkara_idP,
						b.pihak_id AS pihak_idP, 
						b.nama AS namaP, 
						b.urutan AS urutanP,
						b.alamat AS alamatP,
						c.nama AS namaPengacaraP,
						c.alamat AS alamatPengacaraP, 
						c.pihak_id AS pihak_idPC
						FROM 	perkara AS a
						LEFT JOIN perkara_pihak1 AS b ON a.perkara_id=b.perkara_id
						LEFT JOIN perkara_pengacara AS c ON a.perkara_id=c.perkara_id AND FIND_IN_SET(b.pihak_id,c.pihak_id)) AS d ON d.perkara_idP=$idperkara
				LEFT JOIN (SELECT c.pengacara_id AS pengacara_idT, 
						a.perkara_id AS perkara_idT, 
						b.pihak_id AS pihak_idT,
						b.urutan AS urutanT,
						b.nama AS namaT,
						b.alamat AS alamatT,
						c.nama AS namaPengacaraT,
						c.alamat AS alamatPengacaraT, 
						c.pihak_id AS pihak_idTC
						FROM perkara AS a
						LEFT JOIN perkara_pihak2 AS b ON a.perkara_id=b.perkara_id 
						LEFT JOIN perkara_pengacara AS c ON a.perkara_id=c.perkara_id AND  FIND_IN_SET(b.pihak_id,c.pihak_id)) AS j ON j.perkara_idT=$idperkara
				LEFT JOIN (SELECT 	(SELECT value FROM sys_config WHERE id=62) AS namaPengadilan,a.id,IF(a.name = 'KetuaPNNama','Ketua','Wakil Ketua') AS jabatan,a.value AS nama
						FROM 	(SELECT id,name,value FROM sys_config  
							UNION 
					SELECT id,name, value FROM sys_config )AS a) AS info ON  info.id IN ('64','66')
				LEFT JOIN (SELECT a.perkara_id, a.tanggal_penetapan,a.hakim_id, a.urutan, a.jabatan_hakim_id,a.jabatan_hakim_nama,b.nama_gelar
						FROM perkara_hakim_pn AS a, 
						hakim_pn AS b WHERE a.hakim_id=b.id AND a.aktif='Y') AS hakim ON hakim.perkara_id=a.perkara_id 
				WHERE a.perkara_id=$idperkara AND info.id=$pembuat");
		} catch (Exception $e) {
		}
	}

	function get_pembuat_penetapan_pp_perdata(){
		try {
			return $this->db->query("SELECT b.id,a.namaPengadilan,b.id,IF (b.nama = 'PanSekNama','Panitera Sekretaris','Wakil Panitera' ) AS pejabat,b.pw
                FROM    (SELECT id,value AS namaPengadilan FROM sys_config WHERE id=62) AS a,
                        (SELECT id,value AS pw, name AS nama FROM sys_config WHERE id IN (68,70)) AS b");
		} catch (Exception $e) {
		}
	}


	function getListJurusita($idperkara){
		try {
			if(!is_numeric($idperkara)){
				return '';
			}
			return $this->db->query("SELECT perkara_id,jurusita_id,jurusita_nama FROM perkara_jurusita");
		} catch (Exception $e) {
		}
	}

	function getdata_pp($idperkara){
		try {
			return $this->db->query("SELECT a.panitera_id , b.nama_gelar
                FROM 
                perkara_panitera_pn AS a ,
                panitera_pn AS b
                WHERE 
                a.panitera_id=b.id AND
                a.perkara_id=$idperkara");
		} catch (Exception $e) {
		}
	}
    
	function get_data_penetapan_pp($idperkara,$pembuat,$panitera_id){
		try {
			if(!is_numeric($idperkara) OR !is_numeric($pembuat) OR !is_numeric($panitera_id)){
				return '';
			}
			return $this->db->query("SELECT d.*,
					IF(d.pengacara_idP IS NOT NULL,CONCAT('Berkedudukan di  ',d.alamatP,' dalam hal ini memberikan kuasa kepada ',d.namaPengacaraP,' beralamat di ',d.alamatPengacaraP,' berdasarkan Surat Kuasa Khusus tanggal  ',IF(a.tanggal_surat IS NULL,'.....',a.tanggal_surat),' sebagai '),
						CONCAT('Bertempat tinggal di ',d.alamatP,' , Sebagai ')) AS statusP,
					j.*,
					IF(j.pengacara_idT IS NOT NULL,CONCAT('Berkedudukan di  ',j.alamatT,' dalam hal ini memberikan kuasa kepada ',j.namaPengacaraT,' beralamat di ',j.alamatPengacaraT,' berdasarkan Surat Kuasa Khusus tanggal  ',IF(a.tanggal_surat IS NULL,'.....',a.tanggal_surat),' sebagai '),
						CONCAT('Bertempat tinggal di ',j.alamatT,' , Sebagai ')) AS statusT, 
				info.*, pp.*,
				a.tanggal_pendaftaran, a.nomor_perkara, a.tanggal_surat, a.nomor_surat,
				e.penetapan_majelis_hakim, e.penetapan_panitera_pengganti
				FROM perkara AS a 
				LEFT JOIN (SELECT c.pengacara_id AS pengacara_idP, 
						a.perkara_id AS perkara_idP,
						b.pihak_id AS pihak_idP, 
						b.nama AS namaP, 
						b.urutan AS urutanP,
						b.alamat AS alamatP,
						c.nama AS namaPengacaraP,
						c.alamat AS alamatPengacaraP, 
						c.pihak_id AS pihak_idPC
						FROM 	perkara AS a
						LEFT JOIN perkara_pihak1 AS b ON a.perkara_id=b.perkara_id
						LEFT JOIN perkara_pengacara AS c ON a.perkara_id=c.perkara_id AND FIND_IN_SET(b.pihak_id,c.pihak_id)) AS d ON d.perkara_idP=$idperkara
				LEFT JOIN (SELECT c.pengacara_id AS pengacara_idT, 
						a.perkara_id AS perkara_idT, 
						b.pihak_id AS pihak_idT,
						b.urutan AS urutanT,
						b.nama AS namaT,
						b.alamat AS alamatT,
						c.nama AS namaPengacaraT,
						c.alamat AS alamatPengacaraT, 
						c.pihak_id AS pihak_idTC
						FROM perkara AS a
						LEFT JOIN perkara_pihak2 AS b ON a.perkara_id=b.perkara_id 
						LEFT JOIN perkara_pengacara AS c ON a.perkara_id=c.perkara_id AND  FIND_IN_SET(b.pihak_id,c.pihak_id)) AS j ON j.perkara_idT=$idperkara
				LEFT JOIN (SELECT 	(SELECT value FROM sys_config WHERE id=62) AS namaPengadilan,a.id,IF(a.name = 'PanSekNama','Panitera','Wakil Panitera') AS jabatan,a.value AS nama_pejabat
							FROM 	(SELECT id,name,value FROM sys_config  
							UNION 
							SELECT id,name, value FROM sys_config )AS a) AS info ON  info.id IN ('68','70')
				LEFT JOIN (SELECT a.perkara_id, a.tanggal_penetapan,a.panitera_id, a.urutan, b.nama_gelar
							FROM perkara_panitera_pn AS a, 
							panitera_pn AS b WHERE a.panitera_id=b.id  AND a.perkara_id=$idperkara AND a.aktif='Y') AS pp ON pp.panitera_id=$panitera_id
				LEFT JOIN perkara_penetapan AS e ON  e.perkara_id=a.perkara_id
				WHERE a.perkara_id=$idperkara AND info.id=$pembuat");
		} catch (Exception $e) {
		}
	}

		function get_cetak_pen_prapid_gugur($idperkara){
		try {
			if(!is_numeric($idperkara)){
				return '';
			}
			$qry="SELECT d.*,
					IF(d.pengacara_idP IS NOT NULL,CONCAT('Berkedudukan di  ',d.alamatP,' dalam hal ini memberikan kuasa kepada ',d.namaPengacaraP,' beralamat di ',d.alamatPengacaraP,' berdasarkan Surat Kuasa Khusus tanggal  ',IF(a.tanggal_surat IS NULL,'.....',a.tanggal_surat),' sebagai '),
						CONCAT('Bertempat tinggal di ',d.alamatP,' , Sebagai ')) AS statusP,
					j.*,
					IF(j.pengacara_idT IS NOT NULL,CONCAT('Berkedudukan di  ',j.alamatT,' dalam hal ini memberikan kuasa kepada ',j.namaPengacaraT,' beralamat di ',j.alamatPengacaraT,' berdasarkan Surat Kuasa Khusus tanggal  ',IF(a.tanggal_surat IS NULL,'.....',a.tanggal_surat),' sebagai '),
						CONCAT('Bertempat tinggal di ',j.alamatT,' , Sebagai ')) AS statusT,
				info.*, 
				a.tanggal_pendaftaran, a.nomor_perkara, a.tanggal_surat, a.nomor_surat,
				e.penetapan_majelis_hakim, e.penetapan_panitera_pengganti, f.nama_gelar AS namaHakimKetua,
				e.penetapan_hari_sidang AS penetapanHariSidang , e.sidang_pertama AS sidang_pertama , h.jam_sidang, pp.*, pputus.tanggal_putusan AS pputus
				FROM perkara AS a 
				LEFT JOIN (SELECT c.pengacara_id AS pengacara_idP, 
						a.perkara_id AS perkara_idP,
						b.pihak_id AS pihak_idP, 
						b.nama AS namaP, 
						b.urutan AS urutanP,
						b.alamat AS alamatP,
						c.nama AS namaPengacaraP,
						c.alamat AS alamatPengacaraP, 
						c.pihak_id AS pihak_idPC
						FROM 	perkara AS a
						LEFT JOIN perkara_pihak1 AS b ON a.perkara_id=b.perkara_id
						LEFT JOIN perkara_pengacara AS c ON a.perkara_id=c.perkara_id AND FIND_IN_SET(b.pihak_id,c.pihak_id)) AS d ON d.perkara_idP=$idperkara
				LEFT JOIN (SELECT c.pengacara_id AS pengacara_idT, 
						a.perkara_id AS perkara_idT, 
						b.pihak_id AS pihak_idT,
						b.urutan AS urutanT,
						b.nama AS namaT,
						b.alamat AS alamatT,
						c.nama AS namaPengacaraT,
						c.alamat AS alamatPengacaraT, 
						c.pihak_id AS pihak_idTC
						FROM perkara AS a
						LEFT JOIN perkara_pihak2 AS b ON a.perkara_id=b.perkara_id 
						LEFT JOIN perkara_pengacara AS c ON a.perkara_id=c.perkara_id AND  FIND_IN_SET(b.pihak_id,c.pihak_id)) AS j ON j.perkara_idT=$idperkara
				LEFT JOIN (SELECT 	(SELECT value FROM sys_config WHERE id=62) AS namaPengadilan,a.id,IF(a.name = 'KetuaPNNama','Ketua','Wakil Ketua') AS jabatan,a.value AS nama
									FROM 	(SELECT id,name,value FROM sys_config  
									UNION 
									SELECT id,name, value FROM sys_config )AS a) AS info ON  info.id IN ('64')
				LEFT JOIN perkara_penetapan AS e ON  e.perkara_id=a.perkara_id
				LEFT JOIN perkara_jadwal_sidang AS h ON h.perkara_id=a.perkara_id AND h.urutan=1
				LEFT JOIN (SELECT b.nama_gelar,a.perkara_id, a.tanggal_penetapan,a.hakim_id, a.urutan, a.jabatan_hakim_id,a.jabatan_hakim_nama 	FROM perkara_hakim_pn AS a 
							LEFT JOIN hakim_pn AS b ON a.hakim_id=b.id WHERE a.perkara_id=$idperkara) AS f ON f.perkara_id=a.perkara_id 
				LEFT JOIN (SELECT a.perkara_id, a.tanggal_penetapan,a.panitera_id, a.urutan, b.nama_gelar AS nama_pp
							FROM perkara_panitera_pn AS a, 
							panitera_pn AS b WHERE a.panitera_id=b.id  AND a.perkara_id=$idperkara AND a.aktif='Y') AS pp ON pp.perkara_id=$idperkara
				LEFT JOIN perkara_putusan AS pputus ON a.perkara_id=pputus.perkara_id
				WHERE 	a.perkara_id=$idperkara";
				$query=$this->db->query($qry);
				return $query;
		} catch (Exception $e) {
		}
	}

		function get_data_penetapan_sidang_pertama_prapid($idperkara){
		try {
			if(!is_numeric($idperkara)){
				return '';
			}
			$qry="SELECT d.*,
					IF(d.pengacara_idP IS NOT NULL,CONCAT('Berkedudukan di  ',d.alamatP,' dalam hal ini memberikan kuasa kepada ',d.namaPengacaraP,' beralamat di ',d.alamatPengacaraP,' berdasarkan Surat Kuasa Khusus tanggal  ',IF(a.tanggal_surat IS NULL,'.....',a.tanggal_surat),' sebagai '),
						CONCAT('Bertempat tinggal di ',d.alamatP,' , Sebagai ')) AS statusP,
					j.*,
					IF(j.pengacara_idT IS NOT NULL,CONCAT('Berkedudukan di  ',j.alamatT,' dalam hal ini memberikan kuasa kepada ',j.namaPengacaraT,' beralamat di ',j.alamatPengacaraT,' berdasarkan Surat Kuasa Khusus tanggal  ',IF(a.tanggal_surat IS NULL,'.....',a.tanggal_surat),' sebagai '),
						CONCAT('Bertempat tinggal di ',j.alamatT,' , Sebagai ')) AS statusT,
				info.*, 
				a.tanggal_pendaftaran, a.nomor_perkara, a.tanggal_surat, a.nomor_surat,
				e.penetapan_majelis_hakim, e.penetapan_panitera_pengganti, f.nama_gelar AS namaHakimKetua,
				e.penetapan_hari_sidang AS penetapanHariSidang , e.sidang_pertama AS sidang_pertama , h.jam_sidang, pp.*, pputus.tanggal_putusan AS pputus
				FROM perkara AS a 
				LEFT JOIN (SELECT c.pengacara_id AS pengacara_idP, 
						a.perkara_id AS perkara_idP,
						b.pihak_id AS pihak_idP, 
						b.nama AS namaP, 
						b.urutan AS urutanP,
						b.alamat AS alamatP,
						c.nama AS namaPengacaraP,
						c.alamat AS alamatPengacaraP, 
						c.pihak_id AS pihak_idPC
						FROM 	perkara AS a
						LEFT JOIN perkara_pihak1 AS b ON a.perkara_id=b.perkara_id
						LEFT JOIN perkara_pengacara AS c ON a.perkara_id=c.perkara_id AND FIND_IN_SET(b.pihak_id,c.pihak_id)) AS d ON d.perkara_idP=$idperkara
				LEFT JOIN (SELECT c.pengacara_id AS pengacara_idT, 
						a.perkara_id AS perkara_idT, 
						b.pihak_id AS pihak_idT,
						b.urutan AS urutanT,
						b.nama AS namaT,
						b.alamat AS alamatT,
						c.nama AS namaPengacaraT,
						c.alamat AS alamatPengacaraT, 
						c.pihak_id AS pihak_idTC
						FROM perkara AS a
						LEFT JOIN perkara_pihak2 AS b ON a.perkara_id=b.perkara_id 
						LEFT JOIN perkara_pengacara AS c ON a.perkara_id=c.perkara_id AND  FIND_IN_SET(b.pihak_id,c.pihak_id)) AS j ON j.perkara_idT=$idperkara
				LEFT JOIN (SELECT 	(SELECT value FROM sys_config WHERE id=62) AS namaPengadilan,a.id,IF(a.name = 'KetuaPNNama','Ketua','Wakil Ketua') AS jabatan,a.value AS nama
									FROM 	(SELECT id,name,value FROM sys_config  
									UNION 
									SELECT id,name, value FROM sys_config )AS a) AS info ON  info.id IN ('64')
				LEFT JOIN perkara_penetapan AS e ON  e.perkara_id=a.perkara_id
				LEFT JOIN perkara_jadwal_sidang AS h ON h.perkara_id=a.perkara_id AND h.urutan=1
				LEFT JOIN (SELECT b.nama_gelar,a.perkara_id, a.tanggal_penetapan,a.hakim_id, a.urutan, a.jabatan_hakim_id,a.jabatan_hakim_nama 	FROM perkara_hakim_pn AS a 
							LEFT JOIN hakim_pn AS b ON a.hakim_id=b.id WHERE a.perkara_id=$idperkara) AS f ON f.perkara_id=a.perkara_id AND (f.jabatan_hakim_id=3 OR f.jabatan_hakim_id=1)
				LEFT JOIN (SELECT a.perkara_id, a.tanggal_penetapan,a.panitera_id, a.urutan, b.nama_gelar AS nama_pp
							FROM perkara_panitera_pn AS a, 
							panitera_pn AS b WHERE a.panitera_id=b.id  AND a.perkara_id=$idperkara AND a.aktif='Y') AS pp ON pp.perkara_id=$idperkara
				LEFT JOIN perkara_putusan AS pputus ON a.perkara_id=pputus.perkara_id
				WHERE 	a.perkara_id=$idperkara";
				$query=$this->db->query($qry);
				return $query;
		} catch (Exception $e) {
		}
	}	
	
	function get_cetak_relaas_panggilan_pemohon($idperkara){
		try {
			return $this->db->query("SELECT a.perkara_id,  nomor_perkara,
					(SELECT value AS namaPengadilan FROM sys_config WHERE id=62) AS nmPengadilan,
					(SELECT value AS namaPengadilan FROM sys_config WHERE id=63) AS alamatPengadilan,
					b.sidang_pertama AS sidang_pertama,
					c.jam_sidang AS jamSidang,
					d.jurusita_id,d.jurusita_nama,
					e.pihak_id,
					f.nama
				FROM 
					perkara AS a
				LEFT JOIN perkara_penetapan AS b ON b.perkara_id=a.perkara_id
				LEFT JOIN perkara_jadwal_sidang AS c ON a.perkara_id=c.perkara_id AND c.urutan=1
				LEFT JOIN perkara_jurusita AS d ON d.perkara_id=a.perkara_id
				LEFT JOIN perkara_pihak1 AS e ON a.perkara_id=e.perkara_id
				LEFT JOIN pihak AS f ON e.pihak_id=f.id
				WHERE a.perkara_id=$idperkara");
		} catch (Exception $e) {
		}
	}

	function get_cetak_relaas_panggilan_termohon($idperkara){
		try {
			return $this->db->query("SELECT a.perkara_id,  nomor_perkara,
					(SELECT value AS namaPengadilan FROM sys_config WHERE id=62) AS nmPengadilan,
					(SELECT value AS namaPengadilan FROM sys_config WHERE id=63) AS alamatPengadilan,
					b.sidang_pertama AS sidang_pertama,
					c.jam_sidang AS jamSidang,
					d.jurusita_id,d.jurusita_nama,
					e.pihak_id,
					f.nama
				FROM 
					perkara AS a
				LEFT JOIN perkara_penetapan AS b ON b.perkara_id=a.perkara_id
				LEFT JOIN perkara_jadwal_sidang AS c ON a.perkara_id=c.perkara_id AND c.urutan=1
				LEFT JOIN perkara_jurusita AS d ON d.perkara_id=a.perkara_id
				LEFT JOIN perkara_pihak2 AS e ON a.perkara_id=e.perkara_id
				LEFT JOIN pihak AS f ON e.pihak_id=f.id
				WHERE a.perkara_id=$idperkara");
		} catch (Exception $e) {
		}
	}	
}
?>