<?php

$r="../../";
require_once($r."inc/funciones.php");
$mysqli = connectDB($r);
session_start();

$idusuario = $_SESSION['userid'] ?? 0;

if(!$idusuario){
    echo "ERROR: Sesión inválida";
    exit();
}

$cliente     = $_POST['cliente'] ?? '';
$remision     = $_POST['remision'] ?? '0';
$perfil      = $_POST['perfil'] ?? '';
$pago        = $_POST['pago'] ?? '';
$fecha       = $_POST['fecha'] ?? '';
$nota        = $_POST['nota'] ?? '';
$adicional   = $_POST['otros'] ?? 0;
$documentos  = $_POST['documentos'] ?? '';

$totalbase          = $_POST['totalbase'] ?? 0;
$tiva               = $_POST['tiva'] ?? 0;
$totalica           = $_POST['totalica'] ?? 0;
$totalretefuente    = $_POST['totalretefuente'] ?? 0;
$ttotal             = $_POST['ttotal'] ?? 0;

$tieneProductos = false;

foreach($_POST as $key => $item){

    if(substr($key, 0, 4) === 'iden'){

        $tieneProductos = true;
    }
}

if(!$tieneProductos){
    echo "<div class='alert alert-danger text-center'>No hay productos</div>";
    exit();
}

// =========================
// CLIENTE
// =========================
if($cliente === 'otro'){

    $empresa    = trim($_POST['empresa'] ?? '');
    $nit        = trim($_POST['nit'] ?? '');
    $contacto   = trim($_POST['contacto'] ?? '');
    $celular    = trim($_POST['celular'] ?? '');
    $ciudad     = $_POST['ciudad'] ?? '';
    $direccion  = $_POST['direccion'] ?? '';
    $correo     = $_POST['correo'] ?? '';
    $dir_envio  = $_POST['dir_envio'] ?? '';
    $barrio     = $_POST['barrio'] ?? '';
    $localidad  = $_POST['localidad'] ?? '';

    if(!$empresa || !$nit || !$celular || !$dir_envio){
        echo "<div class='alert alert-danger text-center'>Faltan datos del cliente</div>";
        exit();
    }

    $mysqli->query("INSERT INTO z_cotizacion (
        idcliente, empresa, nit, direccion1, contacto, telefono, ciudad,
        direccion, correo, idpago, subtotal, tiva, ica, retefuente,
        total, adicional, documentos, codigo, fecha_entrega,
        comentarios, idusuario, remision, perfil, barrio, localidad
    ) VALUES (
        NULL,'$empresa','$nit','$direccion','$contacto','$celular','$ciudad',
        '$dir_envio','$correo','$pago','$totalbase','$tiva','$totalica','$totalretefuente',
        '$ttotal','$adicional','$documentos','0000','$fecha',
        '$nota','$idusuario','$remision','$perfil','$barrio','$localidad'
    )");

}else{

    $infoclient = sinfo('z_clientes',$cliente);

    $empresa    = $infoclient['nombre'];
    $contacto   = $infoclient['contacto1'];
    $celular    = $infoclient['celular1'];
    $ciudad     = $infoclient['municipio'];
    $correo     = $infoclient['correo'];

    $dir_envio  = $_POST['dir_envio'] ?? '';
    $direccion  = $_POST['direccion'] ?? '';
    $barrio     = $_POST['barrio'] ?? '';
    $localidad  = $_POST['localidad'] ?? '';

    $mysqli->query("INSERT INTO z_cotizacion (
        idcliente, empresa, nit, direccion1, contacto, telefono, ciudad,
        correo, direccion, idpago, subtotal, tiva, ica, retefuente,
        total, adicional, documentos, codigo, fecha_entrega,
        comentarios, idusuario, remision, perfil, barrio, localidad
    ) VALUES (
        '$cliente','$empresa','$nit','$direccion','$contacto','$celular','$ciudad',
        '$correo','$dir_envio','$pago','$totalbase','$tiva','$totalica','$totalretefuente',
        '$ttotal','$adicional','$documentos','0000','$fecha',
        '$nota','$idusuario','$remision','$perfil','$barrio','$localidad'
    )");
}

$idcotizacion = $mysqli->insert_id;

if(!$idcotizacion){
    echo "<div class='alert alert-danger text-center'>Error creando cotización</div>";
    exit();
}

// =========================
// PRODUCTOS
// =========================
$tieneProductos = false;

foreach($_POST as $key => $item){

    if(substr($key, 0, 4) === 'iden'){

        $tieneProductos = true;

        $idpro  = $item;
        $idkpro = $_POST['cod'.$idpro];
        $cant   = $_POST['cant'.$idpro];
        $cat   = $_POST['cat'.$idpro];
        $precio = $_POST['prec'.$idpro];
        $tipo   = $_POST['tipo'.$idpro];
        $iva    = $_POST['iva'.$idpro];

        if($idpro > 2147483647){

            $namep = substr($item, 10, -strlen($tipo));
            $idkpro = 2147483647;

            $mysqli->query("INSERT INTO z_cotizacion_pedido 
            (idcotizacion, idproducto, idpresentacion, cantidad, precio, iva, producto, categoria)
            VALUES 
            ('$idcotizacion','$idkpro','$tipo','$cant','$precio','$iva','$namep','$cat')");

        }else{

            $mysqli->query("INSERT INTO z_cotizacion_pedido 
            (idcotizacion, idproducto, idpresentacion, cantidad, precio, iva)
            VALUES 
            ('$idcotizacion','$idkpro','$tipo','$cant','$precio','$iva')");
        }
    }
}

if(!$tieneProductos){
    echo "<div class='alert alert-danger text-center'>No hay productos</div>";
    exit();
}

// =========================
// OK FINAL
// =========================
echo "cotizaciones.php?msg=LA COTIZACION N° $idcotizacion SE HA REALIZADO CON ÉXITO";