<?php
/****************************************************************/
/*        J. Alvarez P.          */
/*         judalvar@yahoo.es           */
/****************************************************************/
/*Funciones que permiten el manejo del vehiculo,   */
/*su validación  u obtención de los diferentes datos que posee. */
/****************************************************************/

include_once (SISTEMA_PATH."/apis/nucleo/servicios/modelo_tecnico.php");


if ( !defined("SISTEMA_NUCLEO_VEHICULO_INCLUDED") ) {
   define("SISTEMA_NUCLEO_VEHICULO_INCLUDED", 1);



  function kardex_vehiculos_disponibles($fecha_ini,$seccion){
    $kardex = array();
    $sql= " SELECT SV.nro_interno_sve, SV.patente_veh, SV.fecha_ingreso_sve, TDC.id_tdc, TDC.nombre_tdc, SV.estado_sve, SV.precio_compra_sve, 
                DC.fecha_dco, DC.numero_dco , DC.nro_serie_dco, DC.neto_dco, DC.iva_dco, DC.id_emp, DC.id_suc, DC.id_dep, DC.id_sec, SEC.nombre_sec  
                FROM stock_vehiculo SV
                LEFT JOIN documento_compra DC ON (DC.patente_veh = SV.patente_veh)
                LEFT JOIN tipo_docto_compra TDC ON (TDC.id_tdc = DC.id_tdc)
                LEFT JOIN seccion SEC ON (SV.id_emp = SEC.id_emp AND SV.id_suc=SEC.id_suc AND SV.id_dep = SEC.id_dep AND SV.id_sec = SEC.id_sec)
                WHERE (SV.estado_sve <>'N' AND SV.estado_sve <>'F' AND SV.estado_sve <>'T' AND SV.estado_sve <> 'J')
                AND NOT EXISTS
                (SELECT * FROM documento_venta DVE
                LEFT JOIN documento_venta_relacionado DVR ON (DVE.id_emp = DVR.id_emp AND DVE.id_tdo = DVR.id_tdo AND DVE.numero_dve = DVR.numero_dve AND DVR.id_tdo = 3)  
                LEFT JOIN documento_venta DV2 ON (DV2.id_emp=DVR.id_emp AND DV2.id_tdo= DVR.id_tdo AND DV2.numero_dve = DVR.numero_dve)
                WHERE DVE.patente_dve = SV.patente_veh AND DVE.nulo_dve IS NOT TRUE AND (DVE.id_tdo= 1 OR DVE.id_tdo=4) AND DVE.fecha_dve <= '$fecha_ini'
                AND CASE WHEN (DVR.numero_dve IS NULL OR (DVR.numero_dve>0 AND DV2.fecha_dve <= '$fecha_ini' AND DV2.nulo_dve IS NOT TRUE))THEN 1=0 ELSE 1=1 END)";

    if ($seccion!='') {
        if ($seccion != 0 && $seccion != "") {
              $sql.= " and (";
              $seccion_e=explode(",",$seccion);    //1,2,3,4,5, quito las comas
              for ($x=0; $x <count($seccion_e)-1; $x++) {
                  if ($x >0 ) {
                      $sql.= " or ";
                  }
                  $secciones = explode("_",$seccion_e[$x]);
                  $sql.= " (SV.id_suc = $secciones[0]
                  and  SV.id_dep = $secciones[1]
                  and  SV.id_sec = $secciones[2] ) ";
              }
              $sql.= " )";
        }else{
              $sql.= " and ";
                  
              $id_dep=usuario_departamento();
                 
              $sql.= " (
                  SV.id_dep = $id_dep
                   ) ";
        }
    }

    $sql.=" ORDER BY SV.fecha_ingreso_sve ";
          
    if($rs=sql_query($sql)){
          $i = 0 ;

          while ($datos=sql_fetch_array($rs)) {
              $kardex[$i]['pantente_veh'] = $datos['patente_veh'];
              $kardex[$i]['fecha_dco'] = $datos['fecha_dco'];
              $kardex[$i]['importe'] = $datos['neto_dco'] + $datos['iva_dco'];
              $kardex[$i]['seccion'] = $datos['nombre_sec'];
              $kardex[$i]['estado'] = $datos['estado_sve'];
              $i++;
          }
    }

    return $kardex;
  }

  
  function kardex_vehiculos_compra($fecha_inicio,$fecha_termino,$stock_veh='0',$cont){

		
      $veh = array();

      /*
	  $sql= "SELECT SV.nro_interno_sve, SV.patente_veh, SV.fecha_ingreso_sve, TDC.id_tdc, TDC.nombre_tdc, SV.estado_sve, SV.precio_compra_sve, 
            DC.fecha_dco, DC.numero_dco , DC.nro_serie_dco, DC.neto_dco, DC.iva_dco, DC.id_emp, DC.id_suc, DC.id_dep, DC.id_sec, SEC.nombre_sec  
            FROM stock_vehiculo SV
            LEFT JOIN documento_compra DC on (DC.patente_veh = SV.patente_veh)
            INNER JOIN tipo_docto_compra TDC on (TDC.id_tdc = DC.id_tdc)
            INNER JOIN seccion SEC on (DC.id_emp = SEC.id_emp AND DC.id_suc=SEC.id_suc AND DC.id_dep = SEC.id_dep AND DC.id_sec = SEC.id_sec)
            WHERE
            DC.fecha_dco between '$fecha_inicio' and '$fecha_termino' ";

      if($stock_veh <> '0'){
         $sql.= " AND  SV.patente_veh = '$stock_veh' ";
      }

      $sql.=" ORDER BY DC.fecha_dco ";


      AND DV1.fecha_dve >= '$fecha_inicio'   del jose
	  */
		
		$sql2="SELECT SV.nro_interno_sve, SV.patente_veh, SV.fecha_ingreso_sve, TDC.id_tdc, TDC.nombre_tdc, SV.estado_sve, SV.precio_compra_sve, 
            DC.fecha_dco, DC.numero_dco , DC.nro_serie_dco, DC.neto_dco, DC.iva_dco, DC.id_emp, DC.id_suc, DC.id_dep, DC.id_sec, SEC.nombre_sec  
            FROM stock_vehiculo SV
            LEFT JOIN documento_compra DC on (DC.patente_veh = SV.patente_veh)
            INNER JOIN tipo_docto_compra TDC on (TDC.id_tdc = DC.id_tdc)
            INNER JOIN seccion SEC on (DC.id_emp = SEC.id_emp AND DC.id_suc=SEC.id_suc AND DC.id_dep = SEC.id_dep AND DC.id_sec = SEC.id_sec)
            WHERE
			DC.fecha_dco <= '$fecha_termino' ";
			if($stock_veh <> '0'){
				$sql2.= " AND  SV.patente_veh = '$stock_veh' ";
			}			
		$sql2.="AND 
			(SELECT count(*) FROM documento_venta DV WHERE DV.patente_dve = SV.patente_veh AND DV.nulo_dve is false 
			 AND (DV.tipo_nc_dve is NULL OR DV.tipo_nc_dve !=1 OR 
				(DV.tipo_nc_dve = 1 and 0=
					(SELECT count(*) 
						FROM documento_venta_relacionado DVR
						INNER JOIN documento_venta DV1 on (DV1.id_emp = DVR.id_emp AND DV1.id_tdo = DVR.id_tdo AND DV1.numero_dve = DVR.numero_dve)
						WHERE
						DVR.id_emp_rel = DV.id_emp
						AND DVR.id_tdo_rel = DV.id_tdo
						AND DVR.numero_dve_rel = DV.numero_dve
						AND DV1.nulo_dve is false 
						AND DV1.tipo_nc_dve = 1
            AND DV1.fecha_dve  BETWEEN '$fecha_inicio' AND '$fecha_termino'
					) 
				) 
			)
			AND DV.fecha_dve < '$fecha_inicio' 
			) = 0
			ORDER BY DC.fecha_dco";


      $sql5 = "SELECT DISTINCT
nro_interno_sve,
patente_veh,
fecha_ingreso_sve,
id_tdc, 
nombre_tdc, 
estado_sve, 
precio_compra_sve, 
fecha_dco, 
numero_dco , 
nro_serie_dco, 
neto_dco, 
iva_dco, 
id_emp, 
id_suc, 
id_dep, 
id_sec, 
nombre_sec  
FROM(
(
SELECT 
SV.nro_interno_sve as nro_interno_sve, 
SV.patente_veh as patente_veh, 
SV.fecha_ingreso_sve as fecha_ingreso_sve, 
TDC.id_tdc as id_tdc, 
TDC.nombre_tdc as nombre_tdc, 
SV.estado_sve as estado_sve, 
SV.precio_compra_sve as precio_compra_sve, 
DC.fecha_dco as fecha_dco, 
DC.numero_dco as numero_dco , 
DC.nro_serie_dco as nro_serie_dco, 
DC.neto_dco as neto_dco, 
DC.iva_dco as iva_dco, 
DC.id_emp as id_emp, 
DC.id_suc as id_suc, 
DC.id_dep as id_dep, 
DC.id_sec as id_sec, 
SEC.nombre_sec as nombre_sec
FROM stock_vehiculo SV
LEFT JOIN documento_compra DC on (DC.patente_veh = SV.patente_veh)
INNER JOIN tipo_docto_compra TDC on (TDC.id_tdc = DC.id_tdc)
INNER JOIN seccion SEC on (DC.id_emp = SEC.id_emp AND DC.id_suc=SEC.id_suc AND DC.id_dep = SEC.id_dep AND DC.id_sec = SEC.id_sec)
WHERE
DC.fecha_dco <= '$fecha_termino'";

if($stock_veh <> '0'){
        $sql5.= " AND  SV.patente_veh = '$stock_veh' ";
      }   

$sql5.="
 AND 
(SELECT count(*) FROM documento_venta DV WHERE DV.patente_dve = SV.patente_veh AND DV.nulo_dve is false  
  AND     ( DV.tipo_nc_dve is NULL OR DV.tipo_nc_dve=2  OR (DV.tipo_nc_dve = 1 and 0=
      (SELECT count(*) 
      FROM documento_venta_relacionado DVR
      INNER JOIN documento_venta DV1 on (DV1.id_emp = DVR.id_emp AND DV1.id_tdo = DVR.id_tdo AND DV1.numero_dve = DVR.numero_dve)
      WHERE
      DVR.id_emp_rel = DV.id_emp
      AND DVR.id_tdo_rel = DV.id_tdo
      AND DVR.numero_dve_rel = DV.numero_dve
      AND DV1.nulo_dve is false 
      AND DV1.tipo_nc_dve = 1
      AND DV1.fecha_dve  BETWEEN '$fecha_inicio' AND '$fecha_termino'
      ) 
    )
  )   
  AND DV.fecha_dve < '$fecha_inicio'     
) = 0
ORDER BY DC.fecha_dco

)UNION ALL (


SELECT 
SV.nro_interno_sve as nro_interno_sve, 
SV.patente_veh as patente_veh, 
SV.fecha_ingreso_sve as fecha_ingreso_sve, 
TDC.id_tdc as id_tdc, 
TDC.nombre_tdc as nombre_tdc, 
SV.estado_sve as estado_sve, 
SV.precio_compra_sve as precio_compra_sve, 
DC.fecha_dco as fecha_dco, 
DC.numero_dco as numero_dco , 
DC.nro_serie_dco as nro_serie_dco, 
DC.neto_dco as neto_dco, 
DC.iva_dco as iva_dco, 
DC.id_emp as id_emp, 
DC.id_suc as id_suc, 
DC.id_dep as id_dep, 
DC.id_sec as id_sec, 
SEC.nombre_sec as nombre_sec  
FROM stock_vehiculo SV
LEFT JOIN documento_compra DC on (DC.patente_veh = SV.patente_veh)
INNER JOIN tipo_docto_compra TDC on (TDC.id_tdc = DC.id_tdc)
INNER JOIN seccion SEC on (DC.id_emp = SEC.id_emp AND DC.id_suc=SEC.id_suc AND DC.id_dep = SEC.id_dep AND DC.id_sec = SEC.id_sec)
WHERE
DC.fecha_dco <= '$fecha_termino'";

if($stock_veh <> '0'){
        $sql5.= " AND  SV.patente_veh = '$stock_veh' ";
} 

$sql5.="
 AND  SV.patente_veh = '$stock_veh'
AND 
(SELECT count(*) FROM documento_venta DV WHERE DV.patente_dve = SV.patente_veh AND DV.nulo_dve is false AND  DV.fecha_dve  BETWEEN '$fecha_inicio' AND '$fecha_termino' 
) >= 1

ORDER BY DC.fecha_dco


)  
)AS compras ORDER BY fecha_dco"; 




$sql = "SELECT DISTINCT
nro_interno_sve,
patente_veh,
fecha_ingreso_sve,
id_tdc, 
nombre_tdc, 
estado_sve, 
precio_compra_sve, 
fecha_dco, 
numero_dco , 
nro_serie_dco, 
neto_dco, 
iva_dco, 
id_emp, 
id_suc, 
id_dep, 
id_sec, 
nombre_sec  
FROM(
(

SELECT 
SV.nro_interno_sve as nro_interno_sve, 
SV.patente_veh as patente_veh, 
SV.fecha_ingreso_sve as fecha_ingreso_sve, 
TDC.id_tdc as id_tdc, 
TDC.nombre_tdc as nombre_tdc, 
SV.estado_sve as estado_sve, 
SV.precio_compra_sve as precio_compra_sve, 
DC.fecha_dco as fecha_dco, 
DC.numero_dco as numero_dco , 
DC.nro_serie_dco as nro_serie_dco, 
DC.neto_dco as neto_dco, 
DC.iva_dco as iva_dco, 
DC.id_emp as id_emp, 
DC.id_suc as id_suc, 
DC.id_dep as id_dep, 
DC.id_sec as id_sec, 
SEC.nombre_sec as nombre_sec
FROM stock_vehiculo SV
LEFT JOIN documento_compra DC on (DC.patente_veh = SV.patente_veh)
INNER JOIN tipo_docto_compra TDC on (TDC.id_tdc = DC.id_tdc)
INNER JOIN seccion SEC on (DC.id_emp = SEC.id_emp AND DC.id_suc=SEC.id_suc AND DC.id_dep = SEC.id_dep AND DC.id_sec = SEC.id_sec)
WHERE
DC.fecha_dco <= '$fecha_termino'";

if($stock_veh <> '0'){
        $sql.= " AND  SV.patente_veh = '$stock_veh' ";
      }   

$sql.="
 AND 
((SELECT count(*) FROM documento_venta DV WHERE DV.patente_dve = SV.patente_veh AND DV.nulo_dve is false  
  AND  ( DV.tipo_nc_dve is NULL OR DV.tipo_nc_dve=2 OR (DV.tipo_nc_dve = 1 
    AND (SELECT count(*) 
          FROM documento_venta_relacionado DVR
          INNER JOIN documento_venta DV1 on (DV1.id_emp = DVR.id_emp AND DV1.id_tdo = DVR.id_tdo AND DV1.numero_dve = DVR.numero_dve)
          WHERE
          DVR.id_emp_rel = DV.id_emp
          AND DVR.id_tdo_rel = DV.id_tdo
          AND DVR.numero_dve_rel = DV.numero_dve
          AND DV1.nulo_dve is false 
          AND DV1.tipo_nc_dve = 1
          --AND DV1.fecha_dve  BETWEEN '$fecha_inicio' AND '$fecha_termino'
          AND DV1.fecha_dve  <'$fecha_termino'
          ) = 0
      )
  )   
  AND DV.fecha_dve < '$fecha_inicio'     
) = 0 ";

if ($cont ==1) {
  
  $sql.=" OR 
  (SELECT count(*) FROM documento_venta DV WHERE DV.patente_dve = SV.patente_veh AND DV.nulo_dve is false  
    AND  ( DV.tipo_nc_dve is NULL OR DV.tipo_nc_dve=2 OR (DV.tipo_nc_dve = 1 
      AND (SELECT count(*) 
            FROM documento_venta_relacionado DVR
            INNER JOIN documento_venta DV1 on (DV1.id_emp = DVR.id_emp AND DV1.id_tdo = DVR.id_tdo AND DV1.numero_dve = DVR.numero_dve)
            WHERE
            DVR.id_emp_rel = DV.id_emp
            AND DVR.id_tdo_rel = DV.id_tdo
            AND DVR.numero_dve_rel = DV.numero_dve
            AND DV1.nulo_dve is false 
            AND DV1.tipo_nc_dve = 1
           -- AND DV1.fecha_dve  BETWEEN '$fecha_inicio' AND '$fecha_termino'
            AND DV1.fecha_dve  < '$fecha_termino'
            ) = 1
        )
    )   
    AND DV.fecha_dve < '$fecha_inicio'     
  ) = 1
  ";

}


$sql.=") ORDER BY DC.fecha_dco

)UNION ALL (

SELECT 
SV.nro_interno_sve as nro_interno_sve, 
SV.patente_veh as patente_veh, 
SV.fecha_ingreso_sve as fecha_ingreso_sve, 
TDC.id_tdc as id_tdc, 
TDC.nombre_tdc as nombre_tdc, 
SV.estado_sve as estado_sve, 
SV.precio_compra_sve as precio_compra_sve, 
DC.fecha_dco as fecha_dco, 
DC.numero_dco as numero_dco , 
DC.nro_serie_dco as nro_serie_dco, 
DC.neto_dco as neto_dco, 
DC.iva_dco as iva_dco, 
DC.id_emp as id_emp, 
DC.id_suc as id_suc, 
DC.id_dep as id_dep, 
DC.id_sec as id_sec, 
SEC.nombre_sec as nombre_sec  
FROM stock_vehiculo SV
LEFT JOIN documento_compra DC on (DC.patente_veh = SV.patente_veh)
INNER JOIN tipo_docto_compra TDC on (TDC.id_tdc = DC.id_tdc)
INNER JOIN seccion SEC on (DC.id_emp = SEC.id_emp AND DC.id_suc=SEC.id_suc AND DC.id_dep = SEC.id_dep AND DC.id_sec = SEC.id_sec)
WHERE
DC.fecha_dco <= '$fecha_termino'";

if($stock_veh <> '0'){
        $sql.= " AND  SV.patente_veh = '$stock_veh' ";
} 

$sql.="
AND 
(SELECT count(*) FROM documento_venta DV WHERE DV.patente_dve = SV.patente_veh AND DV.nulo_dve is false AND  DV.fecha_dve  BETWEEN '$fecha_inicio' AND '$fecha_termino' 
) >= 1

ORDER BY DC.fecha_dco


) UNION ALL(

SELECT 
SV.nro_interno_sve as nro_interno_sve, 
SV.patente_veh as patente_veh, 
SV.fecha_ingreso_sve as fecha_ingreso_sve, 
TDC.id_tdc as id_tdc, 
TDC.nombre_tdc as nombre_tdc, 
SV.estado_sve as estado_sve, 
SV.precio_compra_sve as precio_compra_sve, 
DC.fecha_dco as fecha_dco, 
DC.numero_dco as numero_dco , 
DC.nro_serie_dco as nro_serie_dco, 
DC.neto_dco as neto_dco, 
DC.iva_dco as iva_dco, 
DC.id_emp as id_emp, 
DC.id_suc as id_suc, 
DC.id_dep as id_dep, 
DC.id_sec as id_sec, 
SEC.nombre_sec as nombre_sec  
FROM stock_vehiculo SV
LEFT JOIN documento_compra DC on (DC.patente_veh = SV.patente_veh)
INNER JOIN tipo_docto_compra TDC on (TDC.id_tdc = DC.id_tdc)
INNER JOIN seccion SEC on (DC.id_emp = SEC.id_emp AND DC.id_suc=SEC.id_suc AND DC.id_dep = SEC.id_dep AND DC.id_sec = SEC.id_sec)
WHERE
DC.fecha_dco <= '$fecha_termino'";

if($stock_veh <> '0'){
        $sql.= " AND  SV.patente_veh = '$stock_veh' ";
} 


$sql.="
AND exists (

SELECT 
*
FROM kardex_vehiculo A
WHERE
1=(
    SELECT 
    B.tipo
    FROM kardex_vehiculo B
    WHERE
    A.patente_veh=B.patente_veh 
    AND  B.fecha1 <= '$fecha_termino'
    ORDER BY B.patente_veh, B.fecha1 DESC, B.tipo DESC
    LIMIT 1
) 
AND A.patente_veh=SV.patente_veh
ORDER BY A.patente_veh, A.fecha1 DESC, A.tipo 

)

) ";


$sql.=")AS compras ORDER BY fecha_dco";  



	  

      if ($rs=sql_query($sql)) {
        $i=0;
        while ($datos=sql_fetch_array($rs)) {
            $veh[$i]['nro_interno_sve']   = $datos['nro_interno_sve'];
            $veh[$i]['patente_veh']       = $datos['patente_veh'];
            $veh[$i]['fecha_ingreso_sve'] = $datos['fecha_ingreso_sve'];
            $veh[$i]['id_tdc']            = $datos['id_tdc'];
            $veh[$i]['nombre_tdc']        = $datos['nombre_tdc'];
            $veh[$i]['estado_sve']        = $datos['estado_sve'];
            $veh[$i]['precio_compra_sve'] = $datos['precio_compra_sve'];
            $veh[$i]['fecha_dco']         = $datos['fecha_dco'];
            $veh[$i]['numero_dco']        = $datos['numero_dco'];
            $veh[$i]['nro_serie_dco']     = $datos['nro_serie_dco'];
            $veh[$i]['neto_dco']          = $datos['neto_dco'];
            $veh[$i]['iva_dco']           = $datos['iva_dco'];
            $veh[$i]['id_emp']            = $datos['id_emp'];
            $veh[$i]['id_suc']            = $datos['id_suc'];
            $veh[$i]['id_dep']            = $datos['id_dep'];
            $veh[$i]['id_sec']            = $datos['id_sec'];
            $veh[$i]['nombre_sec']        = $datos['nombre_sec'];
         $i++;
        }
    }

      //print_r($veh);
      return $veh;

   }


function kardex_vehiculos_compra_nc($fecha_termino,$stock_veh='0',$numero_dco){

$sql = "SELECT 
SV.nro_interno_sve as nro_interno_sve, 
SV.patente_veh as patente_veh, 
SV.fecha_ingreso_sve as fecha_ingreso_sve, 
TDC.id_tdc as id_tdc, 
TDC.nombre_tdc as nombre_tdc, 
SV.estado_sve as estado_sve, 
SV.precio_compra_sve as precio_compra_sve, 
DC1.fecha_dco as fecha_dco, 
DC1.numero_dco as numero_dco , 
DC1.nro_serie_dco as nro_serie_dco, 
DC1.neto_dco as neto_dco, 
DC1.iva_dco as iva_dco, 
DC1.id_emp as id_emp, 
DC1.id_suc as id_suc, 
DC1.id_dep as id_dep, 
DC1.id_sec as id_sec, 
SEC.nombre_sec as nombre_sec  
FROM stock_vehiculo SV
LEFT JOIN documento_compra DC on (DC.patente_veh = SV.patente_veh)
LEFT JOIN documento_compra_relacionado DCR ON (DC.id_pro = DCR.id_pro_rel AND DC.numero_dco = DCR.numero_dco_rel AND DC.id_tdc = DCR.id_tdc_rel)
INNER JOIN documento_compra DC1 ON (DC1.id_pro = DCR.id_pro AND DC1.id_tdc = DCR.id_tdc AND DC1.numero_dco = DCR.numero_dco)
INNER JOIN tipo_docto_compra TDC on (TDC.id_tdc = DC1.id_tdc)
INNER JOIN seccion SEC on (DC1.id_emp = SEC.id_emp AND DC1.id_suc=SEC.id_suc AND DC1.id_dep = SEC.id_dep AND DC1.id_sec = SEC.id_sec)
WHERE DC1.fecha_dco <= '$fecha_termino' ";

  if($stock_veh <> '0'){
          $sql.= " AND  SV.patente_veh = '$stock_veh' ";
  } 
  if ($numero_dco !='') {
          $sql.= " AND DCR.numero_dco_rel='$numero_dco' ";
  }

  

$sql.= " ORDER BY fecha_dco";

     if ($rs=sql_query($sql)) {
        $i=0;
        while ($datos=sql_fetch_array($rs)) {
            $veh[$i]['nro_interno_sve']   = $datos['nro_interno_sve'];
            $veh[$i]['patente_veh']       = $datos['patente_veh'];
            $veh[$i]['fecha_ingreso_sve'] = $datos['fecha_ingreso_sve'];
            $veh[$i]['id_tdc']            = $datos['id_tdc'];
            $veh[$i]['nombre_tdc']        = $datos['nombre_tdc'];
            $veh[$i]['estado_sve']        = $datos['estado_sve'];
            $veh[$i]['precio_compra_sve'] = $datos['precio_compra_sve'];
            $veh[$i]['fecha_dco']         = $datos['fecha_dco'];
            $veh[$i]['numero_dco']        = $datos['numero_dco'];
            $veh[$i]['nro_serie_dco']     = $datos['nro_serie_dco'];
            $veh[$i]['neto_dco']          = $datos['neto_dco'];
            $veh[$i]['iva_dco']           = $datos['iva_dco'];
            $veh[$i]['id_emp']            = $datos['id_emp'];
            $veh[$i]['id_suc']            = $datos['id_suc'];
            $veh[$i]['id_dep']            = $datos['id_dep'];
            $veh[$i]['id_sec']            = $datos['id_sec'];
            $veh[$i]['nombre_sec']        = $datos['nombre_sec'];
         $i++;
        }
    }

  return $veh;

}


  function kardex_ventas_vehiculo($fecha_termino,$stock_veh){

 $sql = "SELECT DV.id_emp, DV.id_tdo, DV.numero_dve, DV.fecha_dve, DV.neto_dve, DV.iva_dve, DV.nulo_dve, DV.tipo_nc_dve, DV.patente_dve, DV.id_tmo_dve
              FROM documento_venta DV
              WHERE 
              DV.patente_dve = '$stock_veh' AND
              DV.nulo_dve is false AND 
              (DV.tipo_nc_dve is NULL OR DV.tipo_nc_dve!=1) AND
              DV.fecha_dve <= '$fecha_termino'";
  
  $sql.="  ORDER BY DV.fecha_dve";
        

      if ($rs=sql_query($sql)) {
        $i=0;
        while ($datos=sql_fetch_array($rs)) {
            $veh[$i]['id_emp']         = $datos['id_emp'];
            $veh[$i]['id_tdo']         = $datos['id_tdo'];
            $veh[$i]['numero_dve']     = $datos['numero_dve'];
            $veh[$i]['fecha_dve']      = $datos['fecha_dve'];
            $veh[$i]['neto_dve']       = $datos['neto_dve'];
            $veh[$i]['iva_dve']        = $datos['iva_dve'];
            $veh[$i]['nulo_dve']       = $datos['nulo_dve'];
            $veh[$i]['tipo_nc_dve']    = $datos['tipo_nc_dve'];
            $veh[$i]['patente_dve']    = $datos['patente_dve'];
            $veh[$i]['id_tmo_dve']     = $datos['id_tmo_dve'];
         $i++;
        }
    }

      return $veh;




  }






   function kardex_vehiculos_ventas($fecha_inicio,$fecha_termino,$stock_veh,$contar){

      $veh = array();

    /*  $sql = "SELECT DV.id_emp, DV.id_tdo, DV.numero_dve, DV.fecha_dve, DV.neto_dve, DV.iva_dve, DV.nulo_dve, DV.tipo_nc_dve, DV.patente_dve, DV.id_tmo_dve
              FROM documento_venta DV
              WHERE 
              DV.patente_dve = '$stock_veh' AND
              DV.nulo_dve is false AND
              (DV.tipo_nc_dve is NULL OR DV.tipo_nc_dve = 1) 
              AND DV.neto_dve>3000 
			  AND DV.fecha_dve between '$fecha_inicio' and '$fecha_termino' 
              ORDER BY DV.fecha_dve";
	*/
	
      $sql = "SELECT DV.id_emp, DV.id_tdo, DV.numero_dve, DV.fecha_dve, DV.neto_dve, DV.iva_dve, DV.nulo_dve, DV.tipo_nc_dve, DV.patente_dve, DV.id_tmo_dve
              FROM documento_venta DV
              WHERE 
              DV.patente_dve = '$stock_veh' AND
              DV.nulo_dve is false AND 
			  DV.fecha_dve between '$fecha_inicio' and '$fecha_termino'";

       if($contar == 1){
          $sql.=" AND DV.id_tdo <> 3 ";
		  $sql.=" AND (DV.tipo_nc_dve is NULL OR DV.tipo_nc_dve!=1 OR (DV.tipo_nc_dve = 1 
				and (docto_venta_nulo_por_nc(DV.id_emp,DV.id_tdo,DV.numero_dve) is true 
				and (SELECT dv1.fecha_dve FROM documento_venta_relacionado dvr INNER JOIN documento_venta dv1 ON (dv1.id_emp=dvr.id_emp and dv1.id_tdo=dvr.id_tdo and dv1.numero_dve=dvr.numero_dve AND (dvr.id_tdo=3 OR dvr.id_tdo=13)) 
					WHERE dvr.id_emp_rel=DV.id_emp and dvr.id_tdo_rel=DV.id_tdo and dvr.numero_dve_rel=DV.numero_dve AND dv1.nulo_dve!= 't' AND dv1.tipo_nc_dve=1) not between '$fecha_inicio' and '$fecha_termino'
				) )
				)";
		}        
            
      $sql.="  ORDER BY DV.fecha_dve";
			  

      if ($rs=sql_query($sql)) {
        $i=0;
        while ($datos=sql_fetch_array($rs)) {
            $veh[$i]['id_emp']         = $datos['id_emp'];
            $veh[$i]['id_tdo']         = $datos['id_tdo'];
            $veh[$i]['numero_dve']     = $datos['numero_dve'];
            $veh[$i]['fecha_dve']      = $datos['fecha_dve'];
            $veh[$i]['neto_dve']       = $datos['neto_dve'];
            $veh[$i]['iva_dve']        = $datos['iva_dve'];
            $veh[$i]['nulo_dve']       = $datos['nulo_dve'];
            $veh[$i]['tipo_nc_dve']    = $datos['tipo_nc_dve'];
            $veh[$i]['patente_dve']    = $datos['patente_dve'];
            $veh[$i]['id_tmo_dve']     = $datos['id_tmo_dve'];
         $i++;
        }
    }

      return $veh;

   }    


   function kardex_vehiculos_ventas_nc($fecha_inicio,$fecha_termino,$stock_veh){

      $veh = array();
  
      $sql = "SELECT DV.id_emp, DV.id_tdo, DV.numero_dve, DV.fecha_dve, DV.neto_dve, DV.iva_dve, DV.nulo_dve, DV.tipo_nc_dve, DV.patente_dve, DV.id_tmo_dve
              FROM documento_venta DV
              INNER JOIN documento_venta_relacionado DVR on  (DV.id_emp = DVR.id_emp_rel AND DV.id_tdo = DVR.id_tdo_rel AND DV.numero_dve = DVR.numero_dve_rel)
              INNER JOIN documento_venta DV2 ON (DV2.id_emp = DVR.id_emp AND DV2.id_tdo = DVR.id_tdo AND DV2.numero_dve = DVR.numero_dve)
              WHERE 
              DV.patente_dve = '$stock_veh' AND
              DV.nulo_dve is false AND
              DV2.nulo_dve is false AND  
              DV.fecha_dve <= '$fecha_inicio' AND
              DV2.fecha_dve between '$fecha_inicio' AND '$fecha_termino' AND
              DV2.tipo_nc_dve = 1  
              ORDER BY DV.fecha_dve";
        

      if ($rs=sql_query($sql)) {
        $i=0;
        while ($datos=sql_fetch_array($rs)) {
            $veh[$i]['id_emp']         = $datos['id_emp'];
            $veh[$i]['id_tdo']         = $datos['id_tdo'];
            $veh[$i]['numero_dve']     = $datos['numero_dve'];
            $veh[$i]['fecha_dve']      = $datos['fecha_dve'];
            $veh[$i]['neto_dve']       = $datos['neto_dve'];
            $veh[$i]['iva_dve']        = $datos['iva_dve'];
            $veh[$i]['nulo_dve']       = $datos['nulo_dve'];
            $veh[$i]['tipo_nc_dve']    = $datos['tipo_nc_dve'];
            $veh[$i]['patente_dve']    = $datos['patente_dve'];
            $veh[$i]['id_tmo_dve']     = $datos['id_tmo_dve'];
         $i++;
        }
    }

      return $veh;

   }  

   function kardex_vehiculos_ventas_nulo($fecha_inicio,$fecha_termino,$stock_veh){

      $veh = array();
  
      $sql = "SELECT DV.id_emp, DV.id_tdo, DV.numero_dve, DV.fecha_dve, DV.neto_dve, DV.iva_dve, DV.nulo_dve, DV.tipo_nc_dve, DV.patente_dve, DV.id_tmo_dve
              FROM documento_venta DV
              WHERE 
              DV.patente_dve = '$stock_veh' AND
              DV.nulo_dve is true AND
              DV.fecha_dve <='$fecha_termino'
              ORDER BY DV.fecha_dve";
        

      if ($rs=sql_query($sql)) {
        $i=0;
        while ($datos=sql_fetch_array($rs)) {
            $veh[$i]['id_emp']         = $datos['id_emp'];
            $veh[$i]['id_tdo']         = $datos['id_tdo'];
            $veh[$i]['numero_dve']     = $datos['numero_dve'];
            $veh[$i]['fecha_dve']      = $datos['fecha_dve'];
            $veh[$i]['neto_dve']       = $datos['neto_dve'];
            $veh[$i]['iva_dve']        = $datos['iva_dve'];
            $veh[$i]['nulo_dve']       = $datos['nulo_dve'];
            $veh[$i]['tipo_nc_dve']    = $datos['tipo_nc_dve'];
            $veh[$i]['patente_dve']    = $datos['patente_dve'];
            $veh[$i]['id_tmo_dve']     = $datos['id_tmo_dve'];
         $i++;
        }
    }

      return $veh;

   } 



   function kardex_nota_creditos($fecha_inicio,$fecha_termino,$id_emp,$id_tdo,$numero_dve){

    $veh =  array();

    $sql = "SELECT DV.id_emp, DV.id_tdo, DV.numero_dve, DV.fecha_dve, DV.neto_dve, DV.iva_dve, DV.nulo_dve, DV.tipo_nc_dve, DV.patente_dve, DV.id_tmo_dve,SEC.nombre_sec,SV.patente_veh
            FROM documento_venta_relacionado DVR
            INNER JOIN documento_venta DV on (DV.id_emp = DVR.id_emp AND DV.id_tdo = DVR.id_tdo AND DV.numero_dve = DVR.numero_dve)
            LEFT JOIN seccion SEC on (DV.seccion_id_emp = SEC.id_emp AND DV.seccion_id_suc=SEC.id_suc AND DV.seccion_id_dep = SEC.id_dep AND DV.seccion_id_sec = SEC.id_sec)
            LEFT JOIN stock_vehiculo SV ON (DV.patente_dve = SV.patente_veh)
            WHERE
            DVR.id_emp_rel = $id_emp AND
            DVR.id_tdo_rel = $id_tdo AND
            DVR.numero_dve_rel = $numero_dve AND
            DV.nulo_dve  is false AND 
            DV.tipo_nc_dve = 1 AND
            
			       DV.fecha_dve between '$fecha_inicio' and '$fecha_termino' 
            ORDER BY DV.fecha_dve, numero_dve";
			//DV.tipo_nc_dve = 1
   if ($rs=sql_query($sql)) {
        $i=0;
        while ($datos=sql_fetch_array($rs)) {
            $veh[$i]['id_emp']         = $datos['id_emp'];
            $veh[$i]['id_tdo']         = $datos['id_tdo'];
            $veh[$i]['numero_dve']     = $datos['numero_dve'];
            $veh[$i]['fecha_dve']      = $datos['fecha_dve'];
            $veh[$i]['neto_dve']       = $datos['neto_dve'];
            $veh[$i]['iva_dve']        = $datos['iva_dve'];
            $veh[$i]['nulo_dve']       = $datos['nulo_dve'];
            $veh[$i]['tipo_nc_dve']    = $datos['tipo_nc_dve'];
            $veh[$i]['patente_dve']    = $datos['patente_dve'];
            $veh[$i]['id_tmo_dve']     = $datos['id_tmo_dve'];
            $veh[$i]['nombre_sec']     = $datos['nombre_sec'];
            $veh[$i]['patente_veh']     = $datos['patente_veh'];
         $i++;
        }
    }

      return $veh;


   }

   /********************************************************************************/
   /*Función que permite registrar un nuevo vehículo            */
   /*                            */
   /*Parámetros de Entrada                        */
   /* *Datos para registrar vehículo:                */
   /*       id modelo, categoria de bien, patente, color,      */
   /*       tipo de transmisión, tipo de vehiculo, tipo combustible,*/
   /*       codigo, dígito, kilometraje, cc, año del vehículo, */
   /*       hp, nº motor, nº chasis, vim/frame, modelo técnico,   */
   /*       catalitico(true - false), prendado(true - false),  */
   /*       código de avalúo,              */
   /* *Datos para registrar stock inicial:               */
   /*       número interno, id empresa, id sucursal, id  del  */
   /*       departamento, fecha ingreso, fecha salida,      */
   /*       nuevo(true: vehiculo nuevo - false: vehiculo usado),  */
   /*       contabilizado(true/false), recepcionado(true/false),  */
   /*       prestock(true/false)             */
   /* *Datos para registra un nuevo modelo de vehiculo(opcionales):     */
   /*       id marca, id pais, nombre, codigo externo    */
   /*Datos de Salida                      */
   /*       true si se registro              */
   /*       false si no se registro             */
   /********************************************************************************/
   function vehiculo_agregar( $modelo, $categoria, $patente, $color, $transmision, 
               $tvehiculo, $combustible, $nombre_veh, $codigo='', $digito='', 
               $kilometraje='', $cc, $ano, $hp='', $nmotor='', 
               $nchasis, $vframe, $id_mte='', $catalitico, $prendado='', 
               $cavaluo='', $propio='', $peso_bruto=0, $carga=0, $km_mantencion=0, $fecha_mantencion='',
               $fecha_prox_mantencion='', $empresa=0, $sucursal=0, $depto=0, $seccion=0, 
               $fingreso='', $fsalida='', $nuevo='',$contabilizado='', $recepcionado='', 
               $prestock='', $estado='', $pagado='',$marca=0, $pais=0, 
               $nombre='', $cexterno='',$id_uve=0,$bono_sve=0,$equipamiento_stock=array(),$color_int_veh,$observacion,$precio_compra_sve,$id_per,$porc_bono=0)
   {
      $empresa=usuario_empresa();
      sql_begin("WORK");
      $resul=0;
      if( ($modelo == 0) &&  ($pais>0)  && !empty($nombre) && !empty($cexterno) ) {
         $modelo = bien_servicio_agregar($categoria,$marca,$pais,$nombre,$cexterno);
      }else{
         $digito=(!empty($digito))?$digito:'NULL';
		 $id_per=(!empty($id_per))?$id_per:'NULL';
         $sql = "INSERT INTO vehiculo (patente_veh,id_bie, id_mbi,color_veh,id_trv,id_tve,id_cve,nombre_veh,cod_vehiculo_veh,digito_v_veh,";
         $sql.= "kilometraje_veh,cc_veh,ano_veh,hp_veh,nro_motor_veh,nro_chassis_veh,vim_frame_veh,id_mte,";
         $sql.= "catalitico_veh,prendado_veh,cod_avaluo_veh,propio_veh,peso_bruto_veh,carga_veh, km_mantencion_veh, fecha_mantencion_veh,";
         $sql.= "fecha_prox_mantencion_veh,color_int_veh,id_per) VALUES (".sql_escape($patente).",".sql_escape_integer($modelo,true).",".sql_escape_integer($marca,true).",".sql_escape($color,true).",$transmision,";
         $sql.= "$tvehiculo,$combustible,".sql_escape($nombre_veh).",".sql_escape($codigo, true).",".sql_escape_integer($digito,true).",";
         $sql.= sql_escape_integer($kilometraje).",$cc,$ano,".sql_escape_integer($hp,true).",".sql_escape($nmotor, true).",".sql_escape($nchasis).",";
         $sql.= sql_escape($vframe).",".sql_escape_integer($id_mte, true).",".sql_escape_boolean($catalitico, true).",";
         $sql.= sql_escape_boolean($prendado, true).",".sql_escape($cavaluo, true).",".sql_escape($propio).",";
         $sql.= sql_escape_decimal($peso_bruto, true).",".sql_escape_decimal($carga, true).",".sql_escape_integer($km_mantencion,true).",";
         $sql.= sql_escape($fecha_mantencion,true).",".sql_escape($fecha_prox_mantencion,true).",".sql_escape($color_int_veh,true).",".$id_per.")";
         if ( sql_query($sql) ) {
            $resul = 1;
            if( $empresa > 0 ){
               if(stock_vehiculo_agregar($empresa, $sucursal, $depto, $seccion, $patente, $fingreso, $fsalida, $nuevo, $contabilizado, $recepcionado, $prestock, $estado, $pagado,'','','',$id_uve,$bono_sve,$equipamiento_stock,$observacion,$precio_compra_sve,$porc_bono)==0) {
                  $resul = 0; 
               }
            }
         }
      }
      if( $resul > 0 ) {
         sql_commit("WORK");
      } else {
         sql_rollback("WORK");
      }
      return $resul;
   }
   
   /********************************************************************************/
   /*Función que permite modificar un vehículo               */
   /*                            */
   /*Parámetros de Entrada                        */
   /*       id modelo, categoria de bien, patente, color,      */
   /*       tipo de transmisión, tipo de vehiculo, tipo combustible,*/
   /*       codigo, dígito, kilometraje, cc, año del vehículo, */
   /*       hp, nº motor, nº chasis, vim/frame, modelo técnico,   */
   /*       catalitico(true - false), prendado(true - false),  */
   /*       código de avalúo.              */
   /*Datos de Salida                      */
   /*       true si se modico             */
   /*       false si no se modifico             */
   /********************************************************************************/
   function vehiculo_registrar($patente, $modelo, $id_mbi, $color, $transmision, $tipo, $combustible, $nombre, $codigo,
            $digito, $kilometraje, $cc, $ano, $hp, $nro_motor, $nro_chassis, $vim_frame, $id_mte, $catalitico,
            $prendado, $cavaluo, $propio=1, $peso_bruto=0,$km_mantencion=0, $fecha_mantencion='', $fecha_prox_mantencion='', $propietarios='',$repertorio=0,$libro_gtia='',$id_per){
	
	$id_per=(!empty($id_per))?$id_per:'NULL';
	 if($propio==1){
		$propio='P';
	 }else{
		$propio=NULL;
	 }
      	 sql_begin("WORK");
         $sql= "INSERT INTO vehiculo (";
         $sql.= "patente_veh, id_bie, id_mbi, color_veh, id_trv, id_tve, id_cve, nombre_veh,";
         $sql.= "cod_vehiculo_veh, digito_v_veh, kilometraje_veh, cc_veh, ano_veh,";
         $sql.= "hp_veh, nro_motor_veh, nro_chassis_veh, vim_frame_veh, id_mte,";
         $sql.= "catalitico_veh, prendado_veh, cod_avaluo_veh, propio_veh, peso_bruto_veh, ";
         $sql.= "km_mantencion_veh, fecha_mantencion_veh, fecha_prox_mantencion_veh,libro_gtia_veh,id_per)";
         $sql.= "VALUES ( '$patente',".sql_escape_integer($modelo,true).", $id_mbi ,".sql_escape($color,true).", $transmision, $tipo, $combustible,".sql_escape($nombre).",";
         $sql.= sql_escape($codigo, true).",".sql_escape($digito,true).",";
         $sql.= sql_escape_integer($kilometraje,true).",".sql_escape_integer($cc,true).",".sql_escape_integer($ano,true).",".sql_escape_integer($hp,true).",".sql_escape($nro_motor, true).",".sql_escape($nro_chassis,true).",";
         $sql.= sql_escape($vim_frame,true).",".sql_escape_integer($id_mte, true).",".sql_escape_boolean($catalitico, true).",";
         $sql.= sql_escape_boolean($prendado, true).",".sql_escape($cavaluo, true).",".sql_escape($propio).",";
         $sql.= sql_escape_decimal($peso_bruto, true).",".sql_escape_integer($km_mantencion,true).",".sql_escape($fecha_mantencion,true).",".sql_escape($fecha_prox_mantencion,true).",".sql_escape($libro_gtia,true).",".$id_per.")";

         if ( sql_query($sql) ) {
			if ( $propio != 'P' ) { /*si el vehiculo no es propio de la empresa, entoces tiene un propietario a ingresar*/
				foreach ($propietarios as $propietario) {
					//Aqui
					//if (!propietario_agregar ($propietario['id_per'],$patente,$propietario['fecha_inicio_pro'],$propietario['fecha_fin_pro'])) {
					//     sql_rollback("WORK");
					 //    return false;
					 //}
					if (!vehiculo_propietario_modificar($patente,$propietario['id_per'] )) {
						sql_rollback("WORK");
						return false;
					}  
				}
            }
            sql_commit("WORK");
            return true;
         }
      
      sql_rollback("WORK");
      return false;
   }

   function vehiculo_modificar($patente, $modelo, $id_mbi, $color, $transmision, $tipo, $combustible, $nombre, $codigo,
            $digito, $kilometraje, $cc, $ano, $hp, $nro_motor, $nro_chassis, $vim_frame, $id_mte, $catalitico, $prendado=0, $cavaluo, $propio=1, $peso_bruto=0, $km_mantencion=0, $fecha_mantencion='', $fecha_prox_mantencion='',$propietarios='',$repertorio=0,$libro_gtia='',$apatente='',$id_per)
   {
	$id_per=(!empty($id_per))?$id_per:'NULL';
	 if($propio==1){
		$propio='P';
	 }elseif($propio==0){
		$propio='';
	 }
     
     //////////////comprobar igualdad de patente_veh == cod_vehiculo_veh
     $patente2 = str_replace("-","",$patente);
     if($patente2 == $codigo){$patente = $patente2;}
     
     
         sql_begin("WORK");
         $sql = "UPDATE vehiculo SET";

	if ($modelo!="") {
        	$sql.="	id_bie=".sql_escape_integer($modelo,true).", "; 
	}
	$sql.="
            patente_veh=".sql_escape($patente,true).",
            id_mbi=$id_mbi,
            color_veh=".sql_escape($color).", 
            id_trv=$transmision,
            id_tve=$tipo,  
            id_cve=$combustible,
            nombre_veh=".sql_escape($nombre,true).", 
            cod_vehiculo_veh=".sql_escape($codigo,true).",
            digito_v_veh=".sql_escape($digito,true).", 
            kilometraje_veh=".sql_escape_integer($kilometraje,true).", 
            cc_veh=".sql_escape($cc,true).",
            ano_veh=".sql_escape_integer($ano,true).",
            hp_veh=".sql_escape($hp,true).", 
            nro_motor_veh=".sql_escape($nro_motor,true).",
            nro_chassis_veh=".sql_escape($nro_chassis,true).",
            vim_frame_veh=".sql_escape($vim_frame,true).",
            id_mte=".sql_escape_integer($id_mte,true).",
            catalitico_veh=".sql_escape_boolean($catalitico,true).",
            prendado_veh=".sql_escape_boolean($prendado,true).",
            cod_avaluo_veh=".sql_escape($cavaluo,true).",
            propio_veh=".sql_escape($propio,true).",
            peso_bruto_veh=".sql_escape_integer($peso_bruto,true).",
	        libro_gtia_veh=".sql_escape($libro_gtia,true)." ,
			id_per=".$id_per;

		if ($km_mantencion_veh>0)
		{
			$sql.=", km_mantencion_veh=".$km_mantencion;
		}
		if ($fecha_mantencion!="")
		{
            		$sql.=", fecha_mantencion_veh=".$fecha_mantencion;
		}
		if ($fecha_prox_mantencion!="")
		{
            		$sql.=", fecha_prox_mantencion_veh=".$fecha_prox_mantencion;
		}

		if ($apatente!="")
		{	$sql.=" WHERE patente_veh='$apatente'";
		} else {
            $sql.=" WHERE patente_veh='$patente'";
		}
        
       // PRINT_R($sql);
			
		if ( sql_query($sql) ) {
			if ( $propio != 'P' ) {  /*si el vehiculo no es propio de la empresa, entoces tiene un propietario a ingresar*/
				if (!empty($propietarios)) {
					//Aqui
					/*
					$fecha=date("d/m/Y",time());
					if (!propietario_eliminar($patente,$fecha)) {
						sql_rollback("WORK");
						return false;
					}
					*/
					foreach ($propietarios as $propietario) {
						//if (!propietario_agregar($propietario['id_per'],$patente,$propietario['fecha_inicio_pro'],$propietario['fecha_fin_pro'])) {
						//   sql_rollback("WORK");
						//   return false;
						//}
						if (!vehiculo_propietario_modificar($patente,$propietario['id_per'] )) {
							sql_rollback("WORK");
							return false;
						}  
					}
				}
			}
			sql_commit("WORK");
			return true;
		}
		sql_rollback("WORK");
		return false;
	}

   function vehiculo_modificar_propio($patente,$propio) {
      $sql = "UPDATE vehiculo SET propio_veh=".sql_escape($propio,true)." WHERE  (patente_veh='$patente' or cod_vehiculo_veh='$patente')";
      if (sql_query($sql)) {
         return true;
      }
      return false;
   }


