<?php

include 'is_logged.php';
require_once "../db.php";
require_once "../php_conexion.php";
require_once "../funciones.php";
include "../permisos.php";

$user_id = $_SESSION['id_users'];
$cargo_users = $_SESSION['cargo_users'];
$sucursal_users = $_SESSION['sucursal_users'];

get_cadena($user_id);
$modulo = "Ventas";
permisos($modulo, $cadena_permisos);

$simbolo_moneda = get_row('perfil', 'moneda', 'id_perfil', 1);
$action = (isset($_REQUEST['action']) && $_REQUEST['action'] != null) ? $_REQUEST['action'] : '';

if ($action == 'ajax') {

    $q = mysqli_real_escape_string($conexion, strip_tags($_REQUEST['q'], ENT_QUOTES));
    $daterange = mysqli_real_escape_string($conexion, strip_tags($_REQUEST['range'], ENT_QUOTES));

    if ($cargo_users == 1) {
        $id_suc = intval($_REQUEST['id_sucursal']);
    } else {
        $id_suc = $sucursal_users;
    }

    $sTable = "facturas_cot, clientes, users";
    $sWhere = " WHERE facturas_cot.id_cliente=clientes.id_cliente 
                AND facturas_cot.id_vendedor=users.id_users ";

    if ($id_suc > 0) {
        $sWhere .= " AND id_sucursal='$id_suc' ";
    }

    if (!empty($q)) {
        $sWhere .= " AND (clientes.nombre_cliente LIKE '%$q%' 
                        OR facturas_cot.numero_factura LIKE '%$q%')";
    }

    if (!empty($daterange)) {
        list($f_inicio, $f_final) = explode(" - ", $daterange);

        list($d, $m, $y) = explode("/", $f_inicio);
        $fecha_inicial = "$y-$m-$d 00:00:00";

        list($d, $m, $y) = explode("/", $f_final);
        $fecha_final = "$y-$m-$d 23:59:59";

        $sWhere .= " AND facturas_cot.fecha_factura BETWEEN '$fecha_inicial' AND '$fecha_final' ";
    }

    $sWhere .= " ORDER BY facturas_cot.id_factura DESC";

    include 'pagination.php';

    $page = isset($_REQUEST['page']) ? intval($_REQUEST['page']) : 1;
    $per_page = 10;
    $offset = ($page - 1) * $per_page;

    $count_query = mysqli_query($conexion, "SELECT COUNT(*) AS numrows FROM $sTable $sWhere");
    $row = mysqli_fetch_array($count_query);
    $numrows = $row['numrows'];
    $total_pages = ceil($numrows / $per_page);
    $reload = '../reportes/facturas.php';

    $sql = "SELECT * FROM $sTable $sWhere LIMIT $offset,$per_page";
    $query = mysqli_query($conexion, $sql);

    if ($numrows > 0) {
?>
<div class="table-responsive">
<table class="table table-sm table-striped">
    <tr class="info">
        <th>COTIZACIÓN</th>
        <th>EMISIÓN</th>
        <th>VENCE</th>
        <th>DÍAS REST</th>
        <th>NOMBRE CLIENTE</th>
        <th>CONTACTO</th>
        <th>EMPLEADO</th>
        <th>VIGENCIA</th>
        <th>IMPORTE</th>
        <th>ESTADO</th>
        <th>ACCIONES</th>
    </tr>

<?php
while ($row = mysqli_fetch_array($query)) {

    $fecha_emision = $row['fecha_factura'];
    $validez = $row['validez'];

    // DÍAS SEGÚN VALIDEZ
    switch ($validez) {
        case 1: $dias_vigencia = 5; break;
        case 2: $dias_vigencia = 10; break;
        case 3: $dias_vigencia = 15; break;
        case 4: $dias_vigencia = 30; break;
        case 5: $dias_vigencia = 60; break;
        default: $dias_vigencia = 0;
    }

    // FECHA DE VENCIMIENTO
    $fecha_venc_ts = strtotime($fecha_emision . " + $dias_vigencia days");
    $fecha_vencimiento = date("d/m/Y", $fecha_venc_ts);

    // DÍAS RESTANTES
    $hoy_ts = strtotime(date("Y-m-d"));
    $dias_restantes = floor(($fecha_venc_ts - $hoy_ts) / 86400);

    // ESTADO DE VIGENCIA
    if ($dias_restantes < 0) {
        $badge_vigencia = "danger";
        $texto_vigencia = "VENCIDA";
    } elseif ($dias_restantes <= 3) {
        $badge_vigencia = "warning";
        $texto_vigencia = $dias_restantes." días";
    } else {
        $badge_vigencia = "success";
        $texto_vigencia = $dias_restantes." días";
    }

    // ESTADO FACTURACIÓN
    if ($row['print_img'] == 1) {
        $estado_cotizacion = "FACTURADA";
        $color_estado = "success";
        $icono_estado = "fa-check-circle";
        $tooltip_estado = "Esta cotización ya fue facturada";
    } else {
        $estado_cotizacion = "NO FACTURADA";
        $color_estado = "warning";
        $icono_estado = "fa-clock";
        $tooltip_estado = "Cotización pendiente";
    }
?>
<tr>
    <td><span class="badge badge-purple"><?php echo $row['numero_factura']; ?></span></td>
    <td><?php echo date("d/m/Y", strtotime($fecha_emision)); ?></td>
    <td><?php echo $fecha_vencimiento; ?></td>
    <td>
        <span class="badge badge-<?php echo $badge_vigencia; ?>">
            <?php echo $texto_vigencia; ?>
        </span>
    </td>
    <td><?php echo $row['nombre_cliente']; ?></td>
    <td><?php echo $row['telefono_cliente']; ?></td>
    <td><?php echo $row['nombre_users']." ".$row['apellido_users']; ?></td>
    <td><?php echo validez($validez); ?></td>
    <td><b><?php echo $simbolo_moneda.number_format($row['monto_factura'],2); ?></b></td>
    <td>
        <span class="badge badge-<?php echo $color_estado; ?>"
              data-toggle="tooltip"
              title="<?php echo $tooltip_estado; ?>">
            <i class="fa <?php echo $icono_estado; ?>"></i>
            <?php echo $estado_cotizacion; ?>
        </span>
    </td>
    <td class="text-center">
        <div class="btn-group dropdown">
            <button class="btn btn-warning btn-sm dropdown-toggle" data-toggle="dropdown">
                <i class="fa fa-cog"></i>
            </button>
            <div class="dropdown-menu dropdown-menu-right">
                <?php if ($permisos_editar == 1) { ?>
                    <a class="dropdown-item" href="editar_cotizacion.php?id_factura=<?php echo $row['id_factura']; ?>">
                        <i class="fa fa-edit"></i> Editar
                    </a>
                    <a class="dropdown-item" href="#" onclick="imprimir_factura('<?php echo $row['id_factura']; ?>');">
                        <i class="fa fa-print"></i> Imprimir
                    </a>
                <?php } ?>
                <?php if ($permisos_eliminar == 1) { ?>
                    <a class="dropdown-item" href="#" data-toggle="modal"
                       data-target="#dataDelete" data-id="<?php echo $row['id_factura']; ?>">
                        <i class="fa fa-trash"></i> Eliminar
                    </a>
                <?php } ?>
            </div>
        </div>
    </td>
</tr>
<?php } ?>

<tr>
    <td colspan="10" class="text-right">
        <?php echo paginate($reload, $page, $total_pages, 4); ?>
    </td>
</tr>
</table>
</div>

<?php } else { ?>

<div class="alert alert-warning text-center">
    <strong>Aviso:</strong> No hay registro de cotizaciones
</div>

<?php } } ?>
