<?php
class cCuentapagar{
	
	function cuentas_por_pagar($prov_id,$emp_id,$mon_id)
	{
		$sql="SELECT SUM(cp.tb_comprapago_mon) as monto, c.tb_moneda_id,p.tb_proveedor_id, p.tb_proveedor_nom,p.tb_proveedor_doc ,emp.tb_empresa_id,emp.tb_empresa_nomcom
		FROM tb_compra c
		INNER JOIN tb_empresa emp on emp.tb_empresa_id = c.tb_empresa_id
		INNER JOIN tb_proveedor p on c.tb_proveedor_id = p.tb_proveedor_id 
		INNER JOIN  tb_comprapago cp on c.tb_compra_id = cp.tb_compra_id
		WHERE c.tb_compra_xac = 1
		AND cp.tb_comprapago_xac=1
		AND c.tb_documento_id != 22 ";
		
		//AND cp.tb_formapago_id =2 
		
		if($emp_id>0) $sql.=" AND c.tb_empresa_id = '$emp_id' ";	
		if($prov_id>0) $sql.=" AND c.tb_proveedor_id = '$prov_id' ";	
		if($mon_id>0) $sql.=" AND c.tb_moneda_id = '$mon_id' ";	
		
		$sql.="  GROUP BY p.tb_proveedor_id, p.tb_proveedor_nom,p.tb_proveedor_doc,c.tb_moneda_id,emp.tb_empresa_id,emp.tb_empresa_nomcom ";
		$oCado = new Cado();
		$rst=$oCado->ejecute_sql($sql);
		return 
		$rst;
	}
	
		function ver_fechaspagos($fec1,$fec2)
	{
		$sql="SELECT tb_comprapago_fecpag as 'fechapago' 
		FROM `tb_comprapago` cp 
		inner join tb_compra c on c.tb_compra_id = cp.tb_compra_id
		where cp.tb_comprapago_fecpag between '$fec1' and '$fec2' GROUP by cp.tb_comprapago_fecpag";
		$oCado = new Cado();
		$rst=$oCado->ejecute_sql($sql);
		return $rst;
	}
	
	function cuentas_por_pagar_por_fecpag($fecpag)
	{
		$sql="SELECT * 
		from tb_compra c 
		INNER JOIN tb_proveedor p on c.tb_proveedor_id = p.tb_proveedor_id 
		INNER JOIN tb_documento d on c.tb_documento_id = d.tb_documento_id 
		INNER JOIN tb_comprapago cp on c.tb_compra_id = cp.tb_compra_id 
		WHERE tb_compra_xac=1
		AND cp.tb_comprapago_xac= 1 ";
		
		$sql.=" AND cp.tb_comprapago_fecpag = '$fecpag' ";
		
		$oCado = new Cado();
		$rst=$oCado->ejecute_sql($sql);
		return $rst;
	}
	
	function cuentas_por_pagar_por_proveedor1($pro_id,$emp_id,$monid)
	{
		$sql="SELECT SUM(cp.tb_comprapago_mon) as saldo
		from tb_compra c
		INNER JOIN tb_empresa emp on c.tb_empresa_id = emp.tb_empresa_id
		INNER JOIN tb_documento d on c.tb_documento_id = d.tb_documento_id 
		INNER JOIN tb_proveedor p on c.tb_proveedor_id = p.tb_proveedor_id         
		INNER JOIN tb_comprapago cp on c.tb_compra_id = cp.tb_compra_id
		WHERE c.tb_compra_xac=1
		AND cp.tb_comprapago_xac = 1
		AND cp.tb_comprapago_est = 2
		 AND c.tb_proveedor_id = '$pro_id'
		 AND c.tb_empresa_id = '$emp_id'
		 AND c.tb_moneda_id = '$monid' ";
		
		$oCado = new Cado();
		$rst=$oCado->ejecute_sql($sql);
		return $rst;
	}
	
