<?php $r="../../";
require_once($r."inc/funciones.php");
validNotSession($r);
$id=$_GET['id'];

$mysqli = connectDB($r);
$spe=$_SESSION['perfil'];

/* FORMULARIO NUEVO */
if(isset($_POST["nuevo"])){
    if(isset($_POST['nombre']) && !empty($_POST['nombre'])){
        $nombre=strtoupper($_POST['nombre']);
        $nombre = $mysqli->real_escape_string($nombre);
    }else{
        echo '<div class="alert alert-danger  alert-dismissible text-center"><a href="#" class="close" data-dismiss="alert" aria-label="close">&times;</a><h6>El Nombre del proveedor es Obligatorio</h6></div>';
        exit();
    }
    
    if(isset($_POST['contacto']) && !empty($_POST['contacto'])){
        $contacto=strtoupper($_POST['contacto']);
        $contacto = $mysqli->real_escape_string($contacto);
    }else{
        echo '<div class="alert alert-danger  alert-dismissible text-center"><a href="#" class="close" data-dismiss="alert" aria-label="close">&times;</a><h6>El Nombre del Contacto es Obligatorio</h6></div>';
        exit();
    }
    
    if(isset($_POST['direccion']) && !empty($_POST['direccion'])){
        $direccion=strtoupper($_POST['direccion']);
        $direccion = $mysqli->real_escape_string($direccion);
    }
    
    if(isset($_POST['nuip']) && !empty($_POST['nuip'])){
        // Asignar el valor del campo 'nuip' a la variable $cedula
        $cedula=$_POST['nuip'];
        // Escapar caracteres especiales para prevenir inyecciones SQL
        $cedula = $mysqli->real_escape_string($cedula);
        $qry1 = $mysqli->query("SELECT * FROM z_proveedores WHERE cedula='$cedula'");
        if($qry1->num_rows > 0){ 
            echo '<div class="alert alert-danger  alert-dismissible text-center"><a href="#" class="close" data-dismiss="alert" aria-label="close">&times;</a><h6>El Nit o Cedula ya existe!</h6></div>';
            exit();
        }
    }
    
    // Verificar si el campo 'telefono' está presente y no está vacío en la solicitud POST
    if (isset($_POST['telefono']) && !empty($_POST['telefono'])) {
        // Asignar el valor del campo 'telefono' a la variable $telefono
        $telefono = trim($_POST['telefono']);
    } 
    // Verificar si el campo 'ciudad' está presente y no está vacío en la solicitud POST
    if (isset($_POST['ciudad']) && !empty($_POST['ciudad'])) {
        // Asignar el valor del campo 'telefono' a la variable $telefono
        $ciudad = trim($_POST['ciudad']);
    } 
    
    // Verificar si el campo 'correo' está presente y no está vacío en la solicitud POST
    if (isset($_POST['correo']) && !empty($_POST['correo'])) {
        // Asignar el valor del campo 'correo' a la variable $correo
        $correo = trim($_POST['correo']);
        // Escapar caracteres especiales para prevenir inyecciones SQL
        $correo = $mysqli->real_escape_string($correo);
    
        // Realizar la consulta a la base de datos
        $qry1 = $mysqli->query("SELECT * FROM z_proveedores WHERE correo='$correo'");
        if($qry1->num_rows > 0){ 
            echo '<div class="alert alert-danger  alert-dismissible text-center"><a href="#" class="close" data-dismiss="alert" aria-label="close">&times;</a><h6>Correo electrónico ya existe!</h6></div>';
            exit();
        }
    } 
    
   
    $nota=$_POST['nota'];
    // Escapar caracteres especiales para prevenir inyecciones SQL
    $nombre = $mysqli->real_escape_string($nombre);
    $cedula = $mysqli->real_escape_string($cedula);
    $correoproveedor = $mysqli->real_escape_string($correo);
    $contactoproveedor = $mysqli->real_escape_string($contacto);
    $direccion = $mysqli->real_escape_string($direccion);
    $direccion = $mysqli->real_escape_string($direccion);
    $ciudad = $mysqli->real_escape_string($ciudad);
    $nota = $mysqli->real_escape_string($nota);
    
    
    $sql="INSERT INTO `z_proveedores`(`cedula`, `nombre`, `correo`, `contacto1`, `direccion`,`idmunicipio`, `celular1`, `telefono1`, `nota`) VALUES ('$cedula','$nombre','$correoproveedor','$contactoproveedor','$direccion','$ciudad','$telefono','$telefono','$nota')";
    if ($mysqli->query($sql) === TRUE) {
        $mysqli->close();
        echo 'index.php?msn=El Proveedor '.$nombre.' ha sido a Creado!';
        exit();
    } else {
        echo "Error: " . $sql . "<br>" . $mysqli->error;
        $mysqli->close();
    }
    exit();
}

