<?php
date_default_timezone_set('America/Lima');

class cGrafica{



	function mostrar_ventavalorizada_fecha($fec,$punven_id){
		$sql="SELECT SUM(vd.tb_ventadetalle_precos) AS 'precostot',
SUM(CASE WHEN vd.tb_ventadetalle_can >= em.tb_empaque_fac 
THEN 
(vd.tb_ventadetalle_preuni*(vd.tb_ventadetalle_can/em.tb_empaque_fac))
ELSE 
(vd.tb_ventadetalle_preuni*vd.tb_ventadetalle_can)
END) AS 'preventot'
from tb_ventadetalle vd 
		inner join tb_venta v on vd.tb_venta_id = v.tb_venta_id	
		INNER JOIN tb_catalogo ct ON vd.tb_catalogo_id = ct.tb_catalogo_id
		INNER JOIN tb_producto p ON ct.tb_producto_id = p.tb_producto_id
		INNER JOIN tb_empaque em ON em.tb_empaque_id = p.tb_empaque_id
		INNER JOIN tb_puntoventa punven ON v.tb_puntoventa_id = punven.tb_puntoventa_id
		WHERE  v.tb_venta_xac = 1 and v.tb_venta_est = '1'
		AND v.tb_venta_fec = '$fec' and punven.tb_puntoventa_id = '$punven_id' ";
		
		$sql = $sql." ORDER BY v.tb_venta_fec ";
		//echo $sql;exit;
		$oCado = new Cado();
		$rst=$oCado->ejecute_sql($sql);
		return $rst;
	}
	


	function mostrar_ventavalorizada_dia($mes,$anio,$punven_id){
		$fec1 = $anio.'-'.$mes.'-'.'01';
		$fec2 = $anio.'-'.$mes.'-'.'31';
		$sql="SELECT v.tb_venta_fec,punven.tb_puntoventa_id from tb_ventadetalle vd 
		inner join tb_venta v on vd.tb_venta_id = v.tb_venta_id
		INNER JOIN tb_puntoventa punven ON v.tb_puntoventa_id = punven.tb_puntoventa_id
		INNER JOIN tb_empresa emp ON punven.tb_empresa_id = emp.tb_empresa_id
		where v.tb_venta_xac = '1' and v.tb_venta_fec BETWEEN '$fec1' AND '$fec2' ";
		
		if($punven_id>0)$sql.=" and punven.tb_puntoventa_id = '$punven_id' ";
		
		$sql.=" group by v.tb_venta_fec,punven.tb_puntoventa_id ";
		
		$oCado = new Cado();
		$rst=$oCado->ejecute_sql($sql);
		return $rst;
	}



	
	function mostrar_xperiodoventa($mes,$anio,$emp){
		$fec1 = $anio.'-'.$mes.'-'.'01';
		$fec2 = $anio.'-'.$mes.'-'.'31';
		$sql="select * from tb_venta v
		INNER JOIN tb_documento d ON v.tb_documento_id=d.tb_documento_id
		inner join tb_puntoventa pv on pv.tb_puntoventa_id = v.tb_puntoventa_id
		where v.tb_venta_xac = '1' and v.tb_venta_fec BETWEEN '$fec1' AND '$fec2' and pv.tb_empresa_id = '$emp' ";
		
		$oCado = new Cado();
		$rst=$oCado->ejecute_sql($sql);
		return $rst;
	}
	
	function mostrar_xperiodonotacredito($mes,$anio,$emp){
		$fec1 = $anio.'-'.$mes.'-'.'01';
		$fec2 = $anio.'-'.$mes.'-'.'31';
		$sql="select * from tb_notacredito nc
		inner join tb_venta v on v.tb_venta_id = nc.tb_venta_id
		inner join tb_puntoventa pv on pv.tb_puntoventa_id = v.tb_puntoventa_id
		where nc.tb_notacredito_fec BETWEEN '$fec1' AND '$fec2' and pv.tb_empresa_id = '$emp' ";
		
		$oCado = new Cado();
		$rst=$oCado->ejecute_sql($sql);
		return $rst;
	}
	
	
	
