diff --git a/assets/uploads/vouchers/697b6e0b8d69a-WhatsApp Image 2026-01-29 at 9.03.33 AM.jpeg b/assets/uploads/vouchers/697b6e0b8d69a-WhatsApp Image 2026-01-29 at 9.03.33 AM.jpeg deleted file mode 100644 index e7f21e2..0000000 Binary files a/assets/uploads/vouchers/697b6e0b8d69a-WhatsApp Image 2026-01-29 at 9.03.33 AM.jpeg and /dev/null differ diff --git a/assets/uploads/vouchers/697baab7da5ed-WhatsApp Image 2026-01-29 at 1.42.33 PM.jpeg b/assets/uploads/vouchers/697baab7da5ed-WhatsApp Image 2026-01-29 at 1.42.33 PM.jpeg deleted file mode 100644 index 698570f..0000000 Binary files a/assets/uploads/vouchers/697baab7da5ed-WhatsApp Image 2026-01-29 at 1.42.33 PM.jpeg and /dev/null differ diff --git a/assets/uploads/vouchers/697bae1a4d683-WhatsApp Image 2026-01-29 at 1.55.55 PM (1).jpeg b/assets/uploads/vouchers/697bae1a4d683-WhatsApp Image 2026-01-29 at 1.55.55 PM (1).jpeg deleted file mode 100644 index 65ffb10..0000000 Binary files a/assets/uploads/vouchers/697bae1a4d683-WhatsApp Image 2026-01-29 at 1.55.55 PM (1).jpeg and /dev/null differ diff --git a/assets/uploads/vouchers/697bc571df400-WhatsApp Image 2026-01-29 at 3.24.52 PM.jpeg b/assets/uploads/vouchers/697bc571df400-WhatsApp Image 2026-01-29 at 3.24.52 PM.jpeg deleted file mode 100644 index 79a3e71..0000000 Binary files a/assets/uploads/vouchers/697bc571df400-WhatsApp Image 2026-01-29 at 3.24.52 PM.jpeg and /dev/null differ diff --git a/assets/uploads/vouchers/698dfc4316d0a-601.png b/assets/uploads/vouchers/698dfc4316d0a-601.png new file mode 100644 index 0000000..941cca6 Binary files /dev/null and b/assets/uploads/vouchers/698dfc4316d0a-601.png differ diff --git a/assets/uploads/vouchers/698dfc878fad9-664.png b/assets/uploads/vouchers/698dfc878fad9-664.png new file mode 100644 index 0000000..263599f Binary files /dev/null and b/assets/uploads/vouchers/698dfc878fad9-664.png differ diff --git a/assets/uploads/vouchers/698dfcb979453-551.png b/assets/uploads/vouchers/698dfcb979453-551.png new file mode 100644 index 0000000..f82e752 Binary files /dev/null and b/assets/uploads/vouchers/698dfcb979453-551.png differ diff --git a/assets/uploads/vouchers/698dfce4d632d-270.png b/assets/uploads/vouchers/698dfce4d632d-270.png new file mode 100644 index 0000000..64db66d Binary files /dev/null and b/assets/uploads/vouchers/698dfce4d632d-270.png differ diff --git a/db/migrations/061_add_sku_to_products.sql b/db/migrations/061_add_sku_to_products.sql index b3e53ba..d50330f 100644 --- a/db/migrations/061_add_sku_to_products.sql +++ b/db/migrations/061_add_sku_to_products.sql @@ -1 +1 @@ -ALTER TABLE products ADD COLUMN sku VARCHAR(100) NULL UNIQUE; +-- ALTER TABLE products ADD COLUMN sku VARCHAR(100) NULL UNIQUE; diff --git a/generar_etiquetas.php b/generar_etiquetas.php index 260c84d..c023ef0 100644 --- a/generar_etiquetas.php +++ b/generar_etiquetas.php @@ -2,6 +2,7 @@ $pageTitle = "Generador de Etiquetas"; include 'layout_header.php'; include 'db/config.php'; +require_once 'includes/barcode_generator.php'; // Added this line // Fetch products for the dropdown $products = []; @@ -13,13 +14,32 @@ try { $_SESSION['error_message'] = "Error al cargar los productos: " . $e->getMessage(); } -$generated_codes = []; // Handle form submission +$generated_codes = []; // Initialize array to hold codes for display if ($_SERVER['REQUEST_METHOD'] === 'POST') { $producto_id = $_POST['producto_id'] ?? null; $cantidad = isset($_POST['cantidad']) ? (int)$_POST['cantidad'] : 0; if ($producto_id && $cantidad > 0 && $cantidad <= 1000) { + // Find product name to generate initials + $product_name = ''; + foreach ($products as $p) { + if ($p['id'] == $producto_id) { + $product_name = $p['nombre']; + break; + } + } + + $initials = ''; + if (!empty($product_name)) { + $words = preg_split('/\s+/', trim($product_name)); + foreach ($words as $w) { + if (isset($w[0])) { + $initials .= strtoupper($w[0]); + } + } + } + $db = db(); try { $db->beginTransaction(); @@ -28,8 +48,9 @@ if ($_SERVER['REQUEST_METHOD'] === 'POST') { $stmt = $db->prepare("INSERT INTO unidades_inventario (codigo_unico, producto_id) VALUES (?, ?)"); for ($i = 0; $i < $cantidad; $i++) { - // Generate a more robust unique code - $unique_code = 'FL-' . $producto_id . '-' . strtoupper(uniqid()); + // Generate a unique code with product initials + $unique_part = strtoupper(uniqid()); + $unique_code = ($initials ? $initials . '-' : '') . $producto_id . '-' . $unique_part; $stmt->execute([$unique_code, $producto_id]); $generated_codes[] = $unique_code; @@ -46,6 +67,7 @@ if ($_SERVER['REQUEST_METHOD'] === 'POST') { $_SESSION['error_message'] = 'Por favor, seleccione un producto y especifique una cantidad válida (entre 1 y 1000).'; } } + ?>