<?php
require_once("DBManager.class.php");
class Cliente{
	private $codcliente;///
	private $ruc;
	private $razons;
	private $dni;
	private $nombres;
	private $telefono;	
	private $pais;
	private $direccion;
	private $la_ojod; private $la_ojoi;
	private $la_esf; private $la_esfi;
	private $la_cil; private $la_cili;
	private $la_eje; private $la_ejei;
	private $la_dip; private $la_dipi;
	private $ca_ojod; private $ca_ojoi;
	private $ca_esf; private $ca_esfi;
	private $ca_cil; private $ca_cili;
	private $ca_eje; private $ca_ejei;
	private $ca_dip; private $ca_dipi;
	private $correo;
	//////////////////////////////////////
	public function Crear($vruc,$vrazons,$vdni,$vnombres,$vtelefono,$vpais,$x,$lojod,$lojoi,$lesf,$lesfi,$lcil,$lcili,$leje,$lejei,$ldip,$ldipi,$cojod,$cojoi,$cesf,$cesfi,$ccil,$ccili,$ceje,$cejei,$cdip,$cdipi,$correo)
	{
		$resp=false;		
		$db= new DBManager('root','');	
		if($db->_execute("INSERT INTO cliente(codcliente,ruc,razons,dni,nombres,telefono,pais,direccion,la_ojod,la_ojoi,la_esf,la_esfi,la_cil,la_cili,la_eje,la_ejei,la_dip,la_dipi,ca_ojod,ca_ojoi,ca_esf,ca_esfi,ca_cil,ca_cili,ca_eje,ca_ejei,ca_dip,ca_dipi,correo) VALUES(null,'".$vruc."','".$vrazons."','".$vdni."','".$vnombres."','".$vtelefono."','".$vpais."','".$x."','".$lojod."','".$lojoi."','".$lesf."','".$lesfi."','".$lcil."','".$lcili."','".$leje."','".$lejei."','".$ldip."','".$ldipi."','".$cojod."','".$cojoi."','".$cesf."','".$cesfi."','".$ccil."','".$ccili."','".$ceje."','".$cejei."','".$cdip."','".$cdipi."','".$correo."')"))   
		{
			$resp=true;
		}
		return $resp;		
	}
	
	
	public function ListarPorCliente($vcliente)
	{
		$vector=null;		
		$db= new DBManager('root','');	
		$rs=$db->execute("select * from cliente where (nombres LIKE CONCAT('%','".$vcliente."','%'))");
		$num_rows=$rs->getNumOfRows();
		if($num_rows>0)
		{	$row=0;
			$rs->firstRow(); // opcional, pero recomendado
			while (!$rs->EOF) 
			{
   				$vector[$row]=array("codcliente"	=> $rs->fields["codcliente"],
									"ruc" 	=> $rs->fields["ruc"],
									"razons" 	=> $rs->fields["razons"],
									"dni" 	=> $rs->fields["dni"],
   			    					"nombres" 	=> $rs->fields["nombres"],
									"telefono" 	=> $rs->fields["telefono"],
									"pais" => $rs->fields["pais"],									
									"direccion" => $rs->fields["direccion"],
									"la_ojod" => $rs->fields["la_ojod"],
									"la_ojoi" => $rs->fields["la_ojoi"],
									"la_esf" => $rs->fields["la_esf"],
									"la_esfi" => $rs->fields["la_esfi"],
									"la_cil" => $rs->fields["la_cil"],
									"la_cili" => $rs->fields["la_cili"],
									"la_eje" => $rs->fields["la_eje"],
									"la_ejei" => $rs->fields["la_ejei"],
									"la_dip" => $rs->fields["la_dip"],
									"la_dipi" => $rs->fields["la_dipi"],
									"ca_ojod" => $rs->fields["ca_ojod"],
									"ca_ojoi" => $rs->fields["ca_ojoi"],
									"ca_esf" => $rs->fields["ca_esf"],
									"ca_esfi" => $rs->fields["ca_esfi"],
									"ca_cil" => $rs->fields["ca_cil"],
									"ca_cili" => $rs->fields["ca_cili"],
									"ca_eje" => $rs->fields["ca_eje"],
									"ca_ejei" => $rs->fields["ca_ejei"],
									"ca_dip" => $rs->fields["ca_dip"],
									"ca_dipi" => $rs->fields["ca_dipi"],
									"correo" => $rs->fields["correo"]);
                $row++;
				$rs->nextRow(); // Nota: nextRow() Esta situado al final				
         	}			
        	return $vector;			
		}else return null;
		$rs->close(); 
		$db->closeConnection();//opcional cierra el enlace de la Base de Datos              						
	}
		