	function mostrar_xperiodocompra($mes,$anio,$emp){
		$sql="select * from tb_compra where tb_compra_xac = '1' 
		and tb_compra_permes = '$mes' and tb_compra_peranio = '$anio' and tb_empresa_id = '$emp' 
		and tb_documento_id IN(1,2,3) ";
		
		$oCado = new Cado();
		$rst=$oCado->ejecute_sql($sql);
		return $rst;
	}

	
	function mostrar_productostock($cat_id,$mar_id,$top){
		$sql="SELECT * FROM tb_stock st 
		inner join tb_catalogo ct on ct.tb_catalogo_id = st.tb_catalogo_id
		inner join tb_producto pro on pro.tb_producto_id = ct.tb_producto_id
		inner join tb_marca m on m.tb_marca_id = st.tb_marca_id
		where pro.tb_producto_xac = '1' ";
		
		if($cat_id>0)$sql.=" AND pro.tb_categoria_id = '$cat_id' ";
		if($mar_id>0)$sql.=" AND st.tb_marca_id = '$mar_id' ";
		
		$sql.=" order by st.tb_stock_num asc limit $top ";
		$oCado = new Cado();
		$rst=$oCado->ejecute_sql($sql);
		return $rst;
	}
	
	
	
	function mostrar_filtromarca($mar_id){
		$sql="SELECT * FROM tb_marca where tb_marca_xac = '1' ";
		
		$oCado = new Cado();
		$rst=$oCado->ejecute_sql($sql);
		return $rst;
	}
	
	function filtroVentas($emp_id,$fec1,$fec2,$mon_id){
		$sql="SELECT SUM(tb_venta_tot) as 'totalventa' FROM tb_venta where tb_venta_fec 
		between '$fec1' and '$fec2' and tb_venta_xac = '1' ";
		
		if($mon_id>0)$sql.=" AND tb_moneda_id = '$mon_id' ";
		
		$oCado = new Cado();
		$rst=$oCado->ejecute_sql($sql);
		return $rst;
	}
	
	
	
	
	function filtroCompras($emp_id,$fec1,$fec2,$mon_id){
		$sql="SELECT SUM(tb_compra_tot) as 'totalcompra' FROM tb_compra where tb_compra_fec 
		between '$fec1' and '$fec2' and tb_compra_xac = '1' ";
		
		if($mon_id>0)$sql.=" AND tb_moneda_id = '$mon_id' ";
		
		$oCado = new Cado();
		$rst=$oCado->ejecute_sql($sql);
		return $rst;
	}
	
	function filtroTopProductoVendidos($emp_id,$fec1,$fec2,$top){
		$sql="SELECt dv.tb_ventadetalle_nom as 'pronom',m.tb_marca_nom as 'marnom', sum(dv.tb_ventadetalle_can) as 'can'
			from tb_venta v 	
			inner join tb_ventadetalle dv on dv.tb_venta_id  = v.tb_venta_id
			inner join tb_marca m on m.tb_marca_id = dv.tb_marca_id
			where v.tb_venta_fec between '$fec1' and '$fec2' and v.tb_venta_xac = '1'
			group by dv.tb_ventadetalle_nom,m.tb_marca_nom
			ORDER BY sum(dv.tb_ventadetalle_can) desc limit $top
		";
		
		$oCado = new Cado();
		$rst=$oCado->ejecute_sql($sql);
		return $rst;
	}
	
	
	function filtroTopProductoCompras($emp_id,$fec1,$fec2,$top){
		$sql="SELECt pro.tb_producto_nom as 'pronom',m.tb_marca_nom as 'marnom', 
			sum(cd.tb_compradetalle_can) as 'can'
			from tb_compra c
			inner join tb_compradetalle cd on cd.tb_compra_id  = c.tb_compra_id
			inner join tb_catalogo ct on ct.tb_catalogo_id = cd.tb_catalogo_id
			inner join tb_producto pro on pro.tb_producto_id = ct.tb_producto_id
			inner join tb_marca m on m.tb_marca_id = cd.tb_marca_id
			where c.tb_compra_fec between '$fec1' and '$fec2' and c.tb_compra_xac = '1'
			group by pro.tb_producto_nom,m.tb_marca_nom
			ORDER BY sum(cd.tb_compradetalle_can) desc limit $top
		";
		
		$oCado = new Cado();
		$rst=$oCado->ejecute_sql($sql);
		return $rst;
	}
	
	

}
?>