	/* 
	function cuentas_por_pagar_por_proveedor($pro_id,$emp_id,$docnum,$monid, $doctod,$doclet,$docfac,$docnd,$docnc, $esttod,$estpen,$estcan,$estpag,$fec1,$fec2)
	{
		$sql="SELECT *
		from tb_compra c
		INNER JOIN tb_empresa emp on c.tb_empresa_id = emp.tb_empresa_id
		INNER JOIN tb_documento d on c.tb_documento_id = d.tb_documento_id 
		INNER JOIN tb_proveedor p on c.tb_proveedor_id = p.tb_proveedor_id         
		INNER JOIN tb_comprapago cp on c.tb_compra_id = cp.tb_compra_id
		WHERE c.tb_compra_xac=1
		AND cp.tb_comprapago_xac = 1
		AND c.tb_proveedor_id = '$pro_id'
		 AND c.tb_empresa_id = '$emp_id'
		 AND c.tb_moneda_id = '$monid' 
		 
		 
		";
	
	//AND c.tb_compra_fec BETWEEN '$fec1' AND '$fec2'
	
		if($docnum>0) {
			$sql.=" AND c.tb_compra_numdoc LIKE '%$docnum%' or cp.tb_comprapago_numuni LIKE '%$docnum%' ";	
		}else{
			
			if($doctod>0){
			
			}else{
			
			if($doclet>0) { $let = 'L';}else{ $let=''; }
			if($docfac>0) { $fac = 'F';}else{ $fac=''; } 
			if($docnd>0)  { $nd = 'ND';}else{ $nd=''; } 
			if($docnc>0)  { $nc = 'NC';}else{ $nc=''; }
			$sql.=" AND d.tb_documento_abr IN('$let','$fac','$nd','$nc')";
			}
		
			if($esttod>0){
			}else{
			
			if($estpen>0) { $pen ='2'; }else { $pen = '';}
			if($estcan>0) { $can ='3'; }else { $can = '';}
			if($estpag>0) { $pag ='1'; }else { $pag = '';}
				$sql.=" AND cp.tb_comprapago_est IN('$pen','$can','$pag')";
			}
		
		}
$sql.="  order by cp.tb_comprapago_fecven asc  ";
		//AND cp.tb_formapago_id =2 
		
		// AND cp.tb_comprapago_est =2 
		
		$oCado = new Cado();
		$rst=$oCado->ejecute_sql($sql);
		return $rst;
	}
 */	
 
 
	function cuentas_por_pagar_por_proveedor($pro_id,$emp_id,$docnum,$monid, $doc_id,$doc_est)
	{
		$sql="SELECT *
		from tb_compra c
		INNER JOIN tb_empresa emp on c.tb_empresa_id = emp.tb_empresa_id
		INNER JOIN tb_documento d on c.tb_documento_id = d.tb_documento_id 
		INNER JOIN tb_proveedor p on c.tb_proveedor_id = p.tb_proveedor_id         
		INNER JOIN tb_comprapago cp on c.tb_compra_id = cp.tb_compra_id
		WHERE c.tb_compra_xac=1
		AND cp.tb_comprapago_xac = 1
		AND c.tb_proveedor_id = '$pro_id'
		AND c.tb_empresa_id = '$emp_id'
		AND c.tb_moneda_id = '$monid' 
		 
		 
		";
	
	//AND c.tb_compra_fec BETWEEN '$fec1' AND '$fec2'
	
		if($docnum>0) {
			$sql.=" AND c.tb_compra_numdoc LIKE '%$docnum%' or cp.tb_comprapago_numuni LIKE '%$docnum%' ";	
		}else{
			
			if($doc_id!='') $sql.=" AND d.tb_documento_abr IN('$doc_id')";
			if($doc_est!='') $sql.=" AND cp.tb_comprapago_est IN('$doc_est')";
				
		}
		$sql.="  order by cp.tb_comprapago_fecven asc  ";
		
		$oCado = new Cado();
		$rst=$oCado->ejecute_sql($sql);
		return $rst;
	}
	
	
	
