<?php
session_start();
require_once('../conexion.php');
require_once('../include/sesiones.php');


$pro=mysqli_query($con,"SELECT * FROM proveedor p, proveedor_compra_temp pc  where p.pro_id=pc.pct_pro_id and p.empresa='$empresa' and pc.empresa='$empresa' and pc.usuario='$usu_id'") or die(mysqli_error($con)); 
$pro=mysqli_fetch_array($pro);

if($pro > 0)
{
    $pro_id=$pro['pro_id'];  
    $pro_nombre=$pro['pro_nombre'];
}
else
{
    $pro = mysqli_query($con,"SELECT * FROM proveedor WHERE pro_nombre='PROVEEDOR INICIAL' and empresa='$empresa'");
    $pro=mysqli_fetch_array($pro);
    $pro_id=$pro['pro_id'];  
    $pro_nombre=$pro['pro_nombre'];
}


$facturaproveedor=$_POST['facturaproveedor'];
$formapagoo=$_POST['formapagoo'];
$dias=$_POST['dias'];
$com_fecha=$_POST['com_fecha'];
$fecha=date('Y-m-d H:i:s');


$can=mysqli_query($con,"SELECT MAX(com_id)as com_id FROM compras ") or die(mysqli_error($con)); 
$dato=mysqli_fetch_array($can);
$com_id=$dato['com_id']+1;
$can=mysqli_query($con,"SELECT MAX(com_n_compra)as numero FROM compras where empresa='$empresa'") or die(mysqli_error($con)); 
$dato=mysqli_fetch_array($can);
$numero=$dato['numero']+1;
$can1=mysqli_query($con,"SELECT * FROM compra_detalle_temp where usuario='$usu_id' and empresa='$empresa'") or die(mysqli_error($con)); 
$result = mysqli_num_rows($can1);
if($result == 0)
{
    echo '<div class="alert alert-danger alert-dismissable">
            <button type="button" class="close" data-dismiss="alert" aria-hidden="true">&times;</button>
            <strong>La lista de Articulos esta vacia </strong> 
        </div>';
}
else
{
    if ($formapagoo=='Contado') 
    { 
        $caja_descontar=$_POST['caja_descontar'];
        if ($caja_descontar=='Caja_Mayor') 
        {
            $medio_pago=$_POST['medio_pago'];
            $valor=$_POST['valor'];
            $registros=mysqli_query($con,"INSERT into compras (com_id,com_n_compra,com_fecha,proveedor_pro_id,proveedor_nombre,com_facturaproveedor,com_formapago,com_dias,com_estado,com_bodega,sucursal,empresa)
                         VALUES  ('$com_id','$numero','$com_fecha','$pro_id','$pro_nombre','$facturaproveedor','$formapagoo','$dias','Pagado','$bod_id','$sucursal','$empresa')") or  die(mysqli_error($con));                              
            $abon=mysqli_query($con,"INSERT into compra_abonos (coab_abono,coab_fecha,forma_pago,medio_pago,usuario,empresa,compras_com_id)
                        VALUES  ('$valor','$com_fecha','$formapagoo','$medio_pago','$usu_id','$empresa','$com_id')") or  die(mysqli_error($con));
        }
        else
        {
            $registros=mysqli_query($con,"INSERT into compras (com_id,com_n_compra,com_fecha,proveedor_pro_id,proveedor_nombre,com_facturaproveedor,com_formapago,com_dias,com_estado,com_bodega,sucursal,empresa)
                         VALUES  ('$com_id','$numero','$com_fecha','$pro_id','$pro_nombre','$facturaproveedor','$formapagoo','$dias','Pagado','$bod_id','$sucursal','$empresa')") or  die(mysqli_error($con)); 

            $number = count($_POST["medio_pago"]);  
            if ($number > 0) {
                for ($i = 0; $i < $number; $i++) {
                    $medio_pago = trim($_POST["medio_pago"][$i]);
                    $valor_pago = trim($_POST["valor_pago"][$i]);

                    if ($medio_pago !== '' && is_numeric($valor_pago)) {
                        $query = "INSERT INTO compra_abonos 
                            (coab_abono, coab_fecha, forma_pago, medio_pago, usuario, empresa, compras_com_id) 
                            VALUES ('$valor_pago', '$com_fecha', 'Contado', '$medio_pago', '$usu_id', '$empresa', '$com_id')";

                        $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;

                        if($medio_pago=='Efectivo')
                        {
                            $metodo='efectivo';
                        }
                        else
                        {
                            $metodo='transferencia';
                        }

                    $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 cxp','Pago de la Compra $facturaproveedor','$valor_pago','salida','$metodo','$medio_pago','$sucursal','$empresa')") or die(mysqli_error($con)); 

                        if (!mysqli_query($con, $query)) {
                            echo "Error al insertar el abono $i: " . mysqli_error($con);
                        }
                    }
                }
            }

        }
    }
    else
    {
        $registros=mysqli_query($con,"INSERT into compras (com_id,com_n_compra,com_fecha,proveedor_pro_id,proveedor_nombre,com_facturaproveedor,com_formapago,com_dias,com_estado,com_bodega,sucursal,empresa)
                     VALUES  ('$com_id','$numero','$com_fecha','$pro_id','$pro_nombre','$facturaproveedor','$formapagoo','$dias','Sin pagar','$bod_id','$sucursal','$empresa')") or  die(mysqli_error($con));
    }




    $can7=mysqli_query($con,"SELECT * FROM compra_detalle_temp where usuario='$usu_id' and empresa='$empresa'") or die(mysqli_error($con));  
    while($dato=mysqli_fetch_array($can7))
    {   
        $comt_id=$dato['comt_id']; 
        $comt_art_id=$dato['comt_art_id']; 
        $comt_referencia=$dato['comt_referencia']; 
        $comt_nombre=$dato['comt_nombre'];           
        $comt_cantidad=$dato['comt_cantidad'];            
        $comt_precio=$dato['comt_precio'];
        $comt_iva=$dato['comt_iva'];
        $comt_desc_desp_iva=$dato['comt_desc_desp_iva'];
        $fecha_vencimiento=$dato['fecha_vencimiento'];
        $comt_flete=$dato['comt_flete'];
        $atributo1=$dato['atributo1'];
        $atributo2=$dato['atributo2'];
        $lote=$dato['lote'];

        $desc_uni=$comt_desc_desp_iva/$comt_cantidad;

        $iva=($comt_precio*$comt_iva)/100;
        $precio_total=$comt_precio+$iva-$desc_uni;
        $precio_total_flete=$comt_precio+$iva+$comt_flete;

        $can=mysqli_query($con,"SELECT MAX(comd_id) as comd_id FROM compra_detalle") or die(mysqli_error($con)); 
        $dato=mysqli_fetch_array($can);
        $comd_id=$dato['comd_id']+1;

        $canant=mysqli_query($con,"SELECT * FROM articulos_has_bodegas where articulos_art_id='$comt_art_id' and empresa='$empresa' and sucursal='$sucursal' and bodegas='$bod_id' ") or die(mysqli_error($con)); 
        $ant=mysqli_fetch_array($canant);
        $art_cantidad=$ant['art_cantidad'];

        $can8=mysqli_query($con,"INSERT INTO compra_detalle (comd_id,comd_art_id,comd_referencia,comd_nombre,comd_cantidad,comd_cantidad_ant,comd_precio,comd_iva,comd_desc_desp_iva,comd_flete,atributo1,atributo2,lote,empresa,compras_com_id) 
            VALUES ('$comd_id','$comt_art_id','$comt_referencia','$comt_nombre','$comt_cantidad','$art_cantidad','$comt_precio','$comt_iva','$comt_desc_desp_iva','$comt_flete','$atributo1','$atributo2','$lote','$empresa','$com_id')") or die(mysqli_error($con));
      
        
        $registros=mysqli_query($con,"UPDATE articulos Set art_precio_costo='$precio_total',art_cargo_adicional='$comt_flete' Where art_id='$comt_art_id' and empresa='$empresa'") or die(mysqli_error($con));

        $can9=mysqli_query($con,"SELECT * FROM seriales_com_temp where compra_detalle_temp_comt_id='$comt_id'") or die(mysqli_error($con));  
        while($ser=mysqli_fetch_array($can9))
        {
            $ser_codigo=$ser['ser_codigo'];
            $can8=mysqli_query($con,"INSERT INTO seriales_compra (ser_codigo,compra_detalle_comd_id) 
                    VALUES ('$ser_codigo','$comd_id')") or die(mysqli_error($con));  

            $can10=mysqli_query($con,"INSERT INTO seriales_articulos (se_codigo,estado,articulos_art_id) 
                    VALUES ('$ser_codigo','sin vender','$comt_art_id')") or die(mysqli_error($con));  
        }  
    }



     $can5=mysqli_query($con,"SELECT * FROM compra_detalle_temp where usuario='$usu_id'  and  empresa='$empresa'") or die(mysqli_error($con));  
    while($dato=mysqli_fetch_array($can5))
    {
        $comt_art_id=$dato['comt_art_id'];     
        $comt_cantidad=$dato['comt_cantidad'];
        $comt_precio=$dato['comt_precio'];
        $atributo1=$dato['atributo1'];
        $atributo2=$dato['atributo2'];
        $lote=$dato['lote'];
        
        $comt_iva=$dato['comt_iva'];
        $fecha_vencimiento=$dato['fecha_vencimiento'];
        $comt_flete=$dato['comt_flete'];

        $iva=($comt_precio*$comt_iva)/100;
        $precio_total=$comt_precio+$iva;
        $precio_total_flete=$comt_precio+$iva+$comt_flete;

     

        $can6=mysqli_query($con,"SELECT * FROM articulos_has_bodegas WHERE articulos_art_id='$comt_art_id' and atributo1='$atributo1' and atributo2='$atributo2' and bodegas='$bod_id' and empresa='$empresa'") or die(mysqli_error($con)); 
        $dato6=mysqli_fetch_array($can6);

        $result6 = mysqli_num_rows($can6);
        if($result6 <= 0)
        {
            $can=mysqli_query($con,"SELECT MAX(art_id)as art_id_bod FROM articulos_has_bodegas ") or die(mysqli_error($con)); 
            $dato=mysqli_fetch_array($can);
            $art_id_bod=$dato['art_id_bod']+1;
            
            $sql10 = "INSERT INTO articulos_has_bodegas (art_id,articulos_art_id,art_cantidad,atributo1,atributo2,bodegas,sucursal,empresa) VALUES ('$art_id_bod','$comt_art_id','$comt_cantidad','$atributo1','$atributo2','$bod_id','$sucursal','$empresa') ";mysqli_query($con, $sql10);    
        }
        else
        {
            $art_id_bod=$dato6['art_id'];
            $articulos_art_id=$dato6['articulos_art_id'];            
            $art_cantidad=$dato6['art_cantidad'];
            $suma=$art_cantidad+$comt_cantidad;
            $resta=$art_cantidad-$comt_cantidad;
            $registros=mysqli_query($con,"UPDATE articulos_has_bodegas Set art_cantidad='$suma' Where articulos_art_id='$comt_art_id' and atributo1='$atributo1' and atributo2='$atributo2' and bodegas='$bod_id' and empresa='$empresa'") or die(mysqli_error($con));
        }

        $can8=mysqli_query($con,"INSERT INTO kardex_compra (kar_com_id,kar_tipo,kar_fecha,lote,kar_fecha_vencimiento,art_id_bod,kar_art_id,kar_cantidad,kar_cantidad_v,kar_precio,bodega,sucursal,empresa) VALUES ('$com_id','compra','$com_fecha','$lote','$fecha_vencimiento','$art_id_bod','$comt_art_id','$comt_cantidad','$comt_cantidad','$precio_total_flete','$bod_id','$sucursal','$empresa')") or die(mysqli_error($con));
    }


    


    if (isset($_FILES['factura']) && !empty($_FILES['factura']['name'])) {
    $nameimagen = $_FILES['factura']['name'];
    $tmpimagen = $_FILES['factura']['tmp_name'];
    $extimagen = pathinfo($nameimagen);
    $ext = array("pdf"); // Eliminamos el valor vac铆o "" que no es necesario
    $urlnueva = "../img/img_facturas/" . $com_id . ".pdf";

    if (is_uploaded_file($tmpimagen)) {
        if (in_array(strtolower($extimagen['extension']), $ext)) {
            copy($tmpimagen, $urlnueva);
        } else {
            echo '<div class="alert alert-danger alert-dismissable">
                      <button type="button" class="close" data-dismiss="alert" aria-hidden="true">&times;</button>
                      <strong>No se guard贸:</strong> Solo se permite formato PDF.
                  </div>';
        }
    }
}



    $ret=mysqli_query($con,"SELECT * FROM retencion_compra_temp where empresa='$empresa' and usuario='$usu_id'") or die(mysqli_error($con)); 
    while ($rets=mysqli_fetch_array($ret))
    {
        $ret_porcentaje=$rets['ret_porcentaje'];
        $can10=mysqli_query($con,"INSERT INTO retencion_compra (ret_porcentaje,compras_com_id,empresa) 
                         VALUES ('$ret_porcentaje','$com_id','$empresa')") or die(mysqli_error($con));  
    }

    $borrar=mysqli_query($con,"DELETE FROM seriales_com_temp where  usuario='$usu_id' ") or  die(mysqli_error($con));
    $borrar=mysqli_query($con,"DELETE FROM compra_detalle_temp where empresa='$empresa' and usuario='$usu_id'") or die(mysqli_error($con));
    $borrar=mysqli_query($con,"DELETE FROM proveedor_compra_temp where empresa='$empresa' and usuario='$usu_id'") or die(mysqli_error($con));
    $borrar=mysqli_query($con,"DELETE FROM retencion_compra_temp where empresa='$empresa' and usuario='$usu_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>Compra!</strong> Guardada correctamente.
          </div>';                       
}
?>