diff --git a/assets/uploads/marketing_images/69f9563f75358.webp b/assets/uploads/marketing_images/69f9563f75358.webp deleted file mode 100644 index e12441bd..00000000 Binary files a/assets/uploads/marketing_images/69f9563f75358.webp and /dev/null differ diff --git a/assets/uploads/marketing_images/69f95a0b3cbf6.jpg b/assets/uploads/marketing_images/69f95a0b3cbf6.jpg deleted file mode 100644 index cbaa81e2..00000000 Binary files a/assets/uploads/marketing_images/69f95a0b3cbf6.jpg and /dev/null differ diff --git a/assets/uploads/marketing_images/6a0b4592b821f.png b/assets/uploads/marketing_images/6a0b4592b821f.png deleted file mode 100644 index e708cf7e..00000000 Binary files a/assets/uploads/marketing_images/6a0b4592b821f.png and /dev/null differ diff --git a/assets/uploads/vouchers/6a0b63d48d4ad-1301.png b/assets/uploads/vouchers/6a0b63d48d4ad-1301.png new file mode 100644 index 00000000..2f27f780 Binary files /dev/null and b/assets/uploads/vouchers/6a0b63d48d4ad-1301.png differ diff --git a/delete_marketing_video.php b/delete_marketing_video.php new file mode 100644 index 00000000..cc94196a --- /dev/null +++ b/delete_marketing_video.php @@ -0,0 +1,24 @@ +prepare("SELECT foto_producto FROM marketing_videos WHERE id = ?"); + $stmt->execute([$id]); + $video = $stmt->fetch(PDO::FETCH_ASSOC); + + if ($video) { + if (!empty($video['foto_producto']) && file_exists($video['foto_producto'])) { + unlink($video['foto_producto']); + } + + $stmt = $db->prepare("DELETE FROM marketing_videos WHERE id = ?"); + $stmt->execute([$id]); + } +} + +header("Location: marketing_produccion.php?success=1"); +exit; \ No newline at end of file diff --git a/marketing_produccion.php b/marketing_produccion.php index bd936c6c..140bc6e2 100644 --- a/marketing_produccion.php +++ b/marketing_produccion.php @@ -15,66 +15,250 @@ $stmt_videos = $db->query("SELECT mv.*, p.nombre as nombre_producto LEFT JOIN products p ON mv.producto_id = p.id ORDER BY mv.orden ASC, mv.fecha_creacion DESC"); $videos = $stmt_videos->fetchAll(PDO::FETCH_ASSOC); + +// Contadores de estado +$stats = [ + 'TOTAL' => count($videos), + 'PENDIENTE' => 0, + 'EN PROCESO' => 0, + 'TERMINADO' => 0, + 'APROBADO' => 0 +]; +foreach ($videos as $v) { + if (isset($stats[$v['estado']])) { + $stats[$v['estado']]++; + } +} ?> +
+
+
+
+
+
Total Pedidos
+

+
+
+
+
+
+
+
+
Pendientes
+

+
+
+
+
+
+
+
+
En Proceso
+

+
+
+
+
+
+
+
+
Terminados
+

+
+
+
+
+
+
+
+
Aprobados
+

+
+
+
+
+
-

Producción de Video

-

Vista de control estilo Excel

+

Producción de Video

+

Gestión de activos y flujo de trabajo creativo

-
- - Biblioteca de Assets +
+
+ + +
+
+ Biblioteca -
@@ -86,20 +270,21 @@ $videos = $stmt_videos->fetchAll(PDO::FETCH_ASSOC);
-
+ +
- + - + @@ -110,30 +295,38 @@ $videos = $stmt_videos->fetchAll(PDO::FETCH_ASSOC); - + - + @@ -144,7 +337,7 @@ $videos = $stmt_videos->fetchAll(PDO::FETCH_ASSOC); $link = trim($link); if (!$link) continue; ?> - + - @@ -205,19 +398,24 @@ $videos = $stmt_videos->fetchAll(PDO::FETCH_ASSOC); @@ -228,6 +426,69 @@ $videos = $stmt_videos->fetchAll(PDO::FETCH_ASSOC); + +
+
+ +
+
+
+ + Producto + +
+ +
+ +
+ + + +
+
+
+
+
+ + Entrega: +
+
+ + Orden: +
+
+ MATERIAL: +

+ +

+
+
+ +
+
+ +
+
+ @@ -477,6 +741,32 @@ $videos = $stmt_videos->fetchAll(PDO::FETCH_ASSOC);
Orden# Fecha Entrega Producto Imagen Material Ángulo Insp. LandingInsp. VideoVideo Ref. Link Video Link Landing Link Flyer
No hay pedidos registrados. + + No hay pedidos registrados. +
- -'; ?> +
+ + -'; ?> +
Ref - Sin foto +
+ +
-
+
-
+
- +
+ + +