	function cuentas_por_pagar_reporte($pro_id,$emp_id,$tip,$por,$fec1,$ord)
	{
		$sql="SELECT * from tb_compra c
		INNER JOIN tb_empresa emp on c.tb_empresa_id = emp.tb_empresa_id
		left JOIN tb_documento d on c.tb_documento_id = d.tb_documento_id 
		INNER JOIN tb_proveedor p on c.tb_proveedor_id = p.tb_proveedor_id         
		INNER JOIN tb_comprapago cp on c.tb_compra_id = cp.tb_compra_id
		WHERE c.tb_compra_xac=1
		AND cp.tb_comprapago_xac = 1 and cp.tb_comprapago_est = 2 ";
		
		if($pro_id!="") $sql.="  AND c.tb_proveedor_id = '$pro_id' ";
		if($emp_id!="") $sql.="  AND c.tb_empresa_id = '$emp_id' ";
		
		// if($tip==1){
			// $sql.="   AND c.tb_documento_id != '22' ";
			
		// }else if($tip==2){
			// $sql.="   AND c.tb_documento_id = '22' ";
			
		// }	
		
		if($tip==1){
			//$sql.="   AND c.tb_documento_id != '22' ";	
			$sql.="   AND cp.tb_comprapago_con IN(3)";			
		}else if($tip==2){
			//$sql.="   AND c.tb_documento_id = '22' ";
			$sql.="   AND cp.tb_comprapago_con IN(1,2,0)";
				
			
		}	
		if($por==1){
			$sql.="   AND c.tb_compra_fec = '$fec1' ";
		}else if($por==2){
			$sql.="   AND cp.tb_comprapago_fecven = '$fec1' ";
		}	
		
		if($por==1){
			
			if($ord==1){
			$sql.="  order by c.tb_compra_fec asc  ";
			}else if($ord==2){
			$sql.="  order by c.tb_compra_fec desc  ";
			}	
			
		}else if($por==2){
			if($ord==1){
			$sql.="  order by cp.tb_comprapago_fecven asc  ";
			}else if($ord==2){
			$sql.="  order by cp.tb_comprapago_fecven desc  ";
			}	
		}		
		$oCado = new Cado();
		$rst=$oCado->ejecute_sql($sql);
		return $rst;
}
function cuentas_por_pagar_reporte_agru($pro_id,$emp_id,$tip,$por,$fec1,$fec2,$ord)
	{
		$sql="SELECT SUM(CASE WHEN c.tb_moneda_id = 1 THEN cp.tb_comprapago_mon - cp.tb_comprapago_liq ELSE 0 END) 'soles',
		SUM(CASE WHEN c.tb_moneda_id = 2 THEN cp.tb_comprapago_mon - cp.tb_comprapago_liq ELSE 0 END) 'dolares' ,
		c.tb_compra_fec as 'fecha',cp.tb_comprapago_fecven as 'fechaven',cp.tb_comprapago_con as 'con' from tb_compra c
		INNER JOIN tb_comprapago cp on c.tb_compra_id = cp.tb_compra_id
		WHERE c.tb_compra_xac=1
		AND cp.tb_comprapago_xac = 1 and cp.tb_comprapago_est = 2 ";
		
		if($pro_id!="") $sql.="  AND c.tb_proveedor_id = '$pro_id' ";
		if($emp_id!="") $sql.="  AND c.tb_empresa_id = '$emp_id' ";
		
		// if($tip==1){
			// $sql.="   AND c.tb_documento_id != '22' ";
		// }else if($tip==2){
			// $sql.="   AND c.tb_documento_id = '22' ";
		// }	
		
		if($tip==1){
			//$sql.="   AND c.tb_documento_id != '22' ";
			$sql.="   AND cp.tb_comprapago_con IN(3)";
		}else if($tip==2){
			//$sql.="   AND c.tb_documento_id = '22' ";
			$sql.="   AND cp.tb_comprapago_con IN(1,2,0)";
		}	
		if($por==1){
			$sql.="   AND c.tb_compra_fec BETWEEN '$fec1' AND '$fec2' ";
		}else if($por==2){
			$sql.="   AND cp.tb_comprapago_fecven BETWEEN '$fec1' AND '$fec2' ";
		}	
		
		if($por==1){
			
			if($ord==1){
			$sql.="  group by c.tb_compra_fec  ";
			$sql.="  order by c.tb_compra_fec asc ";
			}else if($ord==2){
			$sql.="  group by c.tb_compra_fec  ";
			$sql.="  order by c.tb_compra_fec desc ";
			}	
			
		}else if($por==2){
			if($ord==1){
				$sql.="  group by cp.tb_comprapago_fecven  ";
				$sql.="  order by cp.tb_comprapago_fecven asc  ";
			}else if($ord==2){
				$sql.="  group by cp.tb_comprapago_fecven  ";
				$sql.="  order by cp.tb_comprapago_fecven desc  ";
			}	
		}
		
		$oCado = new Cado();
		$rst=$oCado->ejecute_sql($sql);
		return $rst;
}
	
	
	
	
	
	
	