function vehiculo_actualizar( $modelo, $marca=0, $patente, $color, $transmision, $tvehiculo, $combustible, $nombre='', $codigo='', $digito='', 
	$kilometraje=0, $cc, $ano, $hp=0, $nmotor='', $nchasis, $vframe, $id_mte='', $catalitico, $prendado='', 
	$cavaluo='', $propio='', $peso_bruto=0, $carga=0, $apatente,$color_int,$id_per){
	$id_per=(!empty($id_per))?$id_per:'NULL';
	$sql = "UPDATE vehiculo SET ";
	
	if ($patente!='') {
		$sql.= "patente_veh=".sql_escape($patente).", ";
	}
	$sql.= "id_bie=".sql_escape_integer($modelo,true).", ";
	$sql.= "id_mbi=".sql_escape_integer($marca,true).", ";
	$sql.= "color_veh=".sql_escape($color).", ";
	$sql.= "color_int_veh=".sql_escape($color_int).", ";
	$sql.= "id_trv=$transmision, ";
	$sql.= "id_tve=$tvehiculo, ";
	$sql.= "id_cve=$combustible, ";
	$sql.= "nombre_veh=".sql_escape($nombre).", ";
	$sql.= "cod_vehiculo_veh=".sql_escape($codigo, true).", ";
	$sql.= "digito_v_veh=".sql_escape($digito,true).", ";
	$sql.= "kilometraje_veh=".sql_escape_integer($kilometraje).", ";
	$sql.= "cc_veh=".sql_escape_integer($cc,true).", ";
	$sql.= "ano_veh=".sql_escape_integer($ano,true).", ";
	$sql.= "hp_veh=".sql_escape_integer($hp,true).", ";
	$sql.= "nro_motor_veh=".sql_escape($nmotor, true).", ";
	$sql.= "nro_chassis_veh=".sql_escape($nchasis).", ";
	$sql.= "vim_frame_veh=".sql_escape($vframe,true).", ";
	$sql.= "id_mte=".sql_escape_integer($id_mte, true).", ";
	$sql.= "catalitico_veh=".sql_escape_boolean($catalitico, true).", ";
	$sql.= "prendado_veh=".sql_escape_boolean($prendado, true).", ";
	$sql.= "cod_avaluo_veh=".sql_escape($cavaluo, true).", ";
	$sql.= "propio_veh=".sql_escape($propio,true).", ";
	$sql.= "peso_bruto_veh=".sql_escape_decimal($peso_bruto, true).", ";
	$sql.= "carga_veh=".sql_escape_decimal($carga, true).", ";
	$sql.= "id_per=".$id_per." ";

	if ($patente=='') {
		$sql.= "WHERE cod_vehiculo_veh=".sql_escape($codigo)." or patente_veh=".sql_escape($codigo);
	} else {
		$sql.= "WHERE patente_veh=".sql_escape($patente);
	}
	
	if (sql_query($sql)) 
		return true;
	return false;
}

   function actualizar_datos_vehiculo($patente,$codigo_stock,$kilometraje,$chassis,$id_mte,$libro_gtia){
    $sp="";
	$sql = "UPDATE vehiculo SET ";
	if($codigo_stock!=""){
		$sql.= $sp."cod_vehiculo_veh=".sql_escape($codigo_stock,true);
		$sp=",";
	}
	if($kilometraje!=""){
		$sql.= $sp."kilometraje_veh=".sql_escape($kilometraje,true);
		$sp=",";
	}
	if($chassis!=""){
		$sql.= $sp."nro_chassis_veh=".sql_escape($chassis,true);
		$sp=",";
	}
	if($id_mte!=""){
		$sql.= $sp."id_mte=".sql_escape_integer($id_mte,true);
		$sp=",";
	}
	if($libro_gtia!=""){	
		$sql.= $sp."libro_gtia_veh=".sql_escape($libro_gtia,true);
	}
	$sql.= " WHERE patente_veh='$patente'";
	if (sql_query($sql)) 
		return true;
	return false;

   }	


   function vehiculo_actualizar_kilometraje($patente, $kilometraje, $color='', $nombre_veh=''){
      $sql = "UPDATE vehiculo SET ";
      $sql.= "kilometraje_veh= $kilometraje";
      if($color!=''){
         $sql.= ", color_veh=".sql_escape($color);
      }
      if ($nombre_veh!='')
      {
    		$sql.=" , nombre_veh=".sql_escape(strtoupper($nombre_veh));
       }
      $sql.= " WHERE patente_veh=".sql_escape(strtoupper($patente));
      if (sql_query($sql)) {
         return true;
      }
      return false;
   }
   /********************************************************************************/
   /*Función que permite eliminar un vehículo             */
   /*                            */
   /*Parámetros de Entrada                        */
   /*       Patente del vehículo               */
   /*Datos de Salida                      */
   /*       true si se elimino               */
   /*       false si no se elimino              */
   /********************************************************************************/  
   function vehiculo_eliminar ($patente) {
      if( !sql_begin( "WORK" ) ) {
         return false;
      }
      if( stock_vehiculo_eliminar(0,$patente) ) {
         if( sql_query("DELETE FROM vehiculo WHERE patente_veh=".sql_escape($patente)) ) {
            if( sql_commit( "WORK" ) ) {
               return true;
            }
         }
      }
      sql_rollback( "WORK" );
      return false;
   }
   
   /********************************************************************************/
   /*Función que permite verificar si esta registrado un determinado vehículo  */
   /*                            */
   /*Parámetros de Entrada                        */
   /*       patente del vehículo               */
   /*Datos de Salida                      */
   /*       true si existe                */
   /*       false si no existe               */
   /********************************************************************************/
   function vehiculo_existe ($patente) {
      $sql = "SELECT count(*) FROM vehiculo WHERE patente_veh=".sql_escape($patente);
      if ( list($total) = sql_fetch_row(sql_query($sql)) ) {
         if( $total > 0 ) {
            return true;
         }
      }
      return false;
   }
   
   /********************************************************************************/
   /*Función que devuelve un arreglo con los datos de un determinado vehículo  */
   /*                            */
   /*Parámetros de Entrada                        */
   /*    patente,                      */
   /*    nuevo_sve: indica si es nuevo, usado o si es de clientes */
   /*    0:Usado - 1:nuevo - true: de la empresa   - false: de clientes */
   /*Datos de Salida                      */
   /*       id modelo, categoria de bien, patente, color,      */
   /*       tipo de transmisión, tipo de vehiculo, tipo combustible,*/
   /*       codigo, dígito, kilometraje, cc, año del vehículo, */
   /*       hp, nº motor, nº chasis, vim/frame, modelo técnico,   */
   /*       catalitico(true - false), prendado(true - false),  */
   /*       código de avalúo.              */
   /********************************************************************************/