	public function BuscarPorCodigo($vcod)
	{
		
		$resp=false;
		$num_rows=0;//numero de filas afectada por la consulta
		$db= new DBManager('root','');
		$rs=$db->execute("select * from cliente where(codcliente = '".$vcod."')");
		$num_rows=$rs->getNumOfRows();
		if($num_rows>0)
		{	$resp=true;
			$rs->firstRow(); // opcional, pero recomendado
			while (!$rs->EOF) {
                // Coleccion de campos accesible mediante arrays asociativos también
                $this->codcliente=$rs->fields["codcliente"];
				$this->ruc=$rs->fields["ruc"];				
				$this->razons=$rs->fields["razons"];				 
				$this->dni=$rs->fields["dni"];
				$this->nombres=$rs->fields["nombres"];				 
				$this->telefono=$rs->fields["telefono"];
				$this->pais=$rs->fields["pais"];
				$this->direccion=$rs->fields["direccion"];
				$this->la_ojod=$rs->fields["la_ojod"];
				$this->la_ojoi=$rs->fields["la_ojoi"];
				$this->la_esf=$rs->fields["la_esf"];
				$this->la_esfi=$rs->fields["la_esfi"];
				$this->la_cil=$rs->fields["la_cil"];
				$this->la_cili=$rs->fields["la_cili"];
				$this->la_eje=$rs->fields["la_eje"];
				$this->la_ejei=$rs->fields["la_ejei"];
				$this->la_dip=$rs->fields["la_dip"];
				$this->la_dipi=$rs->fields["la_dipi"];
				$this->ca_ojod=$rs->fields["ca_ojod"];
				$this->ca_ojoi=$rs->fields["ca_ojoi"];
				$this->ca_esf=$rs->fields["ca_esf"];
				$this->ca_esfi=$rs->fields["ca_esfi"];
				$this->ca_cil=$rs->fields["ca_cil"];
				$this->ca_cili=$rs->fields["ca_cili"];
				$this->ca_eje=$rs->fields["ca_eje"];
				$this->ca_ejei=$rs->fields["ca_ejei"];
				$this->ca_dip=$rs->fields["ca_dip"];
				$this->ca_dipi=$rs->fields["ca_dipi"];
				$this->correo=$rs->fields["correo"];
 				$rs->nextRow(); // Nota: nextRow() Esta situado al final				
        	}			
		}
		$rs->close(); 
		$db->closeConnection();//opcional cierra el enlace de la Base de Datos              
		return $resp;							
	}
	