	function cuentas_por_pagar_por_proveedor_2($pro_id,$emp_id,$monid)
	{
		$sql="SELECT SUM(e.tb_egreso_imp) as 'sumpagado'
		from tb_compra c
		INNER JOIN tb_empresa emp on c.tb_empresa_id = emp.tb_empresa_id
		INNER JOIN tb_documento d on c.tb_documento_id = d.tb_documento_id 
		INNER JOIN tb_proveedor p on c.tb_proveedor_id = p.tb_proveedor_id         
		INNER JOIN tb_comprapago cp on c.tb_compra_id = cp.tb_compra_id
		 INNER JOIN tb_egreso e on e.tb_egreso_modide = cp.tb_comprapago_id
		WHERE c.tb_compra_xac = 1
		AND cp.tb_comprapago_xac = 1
		AND cp.tb_comprapago_est =1
		 and e.tb_egreso_est = 1
        and e.tb_modulo_id = 4
        and e.tb_egreso_xac = 1
		AND c.tb_proveedor_id = '$pro_id'
		AND c.tb_empresa_id = '$emp_id' 
		 and c.tb_moneda_id = '$monid' ";
		//AND cp.tb_formapago_id =2 
		
		// 
		
		$oCado = new Cado();
		$rst=$oCado->ejecute_sql($sql);
		return $rst;
	}
	
	function modificar_archivo($id){
		$sql = "UPDATE tb_comprapagoarchivo SET  
		`tb_comprapagoarchivo_xac` =  '0' 
		WHERE tb_comprapagoarchivo_id = '$id'"; 
		$oCado = new Cado();
		$rst=$oCado->ejecute_sql($sql);
		return $rst;	
	}
	
	function editar_campo($campo,$dato,$compag_id)
	{
		$sql = "UPDATE tb_comprapago SET 
		tb_comprapago_$campo = '$dato' 
		WHERE tb_comprapago_id  = '$compag_id' "; 
		$oCado = new Cado();
		//echo $sql; 
		$rst=$oCado->ejecute_sql($sql);
		return $rst;	
	}
	