function vehiculo_datos( $patente, $nuevo_sve='', $id_emp=0) {
	$veh = array();
	if($nuevo_sve==true){
		$sql = "SELECT V.patente_veh, V.id_bie, V.id_mbi, V.color_veh,V.color_int_veh, V.id_trv, V.id_tve, V.id_cve, V.nombre_veh, V.cod_vehiculo_veh, trim(V.digito_v_veh), V.kilometraje_veh, V.cc_veh, V.ano_veh, V.hp_veh, V.nro_motor_veh, V.nro_chassis_veh, V.vim_frame_veh, V.id_mte, V.catalitico_veh, V.prendado_veh, V.cod_avaluo_veh, V.propio_veh, V.peso_bruto_veh, V.carga_veh, M.nombre_mbi, V.prom_mant_veh, V.color_int_veh, V.libro_gtia_veh, V.id_per 
		FROM vehiculo V
		INNER JOIN marca_bien M ON (V.id_mbi=M.id_mbi)";
		if($id_emp > 0){
			$sql.="INNER JOIN stock_vehiculo SV on((V.patente_veh=SV.patente_veh or V.cod_vehiculo_veh=SV.patente_veh) and SV.id_emp=$id_emp) ";
		}
		$sql.="
		WHERE (V.patente_veh='$patente' or V.cod_vehiculo_veh='$patente')";
		//$sql.=" AND EXISTS (SELECT * FROM vehiculo VE inner join stock_vehiculo S ON(VE.cod_vehiculo_veh=S.patente_veh) WHERE VE.cod_vehiculo_veh=V.cod_vehiculo_veh AND S.nuevo_sve=true)";
	}else{
		$sql = "SELECT V.patente_veh, V.id_bie, V.id_mbi, V.color_veh, V.id_trv, V.id_tve, V.id_cve, V.nombre_veh, V.cod_vehiculo_veh, V.digito_v_veh, V.kilometraje_veh, V.cc_veh, V.ano_veh, V.hp_veh, V.nro_motor_veh, V.nro_chassis_veh, V.vim_frame_veh, V.id_mte, T.nombre_tve, V.catalitico_veh, V.prendado_veh, V.cod_avaluo_veh, V.propio_veh, V.peso_bruto_veh,V.carga_veh, M.nombre_mbi, V.prom_mant_veh, V.color_int_veh, V.libro_gtia_veh, V.id_per 
		FROM vehiculo V
		INNER JOIN marca_bien M ON (V.id_mbi=M.id_mbi)
		INNER JOIN tipo_vehiculo T ON (V.id_tve=T.id_tve)";
		if($id_emp > 0){
			$sql.="INNER JOIN stock_vehiculo SV on((V.patente_veh=SV.patente_veh or V.cod_vehiculo_veh=SV.patente_veh) and SV.id_emp=$id_emp) ";
		}
		$sql.="WHERE V.patente_veh='$patente' OR V.cod_vehiculo_veh='$patente'";
	}
	if( $datos = sql_fetch_array( sql_query( $sql ) ) ) {
		$veh['patente_veh'] = $datos['patente_veh'];
		$veh['id_bie'] = ($datos['id_bie']>0)?$datos['id_bie']:'';
		$veh['id_mbi'] = $datos['id_mbi'];
		$veh['nombre_veh'] = (isset($datos['nombre_veh']))?$datos['nombre_veh']:'';
		$veh['color_veh'] = $datos['color_veh'];
		$veh['color_int_veh'] = $datos['color_int_veh'];
		$veh['id_trv'] = $datos['id_trv'];
		$veh['id_tve'] = $datos['id_tve'];
		$veh['id_cve'] = $datos['id_cve'];
		$veh['cod_vehiculo_veh'] = $datos['cod_vehiculo_veh'];
		$veh['digito_v_veh'] = $datos['digito_v_veh'];
		$veh['kilometraje_veh'] = $datos['kilometraje_veh'];
		$veh['cc_veh'] = $datos['cc_veh'];
		$veh['ano_veh'] = $datos['ano_veh'];
		$veh['hp_veh'] = $datos['hp_veh'];
		$veh['nro_motor_veh'] = $datos['nro_motor_veh'];
		$veh['nro_chassis_veh'] = $datos['nro_chassis_veh'];
		$veh['vim_frame_veh'] = $datos['vim_frame_veh'];
		$veh['id_mte'] = $datos['id_mte'];
		if(!empty($datos['id_mte'])){
			$modelo_tecnico=modelo_tecnico_datos(0,$datos['id_mte']);
			$veh['modelo_tecnico_veh'] = (isset($modelo_tecnico['codigo_mte']))?$modelo_tecnico['codigo_mte']:"";
		}else{
			$veh['modelo_tecnico_veh']="";
		}
		$veh['catalitico_veh'] = ($datos['catalitico_veh']=='t')?1:0;
		$veh['prendado_veh'] = ($datos['prendado_veh']=='t')?1:0;
		$veh['cod_avaluo_veh'] = $datos['cod_avaluo_veh'];
		$veh['propio_veh']=$datos['propio_veh'];
		$veh['peso_bruto_veh']=$datos['peso_bruto_veh'];
		$veh['carga_veh']=$datos['carga_veh'];
		$veh['nombre_mbi']=$datos['nombre_mbi'];
		$veh['nombre_tve'] = $datos['nombre_tve'];
		$veh['prom_mant_veh'] = ($datos['prom_mant_veh']==null)?0:$datos['prom_mant_veh'];
		$veh['libro_gtia_veh'] = $datos['libro_gtia_veh'];
		$veh['id_per'] = $datos['id_per'];		
	}
	return $veh;
}

