<?php
session_start();
include '../conexion.php';
$subtotal=null;    
mysqli_set_charset($connection, "utf8");
?>
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Taller</title> <link rel="icon" href="./icons/taller.png" type="image/png">
    <link rel="stylesheet" href="./sidemenu.css">
    <link href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css" rel="stylesheet">
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
    <link rel="stylesheet" href="./sidemenu.css">
    <!-- jQuery library -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.0/jquery.min.js"></script>

<!-- Latest minified bootstrap js -->
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>

</head>
<body  >
    <div class="wrapper">
        <main>    
            <!-- Encabezado -->
            <header>
                <!--<h1>Taller</h1>-->
                <?php include "includes/header2.php"; ?>
            </header>

            <!--<div id="sidemenu" class="menu-collapsed">-->
            <div id="sidemenu" class="menu-expanded">
                <!-- Header -->
                <div id="header">
                    <div id="title"><span></span> </div>
                    <div id="menu-btn">
                        <div class="btn-hamburger"></div>
                        <div class="btn-hamburger"></div>
                        <div class="btn-hamburger"></div>
                    </div>
                </div>
                <!--Profile-->
                <!--<div id="profile">
                    <div id="photo"><img src="img/user.png" alt=""></div>
                    <div id="name"><span><?php echo $_SESSION['nombre'];?></span></div>
                    <div id="name"><span><?php echo $_SESSION['iduser']." [ ".$_SESSION['user']." ] ";?></span></div>
                    <div id="name"><span><?php echo "Sucursal: ".$_SESSION['suc'];?></span></div>
                    <div id="name"><span> <?php echo "Rol: ".$_SESSION['rol'];?></span></div>
                </div>-->
                <!--Items-->
                <div id="menu-items">
                    <?php include './includes/navs3.php'?>
                </div>
            </div>

            <div style="height:calc(100%); width:90%; padding-right:15px; padding-left:200px; margin-right:60px; margin-left:60px;margin-top:20px;">

            
            <div style="width:100%;">
                <table border='0' style='width:100%;'>
                    <tr>
                    <td style='text-align:right;'><button class="btn btn-primary btn-sm" onclick="actualizarPagina()"><i class="fa-solid fa-arrows-rotate"></i></button>
                    <button style="margin-right:15px;" class="btn btn-success btn-sm" data-backdrop="static" data-keyboard="false" data-toggle="modal" data-target="#modalAltatraspaso"><i class="fa-solid fa-circle-plus"></i></button>
                    <input ID="busqueda" type="text" autocomplete="off" style="width:200px;"placeholder="Captura dato a buscar" onkeydown="if (event.key === 'Enter') buscar()">
                        <button id="btnBusqueda" class="btn btn-primary btn-sm" type="button" onclick="buscar()"><i class="fa-solid fa-magnifying-glass"></i></button>
                    </td>
                </tr>
                </table>
                <div class="table-container" style="width:100%;heigth:100%">
                    <table border='0' style='width:100%;font-size:8pt;'>
                        <thead>
                            <tr>
                                <th style="width:5%;">id</th>
                                <th style="width:10%;">Fecha</th>
                                <th style="width:15%;">Movimiento</th>
                                <th style="width:25%;">Origen</th>
                                <th style="width:25;">Destino</th>
                                <!--<th style='text-align:center;'>Monto</th>-->
                                <th style="width:20%;">Acciones</th>
                            </tr>
                        </thead>
                        <tbody>
                        <?php
                        $busq = filter_input(INPUT_GET, 'busqueda', FILTER_SANITIZE_STRING) ?: '';
                        $pagina = filter_input(INPUT_GET, 'pagina', FILTER_VALIDATE_INT) ?: 1;

                        $por_pagina = 15;
                        $desde = ($pagina - 1) * $por_pagina;

                        // Total registros
                        $query_total = "SELECT COUNT(*) as total_registros FROM datos_traspasos ";
                        $stmt = $connection->prepare($query_total);
                        //$likeBusq = "%{$busq}%";
                        //$stmt->bind_param("ss", $likeBusq, $likeBusq);
                        $stmt->execute();
                        $result = $stmt->get_result();
                        $total_registros = $result->fetch_assoc()['total_registros'];

                        $total_paginas = ceil($total_registros / $por_pagina);

                        // Consulta principal
                        //$query = "SELECT * FROM datos_traspasos WHERE medida like ? OR tipoUniforme LIKE ? ORDER BY orden ASC LIMIT ?, ?";
                        $query = "SELECT * FROM datos_traspasos ORDER BY fechaMov ASC LIMIT ?, ?";
                        $stmt = $connection->prepare($query);
                        $stmt->bind_param("ii", $desde, $por_pagina);
                        $stmt->execute();
                        $result = $stmt->get_result();

                        if ($result->num_rows > 0) {
                            while ($data = $result->fetch_assoc()) {
                                echo "<tr>
                                        <td style='text-align:left;padding-left:20px'>{$data['idmovimientosUni']}</td>
                                        <td style='text-align:left;padding-left:20px'>{$data['fechaMov']}</td>
                                        <td style='text-align:left;padding-left:20px'>" . htmlspecialchars($data['dato1'], ENT_QUOTES, 'UTF-8') . "</td>
                                        <td style='text-align:left;padding-left:20px'>" . htmlspecialchars($data['dato2'], ENT_QUOTES, 'UTF-8') . "</td>
                                        <td style='text-align:left;padding-left:20px'>" . htmlspecialchars($data['dato3'], ENT_QUOTES, 'UTF-8') . "</td>
                                        <td>
                                            
                                            <!--<button class='btn btn-primary btn-sm' id='modificar' data-backdrop='static' data-keyboard='false' data-id='{$data['idmedidasUni']}' data-toggle='modal' data-target='#modalEmpleado'>Modificar <i class='fa-solid fa-file-pen'></i></button>
                                                <button class='btn btn-danger btn-sm' id='cancelar' data-backdrop='static' data-keyboard='false' data-id='{$data['idmedidasUni']}' data-toggle='modal' data-target='#deleteModal'>Cancelar <i class='fa-solid fa-ban'></i></button>-->
                                        </td>
                                    </tr>";
                            }
                        }
                        ?>

                            <!-- Agrega más filas según sea necesario -->
                        </tbody>
                    </table>
                </div>
                <div class="paginador">
                    <ul><?php
                        $numeroInicio=1;
                        if($pagina!=1){
                        //$numeroInicio=1;
                        
                    ?>
                        
                        <li><a href="?pagina=<?php echo $numeroInicio?>&busqueda=<?php echo $busq?>"><i class="fa-solid fa-backward-fast"></i></a></li>
                        <!--<li><a href="?pagina=<?php /*echo $pagina-1*/?>"><<</a></li>-->
                        <?php 
                        }
                            if(($pagina-3)>1){
                                $numeroInicio=$pagina-3;
                            }
                            $numeroFin=$numeroInicio+4;
                            
                            if($numeroFin>$total_paginas){
                                $numeroFin=$total_paginas;
                            }
                            
                            for($i=$numeroInicio;$i<=$numeroFin;$i++){
                                if($i==$pagina){
                                    echo '<li class="pageSelected">'.$i.'</li>';
                                } else{
                                echo '<li><a href="?pagina='.$i.'&busqueda='.$busq.'">'.$i.'</a></li>';
                                }
                            }
                            if($pagina!=$total_paginas){
                                echo '<li><a href="?pagina='.$total_paginas.'&busqueda='.$busq.'"><i class="fa-solid fa-forward-fast"></i></a></li>';
                            }
                        ?>
                                        
                        
                    </ul>
                </div>
            </div>
            

            </div>


            




        </main>
            <!-- Pie de página -->
            <footer>
                <?php include "includes/footer.php"; ?>
            </footer>
    </div>