	public function BuscarPorDNI($vcod)
	{
		
		$resp=false;
		$num_rows=0;//numero de filas afectada por la consulta
		$db= new DBManager('root','');
		$rs=$db->execute("select * from cliente where(dni = '".$vcod."')");
		$num_rows=$rs->getNumOfRows();
		if($num_rows>0)
		{	$resp=true;
			$rs->firstRow(); // opcional, pero recomendado
			while (!$rs->EOF) {
                // Coleccion de campos accesible mediante arrays asociativos también
                $this->codcliente=$rs->fields["codcliente"];
				$this->ruc=$rs->fields["ruc"];				
				$this->razons=$rs->fields["razons"];				 
				$this->dni=$rs->fields["dni"];
				$this->nombres=$rs->fields["nombres"];				 
				$this->telefono=$rs->fields["telefono"];
				$this->pais=$rs->fields["pais"];
				$this->direccion=$rs->fields["direccion"];
				$this->la_ojod=$rs->fields["la_ojod"];
				$this->la_ojoi=$rs->fields["la_ojoi"];
				$this->la_esf=$rs->fields["la_esf"];
				$this->la_esfi=$rs->fields["la_esfi"];
				$this->la_cil=$rs->fields["la_cil"];
				$this->la_cili=$rs->fields["la_cili"];
				$this->la_eje=$rs->fields["la_eje"];
				$this->la_ejei=$rs->fields["la_ejei"];
				$this->la_dip=$rs->fields["la_dip"];
				$this->la_dipi=$rs->fields["la_dipi"];
				$this->ca_ojod=$rs->fields["ca_ojod"];
				$this->ca_ojoi=$rs->fields["ca_ojoi"];
				$this->ca_esf=$rs->fields["ca_esf"];
				$this->ca_esfi=$rs->fields["ca_esfi"];
				$this->ca_cil=$rs->fields["ca_cil"];
				$this->ca_cili=$rs->fields["ca_cili"];
				$this->ca_eje=$rs->fields["ca_eje"];
				$this->ca_ejei=$rs->fields["ca_ejei"];
				$this->ca_dip=$rs->fields["ca_dip"];
				$this->ca_dipi=$rs->fields["ca_dipi"];
				$this->correo=$rs->fields["correo"];
 				$rs->nextRow(); // Nota: nextRow() Esta situado al final				
        	}			
		}
		$rs->close(); 
		$db->closeConnection();//opcional cierra el enlace de la Base de Datos              
		return $resp;							
	}
	public function Actualizar($vcodcliente,$vruc,$vrs,$vdni,$vnombres,$vtelefono,$vpais,$vdir,$lojod,$lojoi,$lesf,$lesfi,$lcil,$lcili,$leje,$lejei,$ldip,$ldipi,$cojod,$cojoi,$cesf,$cesfi,$ccil,$ccili,$ceje,$cejei,$cdip,$cdipi,$correo)			
	{
		$resp=false;		
		$db= new DBManager('root','');	
		if($db->_execute("update  cliente set ruc = '".$vruc."', razons = '".$vrs."', dni = '".$vdni."', nombres ='".$vnombres."', telefono='".$vtelefono."', pais ='".$vpais."', direccion='".$vdir."',la_ojod='".$lojod."',la_ojoi='".$lojoi."',la_esf='".$lesf."',la_esfi='".$lesfi."',la_cil='".$lcil."',la_cili='".$lcili."',la_eje='".$leje."',la_ejei='".$lejei."',la_dip='".$ldip."',la_dipi='".$ldipi."',ca_ojod='".$cojod."',ca_ojoi='".$cojoi."',ca_esf='".$cesf."',ca_esfi='".$cesfi."',ca_cil='".$ccil."',ca_cili='".$ccili."',ca_eje='".$ceje."',ca_ejei='".$cejei."',ca_dip='".$cdip."',ca_dipi='".$cdipi."', correo='".$correo."' where (codcliente=".$vcodcliente.") "))//si es exitosa la consulta			   
		{
		  $resp=true; 
		}	
		return $resp;
	}

public function ActualizarPorDni($vcodcliente,$vruc,$vrs,$vdni,$vnombres,$vtelefono,$vpais,$vdir,$lojod,$lojoi,$lesf,$lesfi,$lcil,$lcili,$leje,$lejei,$ldip,$ldipi,$cojod,$cojoi,$cesf,$cesfi,$ccil,$ccili,$ceje,$cejei,$cdip,$cdipi)			
	{
		$resp=false;		
		$db= new DBManager('root','');
		if($db->_execute("update  cliente set ruc = '".$vruc."', razons = '".$vrs."', dni = '".$vdni."', nombres ='".$vnombres."', telefono='".$vtelefono."', pais ='".$vpais."', direccion='".$vdir."',la_ojod='".$lojod."',la_ojoi='".$lojoi."',la_esf='".$lesf."',la_esfi='".$lesfi."',la_cil='".$lcil."',la_cili='".$lcili."',la_eje='".$leje."',la_ejei='".$lejei."',la_dip='".$ldip."',la_dipi='".$ldipi."',ca_ojod='".$cojod."',ca_ojoi='".$cojoi."',ca_esf='".$cesf."',ca_esfi='".$cesfi."',ca_cil='".$ccil."',ca_cili='".$ccili."',ca_eje='".$ceje."',ca_ejei='".$cejei."',ca_dip='".$cdip."',ca_dipi='".$cdipi."' where (codcliente=".$vcodcliente.") "))//si es exitosa la consulta			   
		{
		  $resp=true; 
		}	
		return $resp;
	}
	
	
	////////////////////////////////*/
		