/* FORMULARIO EDITAR O ACTUALIZAR */
if(isset($_POST["editar"])){
    $id=$_POST['editar'];
    $id = $mysqli->real_escape_string($id);
    
    if(isset($_POST['nombre']) && !empty($_POST['nombre'])){
        $nombre=strtoupper($_POST['nombre']);
        $nombre = $mysqli->real_escape_string($nombre);
    }else{
        echo '<div class="alert alert-danger  alert-dismissible text-center"><a href="#" class="close" data-dismiss="alert" aria-label="close">&times;</a><h6>El Nombre del proveedor es Obligatorio</h6></div>';
        exit();
    }
    
    if(isset($_POST['contacto']) && !empty($_POST['contacto'])){
        $contacto=strtoupper($_POST['contacto']);
        $contacto = $mysqli->real_escape_string($contacto);
    }else{
        echo '<div class="alert alert-danger  alert-dismissible text-center"><a href="#" class="close" data-dismiss="alert" aria-label="close">&times;</a><h6>El Nombre del Contacto es Obligatorio</h6></div>';
        exit();
    }
    
    if(isset($_POST['direccion']) && !empty($_POST['direccion'])){
        $direccion=strtoupper($_POST['direccion']);
        $direccion = $mysqli->real_escape_string($direccion);
    }
    
    if(isset($_POST['nuip']) && !empty($_POST['nuip'])){
        // Asignar el valor del campo 'nuip' a la variable $cedula
        $cedula=$_POST['nuip'];
        // Escapar caracteres especiales para prevenir inyecciones SQL
        $cedula = $mysqli->real_escape_string($cedula);
        $qry1 = $mysqli->query("SELECT * FROM z_proveedores WHERE cedula='$cedula' AND id!=$id");
        if($qry1->num_rows > 0){ 
            echo '<div class="alert alert-danger  alert-dismissible text-center"><a href="#" class="close" data-dismiss="alert" aria-label="close">&times;</a><h6>El Nit o Cedula ya existe!</h6></div>';
            exit();
        }
    }
    
    // Verificar si el campo 'telefono' está presente y no está vacío en la solicitud POST
    if (isset($_POST['telefono']) && !empty($_POST['telefono'])) {
        // Asignar el valor del campo 'telefono' a la variable $telefono
        $telefono = trim($_POST['telefono']);
    } else {
        // Mostrar un mensaje de error si el campo 'telefono' no está presente o está vacío
        echo '<div class="alert alert-danger alert-dismissible text-center"><a href="#" class="close" data-dismiss="alert" aria-label="close">&times;</a><h6>El Teléfono es Obligatorio</h6></div>';
        exit();
    }
    
    // Verificar si el campo 'ciudad' está presente y no está vacío en la solicitud POST
    if (isset($_POST['ciudad']) && !empty($_POST['ciudad'])) {
        // Asignar el valor del campo 'telefono' a la variable $telefono
        $ciudad = trim($_POST['ciudad']);
    } 
    
    // Verificar si el campo 'correo' está presente y no está vacío en la solicitud POST
    if (isset($_POST['correo']) && !empty($_POST['correo'])) {
        // Asignar el valor del campo 'correo' a la variable $correo
        $correo = trim($_POST['correo']);
        // Escapar caracteres especiales para prevenir inyecciones SQL
        $correo = $mysqli->real_escape_string($correo);
    
        // Realizar la consulta a la base de datos
        $qry1 = $mysqli->query("SELECT * FROM z_proveedores WHERE correo='$correo' AND id!=$id");
        if($qry1->num_rows > 0){ 
            echo '<div class="alert alert-danger  alert-dismissible text-center"><a href="#" class="close" data-dismiss="alert" aria-label="close">&times;</a><h6>Correo electrónico ya existe!</h6></div>';
            exit();
        }
    } 
    
   
    $nota=$_POST['nota'];
    // Escapar caracteres especiales para prevenir inyecciones SQL
    $nota = $mysqli->real_escape_string($nota);
    // Realizar la actualizacion a la base de datos 
    $mysqli->query("UPDATE z_proveedores SET `cedula`='$cedula',`nombre`='$nombre',`correo`='$correo',`contacto1`='$contacto',`direccion`='$direccion',`idmunicipio`='$ciudad',`celular1`='$telefono',`telefono1`='$telefono',`nota`='$nota' WHERE id='$id'");
    
    
    echo 'index.php?msn=El Proveedor <b>"'.$nombre.'"</b> ha sido actualizado';
    exit();
}