function vehiculo_datos_cod($codigo) {
      $veh = array();
         $sql = "SELECT V.patente_veh, V.id_bie, V.id_mbi, V.color_veh, V.id_trv, V.id_tve, V.id_cve, V.nombre_veh, 
            V.cod_vehiculo_veh, V.digito_v_veh, V.kilometraje_veh, V.cc_veh, V.ano_veh, V.hp_veh, 
            V.nro_motor_veh, V.nro_chassis_veh, V.vim_frame_veh, V.id_mte, V.catalitico_veh, V.prendado_veh, V.cod_avaluo_veh, V.propio_veh, V.peso_bruto_veh, V.id_per, MB.nombre_mbi  
            FROM vehiculo V 
            INNER JOIN marca_bien MB ON (MB.id_mbi = V.id_mbi)
            WHERE V.cod_vehiculo_veh='$codigo'";
      
      if( $datos = sql_fetch_array( sql_query( $sql ) ) ) {
         $veh['patente_veh'] = $datos['patente_veh'];
         $veh['id_bie'] = ($datos['id_bie']>0)?$datos['id_bie']:'';
         $veh['id_mbi'] = $datos['id_mbi'];
         $veh['nombre_veh'] = (isset($datos['nombre_veh']))?$datos['nombre_veh']:'';
         $veh['color_veh'] = $datos['color_veh'];
         $veh['id_trv'] = $datos['id_trv'];
         $veh['id_tve'] = $datos['id_tve'];
         $veh['id_cve'] = $datos['id_cve'];
         $veh['cod_vehiculo_veh'] = $datos['cod_vehiculo_veh'];
         $veh['digito_v_veh'] = $datos['digito_v_veh'];
         $veh['kilometraje_veh'] = $datos['kilometraje_veh'];
         $veh['cc_veh'] = $datos['cc_veh'];
         $veh['ano_veh'] = $datos['ano_veh'];
         $veh['hp_veh'] = $datos['hp_veh'];
         $veh['nro_motor_veh'] = $datos['nro_motor_veh'];
         $veh['nro_chassis_veh'] = $datos['nro_chassis_veh'];
         $veh['vim_frame_veh'] = $datos['vim_frame_veh'];
         $veh['id_mte'] = $datos['id_mte'];
    	 if(!empty($datos['id_mte'])){
    	 	$modelo_tecnico=modelo_tecnico_datos(0,$datos['id_mte']);
    	 	$veh['modelo_tecnico_veh'] = (isset($modelo_tecnico['codigo_mte']))?$modelo_tecnico['codigo_mte']:"";
    	 }else{
    		$veh['modelo_tecnico_veh'] = "";
    	 }
         $veh['catalitico_veh'] = ($datos['catalitico_veh']=='t')?1:0;
         $veh['prendado_veh'] = ($datos['prendado_veh']=='t')?1:0;
         $veh['cod_avaluo_veh'] = $datos['cod_avaluo_veh'];
         $veh['propio_veh']=$datos['propio_veh'];
         $veh['peso_bruto_veh']=$datos['peso_bruto_veh'];
		 $veh['id_per']=$datos['id_per'];
         $veh['nombre_mbi']=$datos['nombre_mbi'];
	// $veh['id_uve'] = $datos['id_uve'];
      }
	//print_r($veh);
      return $veh;
   }

   /********************************************************************************/
   /*Función que devuelve un arreglo con los datos de un conjunto de vehículos */
   /*                            */
   /*Parámetros de Entrada                        */
   /*       id del modelo de vehículo          */
   /*Datos de Salida                      */
   /*       id modelo, categoria de bien, patente, color,      */
   /*       tipo de transmisión, tipo de vehiculo, tipo combustible,*/
   /*       codigo, dígito, kilometraje, cc, año del vehículo, */
   /*       hp, nº motor, nº chasis, vim/frame, modelo técnico,   */
   /*       catalitico(true - false), prendado(true - false),  */
   /*       código de avalúo.              */
   /********************************************************************************/
   function vehiculo_lista( $modelo) {
      $veh = array();
      $sql = "SELECT * FROM vehiculo WHERE id_bie=$modelo";
      $i = 0;
      while( $datos = sql_fetch_array( sql_query( $sql ) ) ) {
         $veh[$i]['patente_veh'] = $datos['patente_veh'];
         $veh[$i]['cod_vehiculo_veh'] = $datos['cod_vehiculo_veh'];
         $veh[$i]['digito_v_veh'] = $datos['digito_v_veh'];
         $veh[$i]['id_bie'] = $datos['id_bie'];
         $i++;
      }
      return $veh;
   }

   function search_vehiculo($string) {
      $datos = array();
      $sql="SELECT * FROM vehiculo ";
      $sql.=" NATURAL LEFT JOIN transmision_vehiculo ";
      $sql.=" NATURAL LEFT JOIN combustible_vehiculo ";

      $sql.=" NATURAL LEFT JOIN tipo_vehiculo ";

      $sql.=" NATURAL LEFT JOIN bien_servicio ";
      $sql.=" NATURAL LEFT JOIN marca_bien ";

      //$sql.=" JOIN (SELECT max(fecha_inicio_pro),* FROM propietario WHERE propietario.patente_veh=vehiculo.patente_veh) as propietario using (patente_veh)";
   
      //$sql.=" NATURAL LEFT JOIN propietario_stock_usado ";

      //$sql.=" NATURAL LEFT JOIN direccion_cliente ";
      //$sql.=" NATURAL LEFT JOIN cliente ";
      //$sql.=" NATURAL LEFT JOIN persona ";

      //$sql.=" WHERE substr(patente_veh,3,1)='-' ";


      $sql.=" WHERE ";

      $sql.=" ( ";
      $string_e=explode(" ",$string);
      for ($x=0; $x<=count($string_e); $x++)
      {
         if ($x>0) $sql.=" AND ";
         $sql.=" ( ";
         $sql.=" patente_veh ilike '%".$string_e[$x]."%' OR cod_vehiculo_veh ilike '%".$string_e[$x]."%' OR nombre_veh ilike '%".$string_e[$x]."%' OR nombre_bie ilike '%".$string_e[$x]."%' OR nombre_mbi ilike '%".$string_e[$x]."%' OR ano_veh::text ilike '%".$string_e[$x]."%' OR color_veh ilike '%".$string_e[$x]."%'";
         $sql.=" ) ";
      }
   
      $sql.=" )";
      $sql.=" ORDER BY patente_veh ";
      $sql.=" LIMIT ".MAX_SEACH_RESULT;
      $rs=sql_query($sql);
      if ($rs) {
         $datos=result2array($rs);
      }
      return $datos;
   }


   function vehiculo_datos_marca($patente_veh){
      $sql = "SELECT BS.id_mbi FROM bien_servicio BS INNER JOIN vehiculo V ON (BS.id_bie=V.id_bie) WHERE V.patente_veh='$patente_veh'";
      if( list($marca) = sql_fetch_row(sql_query($sql)) ) {
         return $marca;
      }
      return 0;
   }

   function vehiculo_taller_buscar($opcion, $parametro){
      $vehiculos = array();
      switch($opcion) {
         case 1:
            $sql="SELECT patente_veh FROM vehiculo WHERE upper(patente_veh) LIKE upper('$parametro%') ";
            break;   
         case 2:
            $sql="SELECT V.patente_veh FROM bien_servicio B INNER JOIN vehiculo V ON(B.id_bie=V.id_bie) 
               WHERE B.id_mbi=$parametro";
            break;
         case 3:
            $sql="SELECT patente_veh FROM vehiculo WHERE id_bie=$parametro";
            break;
         case 4:
			//Aqui
            //$sql="SELECT V.patente_veh FROM propietario P INNER JOIN vehiculo V ON(P.patente_veh=V.patente_veh) 
			$sql="SELECT V.patente_veh FROM vehiculo V  
               WHERE P.id_per=$parametro";
            //$sql.= " AND ((CURRENT_DATE BETWEEN fecha_inicio_pro AND fecha_fin_pro) OR (CURRENT_DATE >= fecha_inicio_pro AND fecha_fin_pro is NULL) )";
            break;
      }
      if( $rs = sql_query($sql) ){
         $i = 0;
         while ( $datos = sql_fetch_array($rs) ) {
            $vehiculos[$i]['patente_veh'] = $datos['patente_veh'];
            $i++;
         }
      }
      return $vehiculos;
   }

    //*********************************************************************************************//
    //*****************************obtener fecha venta vehiculo************************************//
    //*********************************************************************************************//

    function vehiculo_obtener_fecha_venta($patente) {
      $veh = array();
         $sql = "SELECT MAX(DV.fecha_dve) as fecha_nve, V.patente_veh from nota_venta NVE

                  INNER JOIN nuevo_nota_venta NNV using (id_nve)
                  INNER JOIN stock_vehiculo S using(nro_interno_sve) 
                  INNER JOIN vehiculo V on(V.cod_vehiculo_veh=S.patente_veh)
                  INNER JOIN documento_venta_nv DN on(DN.id_nve=NVE.id_nve) 
                  INNER JOIN documento_venta DV on(DV.id_emp=DN.id_emp and DV.id_tdo=DN.id_tdo and DV.numero_dve=DN.numero_dve)

                  WHERE V.patente_veh = '$patente'
                  GROUP BY V.patente_veh ORDER BY V.patente_veh";
      
      if( $datos = sql_fetch_array( sql_query( $sql ) ) ) {
         $veh['fecha_nve'] = $datos['fecha_nve'];
         $veh['patente_veh'] = $datos['patente_veh'];  
      }
      return $veh;
   }

function validar_codigo_avaluo($codigo_afi,$año_afi,$id_mbi=0)
{
   $sql = "SELECT count(*) from avaluo_fiscal WHERE codigo_afi='$codigo_afi'";
	if ($año_afi!=0)
	{
		$sql.=  " AND  ano_afi=$año_afi ";
	}
	if ($id_mbi!=0)
	{ 
		$sql.=" AND  id_mbi=$id_mbi"; 
	}
     	if ( list($total) = sql_fetch_row(sql_query($sql)) ) {
         if( $total > 0 ) {
            return true;
         }
        }
      return false;
}

function actualizar_datos_mantencion_vehiculo($patente_veh,$km_mt=0,$fecha_mt,$prom_man=0){
	if ($km_mnt==0) {
	$sql="UPDATE vehiculo SET km_mantencion_veh=NULL,fecha_mantencion_veh=NULL,fecha_prox_mantencion_veh=NULL,prom_mant_veh=NULL";
	} else {
	$sql="UPDATE vehiculo SET km_mantencion_veh=$km_mt,fecha_mantencion_veh='$fecha_mt',fecha_prox_mantencion_veh=DATE '$fecha_mt'+INTEGER '$prom_man',prom_mant_veh=$prom_man";
	}
	$sql.=" WHERE patente_veh='$patente_veh'";
	if (sql_query($sql)) {
         	return true;
      	}
      	return false;	
}


function actualizar_datos_km_mantencion_veh($patente_veh,$kms_cada=0){
	if ($kms_cada==0 ||$kms_cada==5000 || $kms_cada==7500 || $kms_cada==10000 || $kms_cada==15000 || $kms_cada==20000) {
		$sql="UPDATE vehiculo SET km_mantencion_cada_veh=$kms_cada WHERE patente_veh='$patente_veh' ";
		if (sql_query($sql)) {
			return true;
		}
	}
	return false;
}


function calcular_proxima_mantencion($patente_veh){
	$sql="SELECT calcular_proxima_mantencion ('$patente_veh')";
	if (sql_query($sql)) {
         	return true;
      	}
      	return false;	
}

function calcular_proxima_mantencion2($id_emp,$patente_veh,$fecha_ot,$km_ot,$km_mt,$tipo=''){
	$sql="SELECT calcular_proxima_mantencion2(0,$id_emp,'$patente_veh'::varchar,'$fecha_ot'::date,$km_ot,$km_mt,'$tipo')";
	if (sql_query($sql)) {
		return true;
	}
	return false;
}

function calcular_proxima_mantencion2_ot($id_otr,$id_emp,$tipo=''){
	$sql="SELECT calcular_proxima_mantencion2($id_otr,$id_emp,''::varchar,'01/01/2000'::date,0,0,'$tipo')";
	if (sql_query($sql)) {
		return true;
	}
	return false;
}


function buscar_km_mantencion($patente_veh){
	$sql="SELECT buscar_km_mantencion ('$patente_veh')";
	if( $datos = sql_fetch_array( sql_query( $sql ) ) ) {
         	return $datos[0];
    }
      	return 0;	
}

function proxima_mantencion ($fecha_ini,$marcas="",$km_mant=0,$fecha_fin=0,$seccion="",$tipo=array()) {
	$mantencion = array();
	$id_emp=usuario_empresa();
	$id_suc=usuario_sucursal();
	$m_cada=0;
	$fecha=date("d/m/Y");
	list($day,$mon,$year) = explode('/',$fecha);
    $fecha_inicio_proceso=date('d/m/Y',mktime(0,0,0,$mon-1,$day,$year));

	//if ($id_emp==1) {$fecha_inicio_proceso='01/01/2014';}
	//if ($id_emp==2) {$fecha_inicio_proceso='01/07/2014';}
	$str_marc="";
	if ($marcas != ""){
		$marc=array();
		$marc=preg_split("~[,/]~",$marcas);
		for ($i=0;$i<count($marc)-1;$i++){
			if ($marc[$i] !=999 ) {
				if ($i==0) {
					$str_marc= " AND (V.id_mbi=$marc[$i]";
				} else {
					$str_marc.=" OR V.id_mbi=$marc[$i] ";
				}
			}
		}
		if ($str_marc!="" ) {
			$str_marc.=")  ";
		}
	}

	$str_sec_s="";
	if ($seccion != ""){
		$str_sec_s.= " AND ( ";
		if (substr($seccion,-1,1)!=',') $seccion.=',';
		$seccion_e=explode(",",$seccion);
		for ($x=0; $x <count($seccion_e)-1; $x++){
			if ($x >0 ){
				$str_sec_s.= " OR ";
			}
			$secciones = explode("_",$seccion_e[$x]);

			$str_sec_s.= " (S.id_suc=$secciones[1] AND S.id_dep=$secciones[2] AND S.id_sec=$secciones[3]) ";

		}
		$str_sec_s.=" ) ";
	}
	$str_tipo="";
	if (!empty($tipo)){
		$str_tipo.=" AND (";
		for ($i=0;$i<count($tipo);$i++) {
			if ( $i >0 ){
				$str_tipo.= " OR ";
			}
			$str_tipo.= " V.origen_mant_veh='".$tipo[$i]."' ";
			if ($tipo[$i]=='S') {
				$str_tipo.= " OR  V.origen_mant_veh is NULL";
			}
		}
		$str_tipo.=") ";
	}
	if (!empty($tipo) && $tipo[0]!='S'){$depto=5;$str_tipot=" AND V.origen_mant_veh='D' ";}else{$depto=4;$str_tipot=" AND (V.origen_mant_veh='S' OR V.origen_mant_veh is NULL)";}
	
	$str_tipo=$str_tipot='';
	
	$sql="SELECT v1.patente_veh, v1.nombre_veh, v1.ano_veh, v1.fecha_prox_mantencion, v1.id_mbi, v1.km_mantencion_veh, v1.cedula_per, v1.nombre_per, v1.paterno_per, v1.materno_per, v1.id_ciu, v1.nombre_ciu, v1.id_cli, v1.correlativo_drc, v1.domicilio_drc, v1.fono_drc, v1.celular_drc, v1.email_drc, v1.codigo_otr, v1.id_emp, v1.id_suc, v1.id_dep, v1.id_sec, v1.nombre_sec, v1.numero_scc, v1.contacto, v1.fono_contacto, buscar_ultima_mantencion(v1.patente_veh) as ultima_mant
	FROM (
		( SELECT DISTINCT ON (V2.fecha_prox_mantencion, V2.km_mantencion_veh,V2.patente_veh) V2.patente_veh, V2.nombre_veh, V2.ano_veh, V2.fecha_prox_mantencion, V2.id_mbi, V2.km_mantencion_veh, V2.cedula_per, V2.nombre_per, V2.paterno_per, V2.materno_per, V2.id_ciu, V2.nombre_ciu, V2.id_cli, V2.correlativo_drc, V2.domicilio_drc, V2.fono_drc, V2.celular_drc, V2.email_drc, V2.codigo_otr, V2.id_emp, V2.id_suc, V2.id_dep, V2.id_sec, V2.nombre_sec, V2.numero_scc, V2.contacto, V2.fono_contacto
		FROM (
		SELECT V.patente_veh, V.nombre_veh, V.ano_veh, V.fecha_prox_mantencion_veh as fecha_prox_mantencion, V.id_mbi, V.km_mantencion_veh, PE.cedula_per, PE.nombre_per, PE.paterno_per, PE.materno_per, DC.id_ciu, CI.nombre_ciu, DC.id_cli, DC.correlativo_drc, DC.domicilio_drc, DC.fono_drc, DC.celular_drc, DC.email_drc, OT.codigo_otr, OT.id_emp, OT.id_suc, OT.id_dep, OT.id_sec, S.nombre_sec, 0 as numero_scc, OT.contacto_otr as contacto, OT.fono_contacto_otr as fono_contacto
		FROM vehiculo V ";
		//Aqui
		//LEFT JOIN propietario P on (P.patente_veh = V.patente_veh )
	$sql.="
		INNER JOIN tipo_vehiculo TV on (TV.id_tve=V.id_tve)
		LEFT JOIN persona PE on (PE.id_per = V.id_per)
		LEFT JOIN cliente C on (C.id_per=PE.id_per)
		LEFT JOIN direccion_cliente DC on (C.id_cli = DC.id_cli and activo_drc is true)
		LEFT JOIN ciudad CI ON (DC.id_pss=CI.id_pss AND DC.id_reg=CI.id_reg AND DC.id_ciu=CI.id_ciu)
		LEFT JOIN orden_trabajo OT ON (OT.patente_veh=V.patente_veh and OT.id_eot<>7 and OT.id_eot<>8)
		LEFT JOIN seccion S ON (S.id_emp=OT.id_emp and S.id_suc=OT.id_suc and S.id_dep=OT.id_dep and S.id_sec=OT.id_sec)
		--LEFT JOIN seguimiento_cc_vehiculo SGV ON (SGV.patente_veh=V.patente_veh and CAST(SGV.fecha_mantencion_sgv as DATE)+CAST('7 days' as INTERVAL)>=V.fecha_prox_mantencion_veh)
		LEFT JOIN seguimiento_cc_vehiculo SGV ON ((SGV.patente_veh=V.patente_veh or SGV.patente_veh=V.cod_vehiculo_veh) and SGV.km_mantencion_sgv>=V.km_mantencion_veh)
		WHERE OT.id_emp=$id_emp ";
		if($fecha_fin==0){
			$sql.=" AND fecha_prox_mantencion_veh between '$fecha_inicio_proceso' AND CAST('$fecha_ini' as DATE) + CAST('7 days' as INTERVAL) ";
		}else{
			$sql.=" AND fecha_prox_mantencion_veh between '$fecha_ini' AND '$fecha_fin' ";
		}
		$sql.=" AND km_mantencion_veh > 1 AND (SELECT Min(correlativo_drc) FROM direccion_cliente where id_cli = C.id_cli ) = DC.correlativo_drc
		--AND (SELECT Max(fecha_inicio_pro) FROM propietario where patente_veh = V.patente_veh and fecha_fin_pro is NULL AND id_per <>3950) = P.fecha_inicio_pro
		AND V.id_per <>3950 AND CASE WHEN $id_emp=1 THEN (V.id_mbi=15 OR V.id_mbi=22) AND TV.tipo_veh_tve='L' END
		AND  (SELECT Max(id_otr) FROM orden_trabajo where patente_veh=V.patente_veh and (id_dep=$depto) and (id_eot<>7 and id_eot<>8)) = OT.id_otr ";
		if($id_emp==1){
			$sql.="AND CASE WHEN $id_suc < 7 THEN OT.id_suc < 7 ELSE OT.id_suc > 6 END ";
		}
		$sql.="AND SGV.numero_scc is NULL
		".$str_marc."
		".$str_sec_s."
		".$str_tipot."
		GROUP BY V.patente_veh, V.nombre_veh, V.ano_veh, V.fecha_prox_mantencion_veh, V.id_mbi, V.km_mantencion_veh, PE.cedula_per, PE.nombre_per, PE.paterno_per, PE.materno_per, DC.id_ciu, CI.nombre_ciu, DC.id_cli, DC.correlativo_drc, DC.domicilio_drc, DC.fono_drc, DC.celular_drc, DC.email_drc, OT.codigo_otr, OT.id_emp, OT.id_suc, OT.id_dep, OT.id_sec, S.nombre_sec, numero_scc, contacto, fono_contacto
		ORDER BY V.fecha_prox_mantencion_veh, V.km_mantencion_veh,V.patente_veh
		) as V2
	) UNION ALL (
		SELECT DISTINCT ON (V.patente_veh) V.patente_veh, V.nombre_veh, V.ano_veh, DV.fecha_dve as fecha_prox_mantencion, V.id_mbi, CASE WHEN V.id_mbi = 22 THEN '5000'::integer ELSE '10000'::integer END as km_mantencion_veh, PE.cedula_per, PE.nombre_per, PE.paterno_per, PE.materno_per, DC.id_ciu, CI.nombre_ciu, DC.id_cli, DC.correlativo_drc, DC.domicilio_drc, DC.fono_drc, DC.celular_drc, DC.email_drc, NV.codigo_nve as codigo_otr, NV.id_emp, NV.id_suc, NV.id_dep, NV.id_sec, S.nombre_sec, SGV.numero_scc, NNV.contacto_nnv as contacto, '' as fono_contacto
		FROM documento_venta DV
		INNER JOIN documento_venta_nv DVN ON (DVN.id_emp=DV.id_emp and DVN.id_tdo=DV.id_tdo and DVN.numero_dve=DV.numero_dve)
		INNER JOIN nota_venta NV ON (NV.id_nve=DVN.id_nve)
		INNER JOIN nuevo_nota_venta NNV ON(NV.id_nve=NNV.id_nve)
		INNER JOIN stock_vehiculo SV ON (NNV.nro_interno_sve=SV.nro_interno_sve)
		INNER JOIN vehiculo V ON (SV.patente_veh=V.cod_vehiculo_veh)
		INNER JOIN tipo_vehiculo TV on (TV.id_tve=V.id_tve)
		INNER JOIN cliente_nv CNV ON (CNV.id_nve=NV.id_nve and CNV.titular_cnv is true)
		INNER JOIN cliente C ON(CNV.id_cli=C.id_cli)
		INNER JOIN direccion_cliente DC ON (CNV.id_cli=DC.id_cli AND CNV.correlativo_drc=DC.correlativo_drc)
		INNER JOIN ciudad CI ON (CI.id_ciu=DC.id_ciu)
		INNER JOIN persona PE ON (C.id_per=PE.id_per)
		INNER JOIN seccion S ON (S.id_emp=NV.id_emp and S.id_suc=NV.id_suc and S.id_dep=NV.id_dep and S.id_sec=NV.id_sec)
		LEFT  JOIN seguimiento_cc_vehiculo SGV ON ((SGV.patente_veh=V.patente_veh OR SGV.patente_veh=V.cod_vehiculo_veh) and SGV.km_mantencion_sgv>=5000)
		WHERE DV.id_emp=$id_emp AND NNV.entregado_nnv='t' ";
		if($id_emp==1){
			$sql.="AND CASE WHEN $id_suc < 7 THEN NV.id_suc < 7 ELSE NV.id_suc > 6 END ";
		}
		if($id_emp==1 && $id_suc<7){
		$sql.="AND CASE WHEN $id_emp=1 THEN (V.id_mbi=15 OR V.id_mbi=22) ";
	    } else {
		$sql.="AND CASE WHEN $id_emp=1 THEN (V.id_mbi=15 OR V.id_mbi=22) ELSE (V.id_mbi=15 OR V.id_mbi=22) ";
		}
		$sql.="AND TV.tipo_veh_tve='L' END AND docto_venta_nulo_por_nc(DV.id_emp,DV.id_tdo,DV.numero_dve) is false AND DV.nulo_dve!='t' ";
		if($fecha_fin==0){
			$sql.=" AND DV.fecha_dve between CAST('$fecha_ini' as DATE) - CAST('60 days' as INTERVAL) AND CAST('$fecha_ini' as DATE) - CAST('20 days' as INTERVAL) ";
		}else{
			$sql.=" AND fecha_dve between '$fecha_ini' AND '$fecha_fin' ";
		}
		$sql.=" AND SGV.numero_scc is NULL AND (SELECT count(*) FROM orden_trabajo OT INNER JOIN movimiento_ot MOT ON (OT.id_otr=MOT.id_otr) WHERE OT.id_emp=$id_emp AND V.patente_veh=OT.patente_veh AND CASE WHEN V.id_mbi=22 THEN MOT.id_bie=5073 ELSE MOT.id_bie=12458 END) = 0
		".$str_marc."
		".$str_sec_s."
		".$str_tipo."
		GROUP BY V.patente_veh,V.nombre_veh,V.ano_veh, fecha_prox_mantencion,V.id_mbi, V.km_mantencion_veh, PE.cedula_per,PE.nombre_per, PE.paterno_per, PE.materno_per, DC.id_ciu, CI.nombre_ciu, DC.id_cli, DC.correlativo_drc, DC.domicilio_drc, DC.fono_drc, DC.celular_drc, DC.email_drc, NV.codigo_nve, NV.id_emp, NV.id_suc, NV.id_dep, NV.id_sec, S.nombre_sec, numero_scc, contacto, fono_contacto
	) UNION ALL (
		SELECT DISTINCT ON (V.fecha_prox_mantencion_veh, V.km_mantencion_veh,V.patente_veh) V.patente_veh, V.nombre_veh, V.ano_veh, V.fecha_prox_mantencion_veh as fecha_prox_mantencion, V.id_mbi, V.km_mantencion_veh, PE.cedula_per, PE.nombre_per, PE.paterno_per, PE.materno_per, DC.id_ciu, CI.nombre_ciu, DC.id_cli, DC.correlativo_drc, DC.domicilio_drc, DC.fono_drc, DC.celular_drc, DC.email_drc, NV.codigo_nve as codigo_otr, NV.id_emp, NV.id_suc, NV.id_dep, NV.id_sec, S.nombre_sec,0 as numero_scc, '' as contacto, '' as fono_contacto
		FROM vehiculo V
		INNER JOIN tipo_vehiculo TV on (TV.id_tve=V.id_tve)
		INNER JOIN stock_vehiculo SV ON (SV.patente_veh=V.cod_vehiculo_veh)
		INNER JOIN nuevo_nota_venta NNV ON (NNV.nro_interno_sve=SV.nro_interno_sve)
		INNER JOIN nota_venta NV ON (NV.id_env=3 AND NV.id_nve=NNV.id_nve)
		INNER JOIN seccion S ON (S.id_emp=NV.id_emp and S.id_suc=NV.id_suc and S.id_dep=NV.id_dep and S.id_sec=NV.id_sec)
		INNER JOIN cliente_nv CNV ON (CNV.id_nve=NV.id_nve AND CNV.titular_cnv is true)
		INNER JOIN cliente C on (C.id_cli=CNV.id_cli)
		INNER JOIN direccion_cliente DC on (C.id_cli = DC.id_cli and activo_drc is true)
		INNER JOIN ciudad CI ON (DC.id_pss=CI.id_pss AND DC.id_reg=CI.id_reg AND DC.id_ciu=CI.id_ciu)
		INNER JOIN persona PE on (PE.id_per = C.id_per)
		LEFT JOIN seguimiento_cc_vehiculo SGV ON ((SGV.patente_veh=V.patente_veh OR SGV.patente_veh=V.cod_vehiculo_veh) and SGV.km_mantencion_sgv>=V.km_mantencion_veh)

		WHERE NV.id_emp=$id_emp AND NNV.entregado_nnv='t' ";
		if($fecha_fin==0){
				$sql.=" AND fecha_prox_mantencion_veh between '$fecha_inicio_proceso' AND CAST('$fecha_ini' as DATE) + CAST('7 days' as INTERVAL) ";
			}else{
				$sql.=" AND fecha_prox_mantencion_veh between '$fecha_ini' AND '$fecha_fin' ";
			}

		$sql.=" AND km_mantencion_veh=1 AND (SELECT Min(correlativo_drc) FROM direccion_cliente where id_cli = C.id_cli ) = DC.correlativo_drc
			AND C.id_per <>3950 AND CASE WHEN $id_emp=1 THEN (V.id_mbi=15 OR V.id_mbi=22) ELSE (V.id_mbi=15 OR V.id_mbi=22) AND TV.tipo_veh_tve='L' END ";
		if($id_emp==1){
			$sql.="AND CASE WHEN $id_suc < 7 THEN NV.id_suc < 7 ELSE NV.id_suc > 6 END ";
		}
		$sql.="AND SGV.numero_scc is NULL
		".$str_marc."
		".$str_sec_s."
		".$str_tipo."
		GROUP BY V.patente_veh, V.nombre_veh, V.ano_veh, V.fecha_prox_mantencion_veh, V.id_mbi, V.km_mantencion_veh, PE.cedula_per, PE.nombre_per, PE.paterno_per, PE.materno_per, DC.id_ciu, CI.nombre_ciu, DC.id_cli, DC.correlativo_drc, DC.domicilio_drc, DC.fono_drc, DC.celular_drc, DC.email_drc, codigo_otr, NV.id_emp, NV.id_suc, NV.id_dep, NV.id_sec, S.nombre_sec, numero_scc, contacto, fono_contacto
		ORDER BY V.fecha_prox_mantencion_veh, V.km_mantencion_veh,V.patente_veh
	)";
	if (!empty($tipo) && $tipo[0]!='S'){
		$sql.=" UNION ALL (
		SELECT DISTINCT ON (V.fecha_prox_mantencion_veh, V.km_mantencion_veh,V.patente_veh) V.patente_veh, V.nombre_veh, V.ano_veh, V.fecha_prox_mantencion_veh as fecha_prox_mantencion, V.id_mbi, V.km_mantencion_veh, PE.cedula_per, PE.nombre_per, PE.paterno_per, PE.materno_per, DC.id_ciu, CI.nombre_ciu, DC.id_cli, DC.correlativo_drc, DC.domicilio_drc, DC.fono_drc, DC.celular_drc, DC.email_drc, NV.codigo_nve as codigo_otr, NV.id_emp, NV.id_suc, NV.id_dep, NV.id_sec, S.nombre_sec,0 as numero_scc, '' as contacto, '' as fono_contacto
		FROM vehiculo V
		INNER JOIN tipo_vehiculo TV on (TV.id_tve=V.id_tve)
		INNER JOIN stock_vehiculo SV ON (SV.patente_veh=V.patente_veh)
		INNER JOIN usado_nota_venta UNV ON (UNV.nro_interno_sve=SV.nro_interno_sve)
		INNER JOIN nota_venta NV ON (NV.id_nve=UNV.id_nve)
		INNER JOIN seccion S ON (S.id_emp=NV.id_emp and S.id_suc=NV.id_suc and S.id_dep=NV.id_dep and S.id_sec=NV.id_sec)
		INNER JOIN cliente_nv CNV ON (CNV.id_nve=NV.id_nve AND CNV.titular_cnv is true)
		INNER JOIN cliente C on (C.id_cli=CNV.id_cli)
		INNER JOIN direccion_cliente DC on (C.id_cli = DC.id_cli and activo_drc is true)
		INNER JOIN ciudad CI ON (DC.id_pss=CI.id_pss AND DC.id_reg=CI.id_reg AND DC.id_ciu=CI.id_ciu)
		INNER JOIN persona PE on (PE.id_per = C.id_per)
		LEFT JOIN seguimiento_cc_vehiculo SGV ON ((SGV.patente_veh=V.patente_veh OR SGV.patente_veh=V.cod_vehiculo_veh) and SGV.km_mantencion_sgv>=V.km_mantencion_veh)

		WHERE NV.id_emp=$id_emp AND V.origen_mant_veh='U'";
		if($fecha_fin==0){
				$sql.=" AND fecha_prox_mantencion_veh between '$fecha_inicio_proceso' AND CAST('$fecha_ini' as DATE) + CAST('7 days' as INTERVAL) ";
			}else{
				$sql.=" AND fecha_prox_mantencion_veh between '$fecha_ini' AND '$fecha_fin' ";
			}

		$sql.=" AND km_mantencion_veh>1 AND (SELECT Min(correlativo_drc) FROM direccion_cliente where id_cli = C.id_cli ) = DC.correlativo_drc	AND C.id_per <>3950 AND CASE WHEN $id_emp=1 THEN (V.id_mbi=15 OR V.id_mbi=22) ELSE (V.id_mbi=15 OR V.id_mbi=22) AND TV.tipo_veh_tve='L' END ";
		if($id_emp==1){
			$sql.="AND CASE WHEN $id_suc < 7 THEN NV.id_suc < 7 ELSE NV.id_suc > 6 END ";
		}
		$sql.="AND SGV.numero_scc is NULL
		".$str_marc."
		".$str_sec_s."
		GROUP BY V.patente_veh, V.nombre_veh, V.ano_veh, V.fecha_prox_mantencion_veh, V.id_mbi, V.km_mantencion_veh, PE.cedula_per, PE.nombre_per, PE.paterno_per, PE.materno_per, DC.id_ciu, CI.nombre_ciu, DC.id_cli, DC.correlativo_drc, DC.domicilio_drc, DC.fono_drc, DC.celular_drc, DC.email_drc, codigo_otr, NV.id_emp, NV.id_suc, NV.id_dep, NV.id_sec, S.nombre_sec, numero_scc, contacto, fono_contacto
		ORDER BY V.fecha_prox_mantencion_veh, V.km_mantencion_veh,V.patente_veh
	)";
	}
	$sql.=" ) as v1
	
	WHERE CASE WHEN ( v1.id_emp=1 AND ( v1.km_mantencion_veh=5000 OR v1.km_mantencion_veh=10000 OR (v1.id_mbi=22 AND v1.km_mantencion_veh=1 AND buscar_ultima_mantencion(v1.patente_veh)!=5000) OR (v1.id_mbi=15 AND v1.km_mantencion_veh=1 AND buscar_ultima_mantencion(v1.patente_veh)!=10000) ) ) THEN  ( (v1.id_mbi=15 OR v1.id_mbi=22) ) ELSE 1=1 END
	ORDER BY v1.fecha_prox_mantencion, v1.km_mantencion_veh, v1.patente_veh "; 
	
//  WHERE CASE WHEN (v1.id_emp=1  AND v1.id_mbi!=2 AND v1.id_mbi!=23 AND v1.id_mbi!=93 AND (v1.id_suc >6 and v1.id_mbi!=10 and v1.id_mbi!=11) AND (v1.id_suc>6 and v1.id_mbi!=1) AND v1.km_mantencion_veh=1000) THEN 1=0 ELSE 1=1 END

	if ($rs=sql_query($sql)) {
		$i=0;
		while ($datos=sql_fetch_array($rs))
		{
			$m_cada=buscar_km_mantencion($datos['patente_veh']);
			//if($datos['patente_veh'] == 'GSZX-92'){ $v['proxima mantencion'] = $m_cada; $v["kilometros_veh"] = $datos['km_mantencion_veh']; $v['ultima_mantencion'] = $datos['ultima_mant'];}

			if ($m_cada > 0 && $datos['km_mantencion_veh'] != 5000 && $datos['km_mantencion_veh'] != 1) {
				$mantencion_veh = ((Int)($datos['km_mantencion_veh'] / $m_cada) * $m_cada) + $m_cada;
			} else {
				if ($datos['ultima_mant'] == 5000) {
					$mantencion_veh = $m_cada;
				} else {
					$mantencion_veh = ($datos['km_mantencion_veh']==1)?5000:$datos['km_mantencion_veh'];
				}
			}
			if (($km_mant!=0 && $mantencion_veh==$km_mant) || $km_mant==0) {
				if ($datos['ultima_mant'] < $mantencion_veh && $mantencion_veh <= 80000) {
					// if ($i>0){
					// 	if ($mantencion[$i-1]['patente_veh'] == $datos['patente_veh']) {
					// 		$i--;
					// 	}
					// }
					$mantencion[$i]['corr'] = $i + 1;
					$mantencion[$i]['id_mbi'] = $datos['id_mbi'];
					$mantencion[$i]['patente_veh'] = $datos['patente_veh'];
					$mantencion[$i]['km_mantencion_veh'] = $mantencion_veh;
					$mantencion[$i]['fecha_prox_mantencion_veh'] = $datos['fecha_prox_mantencion'];
					$mantencion[$i]['m_cada'] = $m_cada;
					$mantencion[$i]['domicilio_drc'] = $datos['domicilio_drc'];
					$mantencion[$i]['fono_drc'] = $datos['fono_drc'];
					$mantencion[$i]['celular_drc'] = $datos['celular_drc'];
					$mantencion[$i]['email_drc'] = $datos['email_drc'];
					$mantencion[$i]['id_cli'] = $datos['id_cli'];
					$mantencion[$i]['correlativo_drc'] = $datos['correlativo_drc'];
					$mantencion[$i]['cedula_per'] = $datos['cedula_per'];
					$mantencion[$i]['nombre_per'] = $datos['nombre_per']." ".$datos['paterno_per']." ".$datos['materno_per'];
					$mantencion[$i]['nombre_veh'] = $datos['nombre_veh'];
					$mantencion[$i]['nombre_ciu'] = $datos['nombre_ciu'];
					$mantencion[$i]['nombre_sec'] = $datos['nombre_sec'];
					$mantencion[$i]['local']=$datos['id_suc']."_".$datos['id_dep']."_".$datos['id_sec'];
					$mantencion[$i]['ano_veh'] = $datos['ano_veh'];
					$mantencion[$i]['contacto_cli'] = $datos['contacto'];
					$mantencion[$i]['fono_contacto_cli']=$datos['fono_contacto'];
					$i++;
				}
			}
		}
	}
	 return $mantencion;
}

function vehiculo_propietarios($patente_veh,$codigo_vehiculo)
{

    $sql=" SELECT nro_interno_sve, patente_veh, fecha_ingreso_sve, fecha_salida_sve, nuevo_sve, P.id_per,P.cedula_per, P.nombre_per, P.paterno_per, P.materno_per, PER.id_per as id_per_compra, PER.cedula_per as cedula_per_compra, Per.nombre_per as nombre_per_compra, per.paterno_per as paterno_per_compra, per.materno_per as materno_per_compra FROM stock_vehiculo LEFT JOIN documento_compra_usado using (nro_interno_sve)
LEFT JOIN proveedor using (id_pro) LEFT JOIN persona P using (id_per) LEFT JOIN usado_nota_venta U using (nro_interno_sve) LEFT JOIN nuevo_nota_venta N using (nro_interno_sve) LEFT JOIN nota_venta V ON (U.id_nve=V.id_nve or N.id_nve=V.id_nve) LEFT JOIN cliente_nv ON(V.id_nve=cliente_nv.id_nve)
LEFT JOIN cliente using (id_cli) LEFT join persona per ON (cliente.id_per=per.id_per)
WHERE (patente_veh='$patente_veh' or patente_veh='$codigo_vehiculo') AND
fecha_ingreso_sve=(SELECT max(fecha_ingreso_sve) FROM stock_vehiculo where (patente_veh='$patente_veh' or patente_veh='$codigo_vehiculo') and (estado_sve<>'N' or estado_sve is NULL)) ";

$propietarios="";
     if( $datos = sql_fetch_array( sql_query( $sql ) ) ) {

        $i=0;
        //print_r(array($nuevo_sve));
        if ($datos["nuevo_sve"]==false or $datos["nuevo_sve"]=='f')
        {
          $propietarios[$i]['id_per'] = $datos['id_per'];
		  $propietarios[$i]['cedula_per'] = $datos['cedula_per'];
          $propietarios[$i]['nombre_per'] = $datos['nombre_per']." ".$datos['paterno_per']." ".$datos['materno_per'];
          $propietarios[$i]['fecha_inicio_pro'] = "";
          $i++;
        }
	
         if ($datos["fecha_salida_sve"]!="")
        {
		   $propietarios[$i]['id_per'] = $datos['id_per_compra'];
		   $propietarios[$i]['cedula_per'] = $datos['cedula_per_compra'];
           $propietarios[$i]['nombre_per'] = $datos['nombre_per_compra']." ".$datos['paterno_per_compra']." ".$datos['materno_per_compra'];
           $propietarios[$i]['fecha_inicio_pro'] = $datos["fecha_salida_sve"];
        }
         
      }
      return $propietarios;
}

function buscar_nro_motor( $nro_motor) {
      $veh = array();
      $sql = "SELECT cod_vehiculo_veh,patente_veh FROM vehiculo WHERE nro_motor_veh='$nro_motor'";
      if( $datos = sql_fetch_array( sql_query( $sql ) ) ) {
         $veh['cod_vehiculo_veh'] = $datos['cod_vehiculo_veh'];
		 $veh['patente_veh'] = $datos['patente_veh'];
      }
      return $veh;
   }

function buscar_nro_chasis( $nro_chasis) {
      $veh = array();
      $sql = "SELECT cod_vehiculo_veh,patente_veh FROM vehiculo WHERE nro_chassis_veh='$nro_chasis'";
      if( $datos = sql_fetch_array( sql_query( $sql ) ) ) {
         $veh['cod_vehiculo_veh'] = $datos['cod_vehiculo_veh'];
		 $veh['patente_veh'] = $datos['patente_veh'];		 
      }
      return $veh;
   }

//busca numero de onsignacion
function buscar_consignacion_anterior( $patente_veh, $fecha) {
	$veh = array();
	$sql = "SELECT max(DCU.numero_dco) as doc, DC.fecha_dco, V.patente_veh FROM vehiculo V
	LEFT JOIN stock_vehiculo SV on(V.patente_veh=SV.patente_veh)
	LEFT JOIN stock_usado SU on(SV.nro_interno_sve=SU.nro_interno_sve)
	LEFT JOIN documento_compra_usado DCU on(SV.nro_interno_sve=DCU.nro_interno_sve)
	LEFT JOIN documento_compra DC on(DCU.id_pro=DC.id_pro and DCU.id_tdc=DC.id_tdc and DCU.numero_dco=DC.numero_dco)
	WHERE SU.id_emp=1 and SU.via_llegada_stu='S' and V.patente_veh='ZT-4298' and DC.nulo_dco is not true and DC.fecha_dco>='$fecha'
	GROUP BY DC.fecha_dco, V.patente_veh ";
	if( $datos = sql_fetch_array( sql_query( $sql ) ) ) {
		$veh['doc'] = $datos['doc'];
		$veh['fecha_dco'] = $datos['fecha_dco'];
		$veh['patente_veh'] = $datos['patente_veh'];
	}
	return $veh;
}

function buscar_stock( $stock) {
	$veh = array();
	$sql = "SELECT cod_vehiculo_veh,patente_veh FROM vehiculo WHERE cod_vehiculo_veh='$stock'";
	if( $datos = sql_fetch_array( sql_query( $sql ) ) ) {
		$veh['cod_vehiculo_veh'] = $datos['cod_vehiculo_veh'];
		$veh['patente_veh'] = $datos['patente_veh'];
	}
	return $veh;
}

function vehiculo_datos_propietario($patente_veh) {
    $sql=" SELECT patente_veh,P.id_per,P.cedula_per, P.nombre_per, P.paterno_per, P.materno_per,DC.domicilio_drc,DC.email_drc,DC.fono_drc,DC.celular_drc
        FROM vehiculo 
		LEFT JOIN persona P using (id_per) 
		LEFT JOIN cliente C on (C.id_per=P.id_per) 
		LEFT JOIN direccion_cliente DC on (C.id_cli = DC.id_cli and DC.activo_drc is true) 
		WHERE patente_veh='$patente_veh' LIMIT 1";

	$propietario=array();
	if( $datos = sql_fetch_array( sql_query( $sql ) ) ) {
		$i=0;
		$propietario[$i]['patente_veh'] = $datos['patente_veh'];
		$propietario[$i]['id_per'] = $datos['id_per'];
		$propietario[$i]['cedula_per'] = $datos['cedula_per'];
		$propietario[$i]['nombre_per'] = $datos['nombre_per']." ".$datos['paterno_per']." ".$datos['materno_per'];

		$propietario[$i]['domicilio_drc'] =(isset($datos['domicilio_drc']))?$datos['domicilio_drc']:'';
		$propietario[$i]['email_drc'] = (isset($datos['email_drc']))?$datos['email_drc']:'';
		$propietario[$i]['fono_drc'] = (isset($datos['fono_drc']))?$datos['fono_drc']:'';
		$propietario[$i]['celular_drc'] = (isset($datos['celular_drc']))?$datos['celular_drc']:'';
		
	}
	return $propietario;
}

function vehiculo_propietario_existe ($patente_veh) {
   $sql="SELECT count(*) FROM vehiculo WHERE patente_veh='$patente_veh' AND id_per IS NOT NULL";
   if ($rs=sql_query($sql)) {
      list($total) = sql_fetch_row( $rs );
      if ($total>0) {
         return true;
      }
   }
   return false;
}

function vehiculo_propietario_actual ($patente_veh,$id_per) {
   $sql="SELECT count(*) FROM vehiculo WHERE patente_veh='$patente_veh' AND id_per=$id_per ";
   if ($rs=sql_query($sql)) {
      list($total) = sql_fetch_row( $rs );
      if ($total>0) {
         return true;
      }
   }
   return false;
}

function vehiculo_propietario_modificar($patente,$id_per) {
	$id_per=(!empty($id_per))?$id_per:'NULL';
	$sql = "UPDATE vehiculo SET id_per=$id_per WHERE  patente_veh='$patente'";
	if (sql_query($sql)) {
		return true;
	}
	return false;
}

function eliminar_vehiculo_propietario($id_nve) {
	$error=0;
	$nota_venta_datos=nota_venta_datos($id_nve);
	if ($nota_venta_datos['id_tnv']==TIPO_NOTA_VENTA_VEHICULO || $nota_venta_datos['id_tnv']==TIPO_NOTA_VENTA_USADOS) {
		if ($nota_venta_datos['id_tnv']==TIPO_NOTA_VENTA_USADOS) {
			$usado_nuevo_nota_venta_lista=usado_nota_venta_lista ($id_nve);
		} else {
			$usado_nuevo_nota_venta_lista=nuevo_nota_venta_lista ($id_nve);
		}
		foreach ($usado_nuevo_nota_venta_lista as $usado_nuevo_nota_venta_listas) {
			$stock_vehiculo_datos=stock_vehiculo_datos($usado_nuevo_nota_venta_listas['nro_interno_sve']);
			//$vehiculo_datos_cod=vehiculo_datos_cod($stock_vehiculo_datos['patente_veh']);
			if (vehiculo_propietario_existe($stock_vehiculo_datos['patente_veh'])) {
				if (!vehiculo_propietario_modificar($stock_vehiculo_datos['patente_veh'],NULL)) {
					$error++;
				}
			}
		}
	}
	if ($error==0) {
		return true;
	}
	return false;
}

function obtener_km_vehiculo($patente_veh) {
    $sql="SELECT kilometraje_veh FROM vehiculo WHERE patente_veh='$patente_veh' ";
    if( $datos = sql_fetch_array( sql_query( $sql ) )) {
		return $datos['kilometraje_veh'];
	}
	return 0;
}

function obtener_km_stock_usado($nro_interno_sve) {
    $sql="SELECT km_stu FROM stock_usado WHERE nro_interno_sve='$nro_interno_sve' ";
    if( $datos = sql_fetch_array( sql_query( $sql ) )) {
		return $datos['km_stu'];
	}
	return 0;
}

function vehiculo_fecha_mantencion($patente,$fecha) {
	list($dia,$mes,$ano)=explode("/",$fecha);
	//$f=mktime(0,0,0,$mes+6,$dia,$ano);
	$f = date( "d/m/Y", mktime(0,0,0,$mes+6,$dia,$ano) );
	$sql = "UPDATE vehiculo SET km_mantencion_veh=1, fecha_prox_mantencion_veh='$f' WHERE patente_veh='$patente'";
	if (sql_query($sql)) {
		return true;
	}
	return false;
}

function mant_1000_vendido_empresa($patente_veh) {
	$id_emp=usuario_empresa();$veh=array();
	$sql="SELECT NV.id_nve, NV.id_usu, NV.id_emp, NV.id_suc, NV.id_dep, NV.id_sec, SEC.tipo_local_sec
	FROM nota_venta NV
	INNER JOIN nuevo_nota_venta NNV ON(NNV.id_nve=NV.id_nve)
	INNER JOIN stock_vehiculo SV ON(SV.nro_interno_sve=NNV.nro_interno_sve AND SV.id_emp=$id_emp)
	INNER JOIN vehiculo V ON(V.cod_vehiculo_veh=SV.patente_veh)
	INNER JOIN seccion SEC ON (SEC.id_emp=NV.id_emp and SEC.id_suc=NV.id_suc and SEC.id_dep=NV.id_dep and SEC.id_sec=NV.id_sec)
	WHERE V.patente_veh='$patente_veh' ";//and NV.fecha_nve between '19/01/2015' and '25/01/2015'
	if( $datos = sql_fetch_array( sql_query( $sql ) ) ) {
		$veh['id_nve'] = $datos['id_nve'];
		$veh['id_usu'] = $datos['id_usu'];
		$veh['id_emp'] = $datos['id_emp'];
		$veh['id_suc'] = $datos['id_suc'];
		$veh['id_dep'] = $datos['id_dep'];
		$veh['id_sec'] = $datos['id_sec'];
		$veh['tipo_local_sec'] = $datos['tipo_local_sec'];
	}
	return $veh;
}

}//fin apis
?>
