<?php
session_start();
if (!isset($_SESSION['user_login_status']) and $_SESSION['user_login_status'] != 1) {
    header("location: ../../login.php");
    exit;
}
/* Connect To Database*/
require_once "../db.php";
require_once "../php_conexion.php";
require_once "../funciones.php";
//Inicia Control de Permisos
include "../permisos.php";
$user_id = $_SESSION['id_users'];
get_cadena($user_id);
$modulo = "Ventas";
permisos($modulo, $cadena_permisos);
//Finaliza Control de Permisos
$simbolo_moneda = get_row('perfil', 'moneda', 'id_perfil', 1);

if (isset($_GET['numero_mesa'])) {
    $numero_mesa             = mysqli_real_escape_string($conexion, (strip_tags($_REQUEST['numero_mesa'], ENT_QUOTES)));
    $_SESSION['numero_mesa'] = $numero_mesa;
    $sql_tmp                 = mysqli_query($conexion, "select * from mesas where id_mesa='$numero_mesa'");
    $rw                      = mysqli_fetch_array($sql_tmp);
    //validaciones
    if ($user_id == $rw['users_id']) {
        $hidden = 'enabled';
        $sql          = "UPDATE mesas SET status_mesa=1, users_id='$user_id' WHERE id_mesa='" . $numero_mesa . "'";
        $query_update = mysqli_query($conexion, $sql);
    } elseif ($user_id == $rw['users_id']) {
        $hidden = 'enabled';
        $sql          = "UPDATE mesas SET status_mesa=1, users_id='$user_id' WHERE id_mesa='" . $numero_mesa . "'";
        $query_update = mysqli_query($conexion, $sql);
    } elseif ($user_id == 1 and $rw['users_id'] == 0) {
        $hidden = 'enabled';
        $sql          = "UPDATE mesas SET status_mesa=1, users_id='$user_id' WHERE id_mesa='" . $numero_mesa . "'";
        $query_update = mysqli_query($conexion, $sql);
    } elseif ($user_id == 1) {
        $hidden = 'enabled';
    } elseif ($user_id !== $rw['users_id'] and $rw['users_id'] > 0) {
        $hidden = 'disabled';
    } elseif ($rw['users_id'] == 0) {
        $hidden = 'enabled';
        $sql          = "UPDATE mesas SET status_mesa=1, users_id='$user_id' WHERE id_mesa='" . $numero_mesa . "'";
        $query_update = mysqli_query($conexion, $sql);
    } else {
        $hidden = 'disabled';
    }
    //Fin validacion de Usuario
    // check if user or email address already exists
    $sql                   = "SELECT * FROM tmp_comandas WHERE mesa_comanda ='" . $numero_mesa . "';";
    $query_check_user_name = mysqli_query($conexion, $sql);
    $query_check_user      = mysqli_num_rows($query_check_user_name);
    if ($query_check_user == true) {
    } else {
        // write new user's data into database
        $insert_tmp_comanda = mysqli_query($conexion, "INSERT INTO tmp_comandas (mesa_comanda,estado_comanda,session_id)
        VALUES ('$numero_mesa','0','$user_id')");
    }
} else {
    header("location: ../html/control_mesas.php");
    exit;
}
$query_empresa = mysqli_query($conexion, "select * from perfil, clientes where perfil.cliente_id= clientes.id_cliente  and perfil.id_perfil=1");
$row           = mysqli_fetch_array($query_empresa);
//NOMBRE DEL USUARIO DE LA CUENTA
$sql    = mysqli_query($conexion, "select usuario_users from users, mesas WHERE mesas.users_id = users.id_users AND  id_mesa  ='" . $numero_mesa . "'");
$rrw             = mysqli_fetch_array($sql);
$nom_users = $rrw['usuario_users'];
?>

<?php require 'includes/header_start.php';?>
<style>
    .mesa-header {
        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
        color: white;
        border-radius: 10px;
        padding: 20px;
        margin-bottom: 20px;
        box-shadow: 0 4px 6px rgba(0,0,0,0.1);
    }
    .mesa-title {
        font-size: 1.8rem;
		color: white;
        font-weight: 600;
        margin-bottom: 5px;
    }
    .mesa-subtitle {
        font-size: 1rem;
        opacity: 0.9;
    }
    .action-buttons {
        display: flex;
        gap: 10px;
        flex-wrap: wrap;
        margin-top: 15px;
    }
    .product-search-card {
        background: #f8f9fa;
        border-radius: 10px;
        padding: 20px;
        margin-bottom: 20px;
    }
    .quantity-input-group {
        background: white;
        border-radius: 8px;
        padding: 15px;
        margin-bottom: 15px;
        box-shadow: 0 2px 4px rgba(0,0,0,0.05);
    }
    .status-badge {
        background: #28a745;
        color: white;
        padding: 5px 12px;
        border-radius: 20px;
        font-size: 0.8rem;
        font-weight: 500;
    }
    .product-grid {
        display: grid;
        grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
        gap: 15px;
        margin-top: 20px;
    }
    .product-card {
        background: white;
        border-radius: 10px;
        padding: 15px;
        text-align: center;
        box-shadow: 0 2px 4px rgba(0,0,0,0.1);
        transition: transform 0.2s;
        cursor: pointer;
    }
    .product-card:hover {
        transform: translateY(-2px);
        box-shadow: 0 4px 8px rgba(0,0,0,0.15);
    }
    .product-image {
        width: 80px;
        height: 80px;
        object-fit: cover;
        border-radius: 8px;
        margin-bottom: 10px;
    }
    .product-price {
        color: #28a745;
        font-weight: 600;
        font-size: 1.1rem;
    }
</style>
<!-- SweetAlert2 CSS -->
<link href="https://cdn.jsdelivr.net/npm/sweetalert2@11/dist/sweetalert2.min.css" rel="stylesheet">
<?php require 'includes/header_end.php';?>

<!-- Begin page -->
<div id="wrapper" class="forced enlarged">

    <?php require 'includes/menu.php';?>

    <div class="content-page">
        <div class="content">
            <div class="container-fluid">
                <?php if ($permisos_ver == 1) { ?>
                    <div class="row">
                        <div class="col-12">
                            <!-- Header de la Mesa -->
                            <div class="mesa-header">
                                <div class="row align-items-center">
                                    <div class="col-md-6">
                                        <h1 class="mesa-title">Mesa #<?php echo $rw['nombre_mesa']; ?></h1>
                                        <p class="mesa-subtitle">
                                            <i class="fa fa-user"></i> Usuario: <?php echo $nom_users ?>
                                            <span class="status-badge ml-3">
                                                <i class="fa fa-circle"></i> Activa
                                            </span>
                                        </p>
                                    </div>
                                    <div class="col-md-6 text-right">
                                        <div class="action-buttons justify-content-end">
                                            <a href="control_mesas.php" class="btn btn-primary">
                                                <span class="fa fa-th"></span> Todas las Mesas
                                            </a>
                                            <?php if ($permisos_editar == 1) { ?>
                                                <button type="button" class="btn btn-warning" data-toggle="modal" data-target="#dataUpdate" data-id="<?php echo $numero_mesa; ?>">
                                                    <span class="fa fa-reply-all"></span> Cambiar Mesa
                                                </button>
                                            <?php } ?>
                                            <?php if ($permisos_eliminar == 1) { ?>
                                                <button type="button" class="btn btn-danger" onclick="activar_mesa('<?php echo $numero_mesa; ?>');">
                                                    <span class="fa fa-trash"></span> Anular Pedido
                                                </button>
												
                                            <?php } ?>
                                        </div>
                                    </div>
                                </div>
                            </div>
                        </div>
                    </div>

                    <div class="row">
                        <!-- Columna izquierda - Controles y productos actuales -->
                        <div class="col-lg-6">
                            <div class="card">
                                <div class="card-body">
                                    <h5 class="card-title"><i class="fa fa-shopping-cart"></i> Pedido Actual</h5>
                                    
                                    <!-- Controles de cantidad y cuenta -->
                                    <div class="quantity-input-group">
                                        <form id="barcode_form">
                                            <div class="row align-items-center">
                                                <div class="col-md-4">
                                                    <label class="form-label">Cantidad</label>
                                                    <input type="number" <?php echo $hidden ?> 
                                                        class="form-control" 
                                                        id="barcode_qty" 
                                                        value="1" 
                                                        min="1"
                                                        autocomplete="off">
                                                </div>
                                                <div class="col-md-8">
                                                    <label class="form-label">Cuenta</label>
                                                    <div id="carga_ident"></div>
                                                </div>
                                            </div>
                                        </form>
                                    </div>

                                    <!-- Área de resultados -->
                                    <div id="resultados" style="margin-top: 20px;"></div>
                                    <div id="resultados_ajaxf" style="margin-top: 10px;"></div>
                                    <div id="resultados_ajaxm2"></div>
                                    <div class="datos_ajax_delete"></div>
                                    <div class="outer_div4"></div>
                                </div>
                            </div>
                        </div>

                        <!-- Columna derecha - Búsqueda de productos -->
                        <div class="col-lg-6">
                            <div class="card">
                                <div class="card-body">
                                    <h5 class="card-title"><i class="fa fa-search"></i> Buscar Productos</h5>
                                    
                                    <div class="product-search-card">
                                        <form>
                                            <div class="row g-3">
                                                <div class="col-md-4">
                                                    <div id="carga_ident2"></div>
                                                </div>
                                                <div class="col-md-4">
                                                    <input type="text" autocomplete="off" 
                                                        class="form-control" 
                                                        id="q" 
                                                        placeholder="Código o nombre..."
                                                        onkeyup="load(1)">
                                                </div>
                                                <div class="col-md-4">
                                                    <select id="linea_id" class="form-control" onchange="load(1);">
                                                        <option value="">Todas las categorías</option>
                                                        <option value="">Todo</option>
                                                        <?php
                                                        $sql1 = mysqli_query($conexion, "select * from lineas");
                                                        while ($rw1 = mysqli_fetch_array($sql1)) {
                                                            ?>
                                                            <option value="<?php echo $rw1['id_linea'] ?>">
                                                                <?php echo $rw1['nombre_linea']; ?>
                                                            </option>
                                                        <?php } ?>
                                                    </select>
                                                </div>
                                            </div>
                                        </form>
                                    </div>

                                    <!-- Loader -->
                                    <div id="loader" class="text-center"></div>

                                    <!-- Grid de productos -->
                                    <div class="outer_div"></div>
                                </div>
                            </div>
                        </div>
                    </div>

                    <!-- Modales -->
                    <?php
                    include "../modal/buscar_productos_ventas.php";
                    include "../modal/cobro_individual.php";
                    include "../modal/cobro_general.php";
                    include "../modal/cobro_general2.php";
                    include "../modal/editar_prod_mesa.php";
                    include "../modal/cambio_mesa.php";
                    ?>

                <?php } else { ?>
                    <div class="row">
                        <div class="col-12">
                            <div class="alert alert-danger text-center">
                                <h3><i class="fas fa-exclamation-triangle"></i> Acceso denegado</h3>
                                <p class="mb-0">No cuentas con los permisos necesarios para acceder a este módulo.</p>
                            </div>
                        </div>
                    </div>
                <?php } ?>
            </div>
        </div>

        <?php require 'includes/pie.php';?>
    </div>
</div>

<?php require 'includes/footer_start.php' ?>
<!-- Scripts JavaScript permanecen igual -->
<script type="text/javascript" src="../../js/detalle_mesa.js"></script>
<script type="text/javascript" src="../../js/VentanaCentrada.js"></script>
<!-- SweetAlert2 JS -->
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script>

<!-- Los scripts de autocomplete y funciones JavaScript se mantienen igual -->
<!-- Codigos Para el Auto complete de Clientes -->
<script>
	$(function() {
		$("#nombre_cliente").autocomplete({
			source: "../ajax/autocomplete/clientes.php",
			minLength: 2,
			appendTo: "#cobros",
			select: function(event, ui) {
				event.preventDefault();
				$('#id_cliente').val(ui.item.id_cliente);
				$('#nombre_cliente').val(ui.item.nombre_cliente);
				$('#tel1').val(ui.item.fiscal_cliente);
				$.Notification.notify('custom','bottom center','EXITO!', 'CLIENTE AGREGADO CORRECTAMENTE')
			}
		});
	});

	$("#nombre_cliente" ).on( "keydown", function( event ) {
		if (event.keyCode== $.ui.keyCode.LEFT || event.keyCode== $.ui.keyCode.RIGHT || event.keyCode== $.ui.keyCode.UP || event.keyCode== $.ui.keyCode.DOWN || event.keyCode== $.ui.keyCode.DELETE || event.keyCode== $.ui.keyCode.BACKSPACE )
		{
			$("#id_cliente" ).val("");
			$("#tel1" ).val("");
		}
		if (event.keyCode==$.ui.keyCode.DELETE){
			$("#nombre_cliente" ).val("");
			$("#id_cliente" ).val("");
			$("#tel1" ).val("");
		}
	});
	
</script>
<!-- FIN -->
<!-- Codigos Para el Auto complete de Clientes -->
<script>
	$(function() {
		$("#nombre_cliente2").autocomplete({
			source: "../ajax/autocomplete/clientes.php",
			minLength: 2,
			appendTo: "#cobroGen",
			select: function(event, ui) {
				event.preventDefault();
				$('#id_cliente2').val(ui.item.id_cliente);
				$('#nombre_cliente2').val(ui.item.nombre_cliente);
				$('#tel1').val(ui.item.fiscal_cliente);
				$.Notification.notify('custom','bottom center','EXITO!', 'CLIENTE AGREGADO CORRECTAMENTE')
			}
		});
	});

	$("#nombre_cliente2" ).on( "keydown", function( event ) {
		if (event.keyCode== $.ui.keyCode.LEFT || event.keyCode== $.ui.keyCode.RIGHT || event.keyCode== $.ui.keyCode.UP || event.keyCode== $.ui.keyCode.DOWN || event.keyCode== $.ui.keyCode.DELETE || event.keyCode== $.ui.keyCode.BACKSPACE )
		{
			$("#id_cliente2" ).val("");
			$("#tel1" ).val("");
		}
		if (event.keyCode==$.ui.keyCode.DELETE){
			$("#nombre_cliente2" ).val("");
			$("#id_cliente2" ).val("");
			$("#tel1" ).val("");
		}
	});
</script>
<!-- FIN -->
<script>
// print order function
function printOrder(id_factura) {
	if (id_factura) {
		$('#modal_vuelto').modal('hide');//CIERRA LA MODAL
		$.ajax({
			url: '../pdf/documentos/imprimir_venta.php',
			type: 'post',
			data: {
				id_factura: id_factura
			},
			dataType: 'text',
			success: function(response) {
				var mywindow = window.open('', 'Stock Management System', 'height=400,width=600');
				mywindow.document.write('<html><head><title>Facturación</title>');
				mywindow.document.write('</head><body>');
				mywindow.document.write(response);
				mywindow.document.write('</body></html>');
                mywindow.document.close(); // necessary for IE >= 10
                mywindow.focus(); // necessary for IE >= 10
                mywindow.print();
                mywindow.close();
				window.location.href = '../html/control_mesas.php';
            } // /success function

        }); // /ajax function to fetch the printable order
    } // /if orderId
} // /print order function
// print order function
function confirmPrint(factura_id, identificativo) {
    if (factura_id) {
        $('#modal_vuelto').modal('hide'); // CIERRA LA MODAL
        $('#cobroGen2').modal('hide'); // CIERRA LA MODAL
        $.ajax({
            url: '../pdf/documentos/imprimir_venta4.php',
            type: 'post',
            data: {
                id_factura: factura_id,
                identificativo: identificativo
            },
            dataType: 'text',
            success: function(response) {
                var mywindow = window.open('', 'Stock Management System', 'height=400,width=600');
                mywindow.document.write('<html><head><title>Facturación</title>');
                mywindow.document.write('</head><body>');
                mywindow.document.write(response);
                mywindow.document.write('</body></html>');
                mywindow.document.close(); // necessary for IE >= 10
                mywindow.focus(); // necessary for IE >= 10
                mywindow.print();
                mywindow.close();
                //window.location.href = '../html/control_mesas.php';
            } // /success function

        }); // /ajax function to fetch the printable order
    } // /if orderId
} // /print order function

function confirmPrint2(numero_mesa, identificativoSeleccionado) {
    if (numero_mesa) {
        $.ajax({
            url: '../pdf/documentos/imprimir_detalle4.php',
            type: 'post',
            data: {
                numero_mesa: numero_mesa,
                identificativoSeleccionado: identificativoSeleccionado
            },
            dataType: 'text',
            success: function(response) {
                var mywindow = window.open('', 'Stock Management System', 'height=400,width=600');
                mywindow.document.write('<html><head><title>Facturación</title>');
                mywindow.document.write('</head><body>');
                mywindow.document.write(response);
                mywindow.document.write('</body></html>');
                mywindow.document.close(); // necessary for IE >= 10
                mywindow.focus(); // necessary for IE >= 10
                mywindow.print();
                mywindow.close();
                //window.location.href = '../html/control_mesas.php';
            } // /success function

        }); // /ajax function to fetch the printable order
    } // /if orderId
} // /print order function

function printOrder2(id_factura) {
	if (id_factura) {
		$('#modal_vuelto').modal('hide');//CIERRA LA MODAL
		$.ajax({
			url: '../pdf/documentos/imprimir_venta.php',
			type: 'post',
			data: {
				id_factura: id_factura
			},
			dataType: 'text',
			success: function(response) {
				var mywindow = window.open('', 'Stock Management System', 'height=400,width=600');
				mywindow.document.write('<html><head><title>Facturación</title>');
				mywindow.document.write('</head><body>');
				mywindow.document.write(response);
				mywindow.document.write('</body></html>');
                mywindow.document.close(); // necessary for IE >= 10
                mywindow.focus(); // necessary for IE >= 10
                mywindow.print();
                mywindow.close();
				//window.location.href = '../html/control_mesas.php';
            } // /success function

        }); // /ajax function to fetch the printable order
    } // /if orderId
} // /print order function
</script>
<script>
// print order function
function printDetalle(id_factura) {
	$('#modal_vuelto').modal('hide');//CIERRA LA MODAL
	if (id_factura) {
		$.ajax({
			url: '../pdf/documentos/imprimir_detalle.php',
			type: 'post',
			data: {
				id_factura: id_factura
			},
			dataType: 'text',
			success: function(response) {
				var mywindow = window.open('', 'Stock Management System', 'height=400,width=600');
				mywindow.document.write('<html><head><title>Facturación</title>');
				mywindow.document.write('</head><body>');
				mywindow.document.write(response);
				mywindow.document.write('</body></html>');
                mywindow.document.close(); // necessary for IE >= 10
                mywindow.focus(); // necessary for IE >= 10
                mywindow.print();
                mywindow.close();
            } // /success function

        }); // /ajax function to fetch the printable order
    } // /if orderId
} // /print order function
</script>
<script>
// print order function
function printFactura(id_factura) {
	$('#modal_vuelto').modal('hide');
	if (id_factura) {
		$.ajax({
			url: '../pdf/documentos/imprimir_factura_venta.php',
			type: 'post',
			data: {
				id_factura: id_factura
			},
			dataType: 'text',
			success: function(response) {
				var mywindow = window.open('', 'Stock Management System', 'height=400,width=600');
				mywindow.document.write('<html><head><title>Facturación</title>');
				mywindow.document.write('</head><body>');
				mywindow.document.write(response);
				mywindow.document.write('</body></html>');
                mywindow.document.close(); // necessary for IE >= 10
                mywindow.focus(); // necessary for IE >= 10
                mywindow.print();
                mywindow.close();
            } // /success function

        }); // /ajax function to fetch the printable order
    } // /if orderId
} // /print order function
</script>
<script>
	$(document).ready( function () {
		$(".UpperCase").on("keypress", function () {
			$input=$(this);
			setTimeout(function () {
				$input.val($input.val().toUpperCase());
			},50);
		})
	})
</script>
<script>
	function reporte() {
		var daterange = $("#range").val();
		var tipo = $("#tipo").val();
		VentanaCentrada('../pdf/documentos/rep_cxc.php?daterange=' + daterange, 'Reporte', '', '800', '600', 'true');
	}
</script>
<script>
	function imprimir_abono(id_abono) {
		VentanaCentrada('../pdf/documentos/rep_abono.php?id_abono=' + id_abono, 'Reporte', '', '800', '600', 'true');
	}
</script>
<script>
function activar_mesa(numero_mesa) {
    Swal.fire({
        title: '¿Estás seguro?',
        text: "Se anulará el pedido y la mesa " + numero_mesa + " quedará disponible.",
        icon: 'warning',
        showCancelButton: true,
        confirmButtonColor: '#d33',
        cancelButtonColor: '#6c757d',
        confirmButtonText: 'Sí, anular',
        cancelButtonText: 'Cancelar'
    }).then((result) => {
        if (result.isConfirmed) {
            $(".outer_div4").load("../ajax/cancelar_mesa.php?numero_mesa=" + numero_mesa, function () {
                Swal.fire({
                    icon: 'success',
                    title: 'Mesa activada',
                    text: 'El pedido fue anulado correctamente.',
                    showConfirmButton: false,
                    timer: 2000
                }).then(() => {
                    // Redirigir después de cerrar el SweetAlert
                    window.location.href = "control_mesas.php";
                });
            });
        }
    });
}


	function cobro(identificativoSeleccionado)
	{

		$("#totalg2").load("../ajax/carga_total4.php?identificativoSeleccionado=" + identificativoSeleccionado);

	}
	


</script>
<script>
	function obtener_cobros(numero_mesa) {
		$(".outer_cobros").load("../modal/cobros.php?numero_mesa=" + numero_mesa);
	}
</script>
<script>
	function showDiv(select){
		if(select.value==4){
			$("#resultados3").load("../ajax/carga_prima.php");
		} else{
			$("#resultados3").load("../ajax/carga_resibido.php");
		}
	}
</script>

<?php require 'includes/footer_end.php' ?>