// NUEVA COMPRA PROVEEDORES

if(isset($_POST["newshop"])) {
    $fecha_compra = $_POST['fecha_compra'];
    $proveedor = $_POST['proveedor'] ?? '';
    $producto  = $_POST['producto'] ?? '';
    $present = $_POST['present'] ?? '';
    
    if(empty($proveedor)){
        echo '<div class="alert alert-danger alert-dismissible text-center">
                <a href="#" class="close" data-dismiss="alert" aria-label="close">&times;</a>
                <h6>Debe seleccionar un proveedor</h6>
              </div>';
        exit();
    }
    
    if(empty($producto)){
        echo '<div class="alert alert-danger alert-dismissible text-center">
                <a href="#" class="close" data-dismiss="alert" aria-label="close">&times;</a>
                <h6>Debe seleccionar un producto</h6>
              </div>';
        exit();
    }
    
    if(empty($present)){
        echo '<div class="alert alert-danger alert-dismissible text-center">
                <a href="#" class="close" data-dismiss="alert" aria-label="close">&times;</a>
                <h6>Debe seleccionar una presentacion</h6>
              </div>';
        exit();
    }

    if(isset($_POST['nameprov'])){
        $nombre = trim($_POST['nameprov']);
        if(!empty($nombre)){
            $nombre= strtoupper($nombre);
            $nombre = $mysqli->real_escape_string($nombre);
        }else{
            echo '<div class="alert alert-danger  alert-dismissible text-center"><a href="#" class="close" data-dismiss="alert" aria-label="close">&times;</a><h6>El Nombre del proveedor es Obligatorio</h6></div>';
            exit();
        }
        
        
        $contacto = trim($_POST['contprov']);
        if(isset($_POST['contprov']) && !empty($contacto)){
            $contacto=strtoupper($contacto);
            $contacto = $mysqli->real_escape_string($contacto);
        }else{
            echo '<div class="alert alert-danger  alert-dismissible text-center"><a href="#" class="close" data-dismiss="alert" aria-label="close">&times;</a><h6>El Nombre del Contacto es Obligatorio</h6></div>';
            exit();
        }
        // Verificar si el campo 'telefono' está presente y no está vacío en la solicitud POST
        if (isset($_POST['telefono']) && !empty($_POST['telefono'])) {
            // Asignar el valor del campo 'telefono' a la variable $telefono
            $telefono = trim($_POST['telefono']);
        }
        
         // Verificar si el campo 'correo' está presente y no está vacío en la solicitud POST
        if (isset($_POST['mailprov']) && !empty($_POST['mailprov'])) {
            // Asignar el valor del campo 'correo' a la variable $correo
            $emailprov = trim($_POST['mailprov']);
            // Escapar caracteres especiales para prevenir inyecciones SQL
            $emailprov = $mysqli->real_escape_string($emailprov);
        
            // Realizar la consulta a la base de datos
            $qry1 = $mysqli->query("SELECT * FROM z_proveedores WHERE correo='$emailprov'");
            if($qry1->num_rows > 0){ 
                echo '<div class="alert alert-danger  alert-dismissible text-center"><a href="#" class="close" data-dismiss="alert" aria-label="close">&times;</a><h6>Correo electrónico ya existe!</h6></div>';
                exit();
            }
        } 
        
        $sql="INSERT INTO `z_proveedores`(`nombre`,`correo`, `contacto1`, `celular1`) VALUES ('$nombre','$emailprov','$contacto','$telefono')";
        if ($mysqli->query($sql) === TRUE) {
            $proveedor = $mysqli->insert_id;
        } else {
            echo "Error: " . $sql . "<br>" . $mysqli->error;
            $mysqli->close();
            exit();
        }
    }
    
    $precio = $_POST['precio'] ?? '';

    if($precio === '' || !is_numeric($precio) || $precio < 0){
        echo '<div class="alert alert-danger alert-dismissible text-center">
                <a href="#" class="close" data-dismiss="alert" aria-label="close">&times;</a>
                <h6>El precio no puede ser menor a 0</h6>
              </div>';
        exit();
    }
    
    $precio = (float)$precio;
    $iva = $_POST['iva'];
    if(isset($_POST['nameprod'])){
        $nameproducto = $_POST['nameprod'];
        if(isset($_POST['nameprod'])){
            $nameproducto = trim($_POST['nameprod']);
            if(!empty($nameproducto)){
                $nameproducto= strtoupper($nameproducto);
                $nameproducto = $mysqli->real_escape_string($nameproducto);
            }else{
                echo '<div class="alert alert-danger  alert-dismissible text-center"><a href="#" class="close" data-dismiss="alert" aria-label="close">&times;</a><h6>El Nombre del producto es Obligatorio</h6></div>';
                exit();
            }
        }
        
        $categoriaprod = $_POST['categoriaprod'];
        if(isset($_POST['categoriaprod'])){
            $categoriaprod = trim($_POST['categoriaprod']);
            if(!empty($nameproducto)){
                $categoriaprod= strtoupper($categoriaprod);
                $categoriaprod = $mysqli->real_escape_string($categoriaprod);
            }else{
                echo '<div class="alert alert-danger  alert-dismissible text-center"><a href="#" class="close" data-dismiss="alert" aria-label="close">&times;</a><h6>La categoria es Obligatoria</h6></div>';
                exit();
            }
        }
        $sql="INSERT INTO `z_productos`(`producto`, `precio`, `unidad`, `iva`) VALUES ('$nameproducto','$precio','22','$iva')";
        if ($mysqli->query($sql) === TRUE) {
            $producto = $mysqli->insert_id;
            $mysqli->query("INSERT INTO `z_productos_categorias`(`idproducto`, `idcategoria`) VALUES ('$producto','$categoriaprod')");
            $mysqli->query("INSERT INTO z_inventario (idbodega, idproducto, cantidad) VALUES (1, $producto, 0)");
        } else {
            echo "Error: " . $sql . "<br>" . $mysqli->error;
            $mysqli->close();
            exit();
        }
    }
    
    $cantidadkilos = sinfo('z_presentaciones_productos',$present)['cantidad'];
    $cantidad = $_POST['cantidad'];
    $precio = $_POST['precio'];
    $iva = $_POST['iva'];
    $precio_kilo = redondearHaciaArribaMultiplo1($precio*(($iva+100)/100));
    $precio_presentacion = $precio_kilo*$cantidadkilos;
    $qry0 = $mysqli->query("SELECT * FROM config_precios ORDER BY id DESC LIMIT 1");
    $row0 = $qry0->fetch_assoc();
    // Obtener los valores de la consulta
    $gcomercial = $precio_comercializador = $row0['precio_comercializador'];
    $gfinal = $precio_final = $row0['precio_final'];
    $gweb = $precio_web = $row0['precio_web'];
    
     //obtenemos el % de ganacia mas bajo
    $min_ganancia_kilo = min($precio_comercializador, $precio_final, $precio_web);
   
    //obtenemos la diferencia entre el % mas bajo encontrado
    $diferencia_comercial = $precio_comercializador - $min_ganancia_kilo;
    $diferencia_final = $precio_final - $min_ganancia_kilo;
    $diferencia_web = $precio_web - $min_ganancia_kilo;

    // Calcular porcentajes precio Final
    if($precio_final!=0){
        $porcentaje_cliente_final = calcularPorcentajeDeCien($precio_final);
        $precio_cliente_final_kilo = ($precio_kilo * $porcentaje_cliente_final);
    }else{
        $precio_cliente_final_kilo = $precio_kilo;
    }
    
    // Calcular porcentajes precio Comercializador
    if($precio_comercializador!=0){
        $porcentaje_comercializador = calcularPorcentajeDeCien($precio_comercializador);
        $precio_comercialzador_kilo = ($precio_kilo * $porcentaje_comercializador);
    }else{
        $precio_comercialzador = $precio_kilo;
    }
    
    
    // Calcular porcentajes precio Web
    if($precio_web!=0){
        $porcentaje_web = calcularPorcentajeDeCien($precio_web);
        $precio_web_kilo = ($precio_kilo * $porcentaje_web);
    }else{
        $precio_web_kilo = $precio_kilo;
    }
    
    $precio_cliente_final = redondearHaciaArribaMultiplo1($precio_cliente_final_kilo *$cantidadkilos);
    $precio_comercialzador = redondearHaciaArribaMultiplo1($precio_comercialzador_kilo * $cantidadkilos);
    $precio_web = redondearHaciaArribaMultiplo1($precio_web_kilo * $cantidadkilos);
    
    if($_POST["newshop"]==0){

        $mysqli->query("INSERT INTO `z_proveedores_precios`
        (`idproveedor`,`idproducto`,`idpresentacion`,`cantidad`,`precio_compra`,`iva`,`precio_kilo`,`precio_presentacion`,`precio_cliente_final`,`precio_comercialzador`,`precio_web`,`fecha`)
        VALUES
        ('$proveedor','$producto','$present','$cantidad','$precio','$iva','$precio_kilo','$precio_presentacion','$precio_cliente_final','$precio_comercialzador','$precio_web','$fecha_compra')");
    
        $cantidadupload = $cantidadkilos * $cantidad;
        $mysqli->query("UPDATE `z_inventario` SET `cantidad`=`cantidad`+$cantidadupload WHERE `idproducto`=$producto AND `idbodega`=1");
    
        $textmsn = 'Se ingresado con exito';
    
    }else{
    
        $idcompra = $_POST["newshop"];
    
        // obtener cantidad anterior
        $old = $mysqli->query("SELECT cantidad FROM `z_proveedores_precios` WHERE `id`='$idcompra'")->fetch_assoc();
        $cantidad_anterior = $old['cantidad'];
        $cantidadupload_anterior = $cantidad_anterior * $cantidadkilos;
    
        // restar la cantidad anterior del inventario
        $mysqli->query("UPDATE `z_inventario` SET `cantidad`=`cantidad`-$cantidadupload_anterior WHERE `idproducto`=$producto AND `idbodega`=1");
    
        // actualizar compra
        $mysqli->query("UPDATE `z_proveedores_precios` SET 
            `idproveedor`='$proveedor',
            `idproducto`='$producto',
            `idpresentacion`='$present',
            `cantidad`='$cantidad',
            `precio_compra`='$precio',
            `iva`='$iva',
            `precio_kilo`='$precio_kilo',
            `precio_presentacion`='$precio_presentacion',
            `precio_cliente_final`='$precio_cliente_final',
            `precio_comercialzador`='$precio_comercialzador',
            `precio_web`='$precio_web',
            `fecha`='$fecha_compra'
        WHERE `id`='$idcompra'");
    
        // sumar la nueva cantidad
        $cantidadupload = $cantidadkilos * $cantidad;
        $mysqli->query("UPDATE `z_inventario` SET `cantidad`=`cantidad`+$cantidadupload WHERE `idproducto`=$producto AND `idbodega`=1");
    
        $textmsn = 'Se actualizado con exito';
    }
    
    $mysqli->query("UPDATE `z_inventario` SET `precio`='$precio_kilo' WHERE `idproducto`=$producto");


    
    // Consulta para verificar si existe el registro
    $result = $mysqli->query("SELECT COUNT(*) AS count FROM `z_producto_presentacion` WHERE `idproducto` = $producto AND `idpresentacion` = $present");
    $row = $result->fetch_assoc();
    
    if ($row['count'] == 0) {
        // Si NO existe, inserta el nuevo registro
        $mysqli->query("INSERT INTO `z_producto_presentacion`(`idproducto`, `idpresentacion`, `precio`, `minorista`, `mayorista`) VALUES ($producto, $present, '$precio_web', '$precio_cliente_final', '$precio_comercialzador')");
    }
    
    
    $result = $mysqli->query("SELECT * FROM `z_producto_presentacion` WHERE `idproducto`=$producto AND `idpresentacion`=22");
    $row = $result->fetch_assoc();
    
    if ($result->num_rows > 0) {
        // Si existe, actualiza
        if ($row['precio'] < $precio_web_kilo) {
            // Si existe, actualiza
            $mysqli->query("UPDATE `z_producto_presentacion` SET `precio`='$precio_web_kilo', `minorista`='$precio_cliente_final_kilo', `mayorista`='$precio_comercialzador_kilo' WHERE `idproducto`=$producto AND `idpresentacion`=22");
        } 
    } else {
        // Si no existe, inserta
        $mysqli->query("INSERT INTO `z_producto_presentacion` (`idproducto`, `idpresentacion`, `precio`, `minorista`, `mayorista`) VALUES ($producto, 22, '$precio_web_kilo', '$precio_cliente_final_kilo', '$precio_comercialzador_kilo')");
    }
    
    
    

    $result = $mysqli->query("SELECT * FROM `z_producto_presentacion` WHERE `idproducto` = $producto");
    if ($result->num_rows > 0) {
        while($row = $result->fetch_assoc()){
            $idpresent = $row['idpresentacion'];
            $infopresent = sinfo('z_presentaciones_productos',$idpresent);
            $cantidadkilos = $infopresent['cantidad'];
            $gananciapresentacion = $infopresent['ganancia'];
            if ($gananciapresentacion == 0) {
                $factor_comercial = 1 + (($gananciapresentacion + $gcomercial) / 100);
                $factor_final = 1 + (($gananciapresentacion + $gfinal) / 100);
                $factor_web = 1 + (($gananciapresentacion + $gweb) / 100);
            }else{
                $factor_comercial = 1 + (($gananciapresentacion + $diferencia_comercial) / 100);
                $factor_final = 1 + (($gananciapresentacion + $diferencia_final) / 100);
                $factor_web = 1 + (($gananciapresentacion + $diferencia_web) / 100);
            }
            
            
            // Calculas el precio por kilo multiplicado por la cantidad y aplicas ganancia
            $subtotal_web = $precio_kilo * $cantidadkilos;
            $subtotal_comercializador = $precio_kilo * $cantidadkilos;
            $subtotal_cliente_final = $precio_kilo * $cantidadkilos;
            
            // Ahora aplicas el factor de ganancia y redondeas hacia arriba al múltiplo de 1
            $precio_web_kilo_present = redondearHaciaArribaMultiplo1($subtotal_web * $factor_web);
            $precio_comercialzador_kilo_present = redondearHaciaArribaMultiplo1($subtotal_comercializador * $factor_comercial);
            $precio_cliente_final_kilo_present = redondearHaciaArribaMultiplo1($subtotal_cliente_final * $factor_final);

            $mysqli->query("UPDATE `z_producto_presentacion` SET `precio`='$precio_web_kilo_present', `minorista`='$precio_cliente_final_kilo_present', `mayorista`='$precio_comercialzador_kilo_present' WHERE `idproducto`=$producto AND `idpresentacion`=$idpresent");
        }
    }
    echo 'precios.php?msn='.$textmsn;
    exit();
    
}


if (isset($_GET['eliminar']) && $_GET['eliminar'] == 1 && isset($_GET['id'])) {
    $id = intval($_GET['id']);

    // Obtener datos de la compra antes de eliminar
    $qry = $mysqli->query("SELECT idproducto, idpresentacion, cantidad FROM z_proveedores_precios WHERE id = $id");
    if($qry->num_rows > 0){
        $row = $qry->fetch_assoc();
        $producto = $row['idproducto'];
        $present = $row['idpresentacion'];
        $cantidad = $row['cantidad'];

        // Obtener cantidad en kilos de la presentación
        $cantidadkilos = sinfo('z_presentaciones_productos',$present)['cantidad'];
        $cantidadupload = $cantidadkilos * $cantidad;

        // Restar del inventario lo que esa compra había sumado
        $mysqli->query("UPDATE z_inventario 
                        SET cantidad = cantidad - $cantidadupload 
                        WHERE idproducto = $producto AND idbodega = 1");
    }

    // Eliminar la compra
    $mysqli->query("DELETE FROM z_proveedores_precios WHERE id = $id");

    header("Location: precios.php?msn=Registro eliminado");
    exit;
}


function swalmsn($status,$mensaje,$action=NULL){
    $response = array(    'status' => $status,    'mensaje' => $mensaje,    'action' => $action);
    echo json_encode($response);
    exit();
}
function redondearHaciaArribaMultiplo50($numero) {
    // Redondea hacia arriba al múltiplo de 50 más cercano
    $redondeado = ceil($numero / 50) * 50;
    return $redondeado;
}
function redondearHaciaArribaMultiplo1($numero) {
    // Redondea hacia arriba al múltiplo de 50 más cercano
    $redondeado = ceil($numero / 1) * 1;
    return $redondeado;
}

function calcularPorcentajeDeCien($porcentaje) {
    return (100 + $porcentaje) / 100;
}
?>