<!-- Modal view-->
<div class="modal fade" id="modalAltatraspaso" role="dialog" >
    <div class="modal-dialog" >
        <div class="modal-content" style="width:600px;">
            <!-- Modal Header -->
            <div class="modal-header">
                <button type="button" class="close" data-dismiss="modal">
                    <span aria-hidden="true">&times;</span>
                    <span class="sr-only">Close</span>
                </button>
                <h4 class="modal-title" id="myModalLabel" style="font-size: 14px;" >Alta Traspaso</h4>
            </div>
            
            <!-- Modal Body -->
            <div class="modal-body" >
                <p class="statusMsg"></p>    
                <form role="form">
                <table >
				<tr>
				<td  style="text-align:left; width:50%">
				
				<div class="form-group">
                        <label style="font-size: 12px;" for="origen">Origen:</label>
                        <select style="width:100%" class="form-control" id="origen" onchange="cambiaDestino()">
                        <option value="0">--Selecciona--</option>    
                        <option value="1">Tijuana</option>    
                        <option value="2">Ensenada</option>    
                        <option value="3">Mexicali</option>    
                        </select>
                    </div>
				</td>
                <td  style="text-align:left;">
				<div class="form-group">
                        <label style="font-size: 12px;" for="destino">Destino:</label>
                        <select style="width:100%" class="form-control" id="destino">
                        <option value="0">--Selecciona--</option>    
                        </select>
                    </div>
				</td>
                        </tr>
                        </table >
                        <table >
                        <tr>
                        <td  style="text-align:left;width:70%">
				<div class="form-group">
                        <label style="font-size: 12px;" for="Equipo">Equipo:</label>
                        <select style="width:100%" class="form-control" id="equipo" onchange="inventario()">
                        <option value="0">--Selecciona--</option>    
                        </select>
                    </div>
				</td>
                <td  style="text-align:left;">
				<div class="form-group">
                        <label style="font-size: 12px;" for="cantidad">Cantidad:</label>
                        <input type="number" step="1" style="width:100%" class="form-control" id="cantidad" />
                                                
                    </div>
				</td>
                <td  style="text-align:left;">
				<button type="button" id="agregar" class="btn btn-success" onclick="agregarFilaTabla()"><i class="fa-solid fa-plus"></i></button>
				</td>
                        </tr>
                        </table >
                        <table >
                        <tr>
                        <td  style="text-align:left; width:20%">
				<div class="form-group">
                        <label style="font-size: 12px;" for="inv1">TIJ:</label>
                        <input disabled type="number" step="1" style="width:100%" class="form-control" id="inv1" />
                    </div>
				</td>
                <td  style="text-align:left;width:20%">
				<div class="form-group">
                <label style="font-size: 12px;" for="inv2">ENS:</label>
                <input disabled type="number" step="1" style="width:100%" class="form-control" id="inv2" />
                    </div>
				</td>
                <td  style="text-align:left;width:20%">
				<div class="form-group">
                <label style="font-size: 12px;" for="inv3">MXL:</label>
                <input disabled type="number" step="1" style="width:100%" class="form-control" id="inv3" />
                    </div>
				</td>
                <td  style="text-align:left;">
				
				</td>

                        </tr>
                        </table >
                        
                        <table class="table" id="tablaDinamica" name="tablaDinamica" style="width:100%">
                <thead>
                  <tr>
                    <th style="text-align:left;width:10%">id</th>
                    <th style="text-align:left;width:60%">Equipo</th>
                    <th  style="text-align:left;width:20%">Cantidad</th>
                    <th  style="text-align:left;">Acciones</th>
                  </tr>
                </thead>
                <tbody>
                  <!-- Las filas se agregarán dinámicamente aquí -->
                </tbody>
              </table>
                        
                </form>
            </div>
            
            <!-- Modal Footer -->
            <div class="modal-footer">
                <button type="button" class="btn btn-default" onclick="javascript:window.location.reload()" data-dismiss="modal" >Cerrar</button>
                <button type="button" class="btn btn-primary submitBtnx" onclick="guardarmedida()">GUARDAR</button>
            </div>
        </div>
    </div>