	public function ListaTotal()
	{
		$vector=null;
		$db= new DBManager('root','');
		$rs=$db->execute("select * from cliente");
		$num_rows=$rs->getNumOfRows();
		if($num_rows>0)
		{	$row=0;
			$rs->firstRow(); // opcional, pero recomendado
			while (!$rs->EOF) {
                $vector[$row]=array("codcliente"	=> $rs->fields["codcliente"],
									"ruc" 	=> $rs->fields["ruc"],
									"razons" 	=> $rs->fields["razons"],
									"dni" 	=> $rs->fields["dni"],
   			    					"nombres" 	=> $rs->fields["nombres"],
									"telefono" 	=> $rs->fields["telefono"],
									"pais" => $rs->fields["pais"],									
									"direccion" => $rs->fields["direccion"],
									"la_ojod" => $rs->fields["la_ojod"],
									"la_ojoi" => $rs->fields["la_ojoi"],
									"la_esf" => $rs->fields["la_esf"],
									"la_esfi" => $rs->fields["la_esfi"],
									"la_cil" => $rs->fields["la_cil"],
									"la_cili" => $rs->fields["la_cili"],
									"la_eje" => $rs->fields["la_eje"],
									"la_ejei" => $rs->fields["la_ejei"],
									"la_dip" => $rs->fields["la_dip"],
									"la_dipi" => $rs->fields["la_dipi"],
									"ca_ojod" => $rs->fields["ca_ojod"],
									"ca_ojoi" => $rs->fields["ca_ojoi"],
									"ca_esf" => $rs->fields["ca_esf"],
									"ca_esfi" => $rs->fields["ca_esfi"],
									"ca_cil" => $rs->fields["ca_cil"],
									"ca_cili" => $rs->fields["ca_cili"],
									"ca_eje" => $rs->fields["ca_eje"],
									"ca_ejei" => $rs->fields["ca_ejei"],
									"ca_dip" => $rs->fields["ca_dip"],
									"ca_dipi" => $rs->fields["ca_dipi"],
									"correo" => $rs->fields["correo"]);
                $row++;
				$rs->nextRow(); // Nota: nextRow() Esta situado al final				
        	}			
        	return $vector;			
		}else return null;
		
		$rs->close(); 
		$db->closeConnection();//opcional cierra el enlace de la Base de Datos              						
	}
	////////////////////////////
	public function ListaPaginada($vcli,$limitInf,$tampag)
	{    /////////////////////////////////////
		$vector=null;		
		$db= new DBManager('root','');		
		$rs=$db->execute("SELECT * FROM cliente WHERE ( nombres LIKE CONCAT('%','".$vcli."','%') ) ORDER BY nombres ASC limit ".$limitInf.",".$tampag.";");			
		$num_rows=$rs->getNumOfRows();
		if($num_rows>0)
		{	$row=0;
			$rs->firstRow(); // opcional, pero recomendado
			while (!$rs->EOF) 
			{    
   				$vector[$row]=array("codcliente"	=> $rs->fields["codcliente"],
									"ruc" 	=> $rs->fields["ruc"],
									"razons" 	=> $rs->fields["razons"],
									"dni" 	=> $rs->fields["dni"],
   			    					"nombres" 	=> $rs->fields["nombres"],
									"telefono" 	=> $rs->fields["telefono"],
									"pais" => $rs->fields["pais"],									
									"direccion" => $rs->fields["direccion"],
									"la_ojod" => $rs->fields["la_ojod"],
									"la_ojoi" => $rs->fields["la_ojoi"],
									"la_esf" => $rs->fields["la_esf"],
									"la_esfi" => $rs->fields["la_esfi"],
									"la_cil" => $rs->fields["la_cil"],
									"la_cili" => $rs->fields["la_cili"],
									"la_eje" => $rs->fields["la_eje"],
									"la_ejei" => $rs->fields["la_ejei"],
									"la_dip" => $rs->fields["la_dip"],
									"la_dipi" => $rs->fields["la_dipi"],
									"ca_ojod" => $rs->fields["ca_ojod"],
									"ca_ojoi" => $rs->fields["ca_ojoi"],
									"ca_esf" => $rs->fields["ca_esf"],
									"ca_esfi" => $rs->fields["ca_esfi"],
									"ca_cil" => $rs->fields["ca_cil"],
									"ca_cili" => $rs->fields["ca_cili"],
									"ca_eje" => $rs->fields["ca_eje"],
									"ca_ejei" => $rs->fields["ca_ejei"],
									"ca_dip" => $rs->fields["ca_dip"],
									"ca_dipi" => $rs->fields["ca_dipi"],
									"correo" => $rs->fields["correo"]);
                $row++;
				$rs->nextRow(); // Nota: nextRow() Esta situado al final				
         	}			
        	return $vector;			
		}else return null;
		$rs->close(); 
		$db->closeConnection();//opcional cierra el enlace de la Base de Datos              						
	}
	//////////////////////////////
	public function Eliminar($vcod)
	{
		$resp=false;		
		$db= new DBManager('root','');	
		if($db->_execute("DELETE FROM cliente WHERE (codcliente='".$vcod."');"))   
		{
			$resp=true;
		}
		return $resp;		
	}	
	/////////////////////////////////////////
	public function Iniciarsesion($vusuario,$vclave)
        {
                $resp=false;
                $num_rows=0;//numero de filas afectada por la consulta
                $db= new DBManager('root','');
                $rs=$db->execute("SELECT * FROM cliente WHERE (usuario='".$vusuario."' AND clave='".$vclave."' );");
                $num_rows=$rs->getNumOfRows();
                if($num_rows>0)
                {        $resp=true;
                         $rs->firstRow(); // opcional, pero recomendado
                        while (!$rs->EOF) {
                // Coleccion de campos accesible mediante arrays asociativos también
                $this->codcliente=$rs->fields["codcliente"];
				$this->ruc=$rs->fields["ruc"];				
				$this->razons=$rs->fields["razons"];				 
				$this->dni=$rs->fields["dni"];
				$this->nombres=$rs->fields["nombres"];				 
				$this->telefono=$rs->fields["telefono"];
				$this->pais=$rs->fields["pais"];
				$this->direccion=$rs->fields["direccion"];
				$this->la_ojod=$rs->fields["la_ojod"];
				$this->la_ojoi=$rs->fields["la_ojoi"];
				$this->la_esf=$rs->fields["la_esf"];
				$this->la_esfi=$rs->fields["la_esfi"];
				$this->la_cil=$rs->fields["la_cil"];
				$this->la_cili=$rs->fields["la_cili"];
				$this->la_eje=$rs->fields["la_eje"];
				$this->la_ejei=$rs->fields["la_ejei"];
				$this->la_dip=$rs->fields["la_dip"];
				$this->la_dipi=$rs->fields["la_dipi"];
				$this->ca_ojod=$rs->fields["ca_ojod"];
				$this->ca_ojoi=$rs->fields["ca_ojoi"];
				$this->ca_esf=$rs->fields["ca_esf"];
				$this->ca_esfi=$rs->fields["ca_esfi"];
				$this->ca_cil=$rs->fields["ca_cil"];
				$this->ca_cili=$rs->fields["ca_cili"];
				$this->ca_eje=$rs->fields["ca_eje"];
				$this->ca_ejei=$rs->fields["ca_ejei"];
				$this->ca_dip=$rs->fields["ca_dip"];
				$this->ca_dipi=$rs->fields["ca_dipi"];
 				$rs->nextRow(); // Nota: nextRow() Esta situado al final				
        	}	
                }
                $rs->close();
                $db->closeConnection();//opcional cierra el enlace de la Base de Datos
                return $resp;
        }
		
		
		
	public function ObtenerUltimo()
	{
		$vector=null;		
		$db= new DBManager('root','');		
		$rs=$db->execute("SELECT codcliente FROM cliente ORDER BY codcliente DESC limit 1");			
		$num_rows=$rs->getNumOfRows();
		if($num_rows>0)
		{	$row=0;
			$rs->firstRow(); // opcional, pero recomendado
			while (!$rs->EOF) 
			{    
   				$vector[$row]=array("codcliente"	=> $rs->fields["codcliente"]);
                $row++;
				$rs->nextRow(); // Nota: nextRow() Esta situado al final				
         	}			
        	return $vector;			
		}else return null;
		$rs->close(); 
		$db->closeConnection();
	}
	
	
	public function Gdni()
	{
		//$vtipo="Y-";	
		$fecha = getdate();	
		//$AnoActual = intval($fecha['year']);
		$AnoActual = date("y");	
		$db= new DBManager('root','');		
		$rs=$db->execute("SELECT codcliente FROM cliente ORDER BY codcliente;");	
		$numero = $num_rows=$rs->getNumOfRows();
		$numero = $numero+1;			
		$rs->close();
		$db->closeConnection();//opcional		
		return (strtoupper($AnoActual.$numero));			
			
	}		
	////////////////////////////////////////
	public function getCodcliente(){ return $this->codcliente;}
	public function getRuc(){ return $this->ruc;}
	public function getRazons(){ return $this->razons;}
	public function getDni(){ return $this->dni;}
	public function getNombres(){ return $this->nombres;}	
	//public function getApellidos(){ return $this->apellidos;}
	public function getTelefono(){ return $this->telefono;}
	public function getPais(){ return $this->pais;}
	public function getDireccion(){ return $this->direccion;}
	public function getla_ojod(){ return $this->la_ojod;}
	public function getla_ojoi(){ return $this->la_ojoi;}
	public function getla_esf(){ return $this->la_esf;}
	public function getla_esfi(){ return $this->la_esfi;}
	public function getla_cil(){ return $this->la_cil;}
	public function getla_cili(){ return $this->la_cili;}
	public function getla_eje(){ return $this->la_eje;}
	public function getla_ejei(){ return $this->la_ejei;}
	public function getla_dip(){ return $this->la_dip;}
	public function getla_dipi(){ return $this->la_dipi;}
	public function getca_ojod(){ return $this->ca_ojod;}
	public function getca_ojoi(){ return $this->ca_ojoi;}
	public function getca_esf(){ return $this->ca_esf;}
	public function getca_esfi(){ return $this->ca_esfi;}
	public function getca_cil(){ return $this->ca_cil;}
	public function getca_cili(){ return $this->ca_cili;}
	public function getca_eje(){ return $this->ca_eje;}
	public function getca_ejei(){ return $this->ca_ejei;}
	public function getca_dip(){ return $this->ca_dip;}
	public function getca_dipi(){ return $this->ca_dipi;}
	public function getcorreo(){ return $this->correo;}
					
}
?>