<?php
session_start();
require_once('../conexion.php');
require_once('../include/sesiones.php');
$abonado=$_POST['abono'];
$clie_id=$_POST['clie_id'];
$fecha=date('Y-m-d H:i:s');
$forma_pago=$_POST['forma_pago'];
if($forma_pago=='efectivo')
{
    $medio_pago='Efectivo';
}
if($forma_pago=='transferencia')
{
    $medio_pago=$_POST['medio_pago'];
} 
if($forma_pago=='tarjeta')
{
   $medio_pago=$_POST['medio_pago'];
}

$retencion_global=0;$can=mysqli_query($con,"SELECT * FROM ventas where empresa='$empresa' and ven_estado='sin pagar' and Cliente_clie_id='$clie_id' ") or die(mysqli_error($con)); 
$facturas = array();
while ($vhoy = mysqli_fetch_array($can)) 
{
    $total_articulos=0;
    $total_combos=0;
    $neto=0;
    $descuento_global=0;
    $iva_global=0;
    $ven_id=$vhoy['ven_id'];
    $sql=mysqli_query($con, "SELECT * from venta_detalle where ventas_ven_id='$ven_id'");
    while ($row=mysqli_fetch_array($sql))
    {
        $vend_precio=$row['vend_precio'];
        $vend_cantidad=$row['vend_cantidad'];
        $vend_descuento=$row['vend_desc'];
        $vend_iva=$row['vend_iva'];

        $iva0=$vend_iva/100; //0.19
        $iva1=1+$iva0; //1.19

        $precio_unitario_sin_iva=$vend_precio/$iva1;  //840.336
        $precio_total_sin_iva=$precio_unitario_sin_iva*$vend_cantidad;
        $descuento_unitario=($vend_descuento/100)*$precio_unitario_sin_iva;  //84033
        $descuento_item=$descuento_unitario*$vend_cantidad;  //84033
        $neto_item=$precio_total_sin_iva;
        $iva_item=($vend_precio-$precio_unitario_sin_iva)*$vend_cantidad;
        $neto+=$precio_total_sin_iva;
        $descuento_global+=$descuento_item;
        $iva_global+=$iva_item;
    }
    $sql1=mysqli_query($con, "SELECT * from venta_detalle_combo where ven_id='$ven_id'");
    while ($row1=mysqli_fetch_array($sql1))
    {
        $combo_cantidad=$row1["combo_cantidad"];
        $combo_precio=$row1['combo_precio'];
        $precio_total=$combo_cantidad*$combo_precio;
        $total_combos+=$precio_total;
    }
    $sql=mysqli_query($con, "SELECT sum(veab_abono) as total from venta_abonos where ventas_ven_id='$ven_id' ");
    $sql=mysqli_fetch_array($sql);
    $total_abono=$sql['total'];

    $devo_total=0;
    $sql1=mysqli_query($con, "SELECT * from devolucion where empresa='$empresa' and ventas_ven_id='$ven_id'");
    while ($row=mysqli_fetch_array($sql1))
    {
        $dev_precio=$row['dev_precio'];
        $devo_total+=$dev_precio; 
    }

    $sumador_total=($neto+$iva_global+$total_combos)-$descuento_global;
    $saldo_t=$sumador_total-$total_abono-$devo_total;

    $facturas[] = array(
    "cliente" => 'Carlos',
    "factura" =>$vhoy['ven_id'],
    "ven_n_venta" =>$vhoy['ven_n_venta'],
    "monto" => $saldo_t
    );
   }


$pagadas = [];
$abonadas = [];
$restantes = [];