</div>


    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.0/jquery.min.js"></script>
    <script src="https://cdn.jsdelivr.net/npm/@popperjs/core@2.5.4/dist/umd/popper.min.js"></script>
    <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/js/bootstrap.min.js"></script>
    <script src="https://cdn.jsdelivr.net/npm/chart.js"></script>

    <script>
        const btn = document.querySelector('#menu-btn');
        const menu = document.querySelector('#sidemenu');

        btn.addEventListener('click', e => {
            menu.classList.toggle("menu-expanded");
            menu.classList.toggle("menu-collapsed");

            document.querySelector('body').classList.toggle('body-expanded')
        });
    

        $(document).on('click', '[data-target="#modalAltatraspaso"]', function () {
            //cargarSupervisores();
        });

$(document).on('click', '[data-target="#modalEmpleado"]', function () {
    // Capturamos el valor del atributo `data-id`
    var idUsuario = $(this).data('id');
    
    // Realizamos la solicitud AJAX
    $.ajax({
        type: 'POST',
        url: 'obtener_empleado.php', // Cambia esto por el nombre de tu archivo PHP 
        data: { idUsuario: idUsuario },
        success: function(response) {
            alert(response);
            try {
                var data = JSON.parse(response); // Parsea la respuesta JSON
                $('#modalEmpleado').find('#id').val(data.id);
                $('#modalEmpleado').find('#nombre').val(data.nombre);
                $('#modalEmpleado').find('#numEmp').val(data.num);
                $('#modalEmpleado').find('#supervisor').val(data.supervisor);
                $('#modalEmpleado').find('#lugar').val(data.lugar);
                $('#modalEmpleado').find('#ubicacion').val(data.ubicacion);
                // Abrimos el modal
                //$('.submitBtn').prop('disabled', true);
                $('.submitBtn').prop('disabled', false);
            } catch (e) {
                console.error('Error procesando los datos del servidor: ', e);
                alert('Error al cargar los datos. Intente nuevamente.');
            }
        },
        error: function() {
            alert('Ocurrió un error al obtener los datos. Por favor, inténtelo más tarde.');
        }
    });
});