	function mostrat_seguntipo()
	{
		$sql = "SELECT * FROM tb_compra c 
		inner join tb_comprapago cp on cp.tb_compra_id = c.tb_compra_id		
		where c.tb_documento_id IN (1)"; 
		$oCado = new Cado();
		//echo $sql; 
		$rst=$oCado->ejecute_sql($sql);
		return $rst;	
	}
	function cuentas_por_pagar_por_fecven($fecven,$emp_id)
	{
		$sql="SELECT *
		from tb_compra c
		INNER JOIN tb_empresa emp on c.tb_empresa_id = emp.tb_empresa_id
		INNER JOIN tb_documento d on c.tb_documento_id = d.tb_documento_id 
		INNER JOIN tb_proveedor p on c.tb_proveedor_id = p.tb_proveedor_id         
		INNER JOIN tb_comprapago cp on c.tb_compra_id = cp.tb_compra_id
		WHERE c.tb_compra_xac=1
		and cp.tb_comprapago_est = 2
		AND cp.tb_comprapago_xac = 1
		
		";
		//AND c.tb_empresa_id = '$emp_id'	
		if($emp_id>0) $sql.=" AND c.tb_empresa_id = '$emp_id' ";
		
		if($fecven!="")
		{
			if($fecven=="1")
			{
				$fecha_hoy=date('Y-m-d');
				$sql.=" AND cp.tb_comprapago_fecven < '$fecha_hoy' ";
			}
			else{
				$sql.=" AND cp.tb_comprapago_fecven LIKE '$fecven' ";
			}
		}
		$sql.=" ";
		$oCado = new Cado();
		$rst=$oCado->ejecute_sql($sql);
		return $rst;
	}
	
	function cuentas_por_pagar_por_fecven_con($fecven,$emp_id,$con)
	{
		$sql="SELECT *
		from tb_compra c
		INNER JOIN tb_empresa emp on c.tb_empresa_id = emp.tb_empresa_id
		INNER JOIN tb_documento d on c.tb_documento_id = d.tb_documento_id 
		INNER JOIN tb_proveedor p on c.tb_proveedor_id = p.tb_proveedor_id         
		INNER JOIN tb_comprapago cp on c.tb_compra_id = cp.tb_compra_id
		WHERE c.tb_compra_xac=1
		and cp.tb_comprapago_est = 2
		AND cp.tb_comprapago_xac = 1
		
		";
		//AND c.tb_empresa_id = '$emp_id'	
		
		if($emp_id>0) $sql.=" AND c.tb_empresa_id = '$emp_id' ";
		if($con==3){ 
		$sql.=" AND c.tb_documento_id = '22' ";
		$sql.=" AND cp.tb_comprapago_con = '$con' ";
		}
		
		if($con==1){ 
		$sql.=" AND cp.tb_comprapago_con != 3 and cp.tb_comprapago_con != 0  ";
		}
		
		if($fecven!="")
		{
			if($fecven=="1")
			{
				$fecha_hoy=date('Y-m-d');
				$sql.=" AND cp.tb_comprapago_fecven < '$fecha_hoy' ";
			}
			else{
				$sql.=" AND cp.tb_comprapago_fecven LIKE '$fecven' ";
			}
		}
		$sql.=" ";
		$oCado = new Cado();
		$rst=$oCado->ejecute_sql($sql);
		return $rst;
	}
	
	
	function cuentas_por_pagar_por_fecven_doc($fecven,$emp_id,$con)
	{
		$sql="SELECT *
		from tb_compra c
		INNER JOIN tb_empresa emp on c.tb_empresa_id = emp.tb_empresa_id
		INNER JOIN tb_documento d on c.tb_documento_id = d.tb_documento_id 
		INNER JOIN tb_proveedor p on c.tb_proveedor_id = p.tb_proveedor_id         
		INNER JOIN tb_comprapago cp on c.tb_compra_id = cp.tb_compra_id
		WHERE c.tb_compra_xac=1
		and cp.tb_comprapago_est = 2
		AND cp.tb_comprapago_xac = 1
		AND c.tb_documento_id != 22
		";
		//AND c.tb_empresa_id = '$emp_id'	
		
		if($emp_id>0) $sql.=" AND c.tb_empresa_id = '$emp_id' ";
		
		if($fecven!="")
		{
			if($fecven=="1")
			{
				$fecha_hoy=date('Y-m-d');
				$sql.=" AND cp.tb_comprapago_fecven < '$fecha_hoy' ";
			}
			else{
				$sql.=" AND cp.tb_comprapago_fecven LIKE '$fecven' ";
			}
		}
		$sql.=" ";
		$oCado = new Cado();
		$rst=$oCado->ejecute_sql($sql);
		return $rst;
	}
}
?>