<?php 
//incluir la conexion de base de datos
require "../config/Conexion.php";
class Consultas{


	//implementamos nuestro constructor
public function __construct(){

}

//listar registros
public function datosempresa(){
	$sql="SELECT idempresa, nombre, tipo_documento, num_documento, direccion, telefono, email, imagen, condicion FROM empresa WHERE 1";
	return ejecutarConsulta($sql);
}

public function comprasfecha($fecha_inicio,$fecha_fin){
	$sql="SELECT DATE(i.fecha_hora) as fecha, u.nombre as usuario, p.nombre as proveedor, i.tipo_comprobante, i.serie_comprobante, i.num_comprobante, i.total_compra,i.impuesto,i.estado FROM ingreso i INNER JOIN persona p ON i.idproveedor=p.idpersona INNER JOIN usuario u ON i.idusuario=u.idusuario WHERE DATE(i.fecha_hora)>='$fecha_inicio' AND DATE(i.fecha_hora)<='$fecha_fin'";
	return ejecutarConsulta($sql);
}

public function compraslibrodecompras($fecha_inicio,$fecha_fin){
	//$sql="SELECT DATE(i.fecha_horar) as fecha,u.nombre as usuario, p.tipo_documento,p.num_documento,p.nombre as proveedor, i.tipo_comprobante,i.serie_comprobante,i.num_comprobante, ROUND((SUM(if(a.exento='no', di.cantidad*di.precio_compra,0))+SUM(if(a.exento='si', di.cantidad*di.precio_compra,0))+ (SUM(if(a.exento='no', di.cantidad*di.precio_compra,0)))*(i.impuesto/100)),2) as total_compra, i.total_compra as total_comprasiniva, ROUND((SUM(if(a.exento='no', di.cantidad*di.precio_compra,0)))*(i.impuesto/100),2) as iva, SUM(if(a.exento='no', di.cantidad*di.precio_compra,0)) as gravable, SUM(if(a.exento='si', di.cantidad*di.precio_compra,0)) as exento, i.impuesto,i.estado FROM ingreso i INNER JOIN detalle_ingreso di ON di.idingreso=i.idingreso INNER JOIN articulo a ON a.idarticulo=di.idarticulo INNER JOIN persona p ON i.idproveedor=p.idpersona INNER JOIN usuario u ON i.idusuario=u.idusuario WHERE i.tipo_comprobante='Factura' AND DATE(i.fecha_horar)>='$fecha_inicio' AND DATE(i.fecha_horar)<='$fecha_fin' AND i.estado='Aceptado'	GROUP BY i.idingreso	UNION ALL	SELECT DATE(i.fecha_horar) as fecha,u.nombre as usuario, p.tipo_documento,p.num_documento,p.nombre as proveedor, i.tipo_comprobante,i.serie_comprobante,i.num_comprobante, ROUND((SUM(if(a.exento='no', di.cantidad*di.precio_compra,0))+SUM(if(a.exento='si', di.cantidad*di.precio_compra,0))+ (SUM(if(a.exento='no', di.cantidad*di.precio_compra,0)))*(i.impuesto/100)),2) as total_compra, i.total_compra as total_comprasiniva, ROUND((SUM(if(a.exento='no', di.cantidad*di.precio_compra,0)))*(i.impuesto/100),2) as iva, SUM(if(a.exento='no', di.cantidad*di.precio_compra,0)) as gravable, SUM(if(a.exento='si', di.cantidad*di.precio_compra,0)) as exento, i.impuesto,i.estado FROM ingreso i INNER JOIN detalle_ingreso_servicio di ON di.idingreso=i.idingreso INNER JOIN servicio a ON a.idservicio=di.idservicio	INNER JOIN persona p ON i.idproveedor=p.idpersona INNER JOIN usuario u ON i.idusuario=u.idusuario  WHERE i.tipo_comprobante='Factura' AND DATE(i.fecha_horar)>='$fecha_inicio' AND DATE(i.fecha_horar)<='$fecha_fin' AND i.estado='Aceptado' GROUP BY i.idingreso;";
	//$sql="SELECT DATE(i.fecha_horar) as fecha,u.nombre as usuario, p.tipo_documento,p.num_documento,p.nombre as proveedor, i.tipo_comprobante,i.serie_comprobante,i.num_comprobante, ROUND((SUM(if(a.exento='no', di.cantidad*di.precio_compra,0))+SUM(if(a.exento='si', di.cantidad*di.precio_compra,0))+ (SUM(if(a.exento='no', di.cantidad*di.precio_compra,0)))*(i.impuesto/100)),2) as total_compra, i.total_compra as total_comprasiniva, ROUND((SUM(if(a.exento='no', di.cantidad*di.precio_compra,0)))*(i.impuesto/100),2) as iva, SUM(if(a.exento='no', di.cantidad*di.precio_compra,0)) as gravable, SUM(if(a.exento='si', di.cantidad*di.precio_compra,0)) as exento, i.impuesto,i.estado,p.agenteretencion,p.agenteretencionp,IF(p.agenteretencion='si',(ROUND((SUM(if(a.exento='no', di.cantidad*di.precio_compra,0)))*(i.impuesto/100),2))*(p.agenteretencionp/100),0) as retencioniva	FROM ingreso i 	INNER JOIN detalle_ingreso di ON di.idingreso=i.idingreso INNER JOIN articulo a ON a.idarticulo=di.idarticulo INNER JOIN persona p ON i.idproveedor=p.idpersona INNER JOIN usuario u ON i.idusuario=u.idusuario WHERE i.tipo_comprobante='Factura' AND  DATE(i.fecha_horar)>='$fecha_inicio' AND DATE(i.fecha_horar)<='$fecha_fin'  AND i.estado='Aceptado'		GROUP BY i.idingreso	UNION ALL		SELECT DATE(i.fecha_horar) as fecha,u.nombre as usuario, p.tipo_documento,p.num_documento,p.nombre as proveedor, i.tipo_comprobante,i.serie_comprobante,i.num_comprobante, ROUND((SUM(if(a.exento='no', di.cantidad*di.precio_compra,0))+SUM(if(a.exento='si', di.cantidad*di.precio_compra,0))+ (SUM(if(a.exento='no', di.cantidad*di.precio_compra,0)))*(i.impuesto/100)),2) as total_compra, i.total_compra as total_comprasiniva, ROUND((SUM(if(a.exento='no', di.cantidad*di.precio_compra,0)))*(i.impuesto/100),2) as iva, SUM(if(a.exento='no', di.cantidad*di.precio_compra,0)) as gravable, SUM(if(a.exento='si', di.cantidad*di.precio_compra,0)) as exento, i.impuesto,i.estado,p.agenteretencion,p.agenteretencionp,IF(p.agenteretencion='si',(ROUND((SUM(if(a.exento='no', di.cantidad*di.precio_compra,0)))*(i.impuesto/100),2))*(p.agenteretencionp/100),0) as retencioniva	FROM ingreso i INNER JOIN detalle_ingreso_servicio di ON di.idingreso=i.idingreso INNER JOIN servicio a ON a.idservicio=di.idservicio	INNER JOIN persona p ON i.idproveedor=p.idpersona INNER JOIN usuario u ON i.idusuario=u.idusuario  WHERE i.tipo_comprobante='Factura' AND DATE(i.fecha_horar)>='$fecha_inicio' AND DATE(i.fecha_horar)<='$fecha_fin'  AND i.estado='Aceptado'	GROUP BY i.idingreso";

	$sql="SELECT DATE(i.fecha_horar) as fecha,u.nombre as usuario, p.tipo_documento,p.num_documento,p.nombre as proveedor, i.tipo_comprobante,i.serie_comprobante,i.num_comprobante, ROUND((SUM(if(a.exento='no', di.cantidad*di.precio_compra,0))+SUM(if(a.exento='si', di.cantidad*di.precio_compra,0))+ (SUM(if(a.exento='no', di.cantidad*di.precio_compra,0)))*(i.impuesto/100)),2) as total_compra, i.total_compra as total_comprasiniva, ROUND((SUM(if(a.exento='no', di.cantidad*di.precio_compra,0)))*(i.impuesto/100),2) as iva, SUM(if(a.exento='no', di.cantidad*di.precio_compra,0)) as gravable, SUM(if(a.exento='si', di.cantidad*di.precio_compra,0)) as exento, i.impuesto,i.estado,p.agenteretencion,p.agenteretencionp,IF(p.agenteretencion='si',(ROUND((SUM(if(a.exento='no', di.cantidad*di.precio_compra,0)))*(i.impuesto/100),2))*(p.agenteretencionp/100),0) as retencioniva, DATE(IF(i.estado='Pagada',dp.fechapago,i.fecha_hora)) as fechapago, i.idingreso	FROM ingreso i 	INNER JOIN detalle_ingreso di ON di.idingreso=i.idingreso INNER JOIN articulo a ON a.idarticulo=di.idarticulo INNER JOIN persona p ON i.idproveedor=p.idpersona INNER JOIN usuario u ON i.idusuario=u.idusuario		LEFT JOIN (SELECT d1.iddocumento, MAX(pa1.fecha_hora) as fechapago FROM detalle_pagos d1 INNER JOIN pagos pa1 ON pa1.idpagoproveedor=d1.idpagocliente WHERE pa1.estado<>'Anulado' GROUP BY d1.iddocumento) dp ON dp.iddocumento=i.idingreso	WHERE i.tipo_comprobante='Factura' AND  DATE(i.fecha_horar)>='$fecha_inicio' AND DATE(i.fecha_horar)<='$fecha_fin' AND i.estado<>'Anulado'	GROUP BY i.idingreso	UNION ALL	SELECT DATE(i.fecha_horar) as fecha,u.nombre as usuario, p.tipo_documento,p.num_documento,p.nombre as proveedor, i.tipo_comprobante,i.serie_comprobante,i.num_comprobante, ROUND((SUM(if(a.exento='no', di.cantidad*di.precio_compra,0))+SUM(if(a.exento='si', di.cantidad*di.precio_compra,0))+ (SUM(if(a.exento='no', di.cantidad*di.precio_compra,0)))*(i.impuesto/100)),2) as total_compra, i.total_compra as total_comprasiniva, ROUND((SUM(if(a.exento='no', di.cantidad*di.precio_compra,0)))*(i.impuesto/100),2) as iva, SUM(if(a.exento='no', di.cantidad*di.precio_compra,0)) as gravable, SUM(if(a.exento='si', di.cantidad*di.precio_compra,0)) as exento, i.impuesto,i.estado,p.agenteretencion,p.agenteretencionp,IF(p.agenteretencion='si',(ROUND((SUM(if(a.exento='no', di.cantidad*di.precio_compra,0)))*(i.impuesto/100),2))*(p.agenteretencionp/100),0) as retencioniva, DATE(IF(i.estado='Pagada',dp.fechapago,i.fecha_hora)) as fechapago           , i.idingreso	FROM ingreso i 	INNER JOIN detalle_ingreso_servicio di ON di.idingreso=i.idingreso 	INNER JOIN servicio a ON a.idservicio=di.idservicio	INNER JOIN persona p ON i.idproveedor=p.idpersona INNER JOIN usuario u ON i.idusuario=u.idusuario LEFT JOIN (SELECT d1.iddocumento, MAX(pa1.fecha_hora) as fechapago FROM detalle_pagos d1 INNER JOIN pagos pa1 ON pa1.idpagoproveedor=d1.idpagocliente WHERE pa1.estado<>'Anulado' GROUP BY d1.iddocumento) dp ON dp.iddocumento=i.idingreso		WHERE i.tipo_comprobante='Factura' AND DATE(i.fecha_horar)>='$fecha_inicio' AND DATE(i.fecha_horar)<='$fecha_fin' AND i.estado<>'Anulado'		GROUP BY i.idingreso";
	//echo $sql;
	return ejecutarConsulta($sql);
}

public function carteradecliente(){
	$sql="SELECT p.idpersona,p.tipo_persona,DATE_FORMAT(p.fechacreacion,'%d/%m/%Y') as fechacreacion, p.nombre,p.nombref,p.tipo_documento,p.num_documento,p.direccion,p.direcciond,s.nombre as zona,v.nombre as vendedor,p.telefono,d.nombre as diadevisita,f.nombre as frecuenciavisita, t.nombre as tipocliente,p.licencia_licor,c.iddiasdecredito,dc.nombre as diacredito FROM persona p LEFT JOIN subzona s ON s.idsubzona=p.idzona LEFT JOIN vendedor v ON v.idvendedor=p.idvendedor LEFT JOIN clientedatosfinanciero c ON c.idpersona=p.idpersona LEFT JOIN diasdevisitas d on d.iddiasdevisita=c.iddiasdevisita LEFT JOIN frecuenciavisitas f ON f.idfrecuenciavisita=c.idfrecuenciavisita LEFT JOIN tipoclientes t ON t.idtipocliente=c.idtipocliente LEFT JOIN diasdecreditos dc ON dc.iddiasdecredito=c.iddiasdecredito WHERE p.tipo_persona='Cliente' AND p.condicion=1";
	return ejecutarConsulta($sql);
}

//Ventas por productos con formato Ranking
public function ventasrankingproductos2($fecha_inicio,$fecha_fin,$idvendedor){
	if ($idvendedor==0){
		$sql="SELECT v.idventa,date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha,d.idarticulo,a.nombre as articulo,FORMAT(SUM(d.cantidad-d.cantidadev),0) as cantidad,FORMAT((AVG(d.precio_venta)/v.tasa_dollar),2) as precio,a.preciod,FORMAT((SUM((d.cantidad-d.cantidadev)*d.precio_venta))/v.tasa_dollar,2) AS montove FROM venta v INNER JOIN detalle_venta d ON d.idventa=v.idventa INNER JOIN articulo a ON a.idarticulo=d.idarticulo WHERE DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' AND v.estado<>'Anulado' OR v.tipo_comprobante='Regalo' GROUP BY d.idarticulo ORDER BY SUM(d.cantidad-d.cantidadev) DESC";
	}else{
		$sql="SELECT v.idventa,date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha,d.idarticulo,a.nombre as articulo,FORMAT(SUM(d.cantidad-d.cantidadev),0) as cantidad,FORMAT((AVG(d.precio_venta)/v.tasa_dollar),2) as precio,a.preciod,FORMAT((SUM((d.cantidad-d.cantidadev)*d.precio_venta))/v.tasa_dollar,2) AS montove FROM venta v INNER JOIN detalle_venta d ON d.idventa=v.idventa INNER JOIN articulo a ON a.idarticulo=d.idarticulo WHERE DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' AND v.idvendedor='$idvendedor' AND v.estado<>'Anulado' OR v.tipo_comprobante='Regalo' GROUP BY d.idarticulo ORDER BY SUM(d.cantidad-d.cantidadev) DESC";
	}
	return ejecutarConsulta($sql);
	//return ($sql);
}

//Ventas por productos Ranking Sin formato la cantidad
public function ventasrankingproductos($fecha_inicio,$fecha_fin,$idvendedor){
	if ($idvendedor==0){
		$sql="SELECT v.idventa,date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha,d.idarticulo,a.nombre as articulo,FORMAT(SUM(d.cantidad-d.cantidadev),0) as cantidad2,SUM(d.cantidad-d.cantidadev) AS cantidad,FORMAT((AVG(d.precio_venta)/v.tasa_dollar),2) as precio,a.preciod,FORMAT((SUM((d.cantidad-d.cantidadev)*d.precio_venta))/v.tasa_dollar,2) AS montove FROM venta v INNER JOIN detalle_venta d ON d.idventa=v.idventa INNER JOIN articulo a ON a.idarticulo=d.idarticulo WHERE DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' AND v.estado<>'Anulado' AND v.tipo_comprobante<>'Regalo' GROUP BY d.idarticulo ORDER BY SUM(d.cantidad-d.cantidadev) DESC";
	}else{
		$sql="SELECT v.idventa,date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha,d.idarticulo,a.nombre as articulo,FORMAT(SUM(d.cantidad-d.cantidadev),0) as cantidad2,SUM(d.cantidad-d.cantidadev) AS cantidad,FORMAT((AVG(d.precio_venta)/v.tasa_dollar),2) as precio,a.preciod,FORMAT((SUM((d.cantidad-d.cantidadev)*d.precio_venta))/v.tasa_dollar,2) AS montove FROM venta v INNER JOIN detalle_venta d ON d.idventa=v.idventa INNER JOIN articulo a ON a.idarticulo=d.idarticulo WHERE DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' AND v.idvendedor='$idvendedor' AND v.estado<>'Anulado' AND v.tipo_comprobante<>'Regalo' GROUP BY d.idarticulo ORDER BY SUM(d.cantidad-d.cantidadev) DESC";
	}
	return ejecutarConsulta($sql);
	//return ($sql);
}


public function movientodecuentaporfecha($fecha_inicio,$fecha_fin,$idbancocuenta){
	if ($idbancocuenta==0){
		$sql="SELECT d.*,DATEDIFF(d.fecha,'1899-12-30') AS fechad,c.total_pagob,ba.nombre,u.nombre as usuario,c.referencia FROM detallederegistrodecuentas d INNER JOIN cobros c ON c.idcobrocliente=d.idpagocobro INNER JOIN bancocuenta ba ON ba.idbancocuenta=d.idbancocuenta INNER JOIN usuario u ON u.idusuario=c.idusuario WHERE d.fecha>='$fecha_inicio' AND d.fecha<='$fecha_fin' AND d.estado<>'Anulado' AND c.estado<>'Anulado' ORDER BY d.fecha DESC, d.idregistrodecuentas DESC";
	}else{
		$sql="SELECT d.*,DATEDIFF(d.fecha,'1899-12-30') AS fechad,c.total_pagob,ba.nombre,u.nombre as usuario,c.referencia FROM detallederegistrodecuentas d INNER JOIN cobros c ON c.idcobrocliente=d.idpagocobro INNER JOIN bancocuenta ba ON ba.idbancocuenta=d.idbancocuenta INNER JOIN usuario u ON u.idusuario=c.idusuario WHERE d.idbancocuenta='$idbancocuenta' AND d.fecha>='$fecha_inicio' AND d.fecha<='$fecha_fin' AND d.estado<>'Anulado' AND c.estado<>'Anulado' ORDER BY d.fecha DESC, d.idregistrodecuentas DESC";
	}
	
	//$sql="SELECT DATE(v.fecha_hora) as fecha, u.nombre as usuario, p.nombre as cliente, v.tipo_comprobante,v.serie_comprobante, v.num_comprobante , v.total_venta, v.impuesto, v.estado FROM venta v INNER JOIN persona p ON v.idcliente=p.idpersona INNER JOIN usuario u ON v.idusuario=u.idusuario";
	//echo $sql;
	return ejecutarConsulta($sql);
}

public function ventasfechaclientetotales($fecha_inicio,$fecha_fin){
	$sql="SELECT p.idpersona,p.nombre, IF(sum(v.total_ventad) IS null,0,sum(v.total_ventad)) as venta, IF(v.fecha_hora IS null,'$fecha_fin',v.fecha_hora) as fecha, IF(MONTH(v.fecha_hora) IS null,MONTH('$fecha_fin'),MONTH(v.fecha_hora)) as mes FROM persona p LEFT JOIN venta v ON v.idcliente=p.idpersona WHERE p.tipo_persona='Cliente' AND IF(v.fecha_hora IS null,'$fecha_fin',v.fecha_hora)>='$fecha_inicio' AND IF(v.fecha_hora IS null,'$fecha_fin',v.fecha_hora)<='$fecha_fin' AND v.estado<>'Anulado' GROUP BY p.idpersona, MONTH(v.fecha_hora) ORDER BY IF(sum(v.total_ventad) IS null,0,sum(v.total_ventad)) DESC,p.idpersona, MONTH(v.fecha_hora)";
	return ejecutarConsulta($sql);
	//return ($sql);
}

public function ventasfechacliente($fecha_inicio,$fecha_fin,$idcliente){
	if ($idcliente==0){
		$sql="SELECT date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha, u.nombre as usuario, p.nombre as cliente, v.tipo_comprobante,IF(v.num_comprobante=0,'Sin Factura',v.num_comprobante) as num_comprobante, v.num_comprobante1, FORMAT(v.total_ventaimpuestod-v.montocxc-v.montodev+v.montoigtfporcentaje,2) as total_ventad, v.impuesto, v.estado FROM venta v INNER JOIN persona p ON v.idcliente=p.idpersona INNER JOIN usuario u ON v.idusuario=u.idusuario WHERE DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin'  ORDER BY p.nombre,v.num_comprobante";
	}else{
		$sql="SELECT date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha, u.nombre as usuario, p.nombre as cliente, v.tipo_comprobante,IF(v.num_comprobante=0,'Sin Factura',v.num_comprobante) as num_comprobante, v.num_comprobante1, FORMAT(v.total_ventaimpuestod-v.montocxc-v.montodev+v.montoigtfporcentaje,2) as total_ventad, v.impuesto, v.estado FROM venta v INNER JOIN persona p ON v.idcliente=p.idpersona INNER JOIN usuario u ON v.idusuario=u.idusuario WHERE DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin'  AND v.idcliente='$idcliente' ORDER BY p.nombre,v.num_comprobante";
	}
	
	//$sql="SELECT DATE(v.fecha_hora) as fecha, u.nombre as usuario, p.nombre as cliente, v.tipo_comprobante,v.serie_comprobante, v.num_comprobante , v.total_venta, v.impuesto, v.estado FROM venta v INNER JOIN persona p ON v.idcliente=p.idpersona INNER JOIN usuario u ON v.idusuario=u.idusuario";
	//echo $sql;
	return ejecutarConsulta($sql);
}

//Ventas por productos
/*public function ventasclientesxproductos($fecha_inicio,$fecha_fin,$idcliente,$idvendedor){
	if ($idcliente==0){
		if ($idvendedor==0)
			$sql="SELECT date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha,v.idcliente,p.nombre as cliente,p.idzona,s.idsubzona,z.nombre as zona,s.nombre as subzona,d.idarticulo,v.idvendedor,ve.nombre as vendedor,a.nombre as articulo,d.cantidad-d.cantidadev as cajas,FORMAT(d.precio_venta/v.tasa_dollar,2) as precio,FORMAT((d.cantidad-d.cantidadev)*(d.precio_venta/v.tasa_dollar),2) as monto,v.tipo_comprobante as documento,IF(v.fechadespacho='0000-00-00','sin fecha',v.fechadespacho) fechadespacho,IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho))) as diasdecobranza,v.estado,v.num_comprobante,v.num_comprobante1,c.idtipocliente,t.nombre as tipocliente,c.iddiasdevisita,di.nombre as diavisita,dc.nombre AS iddiasdecredito,p.nombref	FROM detalle_venta d	INNER JOIN articulo a ON a.idarticulo=d.idarticulo	INNER JOIN venta v ON v.idventa=d.idventa	INNER JOIN persona p ON p.idpersona=v.idcliente	LEFT JOIN subzona s ON s.idsubzona=p.idzona	LEFT JOIN vendedor ve ON ve.idvendedor=p.idvendedor	LEFT JOIN zona z ON z.idzona=ve.idzona	LEFT JOIN clientedatosfinanciero c ON c.idpersona=p.idpersona	LEFT JOIN tipoclientes t ON t.idtipocliente=c.idtipocliente	LEFT JOIN diasdevisitas di ON di.iddiasdevisita=c.iddiasdevisita	LEFT JOIN diasdecreditos dc ON dc.iddiasdecredito=c.iddiasdecredito	WHERE DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' AND v.estado<>'Anulado' ORDER BY p.nombre,v.num_comprobante";
		else{
			$sql="SELECT date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha,v.idcliente,p.nombre as cliente,p.idzona,s.idsubzona,z.nombre as zona,s.nombre as subzona,d.idarticulo,v.idvendedor,ve.nombre as vendedor,a.nombre as articulo,d.cantidad-d.cantidadev as cajas,FORMAT(d.precio_venta/v.tasa_dollar,2) as precio,FORMAT((d.cantidad-d.cantidadev)*(d.precio_venta/v.tasa_dollar),2) as monto,v.tipo_comprobante as documento,IF(v.fechadespacho='0000-00-00','sin fecha',v.fechadespacho) fechadespacho,IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho))) as diasdecobranza,v.estado,v.num_comprobante,v.num_comprobante1,c.idtipocliente,t.nombre as tipocliente,c.iddiasdevisita,di.nombre as diavisita,dc.nombre AS iddiasdecredito,p.nombref	FROM detalle_venta d	INNER JOIN articulo a ON a.idarticulo=d.idarticulo	INNER JOIN venta v ON v.idventa=d.idventa	INNER JOIN persona p ON p.idpersona=v.idcliente	LEFT JOIN subzona s ON s.idsubzona=p.idzona	LEFT JOIN vendedor ve ON ve.idvendedor=p.idvendedor	LEFT JOIN zona z ON z.idzona=ve.idzona	LEFT JOIN clientedatosfinanciero c ON c.idpersona=p.idpersona	LEFT JOIN tipoclientes t ON t.idtipocliente=c.idtipocliente	LEFT JOIN diasdevisitas di ON di.iddiasdevisita=c.iddiasdevisita	LEFT JOIN diasdecreditos dc ON dc.iddiasdecredito=c.iddiasdecredito WHERE DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' AND v.estado<>'Anulado' AND v.idvendedor='$idvendedor'  ORDER BY p.nombre,v.num_comprobante";
		}
	}else{
		if ($idvendedor==0)
			$sql="SELECT date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha,v.idcliente,p.nombre as cliente,p.idzona,s.idsubzona,z.nombre as zona,s.nombre as subzona,d.idarticulo,v.idvendedor,ve.nombre as vendedor,a.nombre as articulo,d.cantidad-d.cantidadev as cajas,FORMAT(d.precio_venta/v.tasa_dollar,2) as precio,FORMAT((d.cantidad-d.cantidadev)*(d.precio_venta/v.tasa_dollar),2) as monto,v.tipo_comprobante as documento,IF(v.fechadespacho='0000-00-00','sin fecha',v.fechadespacho) fechadespacho,IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho))) as diasdecobranza,v.estado,v.num_comprobante,v.num_comprobante1,c.idtipocliente,t.nombre as tipocliente,c.iddiasdevisita,di.nombre as diavisita,dc.nombre AS iddiasdecredito,p.nombref	FROM detalle_venta d	INNER JOIN articulo a ON a.idarticulo=d.idarticulo	INNER JOIN venta v ON v.idventa=d.idventa	INNER JOIN persona p ON p.idpersona=v.idcliente	LEFT JOIN subzona s ON s.idsubzona=p.idzona	LEFT JOIN vendedor ve ON ve.idvendedor=p.idvendedor	LEFT JOIN zona z ON z.idzona=ve.idzona	LEFT JOIN clientedatosfinanciero c ON c.idpersona=p.idpersona	LEFT JOIN tipoclientes t ON t.idtipocliente=c.idtipocliente	LEFT JOIN diasdevisitas di ON di.iddiasdevisita=c.iddiasdevisita	LEFT JOIN diasdecreditos dc ON dc.iddiasdecredito=c.iddiasdecredito WHERE DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' AND v.estado<>'Anulado' AND v.idcliente='$idcliente' ORDER BY p.nombre,v.num_comprobante";
		else{
			$sql="SELECT date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha,v.idcliente,p.nombre as cliente,p.idzona,s.idsubzona,z.nombre as zona,s.nombre as subzona,d.idarticulo,v.idvendedor,ve.nombre as vendedor,a.nombre as articulo,d.cantidad-d.cantidadev as cajas,FORMAT(d.precio_venta/v.tasa_dollar,2) as precio,FORMAT((d.cantidad-d.cantidadev)*(d.precio_venta/v.tasa_dollar),2) as monto,v.tipo_comprobante as documento,IF(v.fechadespacho='0000-00-00','sin fecha',v.fechadespacho) fechadespacho,IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho))) as diasdecobranza,v.estado,v.num_comprobante,v.num_comprobante1,c.idtipocliente,t.nombre as tipocliente,c.iddiasdevisita,di.nombre as diavisita,dc.nombre AS iddiasdecredito,p.nombref	FROM detalle_venta d	INNER JOIN articulo a ON a.idarticulo=d.idarticulo	INNER JOIN venta v ON v.idventa=d.idventa	INNER JOIN persona p ON p.idpersona=v.idcliente	LEFT JOIN subzona s ON s.idsubzona=p.idzona	LEFT JOIN vendedor ve ON ve.idvendedor=p.idvendedor	LEFT JOIN zona z ON z.idzona=ve.idzona	LEFT JOIN clientedatosfinanciero c ON c.idpersona=p.idpersona	LEFT JOIN tipoclientes t ON t.idtipocliente=c.idtipocliente	LEFT JOIN diasdevisitas di ON di.iddiasdevisita=c.iddiasdevisita	LEFT JOIN diasdecreditos dc ON dc.iddiasdecredito=c.iddiasdecredito WHERE DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' AND v.estado<>'Anulado' AND v.idcliente='$idcliente' AND v.idvendedor='$idvendedor' ORDER BY p.nombre,v.num_comprobante";
		}
	}
	return ejecutarConsulta($sql);
	//return ($sql);
}*/

public function ventasclientesxproductos($fecha_inicio,$fecha_fin,$idcliente,$idvendedor){
	if ($idcliente==0){
		if ($idvendedor==0)
			$sql="SELECT date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha,v.idcliente,p.nombre as cliente,p.idzona,s.idsubzona,z.nombre as zona,s.nombre as subzona,d.idarticulo,v.idvendedor,ve.nombre as vendedor,a.nombre as articulo,d.cantidad-d.cantidadev as cajas,FORMAT(d.precio_venta/v.tasa_dollar,2) as precio,(FORMAT((d.cantidad-d.cantidadev)*IF(v.tipo_comprobante='Factura',(IF(v.total_ventaimpuestod>v.total_ventad,(d.precio_venta/v.tasa_dollar)*1.16,(d.precio_venta/v.tasa_dollar))),(d.precio_venta/v.tasa_dollar)),2)) as monto1,IF(v.montocxc>0,(v.montocxc*(FORMAT((d.cantidad-d.cantidadev)*IF(v.tipo_comprobante='Factura',(IF(v.total_ventaimpuestod>v.total_ventad,(d.precio_venta/v.tasa_dollar)*1.16,(d.precio_venta/v.tasa_dollar))),(d.precio_venta/v.tasa_dollar)),2)))/v.total_ventaimpuestod,0) as notacredito,FORMAT((((FORMAT((d.cantidad-d.cantidadev)*IF(v.tipo_comprobante='Factura',(IF(v.total_ventaimpuestod>v.total_ventad,(d.precio_venta/v.tasa_dollar)*1.16,(d.precio_venta/v.tasa_dollar))),(d.precio_venta/v.tasa_dollar)),2)))-(IF(v.montocxc>0,(v.montocxc*(FORMAT((d.cantidad-d.cantidadev)*IF(v.tipo_comprobante='Factura',(IF(v.total_ventaimpuestod>v.total_ventad,(d.precio_venta/v.tasa_dollar)*1.16,(d.precio_venta/v.tasa_dollar))),(d.precio_venta/v.tasa_dollar)),2)))/v.total_ventaimpuestod,0))),2) as monto,v.tipo_comprobante as documento,IF(v.fechadespacho='0000-00-00','sin fecha',v.fechadespacho) fechadespacho,IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho))) as diasdecobranza,v.estado,v.num_comprobante,v.num_comprobante1,c.idtipocliente,t.nombre as tipocliente,c.iddiasdevisita,di.nombre as diavisita,dc.nombre AS iddiasdecredito,p.nombref	FROM detalle_venta d	INNER JOIN articulo a ON a.idarticulo=d.idarticulo	INNER JOIN venta v ON v.idventa=d.idventa	INNER JOIN persona p ON p.idpersona=v.idcliente	LEFT JOIN subzona s ON s.idsubzona=p.idzona	LEFT JOIN vendedor ve ON ve.idvendedor=p.idvendedor	LEFT JOIN zona z ON z.idzona=ve.idzona	LEFT JOIN clientedatosfinanciero c ON c.idpersona=p.idpersona	LEFT JOIN tipoclientes t ON t.idtipocliente=c.idtipocliente	LEFT JOIN diasdevisitas di ON di.iddiasdevisita=c.iddiasdevisita	LEFT JOIN diasdecreditos dc ON dc.iddiasdecredito=c.iddiasdecredito	WHERE DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' AND v.estado<>'Anulado' ORDER BY p.nombre,v.num_comprobante";
		else{
			$sql="SELECT date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha,v.idcliente,p.nombre as cliente,p.idzona,s.idsubzona,z.nombre as zona,s.nombre as subzona,d.idarticulo,v.idvendedor,ve.nombre as vendedor,a.nombre as articulo,d.cantidad-d.cantidadev as cajas,FORMAT(d.precio_venta/v.tasa_dollar,2) as precio,(FORMAT((d.cantidad-d.cantidadev)*IF(v.tipo_comprobante='Factura',(IF(v.total_ventaimpuestod>v.total_ventad,(d.precio_venta/v.tasa_dollar)*1.16,(d.precio_venta/v.tasa_dollar))),(d.precio_venta/v.tasa_dollar)),2)) as monto1,IF(v.montocxc>0,(v.montocxc*(FORMAT((d.cantidad-d.cantidadev)*IF(v.tipo_comprobante='Factura',(IF(v.total_ventaimpuestod>v.total_ventad,(d.precio_venta/v.tasa_dollar)*1.16,(d.precio_venta/v.tasa_dollar))),(d.precio_venta/v.tasa_dollar)),2)))/v.total_ventaimpuestod,0) as notacredito,FORMAT((((FORMAT((d.cantidad-d.cantidadev)*IF(v.tipo_comprobante='Factura',(IF(v.total_ventaimpuestod>v.total_ventad,(d.precio_venta/v.tasa_dollar)*1.16,(d.precio_venta/v.tasa_dollar))),(d.precio_venta/v.tasa_dollar)),2)))-(IF(v.montocxc>0,(v.montocxc*(FORMAT((d.cantidad-d.cantidadev)*IF(v.tipo_comprobante='Factura',(IF(v.total_ventaimpuestod>v.total_ventad,(d.precio_venta/v.tasa_dollar)*1.16,(d.precio_venta/v.tasa_dollar))),(d.precio_venta/v.tasa_dollar)),2)))/v.total_ventaimpuestod,0))),2) as monto,v.tipo_comprobante as documento,IF(v.fechadespacho='0000-00-00','sin fecha',v.fechadespacho) fechadespacho,IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho))) as diasdecobranza,v.estado,v.num_comprobante,v.num_comprobante1,c.idtipocliente,t.nombre as tipocliente,c.iddiasdevisita,di.nombre as diavisita,dc.nombre AS iddiasdecredito,p.nombref	FROM detalle_venta d	INNER JOIN articulo a ON a.idarticulo=d.idarticulo	INNER JOIN venta v ON v.idventa=d.idventa	INNER JOIN persona p ON p.idpersona=v.idcliente	LEFT JOIN subzona s ON s.idsubzona=p.idzona	LEFT JOIN vendedor ve ON ve.idvendedor=p.idvendedor	LEFT JOIN zona z ON z.idzona=ve.idzona	LEFT JOIN clientedatosfinanciero c ON c.idpersona=p.idpersona	LEFT JOIN tipoclientes t ON t.idtipocliente=c.idtipocliente	LEFT JOIN diasdevisitas di ON di.iddiasdevisita=c.iddiasdevisita	LEFT JOIN diasdecreditos dc ON dc.iddiasdecredito=c.iddiasdecredito	WHERE DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' AND v.estado<>'Anulado' AND v.idvendedor='$idvendedor'  ORDER BY p.nombre,v.num_comprobante";
		}
	}else{
		if ($idvendedor==0)
			$sql="SELECT date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha,v.idcliente,p.nombre as cliente,p.idzona,s.idsubzona,z.nombre as zona,s.nombre as subzona,d.idarticulo,v.idvendedor,ve.nombre as vendedor,a.nombre as articulo,d.cantidad-d.cantidadev as cajas,FORMAT(d.precio_venta/v.tasa_dollar,2) as precio,(FORMAT((d.cantidad-d.cantidadev)*IF(v.tipo_comprobante='Factura',(IF(v.total_ventaimpuestod>v.total_ventad,(d.precio_venta/v.tasa_dollar)*1.16,(d.precio_venta/v.tasa_dollar))),(d.precio_venta/v.tasa_dollar)),2)) as monto1,IF(v.montocxc>0,(v.montocxc*(FORMAT((d.cantidad-d.cantidadev)*IF(v.tipo_comprobante='Factura',(IF(v.total_ventaimpuestod>v.total_ventad,(d.precio_venta/v.tasa_dollar)*1.16,(d.precio_venta/v.tasa_dollar))),(d.precio_venta/v.tasa_dollar)),2)))/v.total_ventaimpuestod,0) as notacredito,FORMAT((((FORMAT((d.cantidad-d.cantidadev)*IF(v.tipo_comprobante='Factura',(IF(v.total_ventaimpuestod>v.total_ventad,(d.precio_venta/v.tasa_dollar)*1.16,(d.precio_venta/v.tasa_dollar))),(d.precio_venta/v.tasa_dollar)),2)))-(IF(v.montocxc>0,(v.montocxc*(FORMAT((d.cantidad-d.cantidadev)*IF(v.tipo_comprobante='Factura',(IF(v.total_ventaimpuestod>v.total_ventad,(d.precio_venta/v.tasa_dollar)*1.16,(d.precio_venta/v.tasa_dollar))),(d.precio_venta/v.tasa_dollar)),2)))/v.total_ventaimpuestod,0))),2) as monto,v.tipo_comprobante as documento,IF(v.fechadespacho='0000-00-00','sin fecha',v.fechadespacho) fechadespacho,IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho))) as diasdecobranza,v.estado,v.num_comprobante,v.num_comprobante1,c.idtipocliente,t.nombre as tipocliente,c.iddiasdevisita,di.nombre as diavisita,dc.nombre AS iddiasdecredito,p.nombref	FROM detalle_venta d	INNER JOIN articulo a ON a.idarticulo=d.idarticulo	INNER JOIN venta v ON v.idventa=d.idventa	INNER JOIN persona p ON p.idpersona=v.idcliente	LEFT JOIN subzona s ON s.idsubzona=p.idzona	LEFT JOIN vendedor ve ON ve.idvendedor=p.idvendedor	LEFT JOIN zona z ON z.idzona=ve.idzona	LEFT JOIN clientedatosfinanciero c ON c.idpersona=p.idpersona	LEFT JOIN tipoclientes t ON t.idtipocliente=c.idtipocliente	LEFT JOIN diasdevisitas di ON di.iddiasdevisita=c.iddiasdevisita	LEFT JOIN diasdecreditos dc ON dc.iddiasdecredito=c.iddiasdecredito	WHERE DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' AND v.estado<>'Anulado' AND v.idcliente='$idcliente' ORDER BY p.nombre,v.num_comprobante";
		else{
			$sql="SELECT date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha,v.idcliente,p.nombre as cliente,p.idzona,s.idsubzona,z.nombre as zona,s.nombre as subzona,d.idarticulo,v.idvendedor,ve.nombre as vendedor,a.nombre as articulo,d.cantidad-d.cantidadev as cajas,FORMAT(d.precio_venta/v.tasa_dollar,2) as precio,(FORMAT((d.cantidad-d.cantidadev)*IF(v.tipo_comprobante='Factura',(IF(v.total_ventaimpuestod>v.total_ventad,(d.precio_venta/v.tasa_dollar)*1.16,(d.precio_venta/v.tasa_dollar))),(d.precio_venta/v.tasa_dollar)),2)) as monto1,IF(v.montocxc>0,(v.montocxc*(FORMAT((d.cantidad-d.cantidadev)*IF(v.tipo_comprobante='Factura',(IF(v.total_ventaimpuestod>v.total_ventad,(d.precio_venta/v.tasa_dollar)*1.16,(d.precio_venta/v.tasa_dollar))),(d.precio_venta/v.tasa_dollar)),2)))/v.total_ventaimpuestod,0) as notacredito,FORMAT((((FORMAT((d.cantidad-d.cantidadev)*IF(v.tipo_comprobante='Factura',(IF(v.total_ventaimpuestod>v.total_ventad,(d.precio_venta/v.tasa_dollar)*1.16,(d.precio_venta/v.tasa_dollar))),(d.precio_venta/v.tasa_dollar)),2)))-(IF(v.montocxc>0,(v.montocxc*(FORMAT((d.cantidad-d.cantidadev)*IF(v.tipo_comprobante='Factura',(IF(v.total_ventaimpuestod>v.total_ventad,(d.precio_venta/v.tasa_dollar)*1.16,(d.precio_venta/v.tasa_dollar))),(d.precio_venta/v.tasa_dollar)),2)))/v.total_ventaimpuestod,0))),2) as monto,v.tipo_comprobante as documento,IF(v.fechadespacho='0000-00-00','sin fecha',v.fechadespacho) fechadespacho,IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho))) as diasdecobranza,v.estado,v.num_comprobante,v.num_comprobante1,c.idtipocliente,t.nombre as tipocliente,c.iddiasdevisita,di.nombre as diavisita,dc.nombre AS iddiasdecredito,p.nombref	FROM detalle_venta d	INNER JOIN articulo a ON a.idarticulo=d.idarticulo	INNER JOIN venta v ON v.idventa=d.idventa	INNER JOIN persona p ON p.idpersona=v.idcliente	LEFT JOIN subzona s ON s.idsubzona=p.idzona	LEFT JOIN vendedor ve ON ve.idvendedor=p.idvendedor	LEFT JOIN zona z ON z.idzona=ve.idzona	LEFT JOIN clientedatosfinanciero c ON c.idpersona=p.idpersona	LEFT JOIN tipoclientes t ON t.idtipocliente=c.idtipocliente	LEFT JOIN diasdevisitas di ON di.iddiasdevisita=c.iddiasdevisita	LEFT JOIN diasdecreditos dc ON dc.iddiasdecredito=c.iddiasdecredito	WHERE DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' AND v.estado<>'Anulado' AND v.idcliente='$idcliente' AND v.idvendedor='$idvendedor' ORDER BY p.nombre,v.num_comprobante";
		}
	}
	return ejecutarConsulta($sql);
	//return ($sql);
}

//Ventas por productos para despacho
public function ventasclientesxproductosreducidodespacho($fecha_inicio,$fecha_fin,$idcliente,$idvendedor){
	if ($idcliente==0){
		if ($idvendedor==0)
			$sql="SELECT v.idventa,date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha,v.idcliente,p.nombre as cliente,p.idzona,s.idsubzona,z.nombre as zona,s.nombre as subzona,d.idarticulo,v.idvendedor,ve.nombre as vendedor,a.nombre as articulo,d.cantidad-d.cantidadev as cajas,FORMAT(d.precio_venta/v.tasa_dollar,2) as precio,FORMAT((d.cantidad-d.cantidadev)*(d.precio_venta/v.tasa_dollar),2) as monto,v.tipo_comprobante as documento,IF(v.fechadespacho='0000-00-00','sin fecha',v.fechadespacho) fechadespacho,IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho))) as diasdecobranza,IF(v.fecha_hora<'2022-12-31','Despachada',(IF(l.estado IS null,v.estado,l.estado))) AS estado,v.num_comprobante,v.num_comprobante1,c.idtipocliente,t.nombre as tipocliente,c.iddiasdevisita,di.nombre as diavisita,dc.nombre AS iddiasdecredito,p.nombref	FROM detalle_venta d INNER JOIN articulo a ON a.idarticulo=d.idarticulo	INNER JOIN venta v ON v.idventa=d.idventa	INNER JOIN persona p ON p.idpersona=v.idcliente	LEFT JOIN logisticadespacho l ON l.idventa=v.idventa LEFT JOIN subzona s ON s.idsubzona=p.idzona LEFT JOIN vendedor ve ON ve.idvendedor=p.idvendedor LEFT JOIN zona z ON z.idzona=ve.idzona	LEFT JOIN clientedatosfinanciero c ON c.idpersona=p.idpersona	LEFT JOIN tipoclientes t ON t.idtipocliente=c.idtipocliente	LEFT JOIN diasdevisitas di ON di.iddiasdevisita=c.iddiasdevisita LEFT JOIN diasdecreditos dc ON dc.iddiasdecredito=c.iddiasdecredito WHERE DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' AND v.estado<>'Anulado' AND v.tipo_comprobante<>'Regalo' ORDER BY v.idventa DESC,p.nombre,v.num_comprobante";
		else{
			$sql="SELECT v.idventa,date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha,v.idcliente,p.nombre as cliente,p.idzona,s.idsubzona,z.nombre as zona,s.nombre as subzona,d.idarticulo,v.idvendedor,ve.nombre as vendedor,a.nombre as articulo,d.cantidad-d.cantidadev as cajas,FORMAT(d.precio_venta/v.tasa_dollar,2) as precio,FORMAT((d.cantidad-d.cantidadev)*(d.precio_venta/v.tasa_dollar),2) as monto,v.tipo_comprobante as documento,IF(v.fechadespacho='0000-00-00','sin fecha',v.fechadespacho) fechadespacho,IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho))) as diasdecobranza,IF(v.fecha_hora<'2022-12-31','Despachada',(IF(l.estado IS null,v.estado,l.estado))) AS estado,v.num_comprobante,v.num_comprobante1,c.idtipocliente,t.nombre as tipocliente,c.iddiasdevisita,di.nombre as diavisita,dc.nombre AS iddiasdecredito,p.nombref	FROM detalle_venta d INNER JOIN articulo a ON a.idarticulo=d.idarticulo	INNER JOIN venta v ON v.idventa=d.idventa	INNER JOIN persona p ON p.idpersona=v.idcliente	LEFT JOIN logisticadespacho l ON l.idventa=v.idventa LEFT JOIN subzona s ON s.idsubzona=p.idzona LEFT JOIN vendedor ve ON ve.idvendedor=p.idvendedor LEFT JOIN zona z ON z.idzona=ve.idzona	LEFT JOIN clientedatosfinanciero c ON c.idpersona=p.idpersona	LEFT JOIN tipoclientes t ON t.idtipocliente=c.idtipocliente	LEFT JOIN diasdevisitas di ON di.iddiasdevisita=c.iddiasdevisita LEFT JOIN diasdecreditos dc ON dc.iddiasdecredito=c.iddiasdecredito DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' AND v.idvendedor='$idvendedor' AND v.estado<>'Anulado' AND v.tipo_comprobante<>'Regalo' ORDER BY v.idventa DESC,p.nombre,v.num_comprobante";
		}
	}else{
		if ($idvendedor==0)
			$sql="SELECT v.idventa,date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha,v.idcliente,p.nombre as cliente,p.idzona,s.idsubzona,z.nombre as zona,s.nombre as subzona,d.idarticulo,v.idvendedor,ve.nombre as vendedor,a.nombre as articulo,d.cantidad-d.cantidadev as cajas,FORMAT(d.precio_venta/v.tasa_dollar,2) as precio,FORMAT((d.cantidad-d.cantidadev)*(d.precio_venta/v.tasa_dollar),2) as monto,v.tipo_comprobante as documento,IF(v.fechadespacho='0000-00-00','sin fecha',v.fechadespacho) fechadespacho,IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho))) as diasdecobranza,IF(v.fecha_hora<'2022-12-31','Despachada',(IF(l.estado IS null,v.estado,l.estado))) AS estado,v.num_comprobante,v.num_comprobante1,c.idtipocliente,t.nombre as tipocliente,c.iddiasdevisita,di.nombre as diavisita,dc.nombre AS iddiasdecredito,p.nombref	FROM detalle_venta d INNER JOIN articulo a ON a.idarticulo=d.idarticulo	INNER JOIN venta v ON v.idventa=d.idventa	INNER JOIN persona p ON p.idpersona=v.idcliente	LEFT JOIN logisticadespacho l ON l.idventa=v.idventa LEFT JOIN subzona s ON s.idsubzona=p.idzona LEFT JOIN vendedor ve ON ve.idvendedor=p.idvendedor LEFT JOIN zona z ON z.idzona=ve.idzona	LEFT JOIN clientedatosfinanciero c ON c.idpersona=p.idpersona	LEFT JOIN tipoclientes t ON t.idtipocliente=c.idtipocliente	LEFT JOIN diasdevisitas di ON di.iddiasdevisita=c.iddiasdevisita LEFT JOIN diasdecreditos dc ON dc.iddiasdecredito=c.iddiasdecredito DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' AND v.idcliente='$idcliente' AND v.estado<>'Anulado' AND v.tipo_comprobante<>'Regalo' ORDER BY v.idventa DESC,p.nombre,v.num_comprobante";
		else{
			$sql="SELECT v.idventa,date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha,v.idcliente,p.nombre as cliente,p.idzona,s.idsubzona,z.nombre as zona,s.nombre as subzona,d.idarticulo,v.idvendedor,ve.nombre as vendedor,a.nombre as articulo,d.cantidad-d.cantidadev as cajas,FORMAT(d.precio_venta/v.tasa_dollar,2) as precio,FORMAT((d.cantidad-d.cantidadev)*(d.precio_venta/v.tasa_dollar),2) as monto,v.tipo_comprobante as documento,IF(v.fechadespacho='0000-00-00','sin fecha',v.fechadespacho) fechadespacho,IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho))) as diasdecobranza,IF(v.fecha_hora<'2022-12-31','Despachada',(IF(l.estado IS null,v.estado,l.estado))) AS estado,v.num_comprobante,v.num_comprobante1,c.idtipocliente,t.nombre as tipocliente,c.iddiasdevisita,di.nombre as diavisita,dc.nombre AS iddiasdecredito,p.nombref	FROM detalle_venta d INNER JOIN articulo a ON a.idarticulo=d.idarticulo	INNER JOIN venta v ON v.idventa=d.idventa	INNER JOIN persona p ON p.idpersona=v.idcliente	LEFT JOIN logisticadespacho l ON l.idventa=v.idventa LEFT JOIN subzona s ON s.idsubzona=p.idzona LEFT JOIN vendedor ve ON ve.idvendedor=p.idvendedor LEFT JOIN zona z ON z.idzona=ve.idzona	LEFT JOIN clientedatosfinanciero c ON c.idpersona=p.idpersona	LEFT JOIN tipoclientes t ON t.idtipocliente=c.idtipocliente	LEFT JOIN diasdevisitas di ON di.iddiasdevisita=c.iddiasdevisita LEFT JOIN diasdecreditos dc ON dc.iddiasdecredito=c.iddiasdecredito DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' AND v.idcliente='$idcliente' AND v.idvendedor='$idvendedor' AND v.estado<>'Anulado' AND v.tipo_comprobante<>'Regalo' ORDER BY v.idventa DESC,p.nombre,v.num_comprobante";
		}
	}
	return ejecutarConsulta($sql);
	//return ($sql);
}

//Ventas por productos
public function ventasclientesxproductoslicoreria($fecha_inicio,$fecha_fin,$idvendedor){
	if ($idvendedor==0){
		$sql="SELECT date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha,v.idcliente,d.idarticulo,v.idvendedor,ve.nombre as vendedor,a.nombre as articulo,SUM(d.cantidad-d.cantidadev) as cajas,FORMAT(d.precio_venta/v.tasa_dollar,2) as precio,FORMAT(SUM((d.cantidad-d.cantidadev)*(d.precio_venta/v.tasa_dollar)),2) as monto FROM detalle_venta d INNER JOIN articulo a ON a.idarticulo=d.idarticulo INNER JOIN venta v ON v.idventa=d.idventa LEFT JOIN vendedor ve ON ve.idvendedor=v.idvendedor WHERE DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' AND v.estado<>'Anulado' GROUP BY v.fecha_hora,d.idarticulo ORDER BY d.idarticulo";
	}else{
		$sql="SELECT date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha,v.idcliente,d.idarticulo,v.idvendedor,ve.nombre as vendedor,a.nombre as articulo,SUM(d.cantidad-d.cantidadev) as cajas,FORMAT(d.precio_venta/v.tasa_dollar,2) as precio,FORMAT(SUM((d.cantidad-d.cantidadev)*(d.precio_venta/v.tasa_dollar)),2) as monto FROM detalle_venta d INNER JOIN articulo a ON a.idarticulo=d.idarticulo INNER JOIN venta v ON v.idventa=d.idventa LEFT JOIN vendedor ve ON ve.idvendedor=v.idvendedor WHERE DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' AND v.estado<>'Anulado' AND v.idvendedor='$idvendedor' GROUP BY v.fecha_hora,d.idarticulo ORDER BY d.idarticulo";
	}
	return ejecutarConsulta($sql);
	//return ($sql);
}

public function ventaspormetododepago($fecha_inicio,$fecha_fin){
	$sql="SELECT date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha,MAX(IF(d.idformapago=1,d.idformapago,0)) as idformapago1,SUM(IF(d.idformapago=1,d.monto,0)) as monto1, MAX(IF(d.idformapago=2,d.idformapago,0)) as idformapago2,SUM(IF(d.idformapago=2,d.monto,0)) as monto2, MAX(IF(d.idformapago=3,d.idformapago,0)) as idformapago3,SUM(IF(d.idformapago=3,d.monto,0)) as monto3, MAX(IF(d.idformapago=4,d.idformapago,0)) as idformapago4,SUM(IF(d.idformapago=4,d.monto,0)) as monto4, MAX(IF(d.idformapago=5,d.idformapago,0)) as idformapago5,SUM(IF(d.idformapago=5,d.monto,0)) as monto5, MAX(IF(d.idformapago=6,d.idformapago,0)) as idformapago6,SUM(IF(d.idformapago=6,d.monto,0)) as monto6 FROM detalle_ventasformapagos d INNER JOIN venta_pagos v ON v.idventapago=d.idventapago WHERE  DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' AND v.estado<>'Anulado' GROUP BY v.fecha_hora";
	return ejecutarConsulta($sql);
	//return ($sql);
}

public function ventasfechafisioterapia($fecha_inicio,$fecha_fin,$idpaciente){
	if ($idpaciente==0){
		$sql="SELECT date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha, u.nombre as usuario, CONCAT(p.nombre1,' ',p.nombre2,' ',p.apellido1,' ',p.apellido2) as cliente,p.idpaciente, v.tipo_comprobante,v.serie_comprobante, v.num_comprobante , IF(v.estado='Anulado',0,v.total_venta) as total_venta, IF(v.estado='Anulado',0,v.total_ventad) as total_ventad, v.impuesto, IF(v.estado='Pendiente','Facturado',v.estado) as estado FROM venta v INNER JOIN registro p ON v.idcliente=p.idpaciente INNER JOIN usuario u ON v.idusuario=u.idusuario WHERE DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' AND v.estado<>'Anulado' ORDER BY v.num_comprobante";
	}else{
		$sql="SELECT date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha, u.nombre as usuario, CONCAT(p.nombre1,' ',p.nombre2,' ',p.apellido1,' ',p.apellido2) as cliente,p.idpaciente, v.tipo_comprobante,v.serie_comprobante, v.num_comprobante , IF(v.estado='Anulado',0,v.total_venta) as total_venta, IF(v.estado='Anulado',0,v.total_ventad) as total_ventad, v.impuesto, IF(v.estado='Pendiente','Facturado',v.estado) as estado FROM venta v INNER JOIN registro p ON v.idcliente=p.idpaciente INNER JOIN usuario u ON v.idusuario=u.idusuario WHERE DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' AND v.estado<>'Anulado' AND p.idpaciente='$idpaciente' ORDER BY v.num_comprobante";
	}
	
	//$sql="SELECT DATE(v.fecha_hora) as fecha, u.nombre as usuario, p.nombre as cliente, v.tipo_comprobante,v.serie_comprobante, v.num_comprobante , v.total_venta, v.impuesto, v.estado FROM venta v INNER JOIN persona p ON v.idcliente=p.idpersona INNER JOIN usuario u ON v.idusuario=u.idusuario";
	//echo $sql;
	return ejecutarConsulta($sql);
}

public function ventasfechafisioterapeuta($fecha_inicio,$fecha_fin,$idfisioterapeuta){
	if ($idfisioterapeuta==0){
		$sql="SELECT date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha, concat(r.nombre1,' ',r.apellido1) as cliente, c.title,c.descripcion,c.estado,f.nombre as fisioterapeuta, if(c.estado='realizada',(s.preciod*f.comisionventa)/100,(s.preciod*f.notshown)/100) as comision,s.preciod FROM citas c INNER JOIN registro r ON r.idpaciente=c.idpaciente INNER JOIN fisioterapeuta f ON f.idfisioterapeuta=c.idfisioterapeuta LEFT JOIN servicio s ON s.idservicio=c.idservicio WHERE (c.estado='realizada' OR c.estado='notshown') AND DATE(c.fecha)>='$fecha_inicio' AND DATE(c.fecha)<='$fecha_fin'";
	}else{
			$sql="SELECT date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha, concat(r.nombre1,' ',r.apellido1) as cliente, c.title,c.descripcion,c.estado,f.nombre as fisioterapeuta, if(c.estado='realizada',(s.preciod*f.comisionventa)/100,(s.preciod*f.notshown)/100) as comision,s.preciod FROM citas c INNER JOIN registro r ON r.idpaciente=c.idpaciente INNER JOIN fisioterapeuta f ON f.idfisioterapeuta=c.idfisioterapeuta LEFT JOIN servicio s ON s.idservicio=c.idservicio WHERE (c.estado='realizada' OR c.estado='notshown') AND DATE(c.fecha)>='$fecha_inicio' AND DATE(c.fecha)<='$fecha_fin' AND c.idfisioterapeuta='$idfisioterapeuta'";
	}
	return ejecutarConsulta($sql);
}



public function ventasultimos_12meses(){
	$sql=" SELECT DATE_FORMAT(fecha_hora,'%M') AS fecha, SUM(total_venta) AS total FROM venta GROUP BY MONTH(fecha_hora) ORDER BY fecha_hora DESC LIMIT 0,12";
	return ejecutarConsulta($sql);
}

public function ventasultimos12meses(){
	$sql="SELECT me.idmes as mesnro, me.español as mes, IF(SUM(v.total_venta) is null,0,SUM(v.total_venta)) AS total FROM meses me LEFT JOIN venta v ON me.idmes=MONTH(v.fecha_hora) GROUP BY me.español ORDER BY me.idmes ASC LIMIT 0,12";
	//return ejecutarConsulta($sql);
	return ejecutarConsultaSimpleFila2($sql);
}

public function ventaslibrodeventa($fecha_inicio,$fecha_fin){
	$sql="SELECT date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha,u.nombre as usuario, p.nombre as cliente, p.tipo_documento, p.num_documento, p.agenteretencion,v.impuesto,v.tipo_comprobante,v.serie_comprobante, v.num_comprobante,SUM(d.cantidad) as cantidad,v.total_venta as totalventasiniva,v.total_ventaimpuesto,SUM((IF(a.exento='si',d.precio_venta,0)*d.cantidad)) as totalexento,SUM((IF(a.exento<>'si',d.precio_venta,0)*d.cantidad)) as totalparimpuesto,SUM((IF(a.exento<>'si',d.precio_venta,0)*d.cantidad))*(v.impuesto/100) as iva,SUM((IF(a.exento='si',d.precio_venta,0)*d.cantidad))+SUM((IF(a.exento<>'si',d.precio_venta,0)*d.cantidad))+SUM((IF(a.exento<>'si',d.precio_venta,0)*d.cantidad))*(v.impuesto/100) as totalventa, v.estado,IF(p.agenteretencion='si',(SUM((IF(a.exento<>'si',d.precio_venta,0)*d.cantidad))*(v.impuesto/100))*(p.agenteretencionp/100),0) as retencioniva, '' as factura,p.agenteretencionp,	SUM(ROUND((((SELECT empresa_impuestos.porcentajeprecio/100 FROM empresa_impuestos)*(d.precio_venta))*(SELECT empresa_impuestos.iva/100 FROM empresa_impuestos))*d.cantidad,2)) as ivapercibido FROM detalle_venta d	INNER JOIN articulo a ON a.idarticulo=d.idarticulo	INNER JOIN venta v ON v.idventa=d.idventa	INNER JOIN persona p ON v.idcliente=p.idpersona	INNER JOIN usuario u ON v.idusuario=u.idusuario	WHERE v.tipo_comprobante='Factura'  AND DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' AND v.estado<>'Anulado'	GROUP BY v.idventa	UNION ALL	SELECT date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha,u.nombre as usuario, p.nombre as cliente, p.tipo_documento, p.num_documento, p.agenteretencion,0 as impuesto,v.tipo_comprobante,v.num_notacredito as serie_comprobante, v.numcontrol_notacredito as num_comprobante,1 as cantidad,v.total_credito as totalventasiniva,v.total_credito as total_ventaimpuesto,0 as totalexento,0 as totalparimpuesto,0 as iva,v.total_credito as totalventa, v.estado,0 as retencioniva,v1.num_comprobante as factura,p.agenteretencionp,0 AS ivapercibido	FROM notacredito v	LEFT JOIN venta v1 ON v1.idventa=v.idventa	INNER JOIN persona p ON v.idcliente=p.idpersona	INNER JOIN usuario u ON v.idusuario=u.idusuario	WHERE  DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' AND v.estado<>'Anulado' UNION ALL SELECT date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha,u.nombre as usuario, p.nombre as cliente, p.tipo_documento, p.num_documento, p.agenteretencion,0 as impuesto,v.tipo_comprobante,numcontrol_notadebito as serie_comprobante, num_notadebito as num_comprobante,1 as cantidad,v.total_credito as totalventasiniva,v.total_credito as total_ventaimpuesto,0 as totalexento,0 as totalparimpuesto,0 as iva,v.total_credito as totalventa, v.estado,0 as retencioniva,v1.num_comprobante as factura,p.agenteretencionp, 0 as ivapercibido	FROM notadebito v	LEFT JOIN venta v1 ON v1.idventa=v.idventa	INNER JOIN persona p ON v.idcliente=p.idpersona	INNER JOIN usuario u ON v.idusuario=u.idusuario	WHERE  DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' AND v.estado<>'Anulado' UNION ALL SELECT date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha,u.nombre as usuario, p.nombre as cliente, v.estado as tipo_documento, p.num_documento, p.agenteretencion,0 as impuesto,v.estado as tipo_comprobante,referencia as serie_comprobante, v.idcobrocliente as num_comprobante,1 as cantidad,v.total_pagob as totalventasiniva,v.total_pagob as total_ventaimpuesto,0 as totalexento,v1.totalparimpuesto as totalparimpuesto,v1.iva as iva,v.total_pagob as totalventa, v.estado,v.total_pagob as retencioniva,v1.num_comprobante as factura,p.agenteretencionp, 0 as ivapercibido	FROM (SELECT * FROM cobros WHERE estado='Retencion') v INNER JOIN (SELECT idcobrocliente,iddocumento FROM detalle_cobros GROUP BY idcobrocliente) d ON d.idcobrocliente=v.idcobrocliente INNER JOIN (SELECT v.idventa,date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha,u.nombre as usuario, p.nombre as cliente, p.tipo_documento, p.num_documento, p.agenteretencion,v.impuesto,v.tipo_comprobante,v.serie_comprobante, v.num_comprobante,SUM(d.cantidad) as cantidad,v.total_venta as totalventasiniva,v.total_ventaimpuesto,SUM((IF(a.exento='si',d.precio_venta,0)*d.cantidad)) as totalexento,SUM((IF(a.exento<>'si',d.precio_venta,0)*d.cantidad)) as totalparimpuesto,SUM((IF(a.exento<>'si',d.precio_venta,0)*d.cantidad))*(v.impuesto/100) as iva,SUM((IF(a.exento='si',d.precio_venta,0)*d.cantidad))+SUM((IF(a.exento<>'si',d.precio_venta,0)*d.cantidad))+SUM((IF(a.exento<>'si',d.precio_venta,0)*d.cantidad))*(v.impuesto/100) as totalventa, v.estado,IF(p.agenteretencion='si',(SUM((IF(a.exento<>'si',d.precio_venta,0)*d.cantidad))*(v.impuesto/100))*(p.agenteretencionp/100),0) as retencioniva, '' as factura,p.agenteretencionp,SUM(d.impuestoart18*d.cantidad) as ivapercibido	FROM detalle_venta d INNER JOIN articulo a ON a.idarticulo=d.idarticulo	INNER JOIN venta v ON v.idventa=d.idventa	INNER JOIN persona p ON v.idcliente=p.idpersona	INNER JOIN usuario u ON v.idusuario=u.idusuario	WHERE v.tipo_comprobante='Factura'  AND DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' AND v.estado<>'Anulado'	GROUP BY v.idventa) v1 ON v1.idventa=d.iddocumento INNER JOIN persona p ON v.idcliente=p.idpersona	INNER JOIN usuario u ON v.idusuario=u.idusuario	WHERE  DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' AND v.estado<>'Anulado'";
	//$sql="SELECT date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha,u.nombre as usuario, p.nombre as cliente, p.tipo_documento, p.num_documento, p.agenteretencion,v.impuesto,v.tipo_comprobante,v.serie_comprobante, v.num_comprobante,SUM(d.cantidad) as cantidad,v.total_venta as totalventasiniva,v.total_ventaimpuesto,SUM((IF(a.exento='si',d.precio_venta,0)*d.cantidad)) as totalexento,SUM((IF(a.exento<>'si',d.precio_venta,0)*d.cantidad)) as totalparimpuesto,SUM((IF(a.exento<>'si',d.precio_venta,0)*d.cantidad))*(v.impuesto/100) as iva,SUM((IF(a.exento='si',d.precio_venta,0)*d.cantidad))+SUM((IF(a.exento<>'si',d.precio_venta,0)*d.cantidad))+SUM((IF(a.exento<>'si',d.precio_venta,0)*d.cantidad))*(v.impuesto/100) as totalventa, v.estado,IF(p.agenteretencion='si',(SUM((IF(a.exento<>'si',d.precio_venta,0)*d.cantidad))*(v.impuesto/100))*(p.agenteretencionp/100),0) as retencioniva, '' as factura,p.agenteretencionp	FROM detalle_venta d	INNER JOIN articulo a ON a.idarticulo=d.idarticulo	INNER JOIN venta v ON v.idventa=d.idventa	INNER JOIN persona p ON v.idcliente=p.idpersona	INNER JOIN usuario u ON v.idusuario=u.idusuario	WHERE v.tipo_comprobante='Factura'  AND DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' AND v.estado<>'Anulado'	GROUP BY v.idventa	UNION ALL	SELECT date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha,u.nombre as usuario, p.nombre as cliente, p.tipo_documento, p.num_documento, p.agenteretencion,0 as impuesto,v.tipo_comprobante,v.num_notacredito as serie_comprobante, v.numcontrol_notacredito as num_comprobante,1 as cantidad,v.total_credito as totalventasiniva,v.total_credito as total_ventaimpuesto,0 as totalexento,0 as totalparimpuesto,0 as iva,v.total_credito as totalventa, v.estado,0 as retencioniva,v1.num_comprobante as factura,p.agenteretencionp	FROM notacredito v	LEFT JOIN venta v1 ON v1.idventa=v.idventa	INNER JOIN persona p ON v.idcliente=p.idpersona	INNER JOIN usuario u ON v.idusuario=u.idusuario	WHERE  DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' AND v.estado<>'Anulado'";
	//$sql="SELECT date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha,u.nombre as usuario, p.nombre as cliente, p.tipo_documento, p.num_documento, p.agenteretencion,v.impuesto,v.tipo_comprobante,v.serie_comprobante, v.num_comprobante,SUM(d.cantidad) as cantidad,v.total_venta as totalventasiniva,v.total_ventaimpuesto,SUM((IF(a.exento='si',d.precio_venta,0)*d.cantidad)) as totalexento,SUM((IF(a.exento<>'si',d.precio_venta,0)*d.cantidad)) as totalparimpuesto,SUM((IF(a.exento<>'si',d.precio_venta,0)*d.cantidad))*(v.impuesto/100) as iva,SUM((IF(a.exento='si',d.precio_venta,0)*d.cantidad))+SUM((IF(a.exento<>'si',d.precio_venta,0)*d.cantidad))+SUM((IF(a.exento<>'si',d.precio_venta,0)*d.cantidad))*(v.impuesto/100) as totalventa, v.estado	FROM detalle_venta d	INNER JOIN articulo a ON a.idarticulo=d.idarticulo	INNER JOIN venta v ON v.idventa=d.idventa	INNER JOIN persona p ON v.idcliente=p.idpersona	INNER JOIN usuario u ON v.idusuario=u.idusuario	WHERE v.tipo_comprobante='Factura'  AND DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' AND v.estado<>'Anulado'	GROUP BY v.idventa";
	//$sql="SELECT DATE(v.fecha_hora) as fecha, u.nombre as usuario, p.nombre as cliente, p.tipo_documento, p.num_documento, p.agenteretencion,v.tipo_comprobante,v.serie_comprobante, v.num_comprobante , v.total_venta, (v.total_venta/(1+(v.impuesto/100))) as totalventasiniva, v.total_venta-(v.total_venta/(1+(v.impuesto/100))) as iva,v.impuesto, v.estado FROM venta v INNER JOIN persona p ON v.idcliente=p.idpersona INNER JOIN usuario u ON v.idusuario=u.idusuario WHERE v.tipo_comprobante='Factura' AND DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' AND v.estado<>'Anulado'";
	//$sql="SELECT DATE(v.fecha_hora) as fecha, u.nombre as usuario, p.nombre as cliente, v.tipo_comprobante,v.serie_comprobante, v.num_comprobante , v.total_venta, v.impuesto, v.estado FROM venta v INNER JOIN persona p ON v.idcliente=p.idpersona INNER JOIN usuario u ON v.idusuario=u.idusuario";
	//echo $sql;
	return ejecutarConsulta($sql);
}
/* Fisioterapia */
public function ventaslibrodeventaf($fecha_inicio,$fecha_fin){
	$sql="SELECT date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha, u.nombre as usuario, CONCAT(p.nombre1,' ',p.nombre2,' ',p.apellido1,' ',p.apellido2) as cliente, 'CEDULA' as tipo_documento, p.ci AS num_documento, 'no' as agenteretencion,v.tipo_comprobante,v.serie_comprobante, v.num_comprobante , v.total_venta, v.total_venta as totalventasiniva, 0 as iva,v.impuesto, v.estado FROM venta v INNER JOIN registro p ON v.idcliente=p.idpaciente INNER JOIN usuario u ON v.idusuario=u.idusuario WHERE v.tipo_comprobante='Factura' AND DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin'";
	//$sql="SELECT DATE(v.fecha_hora) as fecha, u.nombre as usuario, p.nombre as cliente, v.tipo_comprobante,v.serie_comprobante, v.num_comprobante , v.total_venta, v.impuesto, v.estado FROM venta v INNER JOIN persona p ON v.idcliente=p.idpersona INNER JOIN usuario u ON v.idusuario=u.idusuario";
	//echo $sql;
	return ejecutarConsulta($sql);
}

public function ventaslibrodeinventario($fecha_inicio,$fecha_fin){
	$sql="SELECT date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha, u1.nombre as usuario, p.nombre as cliente, p.tipo_documento, p.num_documento,p.direccion,p.licencia_licor, p.agenteretencion,v.tipo_comprobante,v.serie_comprobante, v.num_comprobante , v.total_venta,SUM(d.cantidad*d.precio_venta) as totad,(v.total_venta/(1+(v.impuesto/100))) as totalventasiniva, v.total_venta-(v.total_venta/(1+(v.impuesto/100))) as iva,v.impuesto, v.estado, SUM(d.cantidad) as cantidad,f.factorconversion,a.unidademedidad, SUM(a.gradoalcohol) as grados,t1.nombre as conductor,t1.num_documento as cedula,t1.vehiculo,t1.placa, substring_index( c1.nombre,'FIDENCIO',1) as clase, 'FIDENCIO' as denominacion FROM venta v INNER JOIN detalle_venta d ON v.idventa=d.idventa INNER JOIN articulo a ON d.idarticulo=a.idarticulo INNER JOIN categoria c1 ON a.idarticulo=c1.idcategoria INNER JOIN categoriadeunidades c ON c.idcategoriadeunidades=a.idcategoriadeunidades INNER JOIN unidademedidad u ON u.idunidademedidad=a.idunidademedidad INNER JOIN factorunidademedidad f ON f.idfactorunidademedidad=a.idfactorunidademedidad INNER JOIN tipoarticulo t ON t.idtipoarticulo=a.idtipoarticulo INNER JOIN persona p ON v.idcliente=p.idpersona INNER JOIN usuario u1 ON v.idusuario=u1.idusuario LEFT JOIN transportista t1 ON v.idtransportista=t1.idtransportista WHERE DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' GROUP BY v.idventa,d.idarticulo";
	//$sql="SELECT DATE(v.fecha_hora) as fecha, u.nombre as usuario, p.nombre as cliente, v.tipo_comprobante,v.serie_comprobante, v.num_comprobante , v.total_venta, v.impuesto, v.estado FROM venta v INNER JOIN persona p ON v.idcliente=p.idpersona INNER JOIN usuario u ON v.idusuario=u.idusuario";
	//echo $sql;
	return ejecutarConsulta($sql);
}

public function ventaslibrodeinventarioe($fecha_inicio,$fecha_fin){
	$sql="SELECT date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha, u1.nombre as usuario, p.nombre as cliente, p.tipo_documento, p.num_documento,p.direccion,p.licencia_licor, p.agenteretencion,v.tipo_comprobante,v.serie_comprobante, v.num_comprobante, v.estado,SUM(d.cantidad) as cantidad,f.factorconversion,a.unidademedidad, SUM(a.gradoalcohol) as grados,'N/A' as conductor,'N/A' as cedula,'N/A' as vehiculo,'N/A' as placa, substring_index( c1.nombre,'FIDENCIO',1) as clase, 'FIDENCIO' as denominacion FROM ingreso v INNER JOIN detalle_ingreso d ON v.idingreso=d.idingreso INNER JOIN articulo a ON d.idarticulo=a.idarticulo INNER JOIN categoria c1 ON a.idcategoria=c1.idcategoria INNER JOIN categoriadeunidades c ON c.idcategoriadeunidades=a.idcategoriadeunidades INNER JOIN unidademedidad u ON u.idunidademedidad=a.idunidademedidad INNER JOIN factorunidademedidad f ON f.idfactorunidademedidad=a.idfactorunidademedidad INNER JOIN tipoarticulo t ON t.idtipoarticulo=a.idtipoarticulo INNER JOIN persona p ON v.idproveedor=p.idpersona INNER JOIN usuario u1 ON v.idusuario=u1.idusuario WHERE DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' GROUP BY v.idingreso,d.idarticulo";	
	//$sql="SELECT DATE(v.fecha_hora) as fecha, u.nombre as usuario, p.nombre as cliente, v.tipo_comprobante,v.serie_comprobante, v.num_comprobante , v.total_venta, v.impuesto, v.estado FROM venta v INNER JOIN persona p ON v.idcliente=p.idpersona INNER JOIN usuario u ON v.idusuario=u.idusuario";
	//echo $sql;
	return ejecutarConsulta($sql);
}

public function ventasfechametodopago($fecha_inicio,$fecha_fin){
	$sql="SELECT f.nombre as formadepago,date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha, IF(f.nombre LIKE 'boli%',sum(v.total_pago),0) as bolivares, IF(f.nombre LIKE 'dol%',sum(v.total_pagod),0) as dolares, v.estado FROM venta_pagoscita v INNER JOIN formapago f ON f.idformapago=v.idformapago WHERE DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' GROUP BY v.idformapago";
	//$sql="SELECT DATE(v.fecha_hora) as fecha, u.nombre as usuario, p.nombre as cliente, v.tipo_comprobante,v.serie_comprobante, v.num_comprobante , v.total_venta, v.impuesto, v.estado FROM venta v INNER JOIN persona p ON v.idcliente=p.idpersona INNER JOIN usuario u ON v.idusuario=u.idusuario";
	//echo $sql;
	return ejecutarConsulta($sql);
}

public function ventasinventarioalmacenproducto($idalmacen,$idarticulo){
	if ($idalmacen==0){
		$sql="SELECT ar.idalmacen,' ' AS almacen,ar.idarticulo,ar.articulo,SUM(ar.stock ) as stock, 'todo' as alm,a.nombre,a.condicion,a.tipo FROM articulosporalmacen ar INNER JOIN articulo a ON a.idarticulo=ar.idarticulo WHERE a.condicion=1 GROUP BY ar.articulo";
	}else{
		if ($idarticulo==0){
			$sql="SELECT ar.idalmacen,' ' AS almacen,ar.idarticulo,ar.articulo,SUM(ar.stock ) as stock, 'todo' as alm,a.nombre,a.condicion,a.tipo FROM articulosporalmacen ar INNER JOIN articulo a ON a.idarticulo=ar.idarticulo WHERE a.condicion=1 AND ar.idalmacen='$idalmacen' GROUP BY ar.articulo";
		}else{
			$sql="SELECT ar.idalmacen,' ' AS almacen,ar.idarticulo,ar.articulo,SUM(ar.stock ) as stock, 'todo' as alm,a.nombre,a.condicion,a.tipo FROM articulosporalmacen ar INNER JOIN articulo a ON a.idarticulo=ar.idarticulo WHERE a.condicion=1 AND ar.idalmacen='$idalmacen' AND ar.idarticulo='$idarticulo' GROUP BY ar.articulo";
		}
	}
	//$sql="SELECT DATE(v.fecha_hora) as fecha, u.nombre as usuario, p.nombre as cliente, v.tipo_comprobante,v.serie_comprobante, v.num_comprobante , v.total_venta, v.impuesto, v.estado FROM venta v INNER JOIN persona p ON v.idcliente=p.idpersona INNER JOIN usuario u ON v.idusuario=u.idusuario";
	//echo $sql;
	return ejecutarConsulta($sql);
}

public function ventasinventarioalmacenproductodespacho($idalmacen,$idarticulo){
	if ($idalmacen==0){
		$sql="SELECT ar.idalmacen,' ' AS almacen,ar.idarticulo,ar.articulo,SUM(ar.stock ) as stock, 'todo' as alm,a.nombre,a.condicion,a.tipo FROM articulosporalmacen ar INNER JOIN articulo a ON a.idarticulo=ar.idarticulo WHERE a.condicion=1 AND a.tipoproducto<>'Insumo' GROUP BY ar.articulo";
	}else{
		if ($idarticulo==0){
			$sql="SELECT ar.idalmacen,' ' AS almacen,ar.idarticulo,ar.articulo,SUM(ar.stock ) as stock, 'todo' as alm,a.nombre,a.condicion,a.tipo FROM articulosporalmacen ar INNER JOIN articulo a ON a.idarticulo=ar.idarticulo WHERE a.condicion=1 AND ar.idalmacen='$idalmacen' AND a.tipoproducto<>'Insumo' GROUP BY ar.articulo";
		}else{
			$sql="SELECT ar.idalmacen,' ' AS almacen,ar.idarticulo,ar.articulo,SUM(ar.stock ) as stock, 'todo' as alm,a.nombre,a.condicion,a.tipo FROM articulosporalmacen ar INNER JOIN articulo a ON a.idarticulo=ar.idarticulo WHERE a.condicion=1 AND ar.idalmacen='$idalmacen' AND ar.idarticulo='$idarticulo' AND a.tipoproducto<>'Insumo' GROUP BY ar.articulo";
		}
	}
	//$sql="SELECT DATE(v.fecha_hora) as fecha, u.nombre as usuario, p.nombre as cliente, v.tipo_comprobante,v.serie_comprobante, v.num_comprobante , v.total_venta, v.impuesto, v.estado FROM venta v INNER JOIN persona p ON v.idcliente=p.idpersona INNER JOIN usuario u ON v.idusuario=u.idusuario";
	//echo $sql;
	return ejecutarConsulta($sql);
}

//
public function inventarioalmacenproducto($idarticulo){
	if ($idarticulo==0){
		$sql="SELECT a.idarticulo,a.nombre as articulo,al1.nombre as na1,a1.stock almacen1,al2.nombre as na2 ,a2.stock almacen2,al3.nombre as na3 ,a3.stock almacen3,al4.nombre as na4 ,a4.stock almacen4,al5.nombre as na5 ,a5.stock almacen5,a.condicion FROM articulo a LEFT JOIN almacen1 a1 ON a.idarticulo=a1.idarticulo LEFT JOIN almacen al1 ON a1.idalmacen=al1.idalmacen LEFT JOIN almacen2 a2 ON a.idarticulo=a2.idarticulo LEFT JOIN almacen al2 ON a2.idalmacen=al2.idalmacen LEFT JOIN almacen3 a3 ON a.idarticulo=a3.idarticulo LEFT JOIN almacen al3 ON a3.idalmacen=al3.idalmacen LEFT JOIN almacen4 a4 ON a.idarticulo=a4.idarticulo LEFT JOIN almacen al4 ON a4.idalmacen=al4.idalmacen LEFT JOIN almacen5 a5 ON a.idarticulo=a5.idarticulo LEFT JOIN almacen al5 ON a5.idalmacen=al5.idalmacen WHERE a.condicion=1";
	}else{	
		$sql="SELECT a.idarticulo,a.nombre as articulo,al1.nombre as na1,a1.stock almacen1,al2.nombre as na2 ,a2.stock almacen2,al3.nombre as na3 ,a3.stock almacen3,al4.nombre as na4 ,a4.stock almacen4,al5.nombre as na5 ,a5.stock almacen5,a.condicion FROM articulo a LEFT JOIN almacen1 a1 ON a.idarticulo=a1.idarticulo LEFT JOIN almacen al1 ON a1.idalmacen=al1.idalmacen LEFT JOIN almacen2 a2 ON a.idarticulo=a2.idarticulo LEFT JOIN almacen al2 ON a2.idalmacen=al2.idalmacen LEFT JOIN almacen3 a3 ON a.idarticulo=a3.idarticulo LEFT JOIN almacen al3 ON a3.idalmacen=al3.idalmacen LEFT JOIN almacen4 a4 ON a.idarticulo=a4.idarticulo LEFT JOIN almacen al4 ON a4.idalmacen=al4.idalmacen LEFT JOIN almacen5 a5 ON a.idarticulo=a5.idarticulo LEFT JOIN almacen al5 ON a5.idalmacen=al5.idalmacen WHERE a.condicion=1 AND a.idarticulo='$idarticulo'";
	}	
		return ejecutarConsulta($sql);
}


/** public function ventasvendedorcliente($fecha_inicio,$fecha_fin,$idcliente,$idvendedor){
	if ($idcliente==0){
		if ($idvendedor==0)
			$sql="SELECT v.*,date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha,p.nombre as cliente,ve.nombre as vendedor,v.estado as estadodocumento,v.total_ventaimpuestod as deuda,v.total_ventaimpuestod - IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuestod,TRUNCATE(v.montopendiente/v.tasa_dollar,2))) as cobrado, IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuestod,TRUNCATE(v.montopendiente/v.tasa_dollar,2))) as saldo,d.cajas,IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho))) as diasdecobranza FROM venta v INNER JOIN persona p ON p.idpersona=v.idcliente INNER JOIN usuario u ON v.idusuario=u.idusuario LEFT JOIN vendedor ve ON ve.idvendedor=p.idvendedor LEFT JOIN (SELECT MAX(c1.fecha_hora) as fecha_hora,d1.iddocumento FROM detalle_cobros d1 INNER JOIN cobros c1 ON c1.idcobrocliente=d1.idcobrocliente GROUP BY d1.iddocumento) c14 ON c14.iddocumento=v.idventa INNER JOIN (SELECT idventa,SUM(cantidad-cantidadev) AS cajas FROM detalle_venta GROUP BY idventa) d ON d.idventa=v.idventa WHERE DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' ORDER BY p.nombre,v.num_comprobante";
		else{
			$sql="SELECT v.*,date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha,p.nombre as cliente,ve.nombre as vendedor,v.estado as estadodocumento,v.total_ventaimpuestod as deuda,v.total_ventaimpuestod - IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuestod,TRUNCATE(v.montopendiente/v.tasa_dollar,2))) as cobrado, IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuestod,TRUNCATE(v.montopendiente/v.tasa_dollar,2))) as saldo,d.cajas,IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho))) as diasdecobranza FROM venta v INNER JOIN persona p ON p.idpersona=v.idcliente INNER JOIN usuario u ON v.idusuario=u.idusuario LEFT JOIN vendedor ve ON ve.idvendedor=p.idvendedor LEFT JOIN (SELECT MAX(c1.fecha_hora) as fecha_hora,d1.iddocumento FROM detalle_cobros d1 INNER JOIN cobros c1 ON c1.idcobrocliente=d1.idcobrocliente GROUP BY d1.iddocumento) c14 ON c14.iddocumento=v.idventa INNER JOIN (SELECT idventa,SUM(cantidad-cantidadev) AS cajas FROM detalle_venta GROUP BY idventa) d ON d.idventa=v.idventa WHERE DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' AND v.idvendedor='$idvendedor' ORDER BY p.nombre,v.num_comprobante";
		}
	}else{
		if ($idvendedor==0)
			$sql="SELECT v.*,date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha,p.nombre as cliente,ve.nombre as vendedor,v.estado as estadodocumento,v.total_ventaimpuestod as deuda,v.total_ventaimpuestod - IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuestod,TRUNCATE(v.montopendiente/v.tasa_dollar,2))) as cobrado, IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuestod,TRUNCATE(v.montopendiente/v.tasa_dollar,2))) as saldo,d.cajas,IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho))) as diasdecobranza FROM venta v INNER JOIN persona p ON p.idpersona=v.idcliente INNER JOIN usuario u ON v.idusuario=u.idusuario LEFT JOIN vendedor ve ON ve.idvendedor=p.idvendedor LEFT JOIN (SELECT MAX(c1.fecha_hora) as fecha_hora,d1.iddocumento FROM detalle_cobros d1 INNER JOIN cobros c1 ON c1.idcobrocliente=d1.idcobrocliente GROUP BY d1.iddocumento) c14 ON c14.iddocumento=v.idventa INNER JOIN (SELECT idventa,SUM(cantidad-cantidadev) AS cajas FROM detalle_venta GROUP BY idventa) d ON d.idventa=v.idventa WHERE DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' AND v.idcliente='$idcliente' ORDER BY p.nombre,v.num_comprobante";
		else{
			$sql="SELECT v.*,date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha,p.nombre as cliente,ve.nombre as vendedor,v.estado as estadodocumento,v.total_ventaimpuestod as deuda,v.total_ventaimpuestod - IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuestod,TRUNCATE(v.montopendiente/v.tasa_dollar,2))) as cobrado, IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuestod,TRUNCATE(v.montopendiente/v.tasa_dollar,2))) as saldo,d.cajas,IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho))) as diasdecobranza FROM venta v INNER JOIN persona p ON p.idpersona=v.idcliente INNER JOIN usuario u ON v.idusuario=u.idusuario LEFT JOIN vendedor ve ON ve.idvendedor=p.idvendedor LEFT JOIN (SELECT MAX(c1.fecha_hora) as fecha_hora,d1.iddocumento FROM detalle_cobros d1 INNER JOIN cobros c1 ON c1.idcobrocliente=d1.idcobrocliente GROUP BY d1.iddocumento) c14 ON c14.iddocumento=v.idventa INNER JOIN (SELECT idventa,SUM(cantidad-cantidadev) AS cajas FROM detalle_venta GROUP BY idventa) d ON d.idventa=v.idventa WHERE DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' AND v.idcliente='$idcliente' AND v.idvendedor='$idvendedor' ORDER BY p.nombre,v.num_comprobante";
		}
	}
	return ejecutarConsulta($sql);
} **/

public function ventasvendedorcliente($fecha_inicio,$fecha_fin,$idcliente,$idvendedor){
	if ($idcliente==0){
		if ($idvendedor==0)
			$sql="SELECT v.*,date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha,p.nombre as cliente,ve.nombre as vendedor,v.estado as estadodocumento,(v.total_ventaimpuestod-v.montocxc-v.montodev+v.montoigtfporcentaje) as deuda,(v.total_ventaimpuestod-v.montocxc-v.montodev+v.montoigtfporcentaje) - IF(v.estado='Pagada',0,IF(v.montopendiente=0,(v.total_ventaimpuestod-v.montocxc-v.montodev+v.montoigtfporcentaje),TRUNCATE(v.montopendiente/v.tasa_dollar,2))) as cobrado, IF(v.estado='Pagada',0,IF(v.montopendiente=0,(v.total_ventaimpuestod-v.montocxc-v.montodev+v.montoigtfporcentaje),TRUNCATE(v.montopendiente/v.tasa_dollar,2))) as saldo1,ROUND(IF(v.estado='Pagada',0,IF(v.estado='Anulado',0,vc.saldod)), 2) as saldo,IF(d.cajas IS null,0,d.cajas) AS cajas,IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho))) as diasdecobranza FROM venta v LEFT JOIN persona p ON p.idpersona=v.idcliente LEFT JOIN usuario u ON v.idusuario=u.idusuario LEFT JOIN vendedor ve ON ve.idvendedor=p.idvendedor LEFT JOIN (SELECT MAX(c1.fecha_hora) as fecha_hora,d1.iddocumento FROM detalle_cobros d1 INNER JOIN cobros c1 ON c1.idcobrocliente=d1.idcobrocliente GROUP BY d1.iddocumento) c14 ON c14.iddocumento=v.idventa LEFT JOIN (SELECT idventa,SUM(cantidad-cantidadev) AS cajas FROM detalle_venta GROUP BY idventa) d ON d.idventa=v.idventa	LEFT JOIN (SELECT vt.idventa,p.idpersona as idcliente,p.nombre, p.num_documento as rif_ci, SUM(vt.saldo) as saldo, SUM(vt.saldod) as saldod, vt.nrodocumento, vt.fecha_hora,vt.num_comprobante1,SUM(vt.montocxc) as montocxc,SUM(vt.montodev) as montodev, IF(vt.notacredito1='si','si','no') as notacredito, DATE_FORMAT(vt.fecha_hora,'%d-%m-%Y') as fecha,	DATEDIFF(MIN(vt.fecha_hora),'1899-12-30') as fechanumero,@curRank  AS rank FROM persona p INNER JOIN ((SELECT v.idventa,v.idcliente,SUM(IF(c.cobrado IS null,(v.total_ventaimpuestod-v.montocxc-v.montodev+v.montoigtfporcentaje)*v.tasa_dollar,((v.total_ventaimpuestod-v.montocxc-v.montodev+v.montoigtfporcentaje)-c.cobrado)*v.tasa_dollar)) AS saldo,SUM(IF(c.cobrado IS null,(v.total_ventaimpuestod-v.montocxc-v.montodev+v.montoigtfporcentaje),((v.total_ventaimpuestod-v.montocxc-v.montodev+v.montoigtfporcentaje)-c.cobrado))) as saldod,COUNT(v.num_comprobante1) AS nrodocumento,v.fecha_hora,v.num_comprobante1,SUM(v.montocxc) AS montocxc,SUM(v.montodev) AS montodev,'no' as notacredito1, DATE_FORMAT(MIN(v.fecha_hora),'%d-%m-%Y') as fecha FROM venta v LEFT JOIN (SELECT iddocumento,SUM(abono) as cobrado FROM detalle_cobros WHERE estado<>'Anulado' AND abono>0 GROUP BY iddocumento) c ON c.iddocumento=v.idventa WHERE v.total_ventaimpuestod>0  GROUP BY v.idventa) UNION ALL	(SELECT v.idnotadebito AS idventa,v.idcliente, SUM(IF(v.montopendiente>0,v.montopendiente,v.total_credito)) as saldo, 	SUM(IF(v.montopendiente>0,v.montopendiente/v.tasa_dollar,IF(v.total_creditod=0,0,v.total_creditod))) as saldod, v.num_notadebito as nrodocumento, 	v.fecha_hora,	COUNT(v.num_notadebito) as num_comprobante1,	0 as montocxc, 	0 as montodev,	'no' as notacredito1, DATE_FORMAT(MIN(v.fecha_hora),'%d-%m-%Y') as fecha FROM notadebito v 	WHERE v.total_creditod>0	GROUP BY v.idnotadebito)) vt ON vt.idcliente=p.idpersona	WHERE p.tipo_persona='Cliente' GROUP BY vt.idventa) vc ON vc.idventa=v.idventa WHERE DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' ORDER BY p.nombre,v.num_comprobante";
		else{
			$sql="SELECT v.*,date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha,p.nombre as cliente,ve.nombre as vendedor,v.estado as estadodocumento,(v.total_ventaimpuestod-v.montocxc-v.montodev+v.montoigtfporcentaje) as deuda,(v.total_ventaimpuestod-v.montocxc-v.montodev+v.montoigtfporcentaje) - IF(v.estado='Pagada',0,IF(v.montopendiente=0,(v.total_ventaimpuestod-v.montocxc-v.montodev+v.montoigtfporcentaje),TRUNCATE(v.montopendiente/v.tasa_dollar,2))) as cobrado, IF(v.estado='Pagada',0,IF(v.montopendiente=0,(v.total_ventaimpuestod-v.montocxc-v.montodev+v.montoigtfporcentaje),TRUNCATE(v.montopendiente/v.tasa_dollar,2))) as saldo1,ROUND(IF(v.estado='Pagada',0,IF(v.estado='Anulado',0,vc.saldod)), 2) as saldo,IF(d.cajas IS null,0,d.cajas) AS cajas,IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho))) as diasdecobranza FROM venta v LEFT JOIN persona p ON p.idpersona=v.idcliente LEFT JOIN usuario u ON v.idusuario=u.idusuario LEFT JOIN vendedor ve ON ve.idvendedor=p.idvendedor LEFT JOIN (SELECT MAX(c1.fecha_hora) as fecha_hora,d1.iddocumento FROM detalle_cobros d1 INNER JOIN cobros c1 ON c1.idcobrocliente=d1.idcobrocliente GROUP BY d1.iddocumento) c14 ON c14.iddocumento=v.idventa LEFT JOIN (SELECT idventa,SUM(cantidad-cantidadev) AS cajas FROM detalle_venta GROUP BY idventa) d ON d.idventa=v.idventa	LEFT JOIN (SELECT vt.idventa,p.idpersona as idcliente,p.nombre, p.num_documento as rif_ci, SUM(vt.saldo) as saldo, SUM(vt.saldod) as saldod, vt.nrodocumento, vt.fecha_hora,vt.num_comprobante1,SUM(vt.montocxc) as montocxc,SUM(vt.montodev) as montodev, IF(vt.notacredito1='si','si','no') as notacredito, DATE_FORMAT(vt.fecha_hora,'%d-%m-%Y') as fecha,	DATEDIFF(MIN(vt.fecha_hora),'1899-12-30') as fechanumero,@curRank  AS rank FROM persona p INNER JOIN ((SELECT v.idventa,v.idcliente,SUM(IF(c.cobrado IS null,(v.total_ventaimpuestod-v.montocxc-v.montodev+v.montoigtfporcentaje)*v.tasa_dollar,((v.total_ventaimpuestod-v.montocxc-v.montodev+v.montoigtfporcentaje)-c.cobrado)*v.tasa_dollar)) AS saldo,SUM(IF(c.cobrado IS null,(v.total_ventaimpuestod-v.montocxc-v.montodev+v.montoigtfporcentaje),((v.total_ventaimpuestod-v.montocxc-v.montodev+v.montoigtfporcentaje)-c.cobrado))) as saldod,COUNT(v.num_comprobante1) AS nrodocumento,v.fecha_hora,v.num_comprobante1,SUM(v.montocxc) AS montocxc,SUM(v.montodev) AS montodev,'no' as notacredito1, DATE_FORMAT(MIN(v.fecha_hora),'%d-%m-%Y') as fecha FROM venta v LEFT JOIN (SELECT iddocumento,SUM(abono) as cobrado FROM detalle_cobros WHERE estado<>'Anulado' AND abono>0 GROUP BY iddocumento) c ON c.iddocumento=v.idventa WHERE v.total_ventaimpuestod>0  GROUP BY v.idventa) UNION ALL	(SELECT v.idnotadebito AS idventa,v.idcliente, SUM(IF(v.montopendiente>0,v.montopendiente,v.total_credito)) as saldo, 	SUM(IF(v.montopendiente>0,v.montopendiente/v.tasa_dollar,IF(v.total_creditod=0,0,v.total_creditod))) as saldod, v.num_notadebito as nrodocumento, 	v.fecha_hora,	COUNT(v.num_notadebito) as num_comprobante1,	0 as montocxc, 	0 as montodev,	'no' as notacredito1, DATE_FORMAT(MIN(v.fecha_hora),'%d-%m-%Y') as fecha FROM notadebito v 	WHERE v.total_creditod>0	GROUP BY v.idnotadebito)) vt ON vt.idcliente=p.idpersona	WHERE p.tipo_persona='Cliente' GROUP BY vt.idventa) vc ON vc.idventa=v.idventa WHERE DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' AND v.idvendedor='$idvendedor' ORDER BY p.nombre,v.num_comprobante";
		}
	}else{
		if ($idvendedor==0)
			$sql="SELECT v.*,date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha,p.nombre as cliente,ve.nombre as vendedor,v.estado as estadodocumento,(v.total_ventaimpuestod-v.montocxc-v.montodev+v.montoigtfporcentaje) as deuda,(v.total_ventaimpuestod-v.montocxc-v.montodev+v.montoigtfporcentaje) - IF(v.estado='Pagada',0,IF(v.montopendiente=0,(v.total_ventaimpuestod-v.montocxc-v.montodev+v.montoigtfporcentaje),TRUNCATE(v.montopendiente/v.tasa_dollar,2))) as cobrado, IF(v.estado='Pagada',0,IF(v.montopendiente=0,(v.total_ventaimpuestod-v.montocxc-v.montodev+v.montoigtfporcentaje),TRUNCATE(v.montopendiente/v.tasa_dollar,2))) as saldo1,ROUND(IF(v.estado='Pagada',0,IF(v.estado='Anulado',0,vc.saldod)), 2) as saldo,IF(d.cajas IS null,0,d.cajas) AS cajas,IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho))) as diasdecobranza FROM venta v LEFT JOIN persona p ON p.idpersona=v.idcliente LEFT JOIN usuario u ON v.idusuario=u.idusuario LEFT JOIN vendedor ve ON ve.idvendedor=p.idvendedor LEFT JOIN (SELECT MAX(c1.fecha_hora) as fecha_hora,d1.iddocumento FROM detalle_cobros d1 INNER JOIN cobros c1 ON c1.idcobrocliente=d1.idcobrocliente GROUP BY d1.iddocumento) c14 ON c14.iddocumento=v.idventa LEFT JOIN (SELECT idventa,SUM(cantidad-cantidadev) AS cajas FROM detalle_venta GROUP BY idventa) d ON d.idventa=v.idventa	LEFT JOIN (SELECT vt.idventa,p.idpersona as idcliente,p.nombre, p.num_documento as rif_ci, SUM(vt.saldo) as saldo, SUM(vt.saldod) as saldod, vt.nrodocumento, vt.fecha_hora,vt.num_comprobante1,SUM(vt.montocxc) as montocxc,SUM(vt.montodev) as montodev, IF(vt.notacredito1='si','si','no') as notacredito, DATE_FORMAT(vt.fecha_hora,'%d-%m-%Y') as fecha,	DATEDIFF(MIN(vt.fecha_hora),'1899-12-30') as fechanumero,@curRank  AS rank FROM persona p INNER JOIN ((SELECT v.idventa,v.idcliente,SUM(IF(c.cobrado IS null,(v.total_ventaimpuestod-v.montocxc-v.montodev+v.montoigtfporcentaje)*v.tasa_dollar,((v.total_ventaimpuestod-v.montocxc-v.montodev+v.montoigtfporcentaje)-c.cobrado)*v.tasa_dollar)) AS saldo,SUM(IF(c.cobrado IS null,(v.total_ventaimpuestod-v.montocxc-v.montodev+v.montoigtfporcentaje),((v.total_ventaimpuestod-v.montocxc-v.montodev+v.montoigtfporcentaje)-c.cobrado))) as saldod,COUNT(v.num_comprobante1) AS nrodocumento,v.fecha_hora,v.num_comprobante1,SUM(v.montocxc) AS montocxc,SUM(v.montodev) AS montodev,'no' as notacredito1, DATE_FORMAT(MIN(v.fecha_hora),'%d-%m-%Y') as fecha FROM venta v LEFT JOIN (SELECT iddocumento,SUM(abono) as cobrado FROM detalle_cobros WHERE estado<>'Anulado' AND abono>0 GROUP BY iddocumento) c ON c.iddocumento=v.idventa WHERE v.total_ventaimpuestod>0  GROUP BY v.idventa) UNION ALL	(SELECT v.idnotadebito AS idventa,v.idcliente, SUM(IF(v.montopendiente>0,v.montopendiente,v.total_credito)) as saldo, 	SUM(IF(v.montopendiente>0,v.montopendiente/v.tasa_dollar,IF(v.total_creditod=0,0,v.total_creditod))) as saldod, v.num_notadebito as nrodocumento, 	v.fecha_hora,	COUNT(v.num_notadebito) as num_comprobante1,	0 as montocxc, 	0 as montodev,	'no' as notacredito1, DATE_FORMAT(MIN(v.fecha_hora),'%d-%m-%Y') as fecha FROM notadebito v 	WHERE v.total_creditod>0	GROUP BY v.idnotadebito)) vt ON vt.idcliente=p.idpersona	WHERE p.tipo_persona='Cliente' GROUP BY vt.idventa) vc ON vc.idventa=v.idventa WHERE DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' AND v.idcliente='$idcliente' ORDER BY p.nombre,v.num_comprobante";
		else{
			$sql="SELECT v.*,date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha,p.nombre as cliente,ve.nombre as vendedor,v.estado as estadodocumento,(v.total_ventaimpuestod-v.montocxc-v.montodev+v.montoigtfporcentaje) as deuda,(v.total_ventaimpuestod-v.montocxc-v.montodev+v.montoigtfporcentaje) - IF(v.estado='Pagada',0,IF(v.montopendiente=0,(v.total_ventaimpuestod-v.montocxc-v.montodev+v.montoigtfporcentaje),TRUNCATE(v.montopendiente/v.tasa_dollar,2))) as cobrado, IF(v.estado='Pagada',0,IF(v.montopendiente=0,(v.total_ventaimpuestod-v.montocxc-v.montodev+v.montoigtfporcentaje),TRUNCATE(v.montopendiente/v.tasa_dollar,2))) as saldo1,ROUND(IF(v.estado='Pagada',0,IF(v.estado='Anulado',0,vc.saldod)), 2) as saldo,IF(d.cajas IS null,0,d.cajas) AS cajas,IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho))) as diasdecobranza FROM venta v LEFT JOIN persona p ON p.idpersona=v.idcliente LEFT JOIN usuario u ON v.idusuario=u.idusuario LEFT JOIN vendedor ve ON ve.idvendedor=p.idvendedor LEFT JOIN (SELECT MAX(c1.fecha_hora) as fecha_hora,d1.iddocumento FROM detalle_cobros d1 INNER JOIN cobros c1 ON c1.idcobrocliente=d1.idcobrocliente GROUP BY d1.iddocumento) c14 ON c14.iddocumento=v.idventa LEFT JOIN (SELECT idventa,SUM(cantidad-cantidadev) AS cajas FROM detalle_venta GROUP BY idventa) d ON d.idventa=v.idventa	LEFT JOIN (SELECT vt.idventa,p.idpersona as idcliente,p.nombre, p.num_documento as rif_ci, SUM(vt.saldo) as saldo, SUM(vt.saldod) as saldod, vt.nrodocumento, vt.fecha_hora,vt.num_comprobante1,SUM(vt.montocxc) as montocxc,SUM(vt.montodev) as montodev, IF(vt.notacredito1='si','si','no') as notacredito, DATE_FORMAT(vt.fecha_hora,'%d-%m-%Y') as fecha,	DATEDIFF(MIN(vt.fecha_hora),'1899-12-30') as fechanumero,@curRank  AS rank FROM persona p INNER JOIN ((SELECT v.idventa,v.idcliente,SUM(IF(c.cobrado IS null,(v.total_ventaimpuestod-v.montocxc-v.montodev+v.montoigtfporcentaje)*v.tasa_dollar,((v.total_ventaimpuestod-v.montocxc-v.montodev+v.montoigtfporcentaje)-c.cobrado)*v.tasa_dollar)) AS saldo,SUM(IF(c.cobrado IS null,(v.total_ventaimpuestod-v.montocxc-v.montodev+v.montoigtfporcentaje),((v.total_ventaimpuestod-v.montocxc-v.montodev+v.montoigtfporcentaje)-c.cobrado))) as saldod,COUNT(v.num_comprobante1) AS nrodocumento,v.fecha_hora,v.num_comprobante1,SUM(v.montocxc) AS montocxc,SUM(v.montodev) AS montodev,'no' as notacredito1, DATE_FORMAT(MIN(v.fecha_hora),'%d-%m-%Y') as fecha FROM venta v LEFT JOIN (SELECT iddocumento,SUM(abono) as cobrado FROM detalle_cobros WHERE estado<>'Anulado' AND abono>0 GROUP BY iddocumento) c ON c.iddocumento=v.idventa WHERE v.total_ventaimpuestod>0  GROUP BY v.idventa) UNION ALL	(SELECT v.idnotadebito AS idventa,v.idcliente, SUM(IF(v.montopendiente>0,v.montopendiente,v.total_credito)) as saldo, 	SUM(IF(v.montopendiente>0,v.montopendiente/v.tasa_dollar,IF(v.total_creditod=0,0,v.total_creditod))) as saldod, v.num_notadebito as nrodocumento, 	v.fecha_hora,	COUNT(v.num_notadebito) as num_comprobante1,	0 as montocxc, 	0 as montodev,	'no' as notacredito1, DATE_FORMAT(MIN(v.fecha_hora),'%d-%m-%Y') as fecha FROM notadebito v 	WHERE v.total_creditod>0	GROUP BY v.idnotadebito)) vt ON vt.idcliente=p.idpersona	WHERE p.tipo_persona='Cliente' GROUP BY vt.idventa) vc ON vc.idventa=v.idventa WHERE DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' AND v.idcliente='$idcliente' AND v.idvendedor='$idvendedor' ORDER BY p.nombre,v.num_comprobante";
		}
	}
	return ejecutarConsulta($sql);
}




public function diasdevencimiento($fecha_inicio,$fecha_fin,$idcliente,$idvendedor){
	if ($idcliente==0){
		if ($idvendedor==0)
			$sql="SELECT *,IF(v.fechadespacho='0000-00-00','sin fecha',v.fechadespacho) fechadespacho,IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho))) as diasdecobranza,date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha,u.nombre as usuario,p.nombre as cliente,ve.nombre as vendedor,s.nombre as subzona,z.nombre as zona FROM venta v INNER JOIN persona p ON p.idpersona=v.idcliente INNER JOIN usuario u ON v.idusuario=u.idusuario LEFT JOIN vendedor ve ON ve.idvendedor=v.idvendedor LEFT JOIN subzona s ON s.idsubzona=p.idzona LEFT JOIN zona z ON z.idzona=ve.idzona WHERE DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' ORDER BY p.nombre,v.num_comprobante";
		else{
			$sql="SELECT *,IF(v.fechadespacho='0000-00-00','sin fecha',v.fechadespacho) fechadespacho,IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho))) as diasdecobranza,date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha,u.nombre as usuario,p.nombre as cliente,ve.nombre as vendedor,s.nombre as subzona,z.nombre as zona FROM venta v INNER JOIN persona p ON p.idpersona=v.idcliente INNER JOIN usuario u ON v.idusuario=u.idusuario LEFT JOIN vendedor ve ON ve.idvendedor=v.idvendedor LEFT JOIN subzona s ON s.idsubzona=p.idzona LEFT JOIN zona z ON z.idzona=ve.idzona WHERE DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' AND v.idvendedor='$idvendedor' ORDER BY p.nombre,v.num_comprobante";
		}
	}else{
		if ($idvendedor==0)
			$sql="SELECT *,IF(v.fechadespacho='0000-00-00','sin fecha',v.fechadespacho) fechadespacho,IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho))) as diasdecobranza,date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha,u.nombre as usuario,p.nombre as cliente,ve.nombre as vendedor,s.nombre as subzona,z.nombre as zona FROM venta v INNER JOIN persona p ON p.idpersona=v.idcliente INNER JOIN usuario u ON v.idusuario=u.idusuario LEFT JOIN vendedor ve ON ve.idvendedor=v.idvendedor LEFT JOIN subzona s ON s.idsubzona=p.idzona LEFT JOIN zona z ON z.idzona=ve.idzona WHERE DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' AND v.idcliente='$idcliente' ORDER BY p.nombre,v.num_comprobante";
		else{
			$sql="SELECT *,IF(v.fechadespacho='0000-00-00','sin fecha',v.fechadespacho) fechadespacho,IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho))) as diasdecobranza,date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha,u.nombre as usuario,p.nombre as cliente,ve.nombre as vendedor,s.nombre as subzona,z.nombre as zona FROM venta v INNER JOIN persona p ON p.idpersona=v.idcliente INNER JOIN usuario u ON v.idusuario=u.idusuario LEFT JOIN vendedor ve ON ve.idvendedor=v.idvendedor LEFT JOIN subzona s ON s.idsubzona=p.idzona LEFT JOIN zona z ON z.idzona=ve.idzona WHERE DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' AND v.idcliente='$idcliente' AND v.idvendedor='$idvendedor' ORDER BY p.nombre,v.num_comprobante";
		}
	}
	return ejecutarConsulta($sql);
}

public function diasdevencimientodetalladoycobros($fecha_inicio,$fecha_fin,$idcliente,$idvendedor){
	if ($idcliente==0){
		if ($idvendedor==0)
			$sql="SELECT *,IF(v.fechadespacho='0000-00-00','sin fecha',v.fechadespacho) fechadespacho,IF(v.estado='Pagada',DATEDIFF(DATE(c.fecha_hora),DATE(v.fecha_hora)),IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho)))) as diasdecobranza,DATE(v.fecha_hora) as fecha,u.nombre as usuario,p.nombre as cliente,ve.nombre as vendedor,s.nombre as subzona,z.nombre as zona,IF(dc.abono>0,dc.abono,dc.montod) as abonof1,TRUNCATE(c.tasacambioventa*IF(dc.abono>0,dc.abono,dc.montod),2) as abonobf1,c.tasacambioventa as tasacambiopago,c.referencia,IF(c.fecha_hora='0000-00-00','',DATE(c.fecha_hora)) as fechapago,c.idformapago,c.idbancocuenta, bc.nombre as cuenta,fo.nombre as formadepago,IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuestod,TRUNCATE(v.montopendiente/v.tasa_dollar,2))) as montopendiented,IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuesto,TRUNCATE(v.montopendiente,2))) as montopendienteb,v.estado as estadodocumento,dc.pendiente as saldo, TRUNCATE(dc.pendiente*v.tasa_dollar,2) saldob FROM venta v INNER JOIN persona p ON p.idpersona=v.idcliente INNER JOIN usuario u ON v.idusuario=u.idusuario	LEFT JOIN vendedor ve ON ve.idvendedor=v.idvendedor LEFT JOIN subzona s ON s.idsubzona=p.idzona LEFT JOIN zona z ON z.idzona=ve.idzona LEFT JOIN detalle_cobros dc ON dc.iddocumento=v.idventa LEFT JOIN cobros c ON c.idcobrocliente=dc.idcobrocliente LEFT JOIN bancocuenta bc ON bc.idbancocuenta=c.idbancocuenta LEFT JOIN formapago fo ON fo.idformapago=c.idformapago WHERE DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' ORDER BY p.nombre,v.num_comprobante";
		else{
			$sql="SELECT *,IF(v.fechadespacho='0000-00-00','sin fecha',v.fechadespacho) fechadespacho,IF(v.estado='Pagada',DATEDIFF(DATE(c.fecha_hora),DATE(v.fecha_hora)),IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho)))) as diasdecobranza,DATE(v.fecha_hora) as fecha,u.nombre as usuario,p.nombre as cliente,ve.nombre as vendedor,s.nombre as subzona,z.nombre as zona,IF(dc.abono>0,dc.abono,dc.montod) as abonof1,TRUNCATE(c.tasacambioventa*IF(dc.abono>0,dc.abono,dc.montod),2) as abonobf1,c.tasacambioventa as tasacambiopago,c.referencia,IF(c.fecha_hora='0000-00-00','',DATE(c.fecha_hora)) as fechapago,c.idformapago,c.idbancocuenta, bc.nombre as cuenta,fo.nombre as formadepago,IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuestod,TRUNCATE(v.montopendiente/v.tasa_dollar,2))) as montopendiented,IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuesto,TRUNCATE(v.montopendiente,2))) as montopendienteb,v.estado as estadodocumento,dc.pendiente as saldo, TRUNCATE(dc.pendiente*v.tasa_dollar,2) saldob FROM venta v INNER JOIN persona p ON p.idpersona=v.idcliente INNER JOIN usuario u ON v.idusuario=u.idusuario	LEFT JOIN vendedor ve ON ve.idvendedor=v.idvendedor LEFT JOIN subzona s ON s.idsubzona=p.idzona LEFT JOIN zona z ON z.idzona=ve.idzona LEFT JOIN detalle_cobros dc ON dc.iddocumento=v.idventa LEFT JOIN cobros c ON c.idcobrocliente=dc.idcobrocliente LEFT JOIN bancocuenta bc ON bc.idbancocuenta=c.idbancocuenta LEFT JOIN formapago fo ON fo.idformapago=c.idformapago WHERE DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' AND v.idvendedor='$idvendedor' ORDER BY p.nombre,v.num_comprobante";
		}
	}else{
		if ($idvendedor==0)
			$sql="SELECT *,IF(v.fechadespacho='0000-00-00','sin fecha',v.fechadespacho) fechadespacho,IF(v.estado='Pagada',DATEDIFF(DATE(c.fecha_hora),DATE(v.fecha_hora)),IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho)))) as diasdecobranza,DATE(v.fecha_hora) as fecha,u.nombre as usuario,p.nombre as cliente,ve.nombre as vendedor,s.nombre as subzona,z.nombre as zona,IF(dc.abono>0,dc.abono,dc.montod) as abonof1,TRUNCATE(c.tasacambioventa*IF(dc.abono>0,dc.abono,dc.montod),2) as abonobf1,c.tasacambioventa as tasacambiopago,c.referencia,IF(c.fecha_hora='0000-00-00','',DATE(c.fecha_hora)) as fechapago,c.idformapago,c.idbancocuenta, bc.nombre as cuenta,fo.nombre as formadepago,IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuestod,TRUNCATE(v.montopendiente/v.tasa_dollar,2))) as montopendiented,IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuesto,TRUNCATE(v.montopendiente,2))) as montopendienteb,v.estado as estadodocumento,dc.pendiente as saldo, TRUNCATE(dc.pendiente*v.tasa_dollar,2) saldob FROM venta v INNER JOIN persona p ON p.idpersona=v.idcliente INNER JOIN usuario u ON v.idusuario=u.idusuario	LEFT JOIN vendedor ve ON ve.idvendedor=v.idvendedor LEFT JOIN subzona s ON s.idsubzona=p.idzona LEFT JOIN zona z ON z.idzona=ve.idzona LEFT JOIN detalle_cobros dc ON dc.iddocumento=v.idventa LEFT JOIN cobros c ON c.idcobrocliente=dc.idcobrocliente LEFT JOIN bancocuenta bc ON bc.idbancocuenta=c.idbancocuenta LEFT JOIN formapago fo ON fo.idformapago=c.idformapago WHERE DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' AND v.idcliente='$idcliente' ORDER BY p.nombre,v.num_comprobante";
		else{
			$sql="SELECT *,IF(v.fechadespacho='0000-00-00','sin fecha',v.fechadespacho) fechadespacho,IF(v.estado='Pagada',DATEDIFF(DATE(c.fecha_hora),DATE(v.fecha_hora)),IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho)))) as diasdecobranza,DATE(v.fecha_hora) as fecha,u.nombre as usuario,p.nombre as cliente,ve.nombre as vendedor,s.nombre as subzona,z.nombre as zona,IF(dc.abono>0,dc.abono,dc.montod) as abonof1,TRUNCATE(c.tasacambioventa*IF(dc.abono>0,dc.abono,dc.montod),2) as abonobf1,c.tasacambioventa as tasacambiopago,c.referencia,IF(c.fecha_hora='0000-00-00','',DATE(c.fecha_hora)) as fechapago,c.idformapago,c.idbancocuenta, bc.nombre as cuenta,fo.nombre as formadepago,IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuestod,TRUNCATE(v.montopendiente/v.tasa_dollar,2))) as montopendiented,IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuesto,TRUNCATE(v.montopendiente,2))) as montopendienteb,v.estado as estadodocumento,dc.pendiente as saldo, TRUNCATE(dc.pendiente*v.tasa_dollar,2) saldob FROM venta v INNER JOIN persona p ON p.idpersona=v.idcliente INNER JOIN usuario u ON v.idusuario=u.idusuario	LEFT JOIN vendedor ve ON ve.idvendedor=v.idvendedor LEFT JOIN subzona s ON s.idsubzona=p.idzona LEFT JOIN zona z ON z.idzona=ve.idzona LEFT JOIN detalle_cobros dc ON dc.iddocumento=v.idventa LEFT JOIN cobros c ON c.idcobrocliente=dc.idcobrocliente LEFT JOIN bancocuenta bc ON bc.idbancocuenta=c.idbancocuenta LEFT JOIN formapago fo ON fo.idformapago=c.idformapago WHERE DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' AND v.idcliente='$idcliente' AND v.idvendedor='$idvendedor' ORDER BY p.nombre,v.num_comprobante";
		}
	}
	return ejecutarConsulta($sql);
}

public function diasdevencimientosaldo($fecha_inicio,$fecha_fin,$idcliente,$idvendedor){
	if ($idcliente==0){
		if ($idvendedor==0)
			//$sql="SELECT *,IF(v.fechadespacho='0000-00-00','sin fecha',date_format(DATE(v.fechadespacho), '%d-%m-%Y')) fechadespacho,IF(v.estado='Pagada',DATEDIFF(DATE(c14.fecha_hora),DATE(v.fecha_hora)),IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho)))) as diasdecobranza,date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha,			u.nombre as usuario,p.nombre as cliente,ve.nombre as vendedor,s.nombre as subzona,z.nombre as zona,IF(c14.fecha_hora='0000-00-00','',DATE(c14.fecha_hora)) as fechapago,v.estado as estadodocumento,			v.total_ventaimpuestod as deuda,v.total_ventaimpuesto as deudab,v.total_ventaimpuestod - IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuestod,TRUNCATE(v.montopendiente/v.tasa_dollar,2))) as cobrado,	v.total_ventaimpuesto - IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuesto,TRUNCATE(v.montopendiente,2))) as cobradob, IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuestod,TRUNCATE(v.montopendiente/v.tasa_dollar,2))) as saldo,	IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuesto,TRUNCATE(v.montopendiente,2))) as saldob,IF(d2.nrodias is null,0,d2.nrodias)-((IF(v.estado='Pagada',DATEDIFF(DATE(c14.fecha_hora),DATE(v.fecha_hora)),IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho)))))) as diacredito,IF(d2.nrodias is null,0,d2.nrodias) as dcredito FROM venta v INNER JOIN persona p ON p.idpersona=v.idcliente LEFT JOIN clientedatosfinanciero cf ON cf.idpersona=v.idcliente 	LEFT JOIN diasdecreditos d2 ON d2.iddiasdecredito=cf.iddiasdecredito INNER JOIN usuario u ON v.idusuario=u.idusuario	LEFT JOIN vendedor ve ON ve.idvendedor=p.idvendedor LEFT JOIN subzona s ON s.idsubzona=p.idzona LEFT JOIN zona z ON z.idzona=ve.idzona LEFT JOIN (SELECT MAX(c1.fecha_hora) as fecha_hora,d1.iddocumento FROM detalle_cobros d1 INNER JOIN cobros c1 ON c1.idcobrocliente=d1.idcobrocliente GROUP BY d1.iddocumento) c14 ON c14.iddocumento=v.idventa WHERE DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' ORDER BY p.nombre,v.num_comprobante";
		   // $sql="SELECT *,IF(v.fechadespacho='0000-00-00','sin fecha',date_format(DATE(v.fechadespacho), '%d-%m-%Y')) fechadespacho,IF(v.estado='Pagada',DATEDIFF(DATE(c14.fecha_hora),DATE(v.fecha_hora)),IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho)))) as diasdecobranza,date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha,			u.nombre as usuario,p.nombre as cliente,ve.nombre as vendedor,s.nombre as subzona,z.nombre as zona,IF(c14.fecha_hora='0000-00-00','',DATE(c14.fecha_hora)) as fechapago,v.estado as estadodocumento,			IF(v.tipo_comprobante='Regalo',0,(v.total_ventaimpuestod-v.montocxc-v.montodev+v.montoigtfporcentaje)) as deuda,IF(v.tipo_comprobante='Regalo',0,(v.total_ventaimpuesto-v.montocxc*v.tasa_dollar-v.montodev*v.tasa_dollar+v.montoigtfporcentaje*v.tasa_dollar)) as deudab,IF(v.tipo_comprobante='Regalo',0,((v.total_ventaimpuestod-v.montocxc-v.montodev+v.montoigtfporcentaje) - IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuestod,TRUNCATE(v.montopendiente/v.tasa_dollar,2))))) as cobrado,IF(v.tipo_comprobante='Regalo',0,((v.total_ventaimpuesto-v.montocxc*v.tasa_dollar-v.montodev*v.tasa_dollar+v.montoigtfporcentaje*v.tasa_dollar) - IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuesto,TRUNCATE(v.montopendiente,2))))) as cobradob,IF(v.tipo_comprobante='Regalo',0,(IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuestod,TRUNCATE(v.montopendiente/v.tasa_dollar,2))))) as saldo,IF(v.tipo_comprobante='Regalo',0,(IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuesto,TRUNCATE(v.montopendiente,2)))))	 as saldob,IF(d2.nrodias is null,0,d2.nrodias)-((IF(v.estado='Pagada',DATEDIFF(DATE(c14.fecha_hora),DATE(v.fecha_hora)),IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho)))))) as diacredito,IF(d2.nrodias is null,0,d2.nrodias) as dcredito FROM venta v INNER JOIN persona p ON p.idpersona=v.idcliente LEFT JOIN clientedatosfinanciero cf ON cf.idpersona=v.idcliente 	LEFT JOIN diasdecreditos d2 ON d2.iddiasdecredito=cf.iddiasdecredito INNER JOIN usuario u ON v.idusuario=u.idusuario	LEFT JOIN vendedor ve ON ve.idvendedor=p.idvendedor LEFT JOIN subzona s ON s.idsubzona=p.idzona LEFT JOIN zona z ON z.idzona=ve.idzona LEFT JOIN (SELECT MAX(c1.fecha_hora) as fecha_hora,d1.iddocumento FROM detalle_cobros d1 INNER JOIN cobros c1 ON c1.idcobrocliente=d1.idcobrocliente GROUP BY d1.iddocumento) c14 ON c14.iddocumento=v.idventa WHERE DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' ORDER BY p.nombre,v.num_comprobante";
		    //$sql="SELECT *,IF(v.fechadespacho='0000-00-00','sin fecha',date_format(DATE(v.fechadespacho), '%d-%m-%Y')) fechadespacho,IF(v.estado='Pagada',DATEDIFF(DATE(c14.fecha_hora),DATE(v.fecha_hora)),IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho)))) as diasdecobranza,date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha,			u.nombre as usuario,p.nombre as cliente,ve.nombre as vendedor,s.nombre as subzona,z.nombre as zona,IF(c14.fecha_hora='0000-00-00','',DATE(c14.fecha_hora)) as fechapago,v.estado as estadodocumento,base.deudad as deuda,			base.deuda as deudab,base.cobradod as cobrado,base.cobrado cobradob,base.porcobrard as saldo,base.porcobrar	 as saldob,IF(d2.nrodias is null,0,d2.nrodias)-((IF(v.estado='Pagada',DATEDIFF(DATE(c14.fecha_hora),DATE(v.fecha_hora)),IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho)))))) as diacredito,IF(d2.nrodias is null,0,d2.nrodias) as dcredito FROM venta v LEFT JOIN (SELECT p.idpersona as idcliente, p.nombre as cliente, v.num_comprobante as nrodocumento, v.num_comprobante1 as nrodocumento1,v.tipo_comprobante as documento, IF(v.estado='Anulado',0,IF(v.tipo_comprobante='Regalo',0,v.total_ventaimpuesto)) as deuda, IF(v.estado='Anulado',0,IF(v.tipo_comprobante='Regalo',0,v.total_ventaimpuestod+v.montoigtfporcentaje-v.montocxc-v.montodev)) as deudad, IF(v.estado='Pagada',v.total_ventaimpuesto+v.montoigtfporcentaje/v.tasa_dollar-v.montocxc*v.tasa_dollar-v.montodev*v.tasa_dollar,IF(v.montopendiente>0,v.total_ventaimpuesto+v.montoigtfporcentaje/v.tasa_dollar-v.montopendiente-v.montocxc*v.tasa_dollar-v.montodev*v.tasa_dollar,0)) as cobrado, IF(v.estado='Pagada',v.total_ventaimpuestod+v.montoigtfporcentaje-v.montocxc-v.montodev,IF(v.montopendiente>0,(v.total_ventaimpuestod+v.montoigtfporcentaje)-(v.montopendiente/v.tasa_dollar)-v.montocxc-v.montodev,0)) as cobradod, IF(v.estado='Anulado',0,(IF(v.estado<>'Pagada',IF(v.montopendiente>0,v.montopendiente+v.montoigtfporcentaje/v.tasa_dollar,v.total_ventaimpuesto+v.montoigtfporcentaje/v.tasa_dollar),0))) as porcobrar, IF(v.estado='Anulado',0,(IF(v.estado<>'Pagada',IF(v.montopendiente>0,(v.montopendiente/v.tasa_dollar),v.total_ventaimpuestod+v.montoigtfporcentaje-v.montocxc-v.montodev),0))) as porcobrard, v.estado,IF(v.montocxc+v.montodev>0,'si','no') AS notacredito,v.idventa,DATE_FORMAT(v.fecha_hora, '%d-%m-%Y') as fecha,IF(v.fechadespacho='0000-00-00',DATE_FORMAT(v.fecha_hora, '%d-%m-%Y'),DATE_FORMAT(v.fechadespacho, '%d-%m-%Y')) AS fechadespacho,p.agenteretencion FROM persona p INNER JOIN venta v ON p.idpersona=v.idcliente  GROUP BY p.idpersona, v.idventa UNION ALL SELECT p.idpersona as idcliente, p.nombre as cliente, '' as nrodocumento, v.num_notadebito as nrodocumento1,v.tipo_comprobante as documento, v.total_credito as deuda, v.total_creditod as deudad, IF(v.estado='Pagada',v.total_credito,IF(v.montopendiente>0,v.total_credito-v.montopendiente,0)) as cobrado, IF(v.estado='Pagada',v.total_creditod,IF(v.montopendiente>0,(v.total_creditod)-(v.montopendiente/v.tasa_dollar),0)) as cobradod, IF(v.estado<>'Pagada',IF(v.montopendiente>0,v.montopendiente,v.total_credito),0) as porcobrar, IF(v.estado<>'Pagada',IF(v.montopendiente>0,(v.montopendiente/v.tasa_dollar),v.total_creditod),0) as porcobrard, v.estado,'no' AS notacredito,v.idnotadebito AS idventa,DATE_FORMAT(v.fecha_hora, '%d-%m-%Y') as fecha,IF(v.fecha_hora='0000-00-00',DATE_FORMAT(v.fecha_hora, '%d-%m-%Y'),DATE_FORMAT(v.fecha_hora, '%d-%m-%Y')) AS fechadespacho,p.agenteretencion FROM persona p INNER JOIN notadebito v ON p.idpersona=v.idcliente  GROUP BY p.idpersona, v.idnotadebito) base ON base.idventa=v.idventa LEFT JOIN persona p ON p.idpersona=v.idcliente LEFT JOIN clientedatosfinanciero cf ON cf.idpersona=v.idcliente 	LEFT JOIN diasdecreditos d2 ON d2.iddiasdecredito=cf.iddiasdecredito LEFT JOIN usuario u ON v.idusuario=u.idusuario	LEFT JOIN vendedor ve ON ve.idvendedor=p.idvendedor LEFT JOIN subzona s ON s.idsubzona=p.idzona LEFT JOIN zona z ON z.idzona=ve.idzona LEFT JOIN (SELECT MAX(c1.fecha_hora) as fecha_hora,d1.iddocumento FROM detalle_cobros d1 INNER JOIN cobros c1 ON c1.idcobrocliente=d1.idcobrocliente GROUP BY d1.iddocumento) c14 ON c14.iddocumento=v.idventa WHERE DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' ORDER BY p.nombre,v.num_comprobante";
		    $sql="SELECT *,IF(v.fechadespacho='0000-00-00','sin fecha',date_format(DATE(v.fechadespacho), '%d-%m-%Y')) fechadespacho,IF(v.estado='Pagada',DATEDIFF(DATE(c14.fecha_hora),DATE(v.fecha_hora)),IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho)))) as diasdecobranza,date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha,			u.nombre as usuario,p.nombre as cliente,ve.nombre as vendedor,s.nombre as subzona,z.nombre as zona,IF(c14.fecha_hora='0000-00-00','',DATE(c14.fecha_hora)) as fechapago,v.estado as estadodocumento,FORMAT(base.deudad,2) as deuda,			FORMAT(base.deuda,2) as deudab,FORMAT(base.pagadod,2) as cobrado,FORMAT(base.pagado,2) cobradob,FORMAT(base.saldod,2) as saldo,FORMAT(base.saldo,2)	 as saldob,IF(d2.nrodias is null,0,d2.nrodias)-((IF(v.estado='Pagada',DATEDIFF(DATE(c14.fecha_hora),DATE(v.fecha_hora)),IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho)))))) as diacredito,IF(d2.nrodias is null,0,d2.nrodias) as dcredito FROM (SELECT vt.idventa,p.idpersona as idcliente,p.nombre,p.num_documento as rif_ci,SUM(vt.deuda) AS deuda, SUM(vt.deudad) AS deudad, SUM(vt.pagado) as pagado,	SUM(vt.pagadod) as pagadod, 	SUM(vt.saldo) as saldo, 	SUM(vt.saldod) as saldod, vt.notacredito,		vt.fecha  as fecha,	MIN(vt.fechanumero) as fechanumero, vt.rank AS rank, sum(vt.montoigtf) as montoigtf, SUM(vt.montoigtfporcentaje) as montoigtfporcentaje,SUM(vt.nrodocumento) as nrodocumento  FROM ((SELECT v.idventa,v.idcliente as idcliente, IF(v.tipo_comprobante='Regado',0,( SUM(IF(v.estado='Anulado',0,IF((v.total_ventaimpuestod-v.montocxc-v.montodev)<=0,0,v.total_ventaimpuesto-v.montocxc*v.tasa_dollar-v.montodev*v.tasa_dollar+v.montoigtfporcentaje*v.tasa_dollar))))) AS deuda, IF(v.tipo_comprobante='Regalo',0,(SUM(IF(v.estado='Anulado',0,IF((v.total_ventaimpuestod-v.montocxc-v.montodev)<=0,0,v.total_ventaimpuestod-v.montocxc-v.montodev)))+SUM(v.montoigtfporcentaje))) AS deudad, IF(v.tipo_comprobante='Regalo',0,(SUM(IF(v.estado='Pagada',v.total_ventaimpuesto+v.montoigtfporcentaje/v.tasa_dollar,IF(v.estado='Parcial',v.total_ventaimpuesto-v.montocxc*v.tasa_dollar-v.montodev*v.tasa_dollar+v.montoigtfporcentaje*v.tasa_dollar-v.montopendiente,0))))) as pagado,	IF(v.tipo_comprobante='Regalo',0,(SUM(IF(v.estado='Pagada',v.total_ventaimpuestod+v.montoigtfporcentaje-v.montocxc-v.montodev,IF(v.estado='Parcial',v.total_ventaimpuestod-v.montocxc-v.montodev+v.montoigtfporcentaje-(v.montopendiente/v.tasa_dollar),0))))) as pagadod, 	 IF(v.tipo_comprobante='Regalo',0,(SUM(IF(v.estado='Pendiente', v.total_ventaimpuesto+v.montoigtfporcentaje/v.tasa_dollar-v.montocxc*v.tasa_dollar-v.montodev*v.tasa_dollar,IF(v.estado='Parcial',v.montopendiente,0))))) as saldo,IF(v.tipo_comprobante='Regalo',0,(SUM(IF(v.estado='Pendiente', v.total_ventaimpuestod+v.montoigtfporcentaje-v.montocxc-v.montodev,IF(v.estado='Parcial',v.montopendiente/v.tasa_dollar,0))))) as saldod, 	IF(v.montocxc+v.montodev>0,'si','no') as notacredito,		 DATE_FORMAT(MIN(IF(v.estado='Pendiente',v.fecha_hora,IF(v.estado='Parcial',v.fecha_hora,'2121-01-01'))),'%d-%m-%Y')  as fecha,	DATEDIFF(MIN(IF(v.estado='Pendiente',v.fecha_hora,IF(v.estado='Parcial',v.fecha_hora,'2121-01-01'))),'1899-12-30') as fechanumero, v.fecha_hora,IF((SUM(IF(v.estado='Pendiente', v.total_ventaimpuesto-v.montocxc*v.tasa_dollar-v.montodev*v.tasa_dollar,IF(v.estado='Parcial',v.montopendiente-v.montocxc*v.tasa_dollar-v.montodev*v.tasa_dollar,0))))=0,0,@curRank := @curRank + 1) AS rank, sum(v.montoigtf) as montoigtf, SUM(v.montoigtfporcentaje) as montoigtfporcentaje,COUNT(v.idventa) as nrodocumento FROM venta v, (SELECT @curRank := 0) q  GROUP BY v.idventa UNION ALL SELECT v.idnotadebito+10000000 as idventa,v.idcliente as idcliente, SUM(IF(v.estado='Anulado',0,v.total_credito)) AS deuda, SUM(IF(v.estado='Anulado',0,v.total_creditod)) AS deudad, SUM(IF(v.estado='Pagada',v.total_credito,IF(v.estado='Parcial',v.total_credito-v.montopendiente,0))) as pagado,	SUM(IF(v.estado='Pagada',v.total_creditod,IF(v.estado='Parcial',v.total_creditod-(v.montopendiente/v.tasa_dollar),0))) as pagadod, SUM(IF(v.estado='Pendiente', v.total_credito,IF(v.estado='Parcial',v.montopendiente,0))) as saldo, 	 SUM(IF(v.estado='Pendiente', v.total_creditod,IF(v.estado='Parcial',v.montopendiente/v.tasa_dollar,0))) as saldod, 'no' as notacredito, DATE_FORMAT(MIN(IF(v.estado='Pendiente',v.fecha_hora,IF(v.estado='Parcial',v.fecha_hora,'2121-01-01'))),'%d-%m-%Y')  as fecha,	DATEDIFF(MIN(IF(v.estado='Pendiente',v.fecha_hora,IF(v.estado='Parcial',v.fecha_hora,'2121-01-01'))),'1899-12-30') as fechanumero, v.fecha_hora, IF((SUM(IF(v.estado='Pendiente', v.total_creditod,IF(v.estado='Parcial',v.montopendiente,0))))=0,0,@curRank := @curRank + 1) AS rank, 0 as montoigtf, 0 as montoigtfporcentaje,COUNT(v.idventa) as nrodocumento  FROM notadebito v,(SELECT @curRank := 0) q  GROUP BY v.idnotadebito)) vt LEFT JOIN persona p ON p.idpersona=vt.idcliente GROUP BY vt.idventa	ORDER BY vt.idventa ASC) base LEFT JOIN venta v ON v.idventa=base.idventa LEFT JOIN persona p ON p.idpersona=v.idcliente LEFT JOIN clientedatosfinanciero cf ON cf.idpersona=v.idcliente 	LEFT JOIN diasdecreditos d2 ON d2.iddiasdecredito=cf.iddiasdecredito LEFT JOIN usuario u ON v.idusuario=u.idusuario	LEFT JOIN vendedor ve ON ve.idvendedor=p.idvendedor LEFT JOIN subzona s ON s.idsubzona=p.idzona LEFT JOIN zona z ON z.idzona=ve.idzona LEFT JOIN (SELECT MAX(c1.fecha_hora) as fecha_hora,d1.iddocumento FROM detalle_cobros d1 INNER JOIN cobros c1 ON c1.idcobrocliente=d1.idcobrocliente GROUP BY d1.iddocumento) c14 ON c14.iddocumento=v.idventa WHERE DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' ORDER BY p.nombre,v.num_comprobante";
		else{
			$sql="SELECT *,IF(v.fechadespacho='0000-00-00','sin fecha',date_format(DATE(v.fechadespacho), '%d-%m-%Y')) fechadespacho,IF(v.estado='Pagada',DATEDIFF(DATE(c14.fecha_hora),DATE(v.fecha_hora)),IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho)))) as diasdecobranza,date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha,			u.nombre as usuario,p.nombre as cliente,ve.nombre as vendedor,s.nombre as subzona,z.nombre as zona,IF(c14.fecha_hora='0000-00-00','',DATE(c14.fecha_hora)) as fechapago,v.estado as estadodocumento,FORMAT(base.deudad,2) as deuda,			FORMAT(base.deuda,2) as deudab,FORMAT(base.pagadod,2) as cobrado,FORMAT(base.pagado,2) cobradob,FORMAT(base.saldod,2) as saldo,FORMAT(base.saldo,2)	 as saldob,IF(d2.nrodias is null,0,d2.nrodias)-((IF(v.estado='Pagada',DATEDIFF(DATE(c14.fecha_hora),DATE(v.fecha_hora)),IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho)))))) as diacredito,IF(d2.nrodias is null,0,d2.nrodias) as dcredito FROM (SELECT vt.idventa,p.idpersona as idcliente,p.nombre,p.num_documento as rif_ci,SUM(vt.deuda) AS deuda, SUM(vt.deudad) AS deudad, SUM(vt.pagado) as pagado,	SUM(vt.pagadod) as pagadod, 	SUM(vt.saldo) as saldo, 	SUM(vt.saldod) as saldod, vt.notacredito,		vt.fecha  as fecha,	MIN(vt.fechanumero) as fechanumero, vt.rank AS rank, sum(vt.montoigtf) as montoigtf, SUM(vt.montoigtfporcentaje) as montoigtfporcentaje,SUM(vt.nrodocumento) as nrodocumento  FROM ((SELECT v.idventa,v.idcliente as idcliente, IF(v.tipo_comprobante='Regado',0,( SUM(IF(v.estado='Anulado',0,IF((v.total_ventaimpuestod-v.montocxc-v.montodev)<=0,0,v.total_ventaimpuesto-v.montocxc*v.tasa_dollar-v.montodev*v.tasa_dollar+v.montoigtfporcentaje*v.tasa_dollar))))) AS deuda, IF(v.tipo_comprobante='Regalo',0,(SUM(IF(v.estado='Anulado',0,IF((v.total_ventaimpuestod-v.montocxc-v.montodev)<=0,0,v.total_ventaimpuestod-v.montocxc-v.montodev)))+SUM(v.montoigtfporcentaje))) AS deudad, IF(v.tipo_comprobante='Regalo',0,(SUM(IF(v.estado='Pagada',v.total_ventaimpuesto+v.montoigtfporcentaje/v.tasa_dollar,IF(v.estado='Parcial',v.total_ventaimpuesto-v.montocxc*v.tasa_dollar-v.montodev*v.tasa_dollar+v.montoigtfporcentaje*v.tasa_dollar-v.montopendiente,0))))) as pagado,	IF(v.tipo_comprobante='Regalo',0,(SUM(IF(v.estado='Pagada',v.total_ventaimpuestod+v.montoigtfporcentaje-v.montocxc-v.montodev,IF(v.estado='Parcial',v.total_ventaimpuestod-v.montocxc-v.montodev+v.montoigtfporcentaje-(v.montopendiente/v.tasa_dollar),0))))) as pagadod, 	 IF(v.tipo_comprobante='Regalo',0,(SUM(IF(v.estado='Pendiente', v.total_ventaimpuesto+v.montoigtfporcentaje/v.tasa_dollar-v.montocxc*v.tasa_dollar-v.montodev*v.tasa_dollar,IF(v.estado='Parcial',v.montopendiente,0))))) as saldo,IF(v.tipo_comprobante='Regalo',0,(SUM(IF(v.estado='Pendiente', v.total_ventaimpuestod+v.montoigtfporcentaje-v.montocxc-v.montodev,IF(v.estado='Parcial',v.montopendiente/v.tasa_dollar,0))))) as saldod, 	IF(v.montocxc+v.montodev>0,'si','no') as notacredito,		 DATE_FORMAT(MIN(IF(v.estado='Pendiente',v.fecha_hora,IF(v.estado='Parcial',v.fecha_hora,'2121-01-01'))),'%d-%m-%Y')  as fecha,	DATEDIFF(MIN(IF(v.estado='Pendiente',v.fecha_hora,IF(v.estado='Parcial',v.fecha_hora,'2121-01-01'))),'1899-12-30') as fechanumero, v.fecha_hora,IF((SUM(IF(v.estado='Pendiente', v.total_ventaimpuesto-v.montocxc*v.tasa_dollar-v.montodev*v.tasa_dollar,IF(v.estado='Parcial',v.montopendiente-v.montocxc*v.tasa_dollar-v.montodev*v.tasa_dollar,0))))=0,0,@curRank := @curRank + 1) AS rank, sum(v.montoigtf) as montoigtf, SUM(v.montoigtfporcentaje) as montoigtfporcentaje,COUNT(v.idventa) as nrodocumento FROM venta v, (SELECT @curRank := 0) q  GROUP BY v.idventa UNION ALL SELECT v.idnotadebito+10000000 as idventa,v.idcliente as idcliente, SUM(IF(v.estado='Anulado',0,v.total_credito)) AS deuda, SUM(IF(v.estado='Anulado',0,v.total_creditod)) AS deudad, SUM(IF(v.estado='Pagada',v.total_credito,IF(v.estado='Parcial',v.total_credito-v.montopendiente,0))) as pagado,	SUM(IF(v.estado='Pagada',v.total_creditod,IF(v.estado='Parcial',v.total_creditod-(v.montopendiente/v.tasa_dollar),0))) as pagadod, SUM(IF(v.estado='Pendiente', v.total_credito,IF(v.estado='Parcial',v.montopendiente,0))) as saldo, 	 SUM(IF(v.estado='Pendiente', v.total_creditod,IF(v.estado='Parcial',v.montopendiente/v.tasa_dollar,0))) as saldod, 'no' as notacredito, DATE_FORMAT(MIN(IF(v.estado='Pendiente',v.fecha_hora,IF(v.estado='Parcial',v.fecha_hora,'2121-01-01'))),'%d-%m-%Y')  as fecha,	DATEDIFF(MIN(IF(v.estado='Pendiente',v.fecha_hora,IF(v.estado='Parcial',v.fecha_hora,'2121-01-01'))),'1899-12-30') as fechanumero, v.fecha_hora, IF((SUM(IF(v.estado='Pendiente', v.total_creditod,IF(v.estado='Parcial',v.montopendiente,0))))=0,0,@curRank := @curRank + 1) AS rank, 0 as montoigtf, 0 as montoigtfporcentaje,COUNT(v.idventa) as nrodocumento  FROM notadebito v,(SELECT @curRank := 0) q  GROUP BY v.idnotadebito)) vt LEFT JOIN persona p ON p.idpersona=vt.idcliente GROUP BY vt.idventa	ORDER BY vt.idventa ASC) base LEFT JOIN venta v ON v.idventa=base.idventa LEFT JOIN persona p ON p.idpersona=v.idcliente LEFT JOIN clientedatosfinanciero cf ON cf.idpersona=v.idcliente 	LEFT JOIN diasdecreditos d2 ON d2.iddiasdecredito=cf.iddiasdecredito LEFT JOIN usuario u ON v.idusuario=u.idusuario	LEFT JOIN vendedor ve ON ve.idvendedor=p.idvendedor LEFT JOIN subzona s ON s.idsubzona=p.idzona LEFT JOIN zona z ON z.idzona=ve.idzona LEFT JOIN (SELECT MAX(c1.fecha_hora) as fecha_hora,d1.iddocumento FROM detalle_cobros d1 INNER JOIN cobros c1 ON c1.idcobrocliente=d1.idcobrocliente GROUP BY d1.iddocumento) c14 ON c14.iddocumento=v.idventa WHERE DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' AND v.idvendedor='$idvendedor' ORDER BY p.nombre,v.num_comprobante";
		}
	}else{
		if ($idvendedor==0)
			$sql="SELECT *,IF(v.fechadespacho='0000-00-00','sin fecha',date_format(DATE(v.fechadespacho), '%d-%m-%Y')) fechadespacho,IF(v.estado='Pagada',DATEDIFF(DATE(c14.fecha_hora),DATE(v.fecha_hora)),IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho)))) as diasdecobranza,date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha,			u.nombre as usuario,p.nombre as cliente,ve.nombre as vendedor,s.nombre as subzona,z.nombre as zona,IF(c14.fecha_hora='0000-00-00','',DATE(c14.fecha_hora)) as fechapago,v.estado as estadodocumento,FORMAT(base.deudad,2) as deuda,			FORMAT(base.deuda,2) as deudab,FORMAT(base.pagadod,2) as cobrado,FORMAT(base.pagado,2) cobradob,FORMAT(base.saldod,2) as saldo,FORMAT(base.saldo,2)	 as saldob,IF(d2.nrodias is null,0,d2.nrodias)-((IF(v.estado='Pagada',DATEDIFF(DATE(c14.fecha_hora),DATE(v.fecha_hora)),IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho)))))) as diacredito,IF(d2.nrodias is null,0,d2.nrodias) as dcredito FROM (SELECT vt.idventa,p.idpersona as idcliente,p.nombre,p.num_documento as rif_ci,SUM(vt.deuda) AS deuda, SUM(vt.deudad) AS deudad, SUM(vt.pagado) as pagado,	SUM(vt.pagadod) as pagadod, 	SUM(vt.saldo) as saldo, 	SUM(vt.saldod) as saldod, vt.notacredito,		vt.fecha  as fecha,	MIN(vt.fechanumero) as fechanumero, vt.rank AS rank, sum(vt.montoigtf) as montoigtf, SUM(vt.montoigtfporcentaje) as montoigtfporcentaje,SUM(vt.nrodocumento) as nrodocumento  FROM ((SELECT v.idventa,v.idcliente as idcliente, IF(v.tipo_comprobante='Regado',0,( SUM(IF(v.estado='Anulado',0,IF((v.total_ventaimpuestod-v.montocxc-v.montodev)<=0,0,v.total_ventaimpuesto-v.montocxc*v.tasa_dollar-v.montodev*v.tasa_dollar+v.montoigtfporcentaje*v.tasa_dollar))))) AS deuda, IF(v.tipo_comprobante='Regalo',0,(SUM(IF(v.estado='Anulado',0,IF((v.total_ventaimpuestod-v.montocxc-v.montodev)<=0,0,v.total_ventaimpuestod-v.montocxc-v.montodev)))+SUM(v.montoigtfporcentaje))) AS deudad, IF(v.tipo_comprobante='Regalo',0,(SUM(IF(v.estado='Pagada',v.total_ventaimpuesto+v.montoigtfporcentaje/v.tasa_dollar,IF(v.estado='Parcial',v.total_ventaimpuesto-v.montocxc*v.tasa_dollar-v.montodev*v.tasa_dollar+v.montoigtfporcentaje*v.tasa_dollar-v.montopendiente,0))))) as pagado,	IF(v.tipo_comprobante='Regalo',0,(SUM(IF(v.estado='Pagada',v.total_ventaimpuestod+v.montoigtfporcentaje-v.montocxc-v.montodev,IF(v.estado='Parcial',v.total_ventaimpuestod-v.montocxc-v.montodev+v.montoigtfporcentaje-(v.montopendiente/v.tasa_dollar),0))))) as pagadod, 	 IF(v.tipo_comprobante='Regalo',0,(SUM(IF(v.estado='Pendiente', v.total_ventaimpuesto+v.montoigtfporcentaje/v.tasa_dollar-v.montocxc*v.tasa_dollar-v.montodev*v.tasa_dollar,IF(v.estado='Parcial',v.montopendiente,0))))) as saldo,IF(v.tipo_comprobante='Regalo',0,(SUM(IF(v.estado='Pendiente', v.total_ventaimpuestod+v.montoigtfporcentaje-v.montocxc-v.montodev,IF(v.estado='Parcial',v.montopendiente/v.tasa_dollar,0))))) as saldod, 	IF(v.montocxc+v.montodev>0,'si','no') as notacredito,		 DATE_FORMAT(MIN(IF(v.estado='Pendiente',v.fecha_hora,IF(v.estado='Parcial',v.fecha_hora,'2121-01-01'))),'%d-%m-%Y')  as fecha,	DATEDIFF(MIN(IF(v.estado='Pendiente',v.fecha_hora,IF(v.estado='Parcial',v.fecha_hora,'2121-01-01'))),'1899-12-30') as fechanumero, v.fecha_hora,IF((SUM(IF(v.estado='Pendiente', v.total_ventaimpuesto-v.montocxc*v.tasa_dollar-v.montodev*v.tasa_dollar,IF(v.estado='Parcial',v.montopendiente-v.montocxc*v.tasa_dollar-v.montodev*v.tasa_dollar,0))))=0,0,@curRank := @curRank + 1) AS rank, sum(v.montoigtf) as montoigtf, SUM(v.montoigtfporcentaje) as montoigtfporcentaje,COUNT(v.idventa) as nrodocumento FROM venta v, (SELECT @curRank := 0) q  GROUP BY v.idventa UNION ALL SELECT v.idnotadebito+10000000 as idventa,v.idcliente as idcliente, SUM(IF(v.estado='Anulado',0,v.total_credito)) AS deuda, SUM(IF(v.estado='Anulado',0,v.total_creditod)) AS deudad, SUM(IF(v.estado='Pagada',v.total_credito,IF(v.estado='Parcial',v.total_credito-v.montopendiente,0))) as pagado,	SUM(IF(v.estado='Pagada',v.total_creditod,IF(v.estado='Parcial',v.total_creditod-(v.montopendiente/v.tasa_dollar),0))) as pagadod, SUM(IF(v.estado='Pendiente', v.total_credito,IF(v.estado='Parcial',v.montopendiente,0))) as saldo, 	 SUM(IF(v.estado='Pendiente', v.total_creditod,IF(v.estado='Parcial',v.montopendiente/v.tasa_dollar,0))) as saldod, 'no' as notacredito, DATE_FORMAT(MIN(IF(v.estado='Pendiente',v.fecha_hora,IF(v.estado='Parcial',v.fecha_hora,'2121-01-01'))),'%d-%m-%Y')  as fecha,	DATEDIFF(MIN(IF(v.estado='Pendiente',v.fecha_hora,IF(v.estado='Parcial',v.fecha_hora,'2121-01-01'))),'1899-12-30') as fechanumero, v.fecha_hora, IF((SUM(IF(v.estado='Pendiente', v.total_creditod,IF(v.estado='Parcial',v.montopendiente,0))))=0,0,@curRank := @curRank + 1) AS rank, 0 as montoigtf, 0 as montoigtfporcentaje,COUNT(v.idventa) as nrodocumento  FROM notadebito v,(SELECT @curRank := 0) q  GROUP BY v.idnotadebito)) vt LEFT JOIN persona p ON p.idpersona=vt.idcliente GROUP BY vt.idventa	ORDER BY vt.idventa ASC) base LEFT JOIN venta v ON v.idventa=base.idventa LEFT JOIN persona p ON p.idpersona=v.idcliente LEFT JOIN clientedatosfinanciero cf ON cf.idpersona=v.idcliente 	LEFT JOIN diasdecreditos d2 ON d2.iddiasdecredito=cf.iddiasdecredito LEFT JOIN usuario u ON v.idusuario=u.idusuario	LEFT JOIN vendedor ve ON ve.idvendedor=p.idvendedor LEFT JOIN subzona s ON s.idsubzona=p.idzona LEFT JOIN zona z ON z.idzona=ve.idzona LEFT JOIN (SELECT MAX(c1.fecha_hora) as fecha_hora,d1.iddocumento FROM detalle_cobros d1 INNER JOIN cobros c1 ON c1.idcobrocliente=d1.idcobrocliente GROUP BY d1.iddocumento) c14 ON c14.iddocumento=v.idventa WHERE DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' AND v.idcliente='$idcliente' ORDER BY p.nombre,v.num_comprobante";
		else{
			$sql="SELECT *,IF(v.fechadespacho='0000-00-00','sin fecha',date_format(DATE(v.fechadespacho), '%d-%m-%Y')) fechadespacho,IF(v.estado='Pagada',DATEDIFF(DATE(c14.fecha_hora),DATE(v.fecha_hora)),IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho)))) as diasdecobranza,date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha,			u.nombre as usuario,p.nombre as cliente,ve.nombre as vendedor,s.nombre as subzona,z.nombre as zona,IF(c14.fecha_hora='0000-00-00','',DATE(c14.fecha_hora)) as fechapago,v.estado as estadodocumento,FORMAT(base.deudad,2) as deuda,			FORMAT(base.deuda,2) as deudab,FORMAT(base.pagadod,2) as cobrado,FORMAT(base.pagado,2) cobradob,FORMAT(base.saldod,2) as saldo,FORMAT(base.saldo,2)	 as saldob,IF(d2.nrodias is null,0,d2.nrodias)-((IF(v.estado='Pagada',DATEDIFF(DATE(c14.fecha_hora),DATE(v.fecha_hora)),IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho)))))) as diacredito,IF(d2.nrodias is null,0,d2.nrodias) as dcredito FROM (SELECT vt.idventa,p.idpersona as idcliente,p.nombre,p.num_documento as rif_ci,SUM(vt.deuda) AS deuda, SUM(vt.deudad) AS deudad, SUM(vt.pagado) as pagado,	SUM(vt.pagadod) as pagadod, 	SUM(vt.saldo) as saldo, 	SUM(vt.saldod) as saldod, vt.notacredito,		vt.fecha  as fecha,	MIN(vt.fechanumero) as fechanumero, vt.rank AS rank, sum(vt.montoigtf) as montoigtf, SUM(vt.montoigtfporcentaje) as montoigtfporcentaje,SUM(vt.nrodocumento) as nrodocumento  FROM ((SELECT v.idventa,v.idcliente as idcliente, IF(v.tipo_comprobante='Regado',0,( SUM(IF(v.estado='Anulado',0,IF((v.total_ventaimpuestod-v.montocxc-v.montodev)<=0,0,v.total_ventaimpuesto-v.montocxc*v.tasa_dollar-v.montodev*v.tasa_dollar+v.montoigtfporcentaje*v.tasa_dollar))))) AS deuda, IF(v.tipo_comprobante='Regalo',0,(SUM(IF(v.estado='Anulado',0,IF((v.total_ventaimpuestod-v.montocxc-v.montodev)<=0,0,v.total_ventaimpuestod-v.montocxc-v.montodev)))+SUM(v.montoigtfporcentaje))) AS deudad, IF(v.tipo_comprobante='Regalo',0,(SUM(IF(v.estado='Pagada',v.total_ventaimpuesto+v.montoigtfporcentaje/v.tasa_dollar,IF(v.estado='Parcial',v.total_ventaimpuesto-v.montocxc*v.tasa_dollar-v.montodev*v.tasa_dollar+v.montoigtfporcentaje*v.tasa_dollar-v.montopendiente,0))))) as pagado,	IF(v.tipo_comprobante='Regalo',0,(SUM(IF(v.estado='Pagada',v.total_ventaimpuestod+v.montoigtfporcentaje-v.montocxc-v.montodev,IF(v.estado='Parcial',v.total_ventaimpuestod-v.montocxc-v.montodev+v.montoigtfporcentaje-(v.montopendiente/v.tasa_dollar),0))))) as pagadod, 	 IF(v.tipo_comprobante='Regalo',0,(SUM(IF(v.estado='Pendiente', v.total_ventaimpuesto+v.montoigtfporcentaje/v.tasa_dollar-v.montocxc*v.tasa_dollar-v.montodev*v.tasa_dollar,IF(v.estado='Parcial',v.montopendiente,0))))) as saldo,IF(v.tipo_comprobante='Regalo',0,(SUM(IF(v.estado='Pendiente', v.total_ventaimpuestod+v.montoigtfporcentaje-v.montocxc-v.montodev,IF(v.estado='Parcial',v.montopendiente/v.tasa_dollar,0))))) as saldod, 	IF(v.montocxc+v.montodev>0,'si','no') as notacredito,		 DATE_FORMAT(MIN(IF(v.estado='Pendiente',v.fecha_hora,IF(v.estado='Parcial',v.fecha_hora,'2121-01-01'))),'%d-%m-%Y')  as fecha,	DATEDIFF(MIN(IF(v.estado='Pendiente',v.fecha_hora,IF(v.estado='Parcial',v.fecha_hora,'2121-01-01'))),'1899-12-30') as fechanumero, v.fecha_hora,IF((SUM(IF(v.estado='Pendiente', v.total_ventaimpuesto-v.montocxc*v.tasa_dollar-v.montodev*v.tasa_dollar,IF(v.estado='Parcial',v.montopendiente-v.montocxc*v.tasa_dollar-v.montodev*v.tasa_dollar,0))))=0,0,@curRank := @curRank + 1) AS rank, sum(v.montoigtf) as montoigtf, SUM(v.montoigtfporcentaje) as montoigtfporcentaje,COUNT(v.idventa) as nrodocumento FROM venta v, (SELECT @curRank := 0) q  GROUP BY v.idventa UNION ALL SELECT v.idnotadebito+10000000 as idventa,v.idcliente as idcliente, SUM(IF(v.estado='Anulado',0,v.total_credito)) AS deuda, SUM(IF(v.estado='Anulado',0,v.total_creditod)) AS deudad, SUM(IF(v.estado='Pagada',v.total_credito,IF(v.estado='Parcial',v.total_credito-v.montopendiente,0))) as pagado,	SUM(IF(v.estado='Pagada',v.total_creditod,IF(v.estado='Parcial',v.total_creditod-(v.montopendiente/v.tasa_dollar),0))) as pagadod, SUM(IF(v.estado='Pendiente', v.total_credito,IF(v.estado='Parcial',v.montopendiente,0))) as saldo, 	 SUM(IF(v.estado='Pendiente', v.total_creditod,IF(v.estado='Parcial',v.montopendiente/v.tasa_dollar,0))) as saldod, 'no' as notacredito, DATE_FORMAT(MIN(IF(v.estado='Pendiente',v.fecha_hora,IF(v.estado='Parcial',v.fecha_hora,'2121-01-01'))),'%d-%m-%Y')  as fecha,	DATEDIFF(MIN(IF(v.estado='Pendiente',v.fecha_hora,IF(v.estado='Parcial',v.fecha_hora,'2121-01-01'))),'1899-12-30') as fechanumero, v.fecha_hora, IF((SUM(IF(v.estado='Pendiente', v.total_creditod,IF(v.estado='Parcial',v.montopendiente,0))))=0,0,@curRank := @curRank + 1) AS rank, 0 as montoigtf, 0 as montoigtfporcentaje,COUNT(v.idventa) as nrodocumento  FROM notadebito v,(SELECT @curRank := 0) q  GROUP BY v.idnotadebito)) vt LEFT JOIN persona p ON p.idpersona=vt.idcliente GROUP BY vt.idventa	ORDER BY vt.idventa ASC) base LEFT JOIN venta v ON v.idventa=base.idventa LEFT JOIN persona p ON p.idpersona=v.idcliente LEFT JOIN clientedatosfinanciero cf ON cf.idpersona=v.idcliente 	LEFT JOIN diasdecreditos d2 ON d2.iddiasdecredito=cf.iddiasdecredito LEFT JOIN usuario u ON v.idusuario=u.idusuario	LEFT JOIN vendedor ve ON ve.idvendedor=p.idvendedor LEFT JOIN subzona s ON s.idsubzona=p.idzona LEFT JOIN zona z ON z.idzona=ve.idzona LEFT JOIN (SELECT MAX(c1.fecha_hora) as fecha_hora,d1.iddocumento FROM detalle_cobros d1 INNER JOIN cobros c1 ON c1.idcobrocliente=d1.idcobrocliente GROUP BY d1.iddocumento) c14 ON c14.iddocumento=v.idventa WHERE DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' AND v.idcliente='$idcliente' AND v.idvendedor='$idvendedor' ORDER BY p.nombre,v.num_comprobante";
		}
	}
	return ejecutarConsulta($sql);
}

public function diasdevencimientosaldopagadas($fecha_inicio,$fecha_fin,$idcliente,$idvendedor){
	if ($idcliente==0){
		if ($idvendedor==0)
			$sql="SELECT v.*,IF(v.fechadespacho='0000-00-00','sin fecha',date_format(DATE(v.fechadespacho), '%d-%m-%Y')) fechadespacho,IF(v.fechadespacho='0000-00-00','sin fecha',date_format(DATE_ADD(DATE(v.fechadespacho), INTERVAL 1 DAY), '%d-%m-%Y')) fechainiciocredito,IF(v.fechadespacho='0000-00-00','sin fecha',date_format((DATE_ADD(DATE(v.fechadespacho), INTERVAL (IF(d2.nrodias is null,0,d2.nrodias)+1) DAY)), '%d-%m-%Y'))	AS fechafindecredito,IF(d2.nrodias is null,0,d2.nrodias) as dcredito,date_format(DATE((IF(c14.fecha_hora='0000-00-00','',DATE(c14.fecha_hora)))),'%d-%m-%Y') as fechapago,DATEDIFF((DATE((IF(c14.fecha_hora='0000-00-00','',DATE(c14.fecha_hora))))),(DATE_ADD(DATE(v.fechadespacho), INTERVAL (IF(d2.nrodias is null,0,d2.nrodias)+1) DAY))) as diastranscurridos,IF(v.estado='Pagada',DATEDIFF(DATE(c14.fecha_hora),DATE(v.fecha_hora)),IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho)))) as diasdecobranza,date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha,u.nombre as usuario,p.nombre as cliente,ve.nombre as vendedor,s.nombre as subzona,z.nombre as zona,v.estado as estadodocumento,v.total_ventaimpuestod as deuda,v.total_ventaimpuesto as deudab,v.total_ventaimpuestod - IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuestod,TRUNCATE(v.montopendiente/v.tasa_dollar,2))) as cobrado,	v.total_ventaimpuesto - IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuesto,TRUNCATE(v.montopendiente,2))) as cobradob, IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuestod,TRUNCATE(v.montopendiente/v.tasa_dollar,2))) as saldo,	IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuesto,TRUNCATE(v.montopendiente,2))) as saldob,IF(d2.nrodias is null,0,d2.nrodias)-((IF(v.estado='Pagada',DATEDIFF(DATE(c14.fecha_hora),DATE(v.fecha_hora)),IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho)))))) as diacredito FROM venta v INNER JOIN persona p ON p.idpersona=v.idcliente LEFT JOIN clientedatosfinanciero cf ON cf.idpersona=v.idcliente 	LEFT JOIN diasdecreditos d2 ON d2.iddiasdecredito=cf.iddiasdecredito INNER JOIN usuario u ON v.idusuario=u.idusuario	LEFT JOIN vendedor ve ON ve.idvendedor=p.idvendedor LEFT JOIN subzona s ON s.idsubzona=p.idzona LEFT JOIN zona z ON z.idzona=ve.idzona LEFT JOIN (SELECT MAX(c1.fecha_hora) as fecha_hora,d1.iddocumento FROM detalle_cobros d1 INNER JOIN cobros c1 ON c1.idcobrocliente=d1.idcobrocliente GROUP BY d1.iddocumento) c14 ON c14.iddocumento=v.idventa WHERE DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' AND v.estado='Pagada' ORDER BY (IF(v.estado='Pagada',DATEDIFF(DATE(c14.fecha_hora),DATE(v.fecha_hora)),IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho))))),p.nombre,v.num_comprobante";
		else{
			$sql="SELECT v.*,IF(v.fechadespacho='0000-00-00','sin fecha',date_format(DATE(v.fechadespacho), '%d-%m-%Y')) fechadespacho,IF(v.fechadespacho='0000-00-00','sin fecha',date_format(DATE_ADD(DATE(v.fechadespacho), INTERVAL 1 DAY), '%d-%m-%Y')) fechainiciocredito,IF(v.fechadespacho='0000-00-00','sin fecha',date_format((DATE_ADD(DATE(v.fechadespacho), INTERVAL (IF(d2.nrodias is null,0,d2.nrodias)+1) DAY)), '%d-%m-%Y'))	AS fechafindecredito,IF(d2.nrodias is null,0,d2.nrodias) as dcredito,date_format(DATE((IF(c14.fecha_hora='0000-00-00','',DATE(c14.fecha_hora)))),'%d-%m-%Y') as fechapago,DATEDIFF((DATE((IF(c14.fecha_hora='0000-00-00','',DATE(c14.fecha_hora))))),(DATE_ADD(DATE(v.fechadespacho), INTERVAL (IF(d2.nrodias is null,0,d2.nrodias)+1) DAY))) as diastranscurridos,IF(v.estado='Pagada',DATEDIFF(DATE(c14.fecha_hora),DATE(v.fecha_hora)),IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho)))) as diasdecobranza,date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha,u.nombre as usuario,p.nombre as cliente,ve.nombre as vendedor,s.nombre as subzona,z.nombre as zona,v.estado as estadodocumento,v.total_ventaimpuestod as deuda,v.total_ventaimpuesto as deudab,v.total_ventaimpuestod - IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuestod,TRUNCATE(v.montopendiente/v.tasa_dollar,2))) as cobrado,	v.total_ventaimpuesto - IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuesto,TRUNCATE(v.montopendiente,2))) as cobradob, IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuestod,TRUNCATE(v.montopendiente/v.tasa_dollar,2))) as saldo,	IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuesto,TRUNCATE(v.montopendiente,2))) as saldob,IF(d2.nrodias is null,0,d2.nrodias)-((IF(v.estado='Pagada',DATEDIFF(DATE(c14.fecha_hora),DATE(v.fecha_hora)),IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho)))))) as diacredito FROM venta v INNER JOIN persona p ON p.idpersona=v.idcliente LEFT JOIN clientedatosfinanciero cf ON cf.idpersona=v.idcliente 	LEFT JOIN diasdecreditos d2 ON d2.iddiasdecredito=cf.iddiasdecredito INNER JOIN usuario u ON v.idusuario=u.idusuario	LEFT JOIN vendedor ve ON ve.idvendedor=p.idvendedor LEFT JOIN subzona s ON s.idsubzona=p.idzona LEFT JOIN zona z ON z.idzona=ve.idzona LEFT JOIN (SELECT MAX(c1.fecha_hora) as fecha_hora,d1.iddocumento FROM detalle_cobros d1 INNER JOIN cobros c1 ON c1.idcobrocliente=d1.idcobrocliente GROUP BY d1.iddocumento) c14 ON c14.iddocumento=v.idventa WHERE DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' AND v.idvendedor='$idvendedor' AND v.estado='Pagada' ORDER BY (IF(v.estado='Pagada',DATEDIFF(DATE(c14.fecha_hora),DATE(v.fecha_hora)),IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho))))),p.nombre,v.num_comprobante";
		}
	}else{
		if ($idvendedor==0)
			$sql="SELECT v.*,IF(v.fechadespacho='0000-00-00','sin fecha',date_format(DATE(v.fechadespacho), '%d-%m-%Y')) fechadespacho,IF(v.fechadespacho='0000-00-00','sin fecha',date_format(DATE_ADD(DATE(v.fechadespacho), INTERVAL 1 DAY), '%d-%m-%Y')) fechainiciocredito,IF(v.fechadespacho='0000-00-00','sin fecha',date_format((DATE_ADD(DATE(v.fechadespacho), INTERVAL (IF(d2.nrodias is null,0,d2.nrodias)+1) DAY)), '%d-%m-%Y'))	AS fechafindecredito,IF(d2.nrodias is null,0,d2.nrodias) as dcredito,date_format(DATE((IF(c14.fecha_hora='0000-00-00','',DATE(c14.fecha_hora)))),'%d-%m-%Y') as fechapago,DATEDIFF((DATE((IF(c14.fecha_hora='0000-00-00','',DATE(c14.fecha_hora))))),(DATE_ADD(DATE(v.fechadespacho), INTERVAL (IF(d2.nrodias is null,0,d2.nrodias)+1) DAY))) as diastranscurridos,IF(v.estado='Pagada',DATEDIFF(DATE(c14.fecha_hora),DATE(v.fecha_hora)),IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho)))) as diasdecobranza,date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha,u.nombre as usuario,p.nombre as cliente,ve.nombre as vendedor,s.nombre as subzona,z.nombre as zona,v.estado as estadodocumento,v.total_ventaimpuestod as deuda,v.total_ventaimpuesto as deudab,v.total_ventaimpuestod - IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuestod,TRUNCATE(v.montopendiente/v.tasa_dollar,2))) as cobrado,	v.total_ventaimpuesto - IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuesto,TRUNCATE(v.montopendiente,2))) as cobradob, IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuestod,TRUNCATE(v.montopendiente/v.tasa_dollar,2))) as saldo,	IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuesto,TRUNCATE(v.montopendiente,2))) as saldob,IF(d2.nrodias is null,0,d2.nrodias)-((IF(v.estado='Pagada',DATEDIFF(DATE(c14.fecha_hora),DATE(v.fecha_hora)),IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho)))))) as diacredito FROM venta v INNER JOIN persona p ON p.idpersona=v.idcliente LEFT JOIN clientedatosfinanciero cf ON cf.idpersona=v.idcliente 	LEFT JOIN diasdecreditos d2 ON d2.iddiasdecredito=cf.iddiasdecredito INNER JOIN usuario u ON v.idusuario=u.idusuario	LEFT JOIN vendedor ve ON ve.idvendedor=p.idvendedor LEFT JOIN subzona s ON s.idsubzona=p.idzona LEFT JOIN zona z ON z.idzona=ve.idzona LEFT JOIN (SELECT MAX(c1.fecha_hora) as fecha_hora,d1.iddocumento FROM detalle_cobros d1 INNER JOIN cobros c1 ON c1.idcobrocliente=d1.idcobrocliente GROUP BY d1.iddocumento) c14 ON c14.iddocumento=v.idventa WHERE DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' AND v.idcliente='$idcliente' AND v.estado='Pagada' ORDER BY (IF(v.estado='Pagada',DATEDIFF(DATE(c14.fecha_hora),DATE(v.fecha_hora)),IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho))))),p.nombre,v.num_comprobante";
		else{
			$sql="SELECT v.*,IF(v.fechadespacho='0000-00-00','sin fecha',date_format(DATE(v.fechadespacho), '%d-%m-%Y')) fechadespacho,IF(v.fechadespacho='0000-00-00','sin fecha',date_format(DATE_ADD(DATE(v.fechadespacho), INTERVAL 1 DAY), '%d-%m-%Y')) fechainiciocredito,IF(v.fechadespacho='0000-00-00','sin fecha',date_format((DATE_ADD(DATE(v.fechadespacho), INTERVAL (IF(d2.nrodias is null,0,d2.nrodias)+1) DAY)), '%d-%m-%Y'))	AS fechafindecredito,IF(d2.nrodias is null,0,d2.nrodias) as dcredito,date_format(DATE((IF(c14.fecha_hora='0000-00-00','',DATE(c14.fecha_hora)))),'%d-%m-%Y') as fechapago,DATEDIFF((DATE((IF(c14.fecha_hora='0000-00-00','',DATE(c14.fecha_hora))))),(DATE_ADD(DATE(v.fechadespacho), INTERVAL (IF(d2.nrodias is null,0,d2.nrodias)+1) DAY))) as diastranscurridos,IF(v.estado='Pagada',DATEDIFF(DATE(c14.fecha_hora),DATE(v.fecha_hora)),IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho)))) as diasdecobranza,date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha,u.nombre as usuario,p.nombre as cliente,ve.nombre as vendedor,s.nombre as subzona,z.nombre as zona,v.estado as estadodocumento,v.total_ventaimpuestod as deuda,v.total_ventaimpuesto as deudab,v.total_ventaimpuestod - IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuestod,TRUNCATE(v.montopendiente/v.tasa_dollar,2))) as cobrado,	v.total_ventaimpuesto - IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuesto,TRUNCATE(v.montopendiente,2))) as cobradob, IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuestod,TRUNCATE(v.montopendiente/v.tasa_dollar,2))) as saldo,	IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuesto,TRUNCATE(v.montopendiente,2))) as saldob,IF(d2.nrodias is null,0,d2.nrodias)-((IF(v.estado='Pagada',DATEDIFF(DATE(c14.fecha_hora),DATE(v.fecha_hora)),IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho)))))) as diacredito FROM venta v INNER JOIN persona p ON p.idpersona=v.idcliente LEFT JOIN clientedatosfinanciero cf ON cf.idpersona=v.idcliente 	LEFT JOIN diasdecreditos d2 ON d2.iddiasdecredito=cf.iddiasdecredito INNER JOIN usuario u ON v.idusuario=u.idusuario	LEFT JOIN vendedor ve ON ve.idvendedor=p.idvendedor LEFT JOIN subzona s ON s.idsubzona=p.idzona LEFT JOIN zona z ON z.idzona=ve.idzona LEFT JOIN (SELECT MAX(c1.fecha_hora) as fecha_hora,d1.iddocumento FROM detalle_cobros d1 INNER JOIN cobros c1 ON c1.idcobrocliente=d1.idcobrocliente GROUP BY d1.iddocumento) c14 ON c14.iddocumento=v.idventa WHERE DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' AND v.idcliente='$idcliente' AND v.idvendedor='$idvendedor' AND v.estado='Pagada' ORDER BY (IF(v.estado='Pagada',DATEDIFF(DATE(c14.fecha_hora),DATE(v.fecha_hora)),IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho))))),p.nombre,v.num_comprobante";
		}
	}
	return ejecutarConsulta($sql);
}

public function diasdevencimientosaldopagadas2($fecha_inicio,$fecha_fin,$idcliente,$idvendedor){
	if ($idcliente==0){
		if ($idvendedor==0)
			$sql="SELECT v.*,IF(v.fechadespacho='0000-00-00','sin fecha',date_format(DATE(v.fechadespacho), '%d-%m-%Y')) fechadespacho,IF(v.fechadespacho='0000-00-00','sin fecha',date_format(DATE_ADD(DATE(v.fechadespacho), INTERVAL 1 DAY), '%d-%m-%Y')) fechainiciocredito,IF(v.fechadespacho='0000-00-00','sin fecha',date_format((DATE_ADD(DATE(v.fechadespacho), INTERVAL (IF(d2.nrodias is null,0,d2.nrodias)+1) DAY)), '%d-%m-%Y'))	AS fechafindecredito,IF(d2.nrodias is null,0,d2.nrodias) as dcredito,date_format(DATE((IF(c14.fecha_hora='0000-00-00','',DATE(c14.fecha_hora)))),'%d-%m-%Y') as fechapago,DATEDIFF((DATE((IF(c14.fecha_hora='0000-00-00','',DATE(c14.fecha_hora))))),(DATE_ADD(DATE(v.fechadespacho), INTERVAL (IF(d2.nrodias is null,0,d2.nrodias)+1) DAY))) as diastranscurridos,IF(v.estado='Pagada',DATEDIFF(DATE(c14.fecha_hora),DATE(v.fecha_hora)),IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho)))) as diasdecobranza,date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha,u.nombre as usuario,p.nombre as cliente,ve.nombre as vendedor,s.nombre as subzona,z.nombre as zona,v.estado as estadodocumento,v.total_ventaimpuestod as deuda,v.total_ventaimpuesto as deudab,v.total_ventaimpuestod - IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuestod,TRUNCATE(v.montopendiente/v.tasa_dollar,2))) as cobrado,	v.total_ventaimpuesto - IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuesto,TRUNCATE(v.montopendiente,2))) as cobradob, IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuestod,TRUNCATE(v.montopendiente/v.tasa_dollar,2))) as saldo,	IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuesto,TRUNCATE(v.montopendiente,2))) as saldob,IF(d2.nrodias is null,0,d2.nrodias)-((IF(v.estado='Pagada',DATEDIFF(DATE(c14.fecha_hora),DATE(v.fecha_hora)),IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho)))))) as diacredito FROM venta v INNER JOIN persona p ON p.idpersona=v.idcliente LEFT JOIN clientedatosfinanciero cf ON cf.idpersona=v.idcliente 	LEFT JOIN diasdecreditos d2 ON d2.iddiasdecredito=cf.iddiasdecredito INNER JOIN usuario u ON v.idusuario=u.idusuario	LEFT JOIN vendedor ve ON ve.idvendedor=p.idvendedor LEFT JOIN subzona s ON s.idsubzona=p.idzona LEFT JOIN zona z ON z.idzona=ve.idzona LEFT JOIN (SELECT MAX(c1.fecha_hora) as fecha_hora,d1.iddocumento FROM detalle_cobros d1 INNER JOIN cobros c1 ON c1.idcobrocliente=d1.idcobrocliente GROUP BY d1.iddocumento) c14 ON c14.iddocumento=v.idventa WHERE DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' AND v.estado='Pagada' ORDER BY (IF(v.estado='Pagada',DATEDIFF(DATE(c14.fecha_hora),DATE(v.fecha_hora)),IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho))))),p.nombre,v.num_comprobante";
		else{
			$sql="SELECT v.*,IF(v.fechadespacho='0000-00-00','sin fecha',date_format(DATE(v.fechadespacho), '%d-%m-%Y')) fechadespacho,IF(v.fechadespacho='0000-00-00','sin fecha',date_format(DATE_ADD(DATE(v.fechadespacho), INTERVAL 1 DAY), '%d-%m-%Y')) fechainiciocredito,IF(v.fechadespacho='0000-00-00','sin fecha',date_format((DATE_ADD(DATE(v.fechadespacho), INTERVAL (IF(d2.nrodias is null,0,d2.nrodias)+1) DAY)), '%d-%m-%Y'))	AS fechafindecredito,IF(d2.nrodias is null,0,d2.nrodias) as dcredito,date_format(DATE((IF(c14.fecha_hora='0000-00-00','',DATE(c14.fecha_hora)))),'%d-%m-%Y') as fechapago,DATEDIFF((DATE((IF(c14.fecha_hora='0000-00-00','',DATE(c14.fecha_hora))))),(DATE_ADD(DATE(v.fechadespacho), INTERVAL (IF(d2.nrodias is null,0,d2.nrodias)+1) DAY))) as diastranscurridos,IF(v.estado='Pagada',DATEDIFF(DATE(c14.fecha_hora),DATE(v.fecha_hora)),IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho)))) as diasdecobranza,date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha,u.nombre as usuario,p.nombre as cliente,ve.nombre as vendedor,s.nombre as subzona,z.nombre as zona,v.estado as estadodocumento,v.total_ventaimpuestod as deuda,v.total_ventaimpuesto as deudab,v.total_ventaimpuestod - IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuestod,TRUNCATE(v.montopendiente/v.tasa_dollar,2))) as cobrado,	v.total_ventaimpuesto - IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuesto,TRUNCATE(v.montopendiente,2))) as cobradob, IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuestod,TRUNCATE(v.montopendiente/v.tasa_dollar,2))) as saldo,	IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuesto,TRUNCATE(v.montopendiente,2))) as saldob,IF(d2.nrodias is null,0,d2.nrodias)-((IF(v.estado='Pagada',DATEDIFF(DATE(c14.fecha_hora),DATE(v.fecha_hora)),IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho)))))) as diacredito FROM venta v INNER JOIN persona p ON p.idpersona=v.idcliente LEFT JOIN clientedatosfinanciero cf ON cf.idpersona=v.idcliente 	LEFT JOIN diasdecreditos d2 ON d2.iddiasdecredito=cf.iddiasdecredito INNER JOIN usuario u ON v.idusuario=u.idusuario	LEFT JOIN vendedor ve ON ve.idvendedor=p.idvendedor LEFT JOIN subzona s ON s.idsubzona=p.idzona LEFT JOIN zona z ON z.idzona=ve.idzona LEFT JOIN (SELECT MAX(c1.fecha_hora) as fecha_hora,d1.iddocumento FROM detalle_cobros d1 INNER JOIN cobros c1 ON c1.idcobrocliente=d1.idcobrocliente GROUP BY d1.iddocumento) c14 ON c14.iddocumento=v.idventa WHERE DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' AND v.idvendedor='$idvendedor' AND v.estado='Pagada' ORDER BY (IF(v.estado='Pagada',DATEDIFF(DATE(c14.fecha_hora),DATE(v.fecha_hora)),IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho))))),p.nombre,v.num_comprobante";
		}
	}else{
		if ($idvendedor==0)
			$sql="SELECT v.*,IF(v.fechadespacho='0000-00-00','sin fecha',date_format(DATE(v.fechadespacho), '%d-%m-%Y')) fechadespacho,IF(v.fechadespacho='0000-00-00','sin fecha',date_format(DATE_ADD(DATE(v.fechadespacho), INTERVAL 1 DAY), '%d-%m-%Y')) fechainiciocredito,IF(v.fechadespacho='0000-00-00','sin fecha',date_format((DATE_ADD(DATE(v.fechadespacho), INTERVAL (IF(d2.nrodias is null,0,d2.nrodias)+1) DAY)), '%d-%m-%Y'))	AS fechafindecredito,IF(d2.nrodias is null,0,d2.nrodias) as dcredito,date_format(DATE((IF(c14.fecha_hora='0000-00-00','',DATE(c14.fecha_hora)))),'%d-%m-%Y') as fechapago,DATEDIFF((DATE((IF(c14.fecha_hora='0000-00-00','',DATE(c14.fecha_hora))))),(DATE_ADD(DATE(v.fechadespacho), INTERVAL (IF(d2.nrodias is null,0,d2.nrodias)+1) DAY))) as diastranscurridos,IF(v.estado='Pagada',DATEDIFF(DATE(c14.fecha_hora),DATE(v.fecha_hora)),IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho)))) as diasdecobranza,date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha,u.nombre as usuario,p.nombre as cliente,ve.nombre as vendedor,s.nombre as subzona,z.nombre as zona,v.estado as estadodocumento,v.total_ventaimpuestod as deuda,v.total_ventaimpuesto as deudab,v.total_ventaimpuestod - IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuestod,TRUNCATE(v.montopendiente/v.tasa_dollar,2))) as cobrado,	v.total_ventaimpuesto - IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuesto,TRUNCATE(v.montopendiente,2))) as cobradob, IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuestod,TRUNCATE(v.montopendiente/v.tasa_dollar,2))) as saldo,	IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuesto,TRUNCATE(v.montopendiente,2))) as saldob,IF(d2.nrodias is null,0,d2.nrodias)-((IF(v.estado='Pagada',DATEDIFF(DATE(c14.fecha_hora),DATE(v.fecha_hora)),IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho)))))) as diacredito FROM venta v INNER JOIN persona p ON p.idpersona=v.idcliente LEFT JOIN clientedatosfinanciero cf ON cf.idpersona=v.idcliente 	LEFT JOIN diasdecreditos d2 ON d2.iddiasdecredito=cf.iddiasdecredito INNER JOIN usuario u ON v.idusuario=u.idusuario	LEFT JOIN vendedor ve ON ve.idvendedor=p.idvendedor LEFT JOIN subzona s ON s.idsubzona=p.idzona LEFT JOIN zona z ON z.idzona=ve.idzona LEFT JOIN (SELECT MAX(c1.fecha_hora) as fecha_hora,d1.iddocumento FROM detalle_cobros d1 INNER JOIN cobros c1 ON c1.idcobrocliente=d1.idcobrocliente GROUP BY d1.iddocumento) c14 ON c14.iddocumento=v.idventa WHERE DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' AND v.idcliente='$idcliente' AND v.estado='Pagada' ORDER BY (IF(v.estado='Pagada',DATEDIFF(DATE(c14.fecha_hora),DATE(v.fecha_hora)),IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho))))),p.nombre,v.num_comprobante";
		else{
			$sql="SELECT v.*,IF(v.fechadespacho='0000-00-00','sin fecha',date_format(DATE(v.fechadespacho), '%d-%m-%Y')) fechadespacho,IF(v.fechadespacho='0000-00-00','sin fecha',date_format(DATE_ADD(DATE(v.fechadespacho), INTERVAL 1 DAY), '%d-%m-%Y')) fechainiciocredito,IF(v.fechadespacho='0000-00-00','sin fecha',date_format((DATE_ADD(DATE(v.fechadespacho), INTERVAL (IF(d2.nrodias is null,0,d2.nrodias)+1) DAY)), '%d-%m-%Y'))	AS fechafindecredito,IF(d2.nrodias is null,0,d2.nrodias) as dcredito,date_format(DATE((IF(c14.fecha_hora='0000-00-00','',DATE(c14.fecha_hora)))),'%d-%m-%Y') as fechapago,DATEDIFF((DATE((IF(c14.fecha_hora='0000-00-00','',DATE(c14.fecha_hora))))),(DATE_ADD(DATE(v.fechadespacho), INTERVAL (IF(d2.nrodias is null,0,d2.nrodias)+1) DAY))) as diastranscurridos,IF(v.estado='Pagada',DATEDIFF(DATE(c14.fecha_hora),DATE(v.fecha_hora)),IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho)))) as diasdecobranza,date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha,u.nombre as usuario,p.nombre as cliente,ve.nombre as vendedor,s.nombre as subzona,z.nombre as zona,v.estado as estadodocumento,v.total_ventaimpuestod as deuda,v.total_ventaimpuesto as deudab,v.total_ventaimpuestod - IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuestod,TRUNCATE(v.montopendiente/v.tasa_dollar,2))) as cobrado,	v.total_ventaimpuesto - IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuesto,TRUNCATE(v.montopendiente,2))) as cobradob, IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuestod,TRUNCATE(v.montopendiente/v.tasa_dollar,2))) as saldo,	IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuesto,TRUNCATE(v.montopendiente,2))) as saldob,IF(d2.nrodias is null,0,d2.nrodias)-((IF(v.estado='Pagada',DATEDIFF(DATE(c14.fecha_hora),DATE(v.fecha_hora)),IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho)))))) as diacredito FROM venta v INNER JOIN persona p ON p.idpersona=v.idcliente LEFT JOIN clientedatosfinanciero cf ON cf.idpersona=v.idcliente 	LEFT JOIN diasdecreditos d2 ON d2.iddiasdecredito=cf.iddiasdecredito INNER JOIN usuario u ON v.idusuario=u.idusuario	LEFT JOIN vendedor ve ON ve.idvendedor=p.idvendedor LEFT JOIN subzona s ON s.idsubzona=p.idzona LEFT JOIN zona z ON z.idzona=ve.idzona LEFT JOIN (SELECT MAX(c1.fecha_hora) as fecha_hora,d1.iddocumento FROM detalle_cobros d1 INNER JOIN cobros c1 ON c1.idcobrocliente=d1.idcobrocliente GROUP BY d1.iddocumento) c14 ON c14.iddocumento=v.idventa WHERE DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' AND v.idcliente='$idcliente' AND v.idvendedor='$idvendedor' AND v.estado='Pagada' ORDER BY (IF(v.estado='Pagada',DATEDIFF(DATE(c14.fecha_hora),DATE(v.fecha_hora)),IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho))))),p.nombre,v.num_comprobante";
		}
	}
	return ejecutarConsulta($sql);
}

public function diasdecomision($fecha_inicio,$fecha_fin,$idcliente,$idvendedor){
	if ($idcliente==0){
		if ($idvendedor==0)
			$sql="SELECT v.num_comprobante1, date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha_hora, IF(v.fechadespacho='0000-00-00',date_format(DATE(v.fecha_hora), '%d-%m-%Y'),date_format(DATE(v.fechadespacho), '%d-%m-%Y')) fechadespacho, DATE_ADD((IF(v.fechadespacho='0000-00-00',DATE(v.fecha_hora),DATE(v.fechadespacho)) ),INTERVAL (IF(dc.nrodias is null,0,dc.nrodias)) DAY) AS fechavencida ,DATEDIFF((DATE(c1.fecha_hora)),(IF(v.fechadespacho='0000-00-00',DATE(v.fecha_hora),DATE(v.fechadespacho)))) as distranscurridos, date_format(DATE(c1.fecha_hora), '%d-%m-%Y') as fechapago, cf.iddiasdecredito,IF(dc.nrodias is null,0,dc.nrodias) AS nrodias, d1.iddocumento,c1.referencia,d1.montod,d1.abono,p.idpersona,p.nombre AS cliente,ve.idvendedor,ve.nombre AS vendedor FROM detalle_cobros d1 INNER JOIN cobros c1 ON c1.idcobrocliente=d1.idcobrocliente INNER JOIN venta v ON v.idventa=d1.iddocumento LEFT JOIN clientedatosfinanciero cf ON cf.idpersona=v.idcliente LEFT JOIN diasdecreditos dc ON dc.iddiasdecredito=cf.iddiasdecredito INNER JOIN persona p ON p.idpersona=v.idcliente LEFT JOIN vendedor ve ON ve.idvendedor=p.idvendedor WHERE c1.estado<>'Anulado' AND c1.fecha_hora>='$fecha_inicio' AND '$fecha_fin' ORDER BY v.idventa,ve.idvendedor,p.idpersona";
		else{
			$sql="SELECT v.num_comprobante1, date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha_hora, IF(v.fechadespacho='0000-00-00',date_format(DATE(v.fecha_hora), '%d-%m-%Y'),date_format(DATE(v.fechadespacho), '%d-%m-%Y')) fechadespacho, DATE_ADD((IF(v.fechadespacho='0000-00-00',DATE(v.fecha_hora),DATE(v.fechadespacho)) ),INTERVAL (IF(dc.nrodias is null,0,dc.nrodias)) DAY) AS fechavencida ,DATEDIFF((DATE(c1.fecha_hora)),(IF(v.fechadespacho='0000-00-00',DATE(v.fecha_hora),DATE(v.fechadespacho)))) as distranscurridos, date_format(DATE(c1.fecha_hora), '%d-%m-%Y') as fechapago, cf.iddiasdecredito,IF(dc.nrodias is null,0,dc.nrodias) AS nrodias, d1.iddocumento,c1.referencia,d1.montod,d1.abono,p.idpersona,p.nombre AS cliente,ve.idvendedor,ve.nombre AS vendedor FROM detalle_cobros d1 INNER JOIN cobros c1 ON c1.idcobrocliente=d1.idcobrocliente INNER JOIN venta v ON v.idventa=d1.iddocumento LEFT JOIN clientedatosfinanciero cf ON cf.idpersona=v.idcliente LEFT JOIN diasdecreditos dc ON dc.iddiasdecredito=cf.iddiasdecredito INNER JOIN persona p ON p.idpersona=v.idcliente LEFT JOIN vendedor ve ON ve.idvendedor=p.idvendedor WHERE c1.estado<>'Anulado' AND c1.fecha_hora>='$fecha_inicio' AND '$fecha_fin' AND ve.idvendedor='$idvendedor' ORDER BY v.idventa,ve.idvendedor,p.idpersona";
		}
	}else{
		if ($idvendedor==0)
			$sql="SELECT v.num_comprobante1, date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha_hora, IF(v.fechadespacho='0000-00-00',date_format(DATE(v.fecha_hora), '%d-%m-%Y'),date_format(DATE(v.fechadespacho), '%d-%m-%Y')) fechadespacho, DATE_ADD((IF(v.fechadespacho='0000-00-00',DATE(v.fecha_hora),DATE(v.fechadespacho)) ),INTERVAL (IF(dc.nrodias is null,0,dc.nrodias)) DAY) AS fechavencida ,DATEDIFF((DATE(c1.fecha_hora)),(IF(v.fechadespacho='0000-00-00',DATE(v.fecha_hora),DATE(v.fechadespacho)))) as distranscurridos, date_format(DATE(c1.fecha_hora), '%d-%m-%Y') as fechapago, cf.iddiasdecredito,IF(dc.nrodias is null,0,dc.nrodias) AS nrodias, d1.iddocumento,c1.referencia,d1.montod,d1.abono,p.idpersona,p.nombre AS cliente,ve.idvendedor,ve.nombre AS vendedor FROM detalle_cobros d1 INNER JOIN cobros c1 ON c1.idcobrocliente=d1.idcobrocliente INNER JOIN venta v ON v.idventa=d1.iddocumento LEFT JOIN clientedatosfinanciero cf ON cf.idpersona=v.idcliente LEFT JOIN diasdecreditos dc ON dc.iddiasdecredito=cf.iddiasdecredito INNER JOIN persona p ON p.idpersona=v.idcliente LEFT JOIN vendedor ve ON ve.idvendedor=p.idvendedor WHERE c1.estado<>'Anulado' AND c1.fecha_hora>='$fecha_inicio' AND '$fecha_fin' AND p.idpersona='$idcliente' ORDER BY v.idventa,ve.idvendedor,p.idpersona";
		else{
			$sql="SELECT v.num_comprobante1, date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha_hora, IF(v.fechadespacho='0000-00-00',date_format(DATE(v.fecha_hora), '%d-%m-%Y'),date_format(DATE(v.fechadespacho), '%d-%m-%Y')) fechadespacho, DATE_ADD((IF(v.fechadespacho='0000-00-00',DATE(v.fecha_hora),DATE(v.fechadespacho)) ),INTERVAL (IF(dc.nrodias is null,0,dc.nrodias)) DAY) AS fechavencida ,DATEDIFF((DATE(c1.fecha_hora)),(IF(v.fechadespacho='0000-00-00',DATE(v.fecha_hora),DATE(v.fechadespacho)))) as distranscurridos, date_format(DATE(c1.fecha_hora), '%d-%m-%Y') as fechapago, cf.iddiasdecredito,IF(dc.nrodias is null,0,dc.nrodias) AS nrodias, d1.iddocumento,c1.referencia,d1.montod,d1.abono,p.idpersona,p.nombre AS cliente,ve.idvendedor,ve.nombre AS vendedor FROM detalle_cobros d1 INNER JOIN cobros c1 ON c1.idcobrocliente=d1.idcobrocliente INNER JOIN venta v ON v.idventa=d1.iddocumento LEFT JOIN clientedatosfinanciero cf ON cf.idpersona=v.idcliente LEFT JOIN diasdecreditos dc ON dc.iddiasdecredito=cf.iddiasdecredito INNER JOIN persona p ON p.idpersona=v.idcliente LEFT JOIN vendedor ve ON ve.idvendedor=p.idvendedor WHERE c1.estado<>'Anulado' AND c1.fecha_hora>='$fecha_inicio' AND '$fecha_fin' AND ve.idvendedor='$idvendedor' AND p.idpersona='$idcliente' ORDER BY v.idventa,ve.idvendedor,p.idpersona";
		}
	}
	return ejecutarConsulta($sql);
}




/* public function diasdevencimientosaldo($fecha_inicio,$fecha_fin,$idcliente,$idvendedor){
	if ($idcliente==0){
		if ($idvendedor==0)
			$sql="SELECT *,IF(v.fechadespacho='0000-00-00','sin fecha',date_format(DATE(v.fechadespacho), '%d-%m-%Y')) fechadespacho,IF(v.estado='Pagada',DATEDIFF(DATE(c14.fecha_hora),DATE(v.fecha_hora)),IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho)))) as diasdecobranza,date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha,			u.nombre as usuario,p.nombre as cliente,ve.nombre as vendedor,s.nombre as subzona,z.nombre as zona,IF(c14.fecha_hora='0000-00-00','',DATE(c14.fecha_hora)) as fechapago,v.estado as estadodocumento,			v.total_ventaimpuestod as deuda,v.total_ventaimpuesto as deudab,v.total_ventaimpuestod - IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuestod,TRUNCATE(v.montopendiente/v.tasa_dollar,2))) as cobrado,	v.total_ventaimpuesto - IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuesto,TRUNCATE(v.montopendiente,2))) as cobradob, IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuestod,TRUNCATE(v.montopendiente/v.tasa_dollar,2))) as saldo,	IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuesto,TRUNCATE(v.montopendiente,2))) as saldob,IF(d2.nrodias is null,0,d2.nrodias)-((IF(v.estado='Pagada',DATEDIFF(DATE(c14.fecha_hora),DATE(v.fecha_hora)),IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho)))))) as diacredito,IF(d2.nrodias is null,0,d2.nrodias) as dcredito FROM venta v INNER JOIN persona p ON p.idpersona=v.idcliente	LEFT JOIN clientedatosfinanciero cf ON cf.idpersona=v.idcliente		LEFT JOIN diasdecreditos d2 ON d2.iddiasdecredito=cf.iddiasdecredito	INNER JOIN usuario u ON v.idusuario=u.idusuario	LEFT JOIN vendedor ve ON ve.idvendedor=v.idvendedor LEFT JOIN subzona s ON s.idsubzona=p.idzona LEFT JOIN zona z ON z.idzona=ve.idzona LEFT JOIN (SELECT MAX(c1.fecha_hora) as fecha_hora,d1.iddocumento FROM detalle_cobros d1 INNER JOIN cobros c1 ON c1.idcobrocliente=d1.idcobrocliente GROUP BY d1.iddocumento) c14 ON c14.iddocumento=v.idventa WHERE DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' ORDER BY p.nombre,v.num_comprobante";
		else{
			$sql="SELECT *,IF(v.fechadespacho='0000-00-00','sin fecha',date_format(DATE(v.fechadespacho), '%d-%m-%Y')) fechadespacho,IF(v.estado='Pagada',DATEDIFF(DATE(c14.fecha_hora),DATE(v.fecha_hora)),IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho)))) as diasdecobranza,date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha,			u.nombre as usuario,p.nombre as cliente,ve.nombre as vendedor,s.nombre as subzona,z.nombre as zona,IF(c14.fecha_hora='0000-00-00','',DATE(c14.fecha_hora)) as fechapago,v.estado as estadodocumento,			v.total_ventaimpuestod as deuda,v.total_ventaimpuesto as deudab,v.total_ventaimpuestod - IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuestod,TRUNCATE(v.montopendiente/v.tasa_dollar,2))) as cobrado,	v.total_ventaimpuesto - IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuesto,TRUNCATE(v.montopendiente,2))) as cobradob, IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuestod,TRUNCATE(v.montopendiente/v.tasa_dollar,2))) as saldo,	IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuesto,TRUNCATE(v.montopendiente,2))) as saldob,IF(d2.nrodias is null,0,d2.nrodias)-((IF(v.estado='Pagada',DATEDIFF(DATE(c14.fecha_hora),DATE(v.fecha_hora)),IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho)))))) as diacredito,IF(d2.nrodias is null,0,d2.nrodias) as dcredito FROM venta v INNER JOIN persona p ON p.idpersona=v.idcliente	LEFT JOIN clientedatosfinanciero cf ON cf.idpersona=v.idcliente		LEFT JOIN diasdecreditos d2 ON d2.iddiasdecredito=cf.iddiasdecredito	INNER JOIN usuario u ON v.idusuario=u.idusuario	LEFT JOIN vendedor ve ON ve.idvendedor=v.idvendedor LEFT JOIN subzona s ON s.idsubzona=p.idzona LEFT JOIN zona z ON z.idzona=ve.idzona LEFT JOIN (SELECT MAX(c1.fecha_hora) as fecha_hora,d1.iddocumento FROM detalle_cobros d1 INNER JOIN cobros c1 ON c1.idcobrocliente=d1.idcobrocliente GROUP BY d1.iddocumento) c14 ON c14.iddocumento=v.idventa WHERE DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' AND v.idvendedor='$idvendedor' ORDER BY p.nombre,v.num_comprobante";
		}
	}else{
		if ($idvendedor==0)
			$sql="SELECT *,IF(v.fechadespacho='0000-00-00','sin fecha',date_format(DATE(v.fechadespacho), '%d-%m-%Y')) fechadespacho,IF(v.estado='Pagada',DATEDIFF(DATE(c14.fecha_hora),DATE(v.fecha_hora)),IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho)))) as diasdecobranza,date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha,			u.nombre as usuario,p.nombre as cliente,ve.nombre as vendedor,s.nombre as subzona,z.nombre as zona,IF(c14.fecha_hora='0000-00-00','',DATE(c14.fecha_hora)) as fechapago,v.estado as estadodocumento,			v.total_ventaimpuestod as deuda,v.total_ventaimpuesto as deudab,v.total_ventaimpuestod - IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuestod,TRUNCATE(v.montopendiente/v.tasa_dollar,2))) as cobrado,	v.total_ventaimpuesto - IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuesto,TRUNCATE(v.montopendiente,2))) as cobradob, IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuestod,TRUNCATE(v.montopendiente/v.tasa_dollar,2))) as saldo,	IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuesto,TRUNCATE(v.montopendiente,2))) as saldob,IF(d2.nrodias is null,0,d2.nrodias)-((IF(v.estado='Pagada',DATEDIFF(DATE(c14.fecha_hora),DATE(v.fecha_hora)),IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho)))))) as diacredito,IF(d2.nrodias is null,0,d2.nrodias) as dcredito FROM venta v INNER JOIN persona p ON p.idpersona=v.idcliente	LEFT JOIN clientedatosfinanciero cf ON cf.idpersona=v.idcliente		LEFT JOIN diasdecreditos d2 ON d2.iddiasdecredito=cf.iddiasdecredito	INNER JOIN usuario u ON v.idusuario=u.idusuario	LEFT JOIN vendedor ve ON ve.idvendedor=v.idvendedor LEFT JOIN subzona s ON s.idsubzona=p.idzona LEFT JOIN zona z ON z.idzona=ve.idzona LEFT JOIN (SELECT MAX(c1.fecha_hora) as fecha_hora,d1.iddocumento FROM detalle_cobros d1 INNER JOIN cobros c1 ON c1.idcobrocliente=d1.idcobrocliente GROUP BY d1.iddocumento) c14 ON c14.iddocumento=v.idventa WHERE DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' AND v.idcliente='$idcliente' ORDER BY p.nombre,v.num_comprobante";
		else{
			$sql="SELECT *,IF(v.fechadespacho='0000-00-00','sin fecha',date_format(DATE(v.fechadespacho), '%d-%m-%Y')) fechadespacho,IF(v.estado='Pagada',DATEDIFF(DATE(c14.fecha_hora),DATE(v.fecha_hora)),IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho)))) as diasdecobranza,date_format(DATE(v.fecha_hora), '%d-%m-%Y') as fecha,			u.nombre as usuario,p.nombre as cliente,ve.nombre as vendedor,s.nombre as subzona,z.nombre as zona,IF(c14.fecha_hora='0000-00-00','',DATE(c14.fecha_hora)) as fechapago,v.estado as estadodocumento,			v.total_ventaimpuestod as deuda,v.total_ventaimpuesto as deudab,v.total_ventaimpuestod - IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuestod,TRUNCATE(v.montopendiente/v.tasa_dollar,2))) as cobrado,	v.total_ventaimpuesto - IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuesto,TRUNCATE(v.montopendiente,2))) as cobradob, IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuestod,TRUNCATE(v.montopendiente/v.tasa_dollar,2))) as saldo,	IF(v.estado='Pagada',0,IF(v.montopendiente=0,v.total_ventaimpuesto,TRUNCATE(v.montopendiente,2))) as saldob,IF(d2.nrodias is null,0,d2.nrodias)-((IF(v.estado='Pagada',DATEDIFF(DATE(c14.fecha_hora),DATE(v.fecha_hora)),IF(v.fechadespacho='0000-00-00',DATEDIFF(NOW(),DATE(v.fecha_hora)),DATEDIFF(NOW(),DATE(v.fechadespacho)))))) as diacredito,IF(d2.nrodias is null,0,d2.nrodias) as dcredito FROM venta v INNER JOIN persona p ON p.idpersona=v.idcliente	LEFT JOIN clientedatosfinanciero cf ON cf.idpersona=v.idcliente		LEFT JOIN diasdecreditos d2 ON d2.iddiasdecredito=cf.iddiasdecredito	INNER JOIN usuario u ON v.idusuario=u.idusuario	LEFT JOIN vendedor ve ON ve.idvendedor=v.idvendedor LEFT JOIN subzona s ON s.idsubzona=p.idzona LEFT JOIN zona z ON z.idzona=ve.idzona LEFT JOIN (SELECT MAX(c1.fecha_hora) as fecha_hora,d1.iddocumento FROM detalle_cobros d1 INNER JOIN cobros c1 ON c1.idcobrocliente=d1.idcobrocliente GROUP BY d1.iddocumento) c14 ON c14.iddocumento=v.idventa WHERE DATE(v.fecha_hora)>='$fecha_inicio' AND DATE(v.fecha_hora)<='$fecha_fin' AND v.idcliente='$idcliente' AND v.idvendedor='$idvendedor' ORDER BY p.nombre,v.num_comprobante";
		}
	}
	return ejecutarConsulta($sql);
}
 */
public function impuestoslrfecha($fecha_inicio,$fecha_fin,$idcliente){
	if ($idcliente==0){
		//$sql="SELECT date_format(DATE(i.fecha_hora), '%d-%m-%Y') as fecha,i.*,p.nombre, im.porcentaje*100 as porcentajeimpuesto, round(im.porcentaje*i.total_compra,2) as retencion FROM ingreso i INNER JOIN persona p ON p.idpersona=i.idproveedor LEFT JOIN impuestosrl im ON im.idimpuestoslr=i.idimpuestoslr WHERE i.islr='si' AND i.estado='Pagada' AND DATE(i.fecha_hora)>='$fecha_inicio' AND DATE(i.fecha_hora)<='$fecha_fin'";
		$sql="SELECT date_format(DATE(i.fecha_hora), '%d-%m-%Y') as fecha,i.*,p.nombre, im.porcentaje*100 as porcentajeimpuesto, round(im.porcentaje*i.total_compra,2) as retencion FROM ingreso i INNER JOIN persona p ON p.idpersona=i.idproveedor LEFT JOIN impuestosrl im ON im.idimpuestoslr=i.idimpuestoslr WHERE i.islr='si' AND DATE(i.fecha_hora)>='$fecha_inicio' AND DATE(i.fecha_hora)<='$fecha_fin'";
	}else{
		//$sql="SELECT date_format(DATE(i.fecha_hora), '%d-%m-%Y') as fecha,i.*,p.nombre, im.porcentaje*100 as porcentajeimpuesto, round(im.porcentaje*i.total_compra,2) as retencion FROM ingreso i INNER JOIN persona p ON p.idpersona=i.idproveedor LEFT JOIN impuestosrl im ON im.idimpuestoslr=i.idimpuestoslr WHERE i.islr='si' AND i.estado='Pagada' AND DATE(i.fecha_hora)>='$fecha_inicio' AND DATE(i.fecha_hora)<='$fecha_fin' AND i.idproveedor='$idcliente'";
		$sql="SELECT date_format(DATE(i.fecha_hora), '%d-%m-%Y') as fecha,i.*,p.nombre, im.porcentaje*100 as porcentajeimpuesto, round(im.porcentaje*i.total_compra,2) as retencion FROM ingreso i INNER JOIN persona p ON p.idpersona=i.idproveedor LEFT JOIN impuestosrl im ON im.idimpuestoslr=i.idimpuestoslr WHERE i.islr='si' AND DATE(i.fecha_hora)>='$fecha_inicio' AND DATE(i.fecha_hora)<='$fecha_fin' AND i.idproveedor='$idcliente'";
	}
	
	//$sql="SELECT DATE(v.fecha_hora) as fecha, u.nombre as usuario, p.nombre as cliente, v.tipo_comprobante,v.serie_comprobante, v.num_comprobante , v.total_venta, v.impuesto, v.estado FROM venta v INNER JOIN persona p ON v.idcliente=p.idpersona INNER JOIN usuario u ON v.idusuario=u.idusuario";
	//echo $sql;
	return ejecutarConsulta($sql);
}

public function retencionivafecha($fecha_inicio,$fecha_fin,$idcliente){
	if ($idcliente==0){
		$sql="SELECT date_format(DATE(i.fecha_hora), '%d-%m-%Y') as fecha,i.*,p.nombre,p.agenteretencionp as porcentajeimpuesto, r.totalnoexentob, r.totalnoexentod,r.totalretenciob AS retencion FROM ingreso i INNER JOIN persona p ON p.idpersona=i.idproveedor LEFT JOIN (SELECT d.idingreso, SUM((IF(p.agenteretencion='si',(IF(a.exento='no',d.precio_compra,0)*d.cantidad)*0.16,0))*(p.agenteretencionp/100)) AS totalretenciob,SUM(IF(a.exento='no',d.precio_compra,0)*d.cantidad) as totalnoexentob,SUM(IF(a.exento='no',d.precio_comprad,0)*d.cantidad) as totalnoexentod ,SUM((IF(p.agenteretencion='si',(IF(a.exento='no',d.precio_comprad,0)*d.cantidad)*0.16,0))*(p.agenteretencionp/100)) AS totalretenciod FROM detalle_ingreso_servicio d INNER JOIN ingreso i ON i.idingreso=d.idingreso INNER JOIN servicio a ON a.idservicio=d.idservicio INNER JOIN persona p ON p.idpersona=i.idproveedor GROUP BY d.idingreso UNION ALL SELECT d.idingreso, SUM((IF(p.agenteretencion='si',(IF(a.exento='no',d.precio_compra,0)*d.cantidad)*0.16,0))*(p.agenteretencionp/100)) AS totalretenciob,SUM(IF(a.exento='no',d.precio_compra,0)*d.cantidad) as totalnoexentob,SUM(IF(a.exento='no',d.precio_comprad,0)*d.cantidad) as totalnoexentod , SUM((IF(p.agenteretencion='si',(IF(a.exento='no',d.precio_comprad,0)*d.cantidad)*0.16,0))*(p.agenteretencionp/100)) AS totalretenciod FROM detalle_ingreso d INNER JOIN ingreso i ON i.idingreso=d.idingreso INNER JOIN articulo a ON a.idarticulo=d.idarticulo INNER JOIN persona p ON p.idpersona=i.idproveedor GROUP BY d.idingreso) r ON r.idingreso=i.idingreso WHERE p.agenteretencion='si' AND DATE(i.fecha_hora)>='$fecha_inicio' AND DATE(i.fecha_hora)<='$fecha_fin'";
	}else{
		$sql="SELECT date_format(DATE(i.fecha_hora), '%d-%m-%Y') as fecha,i.*,p.nombre,p.agenteretencionp as porcentajeimpuesto, r.totalnoexentob, r.totalnoexentod,r.totalretenciob AS retencion FROM ingreso i INNER JOIN persona p ON p.idpersona=i.idproveedor LEFT JOIN (SELECT d.idingreso, SUM((IF(p.agenteretencion='si',(IF(a.exento='no',d.precio_compra,0)*d.cantidad)*0.16,0))*(p.agenteretencionp/100)) AS totalretenciob,SUM(IF(a.exento='no',d.precio_compra,0)*d.cantidad) as totalnoexentob,SUM(IF(a.exento='no',d.precio_comprad,0)*d.cantidad) as totalnoexentod ,SUM((IF(p.agenteretencion='si',(IF(a.exento='no',d.precio_comprad,0)*d.cantidad)*0.16,0))*(p.agenteretencionp/100)) AS totalretenciod FROM detalle_ingreso_servicio d INNER JOIN ingreso i ON i.idingreso=d.idingreso INNER JOIN servicio a ON a.idservicio=d.idservicio INNER JOIN persona p ON p.idpersona=i.idproveedor GROUP BY d.idingreso UNION ALL SELECT d.idingreso, SUM((IF(p.agenteretencion='si',(IF(a.exento='no',d.precio_compra,0)*d.cantidad)*0.16,0))*(p.agenteretencionp/100)) AS totalretenciob,SUM(IF(a.exento='no',d.precio_compra,0)*d.cantidad) as totalnoexentob,SUM(IF(a.exento='no',d.precio_comprad,0)*d.cantidad) as totalnoexentod , SUM((IF(p.agenteretencion='si',(IF(a.exento='no',d.precio_comprad,0)*d.cantidad)*0.16,0))*(p.agenteretencionp/100)) AS totalretenciod FROM detalle_ingreso d INNER JOIN ingreso i ON i.idingreso=d.idingreso INNER JOIN articulo a ON a.idarticulo=d.idarticulo INNER JOIN persona p ON p.idpersona=i.idproveedor GROUP BY d.idingreso) r ON r.idingreso=i.idingreso WHERE p.agenteretencion='si' AND DATE(i.fecha_hora)>='$fecha_inicio' AND DATE(i.fecha_hora)<='$fecha_fin' AND i.idproveedor='$idcliente'";
	}
	
	//$sql="SELECT DATE(v.fecha_hora) as fecha, u.nombre as usuario, p.nombre as cliente, v.tipo_comprobante,v.serie_comprobante, v.num_comprobante , v.total_venta, v.impuesto, v.estado FROM venta v INNER JOIN persona p ON v.idcliente=p.idpersona INNER JOIN usuario u ON v.idusuario=u.idusuario";
	//echo $sql;
	return ejecutarConsulta($sql);
}




public function citasporfechaypaciente($fecha_inicio,$fecha_fin,$idpaciente){
	if ($idpaciente==0){
		$sql="SELECT c.fecha,c.estado, r.nombre1,r.nombre2,r.apellido1,r.apellido2,s.descripcion as sesion, s.preciod FROM citas c INNER JOIN registro r ON c.idpaciente=r.idpaciente LEFT JOIN servicio s ON c.idservicio=s.idservicio WHERE c.fecha>='$fecha_inicio' AND c.fecha<='$fecha_fin' ORDER BY r.nombre1, c.fecha, c.estado";
	}else{
		$sql="SELECT c.fecha,c.estado, r.nombre1,r.nombre2,r.apellido1,r.apellido2,s.descripcion as sesion, s.preciod FROM citas c INNER JOIN registro r ON c.idpaciente=r.idpaciente LEFT JOIN servicio s ON c.idservicio=s.idservicio WHERE c.fecha>='$fecha_inicio' AND c.fecha<='$fecha_fin' AND r.idpaciente='$idpaciente' ORDER BY r.nombre1, c.fecha, c.estado";
	}
	
	//$sql="SELECT DATE(v.fecha_hora) as fecha, u.nombre as usuario, p.nombre as cliente, v.tipo_comprobante,v.serie_comprobante, v.num_comprobante , v.total_venta, v.impuesto, v.estado FROM venta v INNER JOIN persona p ON v.idcliente=p.idpersona INNER JOIN usuario u ON v.idusuario=u.idusuario";
	//echo $sql;
	return ejecutarConsulta($sql);
}

public function citasporfechaypacienter($fecha_inicio,$fecha_fin){
	$sql="SELECT c.fecha,c.horai,h.horario,c.idcubiculo,c.idcama,c.idcamarahiperbarica,c.estado, CONCAT(r.nombre1,' ',r.nombre2,' ',r.apellido1,' ',r.apellido2) as paciente,s.descripcion as sesion, s.preciod,r.diagnostico FROM citas c INNER JOIN registro r ON c.idpaciente=r.idpaciente LEFT JOIN servicio s ON c.idservicio=s.idservicio LEFT JOIN horarios h ON c.horai=h.horai WHERE c.fecha>='$fecha_inicio' AND c.fecha<='$fecha_fin' AND (c.estado='Disponible' OR c.estado='realizada') AND c.idcamarahiperbarica=0 ORDER BY c.fecha,c.horai";
	//echo $sql;
	return ejecutarConsulta($sql);
}

public function citasporfechaypacientercamara($fecha_inicio,$fecha_fin){
	$sql="SELECT c.fecha,c.horai,h.horario,c.idcubiculo,c.idcama,c.idcamarahiperbarica,c.estado, CONCAT(r.nombre1,' ',r.nombre2,' ',r.apellido1,' ',r.apellido2) as paciente,s.descripcion as sesion, s.preciod,r.diagnostico FROM citas c INNER JOIN registro r ON c.idpaciente=r.idpaciente LEFT JOIN servicio s ON c.idservicio=s.idservicio LEFT JOIN horarios h ON c.horai=h.horai WHERE c.fecha>='$fecha_inicio' AND c.fecha<='$fecha_fin' AND (c.estado='Disponible' OR c.estado='realizada') AND c.idcamarahiperbarica=1 ORDER BY c.fecha,c.horai";
	//echo $sql;
	return ejecutarConsulta($sql);
}


public function totalcomprahoy(){
	$sql="SELECT IFNULL(SUM(total_compra),0) as total_compra FROM ingreso WHERE DATE(fecha_hora)=curdate()";
	return ejecutarConsulta($sql);
}

public function totalventahoy(){
	$sql="SELECT IFNULL(SUM(total_venta),0) as total_venta FROM venta WHERE DATE(fecha_hora)=curdate()";
	return ejecutarConsulta($sql);
}

public function comprasultimos_10dias(){
	$sql=" SELECT CONCAT(DAY(fecha_hora),'-',MONTH(fecha_hora)) AS fecha, SUM(total_compra) AS total FROM ingreso GROUP BY fecha_hora ORDER BY fecha_hora DESC LIMIT 0,10";
	return ejecutarConsulta($sql);
}



public function ventasgastosultimos12meses(){
	$sql="SELECT me.idmes as mesnro, me.español as mes, IF(SUM(v.total_ventad) is null,0,SUM(v.total_ventad)) AS totalventa ,IF(SUM(r.montod) is null,0,SUM(r.montod)) AS totalgasto,IF(SUM(i.total_comprad) is null,0,SUM(i.total_comprad)) AS totalingreso FROM meses me LEFT JOIN venta v ON me.idmes=MONTH(v.fecha_hora) LEFT JOIN registrocajachica r ON me.idmes=MONTH(r.fecha) LEFT JOIN ingreso i ON me.idmes=MONTH(i.fecha_hora) WHERE (YEAR(v.fecha_hora)=YEAR(NOW()) OR YEAR(v.fecha_hora)IS NULL) AND (YEAR(r.fecha)=YEAR(NOW()) OR YEAR(r.fecha) IS NULL) AND (YEAR(i.fecha_hora)=YEAR(NOW()) OR YEAR(i.fecha_hora) IS NULL) GROUP BY me.español ORDER BY me.idmes ASC LIMIT 0,12";
	//return ejecutarConsulta($sql);
	return ejecutarConsultaSimpleFila2($sql);
}

public function articulomesanterior(){
	$sql="SELECT a.idarticulo,a.nombre,IF(sum(d.cantidad) is null,0,sum(d.cantidad)) as unidades,MONTH(v.fecha_hora) as mes,v.estado FROM articulo a LEFT JOIN detalle_venta d ON a.idarticulo=d.idarticulo LEFT JOIN venta v ON v.idventa=d.idventa WHERE v.estado<>'Anulado' AND YEAR(NOW())=YEAR(v.fecha_hora) AND MONTH(v.fecha_hora) = MONTH(CURRENT_DATE())-1 GROUP BY a.idarticulo,MONTH(v.fecha_hora) ORDER BY MONTH(v.fecha_hora),sum(d.cantidad) DESC LIMIT 0,12";
	//return ejecutarConsulta($sql);
	return ejecutarConsultaSimpleFila2($sql);
}

public function articulomesencurso(){
	$sql="SELECT a.idarticulo,a.nombre,IF(sum(d.cantidad) is null,0,sum(d.cantidad)) as unidades,MONTH(v.fecha_hora) as mes,v.estado FROM articulo a LEFT JOIN detalle_venta d ON a.idarticulo=d.idarticulo LEFT JOIN venta v ON v.idventa=d.idventa WHERE v.estado<>'Anulado' AND YEAR(NOW())=YEAR(v.fecha_hora) AND MONTH(v.fecha_hora) = MONTH(CURRENT_DATE()) GROUP BY a.idarticulo,MONTH(v.fecha_hora) ORDER BY MONTH(v.fecha_hora),sum(d.cantidad) DESC LIMIT 0,12";
	//return ejecutarConsulta($sql);
	return ejecutarConsultaSimpleFila2($sql);
}

public function clientemesanterior(){
	$sql="SELECT v.idcliente,p.nombre, SUM(v.total_ventaimpuestod) as venta,YEAR(v.fecha_hora) AS ANO,MONTH(v.fecha_hora) as mes FROM venta v INNER JOIN persona p ON p.idpersona=v.idcliente WHERE v.estado<>'Anulado' AND YEAR(NOW())=YEAR(v.fecha_hora) AND MONTH(NOW())-1=MONTH(v.fecha_hora) GROUP BY v.idcliente ORDER BY SUM(v.total_ventaimpuestod) DESC LIMIT 0,12";
	//return ejecutarConsulta($sql);
	return ejecutarConsultaSimpleFila2($sql);
}

public function clientemesencurso(){
	$sql="SELECT v.idcliente,p.nombre, SUM(v.total_ventaimpuestod) as venta,YEAR(v.fecha_hora) AS ANO,MONTH(v.fecha_hora) as mes FROM venta v INNER JOIN persona p ON p.idpersona=v.idcliente WHERE v.estado<>'Anulado' AND YEAR(NOW())=YEAR(v.fecha_hora) AND MONTH(NOW())=MONTH(v.fecha_hora) GROUP BY v.idcliente ORDER BY SUM(v.total_ventaimpuestod) DESC LIMIT 0,12";
	//return ejecutarConsulta($sql);
	return ejecutarConsultaSimpleFila2($sql);
}

public function vendedormesanterior(){
	$sql="SELECT v.idvendedor,ve.nombre, SUM(v.total_ventaimpuestod) as venta,YEAR(v.fecha_hora) AS ANO,MONTH(v.fecha_hora) as mes FROM venta v INNER JOIN vendedor ve ON ve.idvendedor=v.idvendedor WHERE v.estado<>'Anulado' AND YEAR(NOW())=YEAR(v.fecha_hora) AND MONTH(NOW())-1=MONTH(v.fecha_hora) GROUP BY v.idvendedor ORDER BY SUM(v.total_ventaimpuestod) DESC LIMIT 0,12";
	//return ejecutarConsulta($sql);
	return ejecutarConsultaSimpleFila2($sql);
}

public function vendedormesencurso(){
	$sql="SELECT v.idvendedor,ve.nombre, SUM(v.total_ventaimpuestod) as venta,YEAR(v.fecha_hora) AS ANO,MONTH(v.fecha_hora) as mes FROM venta v INNER JOIN vendedor ve ON ve.idvendedor=v.idvendedor WHERE v.estado<>'Anulado' AND YEAR(NOW())=YEAR(v.fecha_hora) AND MONTH(NOW())=MONTH(v.fecha_hora) GROUP BY v.idvendedor ORDER BY SUM(v.total_ventaimpuestod) DESC LIMIT 0,12";
	//return ejecutarConsulta($sql);
	return ejecutarConsultaSimpleFila2($sql);
}

public function marcamesanterior(){
	$sql="SELECT a.idmarca,m.nombre, ((IF(SUM(d.cantidad) is null,0,SUM(d.cantidad)))/(SELECT IF(SUM(d.cantidad) is null,0,SUM(d.cantidad)) as cantidadt FROM articulo a LEFT JOIN detalle_venta d ON d.idarticulo=a.idarticulo LEFT JOIN venta v ON v.idventa=d.idventa WHERE v.estado<>'Anulado' AND v.estado IS NOT null AND MONTH(v.fecha_hora)=MONTH(NOW())-1))*100 as cantidad,MONTH(v.fecha_hora) AS mes,v.estado FROM articulo a LEFT JOIN marca m ON m.idmarca=a.idmarca LEFT JOIN detalle_venta d ON d.idarticulo=a.idarticulo LEFT JOIN venta v ON v.idventa=d.idventa WHERE v.estado<>'Anulado' AND v.estado IS NOT null AND MONTH(v.fecha_hora)=MONTH(NOW())-1 GROUP BY MONTH(v.fecha_hora),a.idmarca ORDER BY a.idmarca";
	//return ejecutarConsulta($sql);
	return ejecutarConsultaSimpleFila2($sql);
}

public function marcamesencurso(){
	$sql="SELECT a.idmarca,m.nombre, ((IF(SUM(d.cantidad) is null,0,SUM(d.cantidad)))/(SELECT IF(SUM(d.cantidad) is null,0,SUM(d.cantidad)) as cantidadt FROM articulo a LEFT JOIN detalle_venta d ON d.idarticulo=a.idarticulo LEFT JOIN venta v ON v.idventa=d.idventa WHERE v.estado<>'Anulado' AND v.estado IS NOT null AND MONTH(v.fecha_hora)=MONTH(NOW())))*100 as cantidad,MONTH(v.fecha_hora) AS mes,v.estado FROM articulo a LEFT JOIN marca m ON m.idmarca=a.idmarca LEFT JOIN detalle_venta d ON d.idarticulo=a.idarticulo LEFT JOIN venta v ON v.idventa=d.idventa WHERE v.estado<>'Anulado' AND v.estado IS NOT null AND MONTH(v.fecha_hora)=MONTH(NOW()) GROUP BY MONTH(v.fecha_hora),a.idmarca ORDER BY a.idmarca";
	//return ejecutarConsulta($sql);
	return ejecutarConsultaSimpleFila2($sql);
}

public function categoriamesanterior(){
	$sql="SELECT a.idcategoria,c.nombre, ((IF(SUM(d.cantidad) is null,0,SUM(d.cantidad)))/ (SELECT IF(SUM(d.cantidad) is null,0,SUM(d.cantidad)) as cantidadt FROM articulo a LEFT JOIN detalle_venta d ON d.idarticulo=a.idarticulo LEFT JOIN venta v ON v.idventa=d.idventa WHERE v.estado<>'Anulado' AND v.estado IS NOT null AND MONTH(v.fecha_hora)=MONTH(NOW())-1))*100 as cantidad,MONTH(v.fecha_hora) AS mes,v.estado FROM articulo a LEFT JOIN categoria c ON c.idcategoria=a.idcategoria LEFT JOIN detalle_venta d ON d.idarticulo=a.idarticulo LEFT JOIN venta v ON v.idventa=d.idventa WHERE v.estado<>'Anulado' AND v.estado IS NOT null AND MONTH(v.fecha_hora)=MONTH(NOW())-1 GROUP BY MONTH(v.fecha_hora),a.idcategoria ORDER BY a.idcategoria";
	//return ejecutarConsulta($sql);
	return ejecutarConsultaSimpleFila2($sql);
}

public function categoriamesencurso(){
	$sql="SELECT a.idcategoria,c.nombre, ((IF(SUM(d.cantidad) is null,0,SUM(d.cantidad)))/ (SELECT IF(SUM(d.cantidad) is null,0,SUM(d.cantidad)) as cantidadt FROM articulo a LEFT JOIN detalle_venta d ON d.idarticulo=a.idarticulo LEFT JOIN venta v ON v.idventa=d.idventa WHERE v.estado<>'Anulado' AND v.estado IS NOT null AND MONTH(v.fecha_hora)=MONTH(NOW())))*100 as cantidad,MONTH(v.fecha_hora) AS mes,v.estado FROM articulo a LEFT JOIN categoria c ON c.idcategoria=a.idcategoria LEFT JOIN detalle_venta d ON d.idarticulo=a.idarticulo LEFT JOIN venta v ON v.idventa=d.idventa WHERE v.estado<>'Anulado' AND v.estado IS NOT null AND MONTH(v.fecha_hora)=MONTH(NOW()) GROUP BY MONTH(v.fecha_hora),a.idcategoria ORDER BY a.idcategoria";
	//return ejecutarConsulta($sql);
	return ejecutarConsultaSimpleFila2($sql);
}

//SELECT a.idcategoria,c.nombre, ((IF(SUM(d.cantidad) is null,0,SUM(d.cantidad)))/ (SELECT IF(SUM(d.cantidad) is null,0,SUM(d.cantidad)) as cantidadt FROM articulo a LEFT JOIN detalle_venta d ON d.idarticulo=a.idarticulo LEFT JOIN venta v ON v.idventa=d.idventa WHERE v.estado<>'Anulado' AND v.estado IS NOT null AND MONTH(v.fecha_hora)=MONTH(NOW())-1))*100 as cantidad,MONTH(v.fecha_hora) AS mes,v.estado FROM articulo a LEFT JOIN categoria c ON c.idcategoria=a.idcategoria LEFT JOIN detalle_venta d ON d.idarticulo=a.idarticulo LEFT JOIN venta v ON v.idventa=d.idventa WHERE v.estado<>'Anulado' AND v.estado IS NOT null AND MONTH(v.fecha_hora)=MONTH(NOW())-1 GROUP BY MONTH(v.fecha_hora),a.idcategoria ORDER BY a.idcategoria

//SELECT a.idcategoria,c.nombre, ((IF(SUM(d.cantidad) is null,0,SUM(d.cantidad)))/ (SELECT IF(SUM(d.cantidad) is null,0,SUM(d.cantidad)) as cantidadt FROM articulo a LEFT JOIN detalle_venta d ON d.idarticulo=a.idarticulo LEFT JOIN venta v ON v.idventa=d.idventa WHERE v.estado<>'Anulado' AND v.estado IS NOT null AND MONTH(v.fecha_hora)=MONTH(NOW())))*100 as cantidad,MONTH(v.fecha_hora) AS mes,v.estado FROM articulo a LEFT JOIN categoria c ON c.idcategoria=a.idcategoria LEFT JOIN detalle_venta d ON d.idarticulo=a.idarticulo LEFT JOIN venta v ON v.idventa=d.idventa WHERE v.estado<>'Anulado' AND v.estado IS NOT null AND MONTH(v.fecha_hora)=MONTH(NOW()) GROUP BY MONTH(v.fecha_hora),a.idcategoria ORDER BY a.idcategoria


public function stockporalmacen(){
	$sql="SELECT a.idarticulo,a.nombre, a1.stock almacen1, a2.stock almacen2, a3.stock almacen3, a4.stock almacen4, a5.stock almacen,a.condicion FROM articulo a LEFT JOIN almacen1 a1 ON a.idarticulo=a1.idarticulo LEFT JOIN almacen2 a2 ON a.idarticulo=a2.idarticulo LEFT JOIN almacen3 a3 ON a.idarticulo=a3.idarticulo LEFT JOIN almacen4 a4 ON a.idarticulo=a4.idarticulo LEFT JOIN almacen5 a5 ON a.idarticulo=a5.idarticulo WHERE a.condicion=1";
	//return ejecutarConsulta($sql);
	return ejecutarConsultaSimpleFila2($sql);
}






}

 ?>