function buscar() {
    // Obtiene el valor del input con ID "busqueda"
    const busqueda = document.getElementById("busqueda").value;
    
    // Define la página que deseas agregar (puedes cambiar este valor)
    //const pagina = <?php echo isset($_GET['pagina']) ? json_encode($_GET['pagina']) : '1'; ?>;
    const pagina = '1';
    // Obtén la URL actual
    let url = new URL(window.location.href);

    // Agrega o actualiza los parámetros "buscar" y "pagina"
    url.searchParams.set("busqueda", busqueda);
    url.searchParams.set("pagina", pagina);

    // Redirige a la URL modificada
    window.location.href = url.toString();
}



function cambiaDestino() {
        
        var origen = $('#origen').val();
        


            if (origen=='0') {
                $('.statusMsg').html('<span style="color:red;">El origen es un campo obligatorio.</span>');

            }else{
                                        // Preparar datos para enviar
                    var datos = {

                        medida : medida,
                        tipo : tipo,

                    };

                    // Enviar solicitud AJAX
                $.ajax({
                    type: 'POST',
                    url: 'guardar_medida.php', // Cambiar por tu ruta PHP
                    data: datos,
                    beforeSend: function() {
                        // Deshabilitar el botón mientras se procesa la solicitud
                        $('.submitBtnx').prop('disabled', true);
                        $('.statusMsg').html('<span style="color:blue;">Procesando...</span>');
                    },
                    success: function (response) {
                        try {
                            var data = JSON.parse(response);

                            if (data.dato) {
                                // Éxito: Mostrar mensaje en verde y mantener deshabilitado
                                $('.statusMsg').html('<span style="color:green;">' + data.message + '.</span>');
                                $('#tipoUni').prop('disabled', true);
                                $('#medida').prop('disabled', true);
                            } else {
                                // Error del servidor: Mostrar mensaje en rojo y habilitar de nuevo
                                $('.statusMsg').html('<span style="color:red;">' + data.message + '</span>');
                                $('.submitBtnx').prop('disabled', false);
                            }
                        } catch (e) {
                            // Error al procesar la respuesta JSON
                            $('.statusMsg').html('<span style="color:red;">Error al procesar la respuesta del servidor: ' + e.message + '</span>');
                            $('.submitBtnx').prop('disabled', false);
                        }
                    },
                    error: function (xhr, status, error) {
                        // Error en la solicitud AJAX
                        $('.statusMsg').html('<span style="color:red;">Error en la solicitud: ' + status + ' - ' + error + '</span>');
                        $('.submitBtnx').prop('disabled', false);
                    },
                    complete: function () {
                        // No rehabilitar el botón aquí, ya se controla por la lógica de éxito o error
                    }
                });

            }

}

function actualizarPagina() {
    location.reload();
}

function agregarFilaTabla() {
                var id=$('#uniforme').val();
                var cantidad=$('#cantx').val();


                if ($('#uniforme').val() == '0') {
                    $('.statusMsg').html('<span style=\"color:red;\">Selecciona un uniforme.</span>');
                } else if ($('#empleado').val() == '0' ) {
                    $('.statusMsg').html('<span style=\"color:red;\">Selecciona un empleado.</span>');
                } else if ($('#fecha').val() == '' ) {
                    $('.statusMsg').html('<span style=\"color:red;\">Ingresa la fecha.</span>');
                } else if ($('#sucursal').val() == '0' ) {
                    $('.statusMsg').html('<span style=\"color:red;\">Selecciona una sucursal.</span>');
                } else if ($('#cantx').val() == '0' ||$('#cantx').val() == '') {
                    $('.statusMsg').html('<span style=\"color:red;\">Ingresa la cantidad.</span>');
                } else {
                    var uniformeYaExiste = false;
                    //var cantidad=parseFloat($('#cantidad').val());
                    //var costo=parseFloat($('#costo').val());
                    //var importe=costo*cantidad;
                    
                    $('#empleado').prop(\"disabled\",true);
                    $('#fecha').prop(\"disabled\",true);
                    $('#sucursal').prop(\"disabled\",true);


                    // Verificar si el uniforme ya existe en la tabla
                    $('#tablaDinamica tbody tr').each(function() {
                        var valorUniforme = $(this).find('input[name=\"id[]\"]').val();
                        if (valorUniforme == $('#uniforme').val()) {
                            uniformeYaExiste = true;
                            return false; // Salir del each loop
                        }
                    });

                    if (uniformeYaExiste) {
                        $('.statusMsg').html('<span style=\"color:red;\">El uniforme ya ha sido agregado.</span>');
                    } else {
                        $('.statusMsg').html('');
                        
                        $.ajax({
                            type: 'POST',
                            url: 'obtener_uniforme.php', // Cambia esto por el nombre de tu archivo PHP
                            data: { iduniforme: $('#uniforme').val() },
                            success: function(response) {
                                var data = JSON.parse(response);
                                if (data.success) {
                                    var fila = '<tr>' +
                                        '<td style=\"width:10%\"><input disabled style=\"font-size: 10px;width:50px;\" type=\"text\"  class=\"form-control\" name=\"id[]\" value=\"' + id + '\"></td>' +    
                                        '<td style=\"width:10%\"><input disabled style=\"font-size: 10px;width:50px;\" type=\"text\" step=\"1\" class=\"form-control\" name=\"cant[]\" value=\"' + cantidad + '\"></td>' +
                                        '<td style=\"width:65%\"><input disabled style=\"font-size: 10px;\" type=\"text\" class=\"form-control\" name=\"uniforme[]\" value=\"' + data.uniforme + '\"></td>' +
                                        '<td style=\"width:10%\"><button type=\"button\" class=\"btn btn-danger\" onclick=\"eliminarFilaTabla(this)\"><i class=\"fa-solid fa-eraser\"></i></button></td>' +
                                        '</tr>';
                                    $('#tablaDinamica tbody').append(fila);
                                    $('#uniforme').val('0');
                                    $('#cantx').val('');
                                    $('#agregar').prop('disabled', true);
                                    //$('#costo').val('');
                                    //calcularTotal();
                                } else {
                                    $('.statusMsg').html('<span style=\"color:red;\">Error al obtener los datos del uniforme.</span>');
                                }
                            },
                            error: function() {
                                $('.statusMsg').html('<span style=\"color:red;\">Error en la solicitud.</span>');
                            }
                        });
                    }
                }
            }


            // Función para eliminar una fila de la primera tabla
            function eliminarFilaTabla(btn) {
                $(btn).closest('tr').remove();
                calcularImporte(btn);
                
            }


            function validarInventario(){
                var id=$('#uniforme').val();
                var sucursal=$('#sucursal').val();
                var cantidad=$('#cantx').val();
                 $('#agregar').prop('disabled', true);
                 $('.statusMsg').html('');
                $.ajax({
                            type: 'POST',
                            url: 'obtener_uniforme.php', // Cambia esto por el nombre de tu archivo PHP
                            data: { iduniforme: $('#uniforme').val() },
                            success: function(response) {
                                var data = JSON.parse(response);
                                if (data.success) {
                                    if(sucursal=='1'){
                                        if(data.inv1-cantidad<0){
                                            $('.statusMsg').html('<span style=\"color:red;\">El inventario no es suficiente.</span>');
                                            $('#agregar').prop('disabled', true);
                                        }else{
                                        $('#agregar').prop('disabled', false);
                                        }
                                    }else if(sucursal=='2'){
                                        if(data.inv2-cantidad<0){
                                            $('.statusMsg').html('<span style=\"color:red;\">El inventario no es suficiente.</span>');
                                            $('#agregar').prop('disabled', true);
                                        }else{
                                        $('#agregar').prop('disabled', false);
                                        }
                                    }else if(sucursal=='3'){
                                        if(data.inv3-cantidad<0){
                                            $('.statusMsg').html('<span style=\"color:red;\">El inventario no es suficiente.</span>');
                                            $('#agregar').prop('disabled', true);
                                        }else{
                                        $('#agregar').prop('disabled', false);
                                        }

                                    }
                                        
                                    /*$('#inv1').val(data.inv1);
                                    $('#inv2').val(data.inv2);
                                    $('#inv3').val(data.inv3);*/
                                } else {
                                    $('.statusMsg').html('<span style=\"color:red;\">Error al obtener los inventarios.</span>');
                                }
                            },
                            error: function() {
                                $('.statusMsg').html('<span style=\"color:red;\">Error en la solicitud.</span>');
                            }
                        });
            }

            function inventario(){
                var id=$('#uniforme').val();
                $.ajax({
                            type: 'POST',
                            url: 'obtener_uniforme.php', // Cambia esto por el nombre de tu archivo PHP
                            data: { iduniforme: $('#uniforme').val() },
                            success: function(response) {
                                var data = JSON.parse(response);
                                if (data.success) {
                                    $('#inv1').val(data.inv1);
                                    $('#inv2').val(data.inv2);
                                    $('#inv3').val(data.inv3);
                                } else {
                                    $('.statusMsg').html('<span style=\"color:red;\">Error al obtener los inventarios.</span>');
                                }
                            },
                            error: function() {
                                $('.statusMsg').html('<span style=\"color:red;\">Error en la solicitud.</span>');
                            }
                        });
            }

</script>

</body>
</html>