foreach($facturas as $item){
    if($abonado >= $item['monto']){
        //array_push($pagadas,[$item['factura'],$item['monto']]);

        $abonado = $abonado - $item['monto'];
        $ven_id = $item['factura'];
        $pago = $item['monto'];
        $ven_n_venta= $item['ven_n_venta'];
        $detalle='abono de la factura N' .$ven_n_venta. '';

        $can=mysqli_query($con,"SELECT MAX(mov_numero)as mov_numero FROM movimientos where empresa='$empresa'") or die(mysqli_error($con)); 
        $dato=mysqli_fetch_array($can);
        $mov_numero=$dato['mov_numero']+1;
        $can=mysqli_query($con,"SELECT MAX(mov_id)as mov_id FROM movimientos") or die(mysqli_error($con)); 
        $dato=mysqli_fetch_array($can);
        $mov_id=$dato['mov_id']+1;

        $can=mysqli_query($con,"SELECT MAX(abo_numero)as abo_numero FROM abono_adelantado") or die(mysqli_error($con)); 
        $dato=mysqli_fetch_array($can); 
        $abo_numero=$dato['abo_numero']+1;
        $sql=mysqli_query($con, "SELECT cajas_caja_id, apertura, mca_estado from movimiento_caja where mca_usuario='$usu_id' and empresa='$empresa' and sucursal='$sucursal' and mca_estado='1'");
        $rowa= mysqli_fetch_array($sql);
        $apertura=$rowa['apertura'];
        $cajas_caja_id=$rowa['cajas_caja_id'];


        $sql2=mysqli_query($con, "SELECT * from cliente where clie_id='$clie_id' and empresa='$empresa' ");
        $sql2=mysqli_fetch_array($sql2);
        $clie_disponible=$sql2['clie_disponible'];
        $clie_nombre=$sql2['clie_nombre'];
        $suma=$clie_disponible+$pago;
        $registros=mysqli_query($con,"UPDATE cliente Set clie_disponible='$suma' Where clie_id='$clie_id' and empresa='$empresa'") or die(mysqli_error($con));

        $regis=mysqli_query($con,"INSERT into venta_abonos (veab_abono,forma_pago,medio_pago,veab_fecha,mov_id,usuario,apertura,sucursal,empresa,ventas_ven_id)
              VALUES ('$pago','$forma_pago','$medio_pago','$fecha','$mov_id','$usu_id','$apertura','$sucursal','$empresa','$ven_id')") or die(mysqli_error($con));

        $registros=mysqli_query($con,"INSERT into movimientos (mov_id,mov_caja,mov_apertura, mov_numero,mov_fecha,mov_usuario,mov_tipo_movimiento,mov_detalle,mov_total,estado,forma_pago,medio_pago,sucursal,empresa) 
              VALUES ('$mov_id','$cajas_caja_id','$apertura','$mov_numero','$fecha','$usu_id','Abono cxc','$detalle','$pago','entrada','$forma_pago','$medio_pago','$sucursal','$empresa')") or die(mysqli_error($con));  

      /*  $registros=mysqli_query($con,"INSERT into abono_adelantado (abo_clie_id,abo_numero,abo_clie_nombre, abo_fecha,abo_concepto,abo_valor,empresa,movimientos_mov_id) 
              VALUES  ('$clie_id','$abo_numero','$clie_nombre','$fecha','$detalle','$pago','$empresa','$mov_id')") or die(mysqli_error($con)); */ 

        $sql=mysqli_query($con,"UPDATE ventas Set ven_estado='pagada' Where ven_id='$ven_id'") or die(mysqli_error($con));

        echo '<div class="alert alert-success alert-dismissable">
            <button type="button" class="close" data-dismiss="alert" aria-hidden="true">&times;</button>
            <strong>Abono </strong>registrado correctamente de la venta <strong> N° '.$ven_n_venta.' de $'.$pago.'</strong>
            </div>';


    }else if($abonado < $item['monto'] && $abonado > 0){
        $pago = $abonado;
        $item['monto'] = $item['monto'] - $abonado;

        $ven_id = $item['factura'];
        $ven_n_venta= $item['ven_n_venta'];
        $detalle='abono de la factura N' .$ven_n_venta. '';

        $can=mysqli_query($con,"SELECT MAX(mov_numero)as mov_numero FROM movimientos where empresa='$empresa'") or die(mysqli_error($con)); 
        $dato=mysqli_fetch_array($can);
        $mov_numero=$dato['mov_numero']+1;
        $can=mysqli_query($con,"SELECT MAX(mov_id)as mov_id FROM movimientos") or die(mysqli_error($con)); 
        $dato=mysqli_fetch_array($can);
        $mov_id=$dato['mov_id']+1;

        $can=mysqli_query($con,"SELECT MAX(abo_numero)as abo_numero FROM abono_adelantado") or die(mysqli_error($con)); 
        $dato=mysqli_fetch_array($can); 
        $abo_numero=$dato['abo_numero']+1;
        $sql=mysqli_query($con, "SELECT cajas_caja_id, apertura, mca_estado from movimiento_caja where mca_usuario='$usu_id' and empresa='$empresa' and sucursal='$sucursal' and mca_estado='1'");
        $rowa= mysqli_fetch_array($sql);
        $apertura=$rowa['apertura'];
        $cajas_caja_id=$rowa['cajas_caja_id'];


        $sql2=mysqli_query($con, "SELECT * from cliente where clie_id='$clie_id' and empresa='$empresa' ");
        $sql2=mysqli_fetch_array($sql2);
        $clie_disponible=$sql2['clie_disponible'];
        $clie_nombre=$sql2['clie_nombre'];
        $suma=$clie_disponible+$pago;
        $registros=mysqli_query($con,"UPDATE cliente Set clie_disponible='$suma' Where clie_id='$clie_id' and empresa='$empresa'") or die(mysqli_error($con));

        $regis=mysqli_query($con,"INSERT into venta_abonos (veab_abono,forma_pago,medio_pago,veab_fecha,mov_id,usuario,apertura,sucursal,empresa,ventas_ven_id)
              VALUES ('$pago','$forma_pago','$medio_pago','$fecha','$mov_id','$usu_id','$apertura','$sucursal','$empresa','$ven_id')") or die(mysqli_error($con));

        $registros=mysqli_query($con,"INSERT into movimientos (mov_id,mov_caja,mov_apertura, mov_numero,mov_fecha,mov_usuario,mov_tipo_movimiento,mov_detalle,mov_total,estado,forma_pago,medio_pago,sucursal,empresa) 
              VALUES ('$mov_id','$cajas_caja_id','$apertura','$mov_numero','$fecha','$usu_id','Abono cxc','$detalle','$pago','entrada','$forma_pago','$medio_pago','$sucursal','$empresa')") or die(mysqli_error($con));  

      /*  $registros=mysqli_query($con,"INSERT into abono_adelantado (abo_clie_id,abo_numero,abo_clie_nombre, abo_fecha,abo_concepto,abo_valor,empresa,movimientos_mov_id) 
              VALUES  ('$clie_id','$abo_numero','$clie_nombre','$fecha','$detalle','$pago','$empresa','$mov_id')") or die(mysqli_error($con));  */

       // $sql=mysqli_query($con,"UPDATE ventas Set ven_estado='pagada' Where ven_id='$ven_id'") or die(mysqli_error($con));

        echo '<div class="alert alert-success alert-dismissable">
            <button type="button" class="close" data-dismiss="alert" aria-hidden="true">&times;</button>
            <strong>Abono </strong>registrado correctamente de la venta <strong> N° '.$ven_n_venta.' de $'.$pago.'</strong>
            </div>';
       
       // array_push($abonadas,[$item['factura'],$abonado]);

       // array_push($restantes,[$item['factura'],$item['monto']]);
        $abonado = 0;

    }else{
        //array_push($restantes,[$item['factura'],$item['monto']]);
    }
}
/*echo "Pagadas:<br>";
var_dump($pagadas);
echo "<bR>Abonadas:<br>";
var_dump($abonadas);
echo "<br>";
echo "Pendientes:<br>";
var_dump($restantes);
echo "<bR>Monto Restante:<br>".$abonado;         

var_dump($facturas);

*/
?>