<?php
require_once("ConexionMod.php");
require_once("EntidadMod.php");
class PersonaEnt{
	private $idpersona,$nomper,$telfijo,$correo,$dni,$celrpm,$celrpc,$telofici;
	/*Abstracto*/
	private $nomarea,$ncargo;
	public function setIdpersona($val){$this->idpersona=$val;} public function getIdpersona(){return $this->idpersona;}
	public function setNomper($val){$this->nomper=$val;} public function getNomper(){return $this->nomper;}
	public function setTelfijo($val){$this->telfijo=$val;} public function getTelfijo(){return $this->telfijo;}
	public function setCorreo($val){$this->correo=$val;} public function getCorreo(){return $this->correo;}
	public function setDni($val){$this->dni=$val;} public function getDni(){return $this->dni;}
	public function setCelrpm($val){$this->celrpm=$val;} public function getCelrpm(){return $this->celrpm;}
	public function setCelrpc($val){$this->celrpc=$val;} public function getCelrpc(){return $this->celrpc;}
	public function setTelofici($val){$this->telofici=$val;} public function getTelofici(){return $this->telofici;}
	/*Abstracto*/
	public function setNomarea($val){$this->nomarea=$val;} public function getNomarea(){return $this->nomarea;}
	public function setNcargo($val){$this->ncargo=$val;} public function getNcargo(){return $this->ncargo;}
}
class PersonaMod{
	public function registrarPersona($val){
		$sql="insert into persona(nomper,telfijo,correo,dni,celrpm,celrpc,telofici) values('".$val->getNomper()."','".$val->getTelfijo()."','".$val->getCorreo()."','".$val->getDni()."','".$val->getCelrpm()."','".$val->getCelrpc()."','".$val->getTelofici()."');";
		$query=mysqli_query(ConexionMod::Conectar(),$sql) or die("Error al registrar persona");
		if($query){
			$obj=new PersonaMod();
			$val=$obj->obtenerUltimoId();
			return $val->getIdpersona();
		}
		mysqli_close(ConexionMod::Conectar());
	}
	
	public function obtenerUltimoId(){
		$sql = "SELECT idpersona FROM persona ORDER BY idpersona DESC LIMIT 1;";
		$que = mysqli_query(ConexionMod::Conectar(),$sql);
		$res = mysqli_fetch_row($que);
		$obj = new PersonaEnt();
		$obj->setIdpersona($res[0]);
		return $obj;
		mysqli_close(ConexionMod::Conectar());
	}
	
	public function verificarExistenciaPersona($val){
		if($val==''){
			$valx='0';
		}else{
			$valx=$val;
		}
		$sql="SELECT * FROM persona WHERE idpersona=".$valx."";	
		$query=mysqli_query(ConexionMod::Conectar(),$sql) or die("Error al buscar persona");
		if(mysqli_num_rows($query)==0){
			return '0';
		}else{
			return '1';
		}
	}
	
	public function listarPersonaAsignacion($cen,$idp){
		$sql="SELECT p.idpersona,p.nomper,ar.nomarea,c.ncargo,p.correo,p.celrpm,p.telfijo,p.telofici,p.celrpc FROM persona p LEFT JOIN agendadet a ON p.idpersona=a.idpersona LEFT JOIN producto pd ON pd.idproducto=a.idproducto LEFT JOIN area ar ON ar.idarea=a.idarea LEFT JOIN cargo c ON c.idcargo=a.idcargo WHERE a.cod_entidad={$cen} AND pd.idproducto={$idp};";
		$que=mysqli_query(ConexionMod::Conectar(),$sql);
		if(mysqli_num_rows($que)!=0){
			$i=0;
			while($rs=mysqli_fetch_row($que)){
				$arreglo[$i]=new PersonaEnt();
				$arreglo[$i]->setIdpersona($rs[0]);
				$arreglo[$i]->setNomper($rs[1]);
				$arreglo[$i]->setNomarea($rs[2]);
				$arreglo[$i]->setNcargo($rs[3]);
				$arreglo[$i]->setCorreo($rs[4]);
				$arreglo[$i]->setCelrpm($rs[5]);
				$arreglo[$i]->setTelfijo($rs[6]);
				$arreglo[$i]->setTelofici($rs[7]);
				$arreglo[$i]->setCelrpc($rs[8]);
				$i++;
			}
			return $arreglo;
		}else{
			return 0;
		}
	}
	
	
	

	//FUNCION PARA LISTA AUTO COMPLETO
	public function listarNombrePersona($val,$par){ 
		$cod = $par;
		$nom = $val->getNomper();
		if($cod==""){
			$sql="SELECT * FROM persona WHERE nomper like '%".$nom."%' LIMIT 0,40"; 
		}else{
			$sql="SELECT p.idpersona,p.nomper,p.telfijo,p.correo,p.dni,p.celrpm,p.celrpc,p.telofici FROM persona p INNER JOIN agendadet a ON p.idpersona=a.idpersona WHERE a.cod_entidad=".$cod." AND p.nomper LIKE '%".$nom."%' LIMIT 0,25;";
		}
		$query=mysqli_query(ConexionMod::Conectar(),$sql);
		$i=0;
		if(mysqli_num_rows($query)!=0){
			while($rs=mysqli_fetch_row($query)){
				$return_arr[$i]=new PersonaEnt();
				$return_arr[$i]->setIdpersona($rs[0]);
				$return_arr[$i]->setNomper($rs[1]);
				$return_arr[$i]->setTelfijo($rs[2]);
				$return_arr[$i]->setCorreo($rs[3]);
				$return_arr[$i]->setDni($rs[4]);
				$return_arr[$i]->setCelrpm($rs[5]);
				$return_arr[$i]->setCelrpc($rs[6]);
				$return_arr[$i]->setTelofici($rs[7]);
				$i++;
			}
			return $return_arr;
		}else{
			return 0;
		}
		mysqli_close(ConexionMod::Conectar());	
	}
	
	
	//FUNCION PARA LISTA AUTO COMPLETO
	public function listarCelularPersona($val,$par){ 
		$cod = $par;
		$nom = $val->getCelrpm();
		if($cod==""){
			$sql="SELECT * FROM persona WHERE celrpm like '%".$nom."%' LIMIT 0,40"; 
		}else{
			$sql="SELECT p.idpersona,p.nomper,p.telfijo,p.correo,p.dni,p.celrpm,p.celrpc,p.telofici FROM persona p INNER JOIN agendadet a ON p.idpersona=a.idpersona WHERE a.cod_entidad=".$cod." AND p.celrpm LIKE '%".$nom."%' LIMIT 0,25;";
		}
		$query=mysqli_query(ConexionMod::Conectar(),$sql);
		$i=0;
		if(mysqli_num_rows($query)!=0){
			while($rs=mysqli_fetch_row($query)){
				$return_arr[$i]=new PersonaEnt();
				$return_arr[$i]->setIdpersona($rs[0]);
				$return_arr[$i]->setNomper($rs[1]);
				$return_arr[$i]->setTelfijo($rs[2]);
				$return_arr[$i]->setCorreo($rs[3]);
				$return_arr[$i]->setDni($rs[4]);
				$return_arr[$i]->setCelrpm($rs[5]);
				$return_arr[$i]->setCelrpc($rs[6]);
				$return_arr[$i]->setTelofici($rs[7]);
				$i++;
			}
			return $return_arr;
		}else{
			return 0;
		}
		mysqli_close(ConexionMod::Conectar());	
	}

	
}
?>