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

class m_template_mil_relaas_pidana_kasasi extends CI_Model {
	function getDataPerkara($idperkara){
		try {
			if(!is_numeric($idperkara)){
					return '';
				}
			return $this->db->query('SELECT nomor_perkara,nomor_surat,tanggal_surat, tanggal_pendaftaran FROM perkara WHERE perkara_id ='.$idperkara);
		} catch(PDOException $e) {		
		}
	}
	function getDataPN(){
		try {
			return $this->db->query ("SELECT * FROM 
					(SELECT value AS NamaPN FROM sys_config WHERE id = 62) AS T1,
					(SELECT value AS Panses FROM sys_config WHERE id = 68) AS T2,
					(SELECT value AS AlamatPN FROM sys_config WHERE id = 63) AS T3,
					(SELECT value AS Wapan FROM sys_config WHERE id = 70) AS T4,
					(SELECT value AS ZonaWaktu FROM sys_config WHERE id = 75) AS T5,
					(SELECT value AS NamaPT FROM sys_config WHERE id = 76) AS T6;");
			} catch(PDOException $e) {
			}
	}
	function getDataPermohonanKasasiTerdakwa($idperkara){
		try {
			if(!is_numeric($idperkara)){
				return '';
			}
			return $this->db->query("SELECT perkara_id, COUNT(permohonan_kasasi) AS jumlah, 
				permohonan_kasasi AS tglkasasi, 
				GROUP_CONCAT(nama SEPARATOR '<br>') AS pemohon,
				pemohon_id, pemohon_nama FROM (
				SELECT a.perkara_id, a.permohonan_kasasi, a.pemohon_id, a.pemohon_nama, b.nama, b.pihak_id, b.urutan 
				FROM perkara_kasasi_detil a, perkara_pihak2 b
				WHERE a.pihak_id  = b.pihak_id 
				AND a.perkara_id  = b.perkara_id 
				AND a.perkara_id =".$idperkara." 
				ORDER BY b.`urutan` ) s 
				WHERE s.permohonan_kasasi IS NOT NULL
				GROUP BY s.perkara_id, s.permohonan_kasasi, s.pemohon_id");
		} catch (Exception $e) {	
		}
	}
	function getDataPermohonanKasasiPU($idperkara){
		try {
			if(!is_numeric($idperkara)){
				return '';
			}
			return $this->db->query("SELECT perkara_id, COUNT(permohonan_kasasi) AS jumlah, 
				permohonan_kasasi AS tglkasasi, 
				GROUP_CONCAT(nama SEPARATOR '<br>') AS pemohon,
				pemohon_id, pemohon_nama FROM (
				SELECT a.perkara_id, a.permohonan_kasasi, a.pemohon_id, a.pemohon_nama, b.nama, b.pihak_id, b.urutan 
				FROM perkara_kasasi_detil a, perkara_pihak1 b
				WHERE a.pihak_id  = b.pihak_id 
				AND a.perkara_id  = b.perkara_id 
				AND a.perkara_id = ".$idperkara."
				ORDER BY b.`urutan` ) s 
				WHERE s.permohonan_kasasi IS NOT NULL
				GROUP BY s.perkara_id, s.permohonan_kasasi, s.pemohon_id");
		} catch (Exception $e) {	
		}
	}
	function getDataTerdakwa($idperkara){
		try {
			if(!is_numeric($idperkara)){
				return '';
			}
			return $this->db->query('SELECT a.permohonan_kasasi, a.penyerahan_memori_kasasi, a.penyerahan_kontra_kasasi, a.pemberitahuan_inzage_kasasi, a.pemberitahuan_putusan_kasasi,
				a.pemberitahuan_kasasi, 
				a.pihak_nama AS nama,
				a.pihak_id AS IDPihak, 
				a.pihak_asal AS pihakke,
				b.urutan 
			FROM perkara_kasasi_detil a, perkara_pihak2 b  
			WHERE a.perkara_id=b.perkara_id 
				AND a.pihak_id=b.pihak_id
				AND a.perkara_id='.$idperkara.'
			GROUP BY pihak_nama ORDER BY b.urutan');
		} catch (Exception $e) {	
		}
	}
	function getDataJaksa($idperkara){
		try {
			if(!is_numeric($idperkara)){
				return '';
			}
			$sql="SELECT pihak_nama AS nama,pihak_id AS IDPihak, pihak_asal AS pihakke, penyerahan_memori_kasasi, penyerahan_kontra_kasasi, pemberitahuan_inzage_kasasi, pemberitahuan_putusan_kasasi 
				FROM perkara_kasasi_detil WHERE perkara_id =$idperkara  AND pihak_asal =1";
			$query=$this->db->query($sql);
			return $query;
		} catch (Exception $e) {	
		}
	}
	function getAllJurusita(){
		try{			
		return $this->db->query("SELECT id, nama_gelar FROM jurusita WHERE aktif!='T' GROUP BY nama_gelar ASC");
		} catch(PDOException $e) {		
		}
	}
	function cetakJurusita($idjurusita){
		try{
			if(!is_numeric($idjurusita)){
					return '';
		}			
		return $this->db->query("SELECT id, nama_gelar FROM jurusita WHERE id=".$idjurusita);
		} catch(PDOException $e) {		
		}
	}
	function getTanggalPutusan($idperkara){
		try {
			if(!is_numeric($idperkara)){
				return '';
			}						
			return $this->db->query("SELECT putusan_pn, putusan_banding FROM perkara_kasasi WHERE perkara_id =".$idperkara);
		} catch (Exception $e) {	
		}
	}
	function cetakPermohonanKasasi($idperkara,$idpihak){
		try {
			if((!is_numeric($idperkara)) OR !is_numeric($idpihak)){
				return '';
			}						
			return $this->db->query('SELECT permohonan_kasasi AS tglpermohonan, pemohon_nama AS pemohon, pemohon_tanggal_surat AS tglsurat, pemohon_nomor_surat AS nosurat  FROM perkara_kasasi_detil WHERE perkara_id ='.$idperkara.' AND pihak_id ='.$idpihak);
		} catch (Exception $e) {	
		}
	}
	function cetakDataTerdakwa($idperkara,$idpihak){
		try {
			if((!is_numeric($idperkara)) OR !is_numeric($idpihak)){
				return '';
			}						
			return $this->db->query('SELECT * FROM perkara_pihak2 WHERE perkara_id ='.$idperkara.' AND pihak_id ='.$idpihak);
		} catch (Exception $e) {	
		}
	}
	function cetakNobanding($idperkara){
		try {
			if(!is_numeric($idperkara)){
				return '';
			}						
			return $this->db->query('SELECT nomor_perkara_banding FROM perkara_kasasi WHERE perkara_id ='.$idperkara);
		} catch (Exception $e) {	
		}
	}
	function cetakDataJaksa($idperkara){
		try {
			if(!is_numeric($idperkara)){
				return '';
			}						
			return $this->db->query('SELECT a.pihak_nama AS nama, b.NIP, a.pihak_asal_text AS jabatan FROM perkara_kasasi_detil a, pihak_jaksa b WHERE a.pihak_id=b.pihak_id AND perkara_id ='.$idperkara);
		} catch (Exception $e) {	
		}
	}
	function cetakTanggalPemberitahuan($idperkara,$idpihak){
		try {
			if((!is_numeric($idperkara)) OR !is_numeric($idpihak)){
				return '';
			}						
			return $this->db->query('SELECT pemberitahuan_kasasi FROM perkara_kasasi_detil WHERE perkara_id ='.$idperkara.' AND pihak_id ='.$idpihak);
		} catch (Exception $e) {	
		}
	}
	function cetakAllTerdakwaAjukanKasasi($idperkara){
		try {
			if(!is_numeric($idperkara)){
				return '';
			}						
			// $sql="SELECT b.nama, b.jenis_kelamin, b.tempat_lahir, b.tanggal_lahir,
			// 			b.umur, b.pekerjaan, b.warga_negara, b.alamat, b.agama_nama, b.jenis_kelamin
			// 	FROM perkara_kasasi_detil a, perkara_pihak2 b
			// 	WHERE a.pihak_id = b.pihak_id				
			// 	AND a.perkara_id ='$idperkara' AND status_pihak_id = 1";
			$sql="SELECT b.nama, c.jenis_kelamin, c.tempat_lahir, c.tanggal_lahir,
						 c.pekerjaan, c.warga_negara, b.alamat, c.agama_nama
				FROM perkara_kasasi_detil a, perkara_pihak2 b, pihak c
				WHERE b.pihak_id=c.id AND a.pihak_id = b.pihak_id				
				AND a.perkara_id ='$idperkara' AND status_pihak_id = 1";
			$query=$this->db->query($sql);
			return $query;
		} catch (Exception $e) {	
		}
	}
	function cetakTglKasasi($idperkara){
		try {
			if(!is_numeric($idperkara)){
				return '';
			}						
			return $this->db->query('SELECT permohonan_kasasi AS tglKasasi, penerimaan_memori_kasasi FROM perkara_kasasi_detil WHERE perkara_id='.$idperkara.' AND status_pihak_id = 1');
		} catch (Exception $e) {	
		}
	}
	function cetakAllTerdakwa($idperkara,$idpihak){
		try {
			if((!is_numeric($idperkara)) OR !is_numeric($idpihak)){
				return '';
			}						
			return $this->db->query('SELECT b.nama, b.tempat_lahir, b.tanggal_lahir,
						b.pekerjaan, b.warga_negara, b.alamat, b.agama_nama, b.jenis_kelamin
				FROM perkara_kasasi_detil a, pihak b
				WHERE a.pihak_id = b.id				
				AND a.perkara_id ='.$idperkara.' AND a.pihak_id='.$idpihak);
		} catch (Exception $e) {	
		}
	}
	function cetakJaksaParties($idperkara){
		try {
			if(!is_numeric($idperkara)){
					return '';
				}
			return $this->db->query('SELECT a.pihak_nama as nama, b.NIP, a.pihak_asal_text as pekerjaan
					FROM perkara_kasasi_detil a, pihak_jaksa b
                    WHERE a.pihak_id = b.pihak_id
                    AND perkara_id ='.$idperkara);
		} catch(PDOException $e) {		
		}
	}
	function tglPenyerahanMemori($idperkara){
		try {
			if(!is_numeric($idperkara)){
					return '';
				}
			return $this->db->query('SELECT penyerahan_memori_kasasi FROM perkara_kasasi_detil WHERE perkara_id='.$idperkara.' AND status_pihak_id IN (3,4,5)');
		} catch(PDOException $e) {		
		}
	}
	function getAllPemohonKasasi($idperkara){
		try {
			if(!is_numeric($idperkara)){
					return '';
				}
			return $this->db->query('SELECT pihak_id AS IDPihak, pihak_nama AS nama, penyerahan_kontra_kasasi 
				FROM perkara_kasasi_detil WHERE perkara_id='.$idperkara.' AND status_pihak_id IN (1,2)');
		} catch(PDOException $e) {		
		}
	}
	function getAllTermohonKasasi($idperkara){
		try {
			if(!is_numeric($idperkara)){
					return '';
				}
			return $this->db->query('SELECT pihak_id AS IDPihak, pihak_nama AS nama, penerimaan_kontra_kasasi 
				FROM perkara_kasasi_detil WHERE perkara_id='.$idperkara.' AND status_pihak_id IN (3,4,5)');
		} catch(PDOException $e) {		
		}
	}
	function getAllPihakKasasi($idperkara,$idpihak){
		try{
			if(!is_numeric($idperkara) OR !is_numeric($idpihak)){
					return '';
		}
		return $this->db->query('SELECT a.pihak_id, p.nama, p.alamat, p.pekerjaan 
			FROM perkara_kasasi_detil a LEFT JOIN pihak p 
				ON p.id = a.pihak_id
			WHERE a.perkara_id ='.$idperkara.' AND a.pihak_id ='.$idpihak);
		} catch(PDOException $e) {		
		}
	}
	function getAllTerdakwa($idperkara){
		try {
			if(!is_numeric($idperkara)){
					return '';
				}
			return $this->db->query('SELECT pihak_id AS IDPihak, pihak_nama AS nama 
				FROM perkara_kasasi_detil WHERE perkara_id ='.$idperkara.' AND pihak_asal=2');
		} catch(PDOException $e) {		
		}
	}
	function getKasasiMA($idperkara){
		try {
			if(!is_numeric($idperkara)){
					return '';
				}
			return $this->db->query('SELECT nomor_perkara_kasasi, putusan_kasasi AS tglPutusanKasasi, amar_putusan_kasasi
				FROM perkara_kasasi WHERE perkara_id='.$idperkara);
		} catch(PDOException $e) {		
		}
	}
	function getTanggalPemberitahuanKasasi($idperkara,$idpihak){
		try{
			if(!is_numeric($idperkara) OR !is_numeric($idpihak)){
					return '';
		}
		return $this->db->query('SELECT pihak_id, permohonan_kasasi, pemberitahuan_kasasi, penerimaan_memori_kasasi, penyerahan_memori_kasasi, penerimaan_kontra_kasasi, penyerahan_kontra_kasasi, pemberitahuan_putusan_kasasi 
									FROM perkara_kasasi_detil 
									WHERE perkara_id ='.$idperkara.' AND pihak_id ='.$idpihak);
		} catch(PDOException $e) {		
		}
	}

function getDataDocumentTemplate($idalurperkara,$idatahapan,$idproses,$notemplate,$keyword){
	if (empty($keyword) or $keyword==''){
	$sql="SELECT a.nama AS jnsperkara,b.nomor AS notenmplate,b.kode AS kdtemplate,b.nama AS namatemplate 
			FROM alur_perkara a,template_dokumen b 
			WHERE a.id=b.alur_perkara_id 	AND a.id=$idalurperkara 
											AND b.tahapan_id =$idatahapan 
											AND b.proses_id=$idproses 
											AND b.nomor=$notemplate";
	}else{
	$sql="SELECT a.nama AS jnsperkara,b.nomor AS notenmplate,b.kode AS kdtemplate,b.nama AS namatemplate 
			FROM alur_perkara a,template_dokumen b 
			WHERE a.id=b.alur_perkara_id 	AND a.id=$idalurperkara 
											AND b.tahapan_id =$idatahapan 
											AND b.proses_id=$idproses 
											AND b.nama LIKE '%$keyword%'";
	}
	$query=$this->db->query($sql);
	return $query;
}
}