<?php

require_once("DBManager.class.php");

class Movimiento{
	private $idmov ;///
	private $tipo;
	private $fecha;
	private $proveedor;
	private $dniruc;
	private $numdoc;
	private $concepto;
	private $monto;
	private $foto ;
	private $idusuario;
	///////////////////////////////////////////////	
	public function Crear($tipo,$fe,$prov,$dniruc,$numdoc,$concepto,$monto,$foto,$u)
	{
		$resp=false;		
		$db= new DBManager('root','');
		$fe = implode("-", array_reverse(explode("-", $fe)));	
		if($db->_execute("INSERT INTO movimiento(idmov,tipo,fecha,proveedor,dniruc,numdoc,concepto,monto,foto,idusuario) VALUES(null,'".$tipo."','".$fe."','".$prov."','".$dniruc."','".$numdoc."','".$concepto."',".$monto.",'".$foto."',".$u.")"))   
		{
			$resp=true;
		}
		return $resp;		
	}
	
	
	public function ListarPorConcepto($vproducto)
	{
		$vector=null;		
		$db= new DBManager('root','');	
		$rs=$db->execute("select idmov,tipo,DATE_FORMAT(fecha,'%d-%m-%Y') as fecha,proveedor,dniruc,numdoc,concepto,monto,foto,idusuario from movimiento where(concepto LIKE CONCAT('%','".$vproducto."','%'))");
		$num_rows=$rs->getNumOfRows();
		if($num_rows>0)
		{	$row=0;
			$rs->firstRow(); // opcional, pero recomendado
			while (!$rs->EOF) 
			{
   				$vector[$row]=array("idmov"	=> $rs->fields["idmov"],
									"tipo"	=> $rs->fields["tipo"],   			    					
									"fecha"=> $rs->fields["fecha"],
									"proveedor"	=> $rs->fields["proveedor"],
									"dniruc"	=> $rs->fields["dniruc"],
									"numdoc"	=> $rs->fields["numdoc"],
									"concepto"=> $rs->fields["concepto"],
									"monto"=> $rs->fields["monto"],
									"foto"=> $rs->fields["foto"],
									"idusuario"=> $rs->fields["idusuario"]);
                $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 ListarPorUsuario($vl)
	{
		$vector=null;		
		$db= new DBManager('root','');
		$rs=$db->execute("select idmov,tipo,DATE_FORMAT(fecha,'%d-%m-%Y') as fecha,proveedor,dniruc,numdoc,concepto,monto,foto,idusuario from movimiento where(idusuario =".$vl.") order by idusuario");
		$num_rows=$rs->getNumOfRows();
		if($num_rows>0)
		{	$row=0;
			$rs->firstRow(); // opcional, pero recomendado
			while (!$rs->EOF) 
			{
   				$vector[$row]=array("idmov"	=> $rs->fields["idmov"],
									"tipo"	=> $rs->fields["tipo"],   			    					
									"fecha"=> $rs->fields["fecha"],
									"proveedor"	=> $rs->fields["proveedor"],
									"dniruc"	=> $rs->fields["dniruc"],
									"numdoc"	=> $rs->fields["numdoc"],
									"concepto"=> $rs->fields["concepto"],
									"monto"=> $rs->fields["monto"],
									"foto"=> $rs->fields["foto"],
									"idusuario"=> $rs->fields["idusuario"]);
                $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 ListarPorFecha($f)
	{
		$vector=null;		
		$db= new DBManager('root','');
		$f = implode("-", array_reverse(explode("-", $f)));	
		$rs=$db->execute("select idmov,tipo,DATE_FORMAT(fecha,'%d-%m-%Y') as fecha,proveedor,dniruc,numdoc,concepto,monto,foto,idusuario from movimiento where(fecha='".$f."') order by idmov");
		$num_rows=$rs->getNumOfRows();
		if($num_rows>0)
		{	$row=0;
			$rs->firstRow(); // opcional, pero recomendado
			while (!$rs->EOF) 
			{
   				$vector[$row]=array("idmov"	=> $rs->fields["idmov"],
									"tipo"	=> $rs->fields["tipo"],   			    					
									"fecha"=> $rs->fields["fecha"],
									"proveedor"	=> $rs->fields["proveedor"],
									"dniruc"	=> $rs->fields["dniruc"],
									"numdoc"	=> $rs->fields["numdoc"],
									"concepto"=> $rs->fields["concepto"],
									"monto"=> $rs->fields["monto"],
									"foto"=> $rs->fields["foto"],
									"idusuario"=> $rs->fields["idusuario"]);
                $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 ListarPorTipo($t)
	{
		$vector=null;		
		$db= new DBManager('root','');
		$f = implode("-", array_reverse(explode("-", $f)));	
		$rs=$db->execute("select idmov,tipo,DATE_FORMAT(fecha,'%d-%m-%Y') as fecha,proveedor,dniruc,numdoc,concepto,monto,foto,idusuario from movimiento where(tipo='".$t."') order by idmov");
		$num_rows=$rs->getNumOfRows();
		if($num_rows>0)
		{	$row=0;
			$rs->firstRow(); // opcional, pero recomendado
			while (!$rs->EOF) 
			{
   				$vector[$row]=array("idmov"	=> $rs->fields["idmov"],
									"tipo"	=> $rs->fields["tipo"],   			    					
									"fecha"=> $rs->fields["fecha"],
									"proveedor"	=> $rs->fields["proveedor"],
									"dniruc"	=> $rs->fields["dniruc"],
									"numdoc"	=> $rs->fields["numdoc"],
									"concepto"=> $rs->fields["concepto"],
									"monto"=> $rs->fields["monto"],
									"foto"=> $rs->fields["foto"],
									"idusuario"=> $rs->fields["idusuario"]);
                $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 idmov,tipo,DATE_FORMAT(fecha,'%d-%m-%Y') as fecha,proveedor,dniruc,numdoc,concepto,monto,foto,idusuario from movimiento where(idmov = ".$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->idmov=$rs->fields["idmov"];
				$this->tipo=$rs->fields["tipo"];	
				$this->fecha=$rs->fields["fecha"];
				$this->proveedor=$rs->fields["proveedor"];
				$this->dniruc=$rs->fields["dniruc"];
				$this->numdoc=$rs->fields["numdoc"];
				$this->concepto=$rs->fields["concepto"];				 
				$this->monto=$rs->fields["monto"];
				$this->foto=$rs->fields["foto"];
				$this->idusuario=$rs->fields["idusuario"];
 				$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($vcod,$vtipo,$fecha,$prov,$dniruc,$numdoc,$concep,$monto,$idusu)			
	{
		$resp=false;		
		$db= new DBManager('root','');
		$fecha = implode("-", array_reverse(explode("-", $fecha)));
		if($db->_execute("update movimiento set tipo = '".$vtipo."', fecha='".$fecha."',proveedor='".$prov."', dniruc ='".$dniruc."', numdoc='".$numdoc."',concepto='".$concep."', monto=".$monto.", idusuario = ".$idusu." where (idmov=".$vcod.")"))//si es exitosa la consulta			   
		{
		  $resp=true; 
		}	
		return $resp;
	}
	
	public function ActualizarFoto($vcod,$foto)			
	{
		$resp=false;		
		$db= new DBManager('root','');
		if($db->_execute("update movimiento set foto = '".$foto."' where (idmov=".$vcod.")"))//si es exitosa la consulta			   
		{
		  $resp=true; 
		}	
		return $resp;
	}

	/////////////////////////////////*/
		
	public function ListaTotal()
	{
		$vector=null;
		$db= new DBManager('root','');		
		$rs=$db->execute("select idmov,tipo,DATE_FORMAT(fecha,'%d-%m-%Y') as fecha,proveedor,dniruc,numdoc,concepto,monto,foto,idusuario from movimiento order by idmov");
		$num_rows=$rs->getNumOfRows();
		if($num_rows>0)
		{	$row=0;
			$rs->firstRow(); // opcional, pero recomendado
			while (!$rs->EOF) {
                 $vector[$row]=array("idmov"	=> $rs->fields["idmov"],
									"tipo"	=> $rs->fields["tipo"],   			    					
									"fecha"=> $rs->fields["fecha"],
									"proveedor"	=> $rs->fields["proveedor"],
									"dniruc"	=> $rs->fields["dniruc"],
									"numdoc"	=> $rs->fields["numdoc"],
									"concepto"=> $rs->fields["concepto"],
									"monto"=> $rs->fields["monto"],
									"foto"=> $rs->fields["foto"],
									"idusuario"=> $rs->fields["idusuario"]);
                $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 movimiento WHERE (idmov=".$vcod.");"))   
		{
			$resp=true;
		}
		return $resp;		
	}	
	
	public function getidmov(){ return $this->idmov;}
	public function gettipo(){ return $this->tipo;}
	public function getfecha(){ return $this->fecha;}
	public function getproveedor(){ return $this->proveedor;}
	public function getdniruc(){ return $this->dniruc;}
	public function getnumdoc(){ return $this->numdoc;}
	public function getmonto(){ return $this->monto;}
	public function getconcepto(){ return $this->concepto;}
	public function getfoto(){ return $this->foto;}
	public function getidusuario(){ return $this->idusuario;}					
}
?>