-- Table structure for table `feriados`
--

CREATE TABLE `feriados` (
  `fecha` date NOT NULL,
  `nombre` varchar(100) NOT NULL,
  PRIMARY KEY (`fecha`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

--
-- Dumping data for table `feriados`
--

INSERT INTO `feriados` VALUES ('2024-01-01','Año Nuevo'),('2024-03-28','Jueves Santo'),('2024-03-29','Viernes Santo'),('2024-05-01','Día del Trabajo'),('2024-06-29','San Pedro y San Pablo'),('2024-07-28','Fiestas Patrias (Independencia)'),('2024-07-29','Fiestas Patrias (Gran Parada)'),('2024-08-30','Santa Rosa de Lima'),('2024-10-08','Combate de Angamos'),('2024-11-01','Día de Todos los Santos'),('2024-12-08','Inmaculada Concepción'),('2024-12-25','Navidad'),('2025-01-01','Año Nuevo'),('2025-04-17','Jueves Santo'),('2025-04-18','Viernes Santo'),('2025-05-01','Día del Trabajo'),('2025-06-29','San Pedro y San Pablo'),('2025-07-28','Fiestas Patrias (Independencia)'),('2025-07-29','Fiestas Patrias (Gran Parada)'),('2025-08-30','Santa Rosa de Lima'),('2025-10-08','Combate de Angamos'),('2025-11-01','Día de Todos los Santos'),('2025-12-08','Inmaculada Concepción'),('2025-12-09','Batalla de Ayacucho'),('2025-12-25','Navidad'),('2026-01-01','Año Nuevo'),('2026-04-02','Jueves Santo'),('2026-04-03','Viernes Santo'),('2026-05-01','Día del Trabajo'),('2026-06-29','San Pedro y San Pablo'),('2026-07-28','Fiestas Patrias (Independencia)'),('2026-07-29','Fiestas Patrias (Gran Parada)'),('2026-08-30','Santa Rosa de Lima'),('2026-10-08','Combate de Angamos'),('2026-11-01','Día de Todos los Santos'),('2026-12-08','Inmaculada Concepción'),('2026-12-09','Batalla de Ayacucho'),('2026-12-25','Navidad'),('2027-01-01','Año Nuevo'),('2027-03-25','Jueves Santo'),('2027-03-26','Viernes Santo'),('2027-05-01','Día del Trabajo'),('2027-06-29','San Pedro y San Pablo'),('2027-07-28','Fiestas Patrias: Independencia'),('2027-07-29','Fiestas Patrias: Gran Parada Militar'),('2027-08-30','Santa Rosa de Lima'),('2027-10-08','Combate de Angamos'),('2027-11-01','Día de Todos los Santos'),('2027-12-08','Inmaculada Concepción'),('2027-12-09','Batalla de Ayacucho'),('2027-12-25','Navidad'),('2028-01-01','Año Nuevo'),('2028-04-13','Jueves Santo'),('2028-04-14','Viernes Santo'),('2028-05-01','Día del Trabajo'),('2028-06-29','San Pedro y San Pablo'),('2028-07-28','Fiestas Patrias: Independencia'),('2028-07-29','Fiestas Patrias: Gran Parada Militar'),('2028-08-30','Santa Rosa de Lima'),('2028-10-08','Combate de Angamos'),('2028-11-01','Día de Todos los Santos'),('2028-12-08','Inmaculada Concepción'),('2028-12-25','Navidad');

--
-- Table structure for table `flota_alertas`
--

CREATE TABLE `flota_alertas` (
  `id` bigint NOT NULL AUTO_INCREMENT,
  `vehiculo_id` int NOT NULL,
  `scope` enum('DOCUMENTO','MANTENIMIENTO') NOT NULL,
  `ref_id` int NOT NULL,
  `etiqueta` varchar(40) DEFAULT NULL,
  `programado` datetime NOT NULL,
  `canal` set('EMAIL','WP') DEFAULT 'EMAIL',
  `enviado` tinyint(1) DEFAULT '0',
  `enviado_en` datetime DEFAULT NULL,
  `payload_json` json DEFAULT NULL,
  `creado_en` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  KEY `flota_fk_al_veh` (`vehiculo_id`),
  KEY `flota_idx_al_prog` (`programado`,`enviado`),
  CONSTRAINT `flota_fk_al_veh` FOREIGN KEY (`vehiculo_id`) REFERENCES `flota_vehiculos` (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

--
-- Dumping data for table `flota_alertas`
--


--
-- Table structure for table `flota_combustible`
--

CREATE TABLE `flota_combustible` (
  `id` int NOT NULL AUTO_INCREMENT,
  `vehiculo_id` int NOT NULL,
  `fecha` date NOT NULL,
  `odometro` int unsigned NOT NULL,
  `litros` decimal(10,3) NOT NULL,
  `costo_total` decimal(12,2) NOT NULL,
  `precio_litro` decimal(10,3) GENERATED ALWAYS AS (if((`litros` > 0),(`costo_total` / `litros`),NULL)) STORED,
  `proveedor` varchar(120) DEFAULT NULL,
  `archivo_path` varchar(255) DEFAULT NULL,
  `archivo_drive_id` varchar(128) DEFAULT NULL,
  `archivo_drive_mime` varchar(80) DEFAULT NULL,
  `archivo_drive_size` int DEFAULT NULL,
  `archivo_drive_url` varchar(255) DEFAULT NULL,
  `notas` varchar(500) DEFAULT NULL,
  `created_by` int NOT NULL,
  `created_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `updated_by` int DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL,
  PRIMARY KEY (`id`),
  KEY `ix_comb_veh_fecha` (`vehiculo_id`,`fecha`),
  KEY `ix_comb_veh_odometro` (`vehiculo_id`,`odometro`),
  CONSTRAINT `fk_comb_veh` FOREIGN KEY (`vehiculo_id`) REFERENCES `flota_vehiculos` (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

--
-- Dumping data for table `flota_combustible`
--

INSERT INTO `flota_combustible` (`id`, `vehiculo_id`, `fecha`, `odometro`, `litros`, `costo_total`, `proveedor`, `archivo_path`, `archivo_drive_id`, `archivo_drive_mime`, `archivo_drive_size`, `archivo_drive_url`, `notas`, `created_by`, `created_at`, `updated_by`, `updated_at`) VALUES (1,1,'2025-10-15',1250,18.927,75.00,'REPSOL','/uploads/combustible/A1K049/2025/10/3dace15b80799521.pdf','1pKy14fdpCF-85ZHSY8YFz0BGglhEXnPr','application/pdf',19648,'https://drive.google.com/file/d/1pKy14fdpCF-85ZHSY8YFz0BGglhEXnPr/view?usp=drivesdk','',1,'2025-10-15 12:58:15',1,'2025-10-15 18:58:23');

--
-- Table structure for table `flota_cotizacion`
--

CREATE TABLE `flota_cotizacion` (
  `id` int NOT NULL AUTO_INCREMENT,
  `vehiculo_id` int NOT NULL,
  `fecha` date NOT NULL,
  `proveedor` varchar(200) NOT NULL,
  `notas` varchar(255) DEFAULT NULL,
  `archivo_path` varchar(255) DEFAULT NULL,
  `archivo_drive_url` varchar(255) DEFAULT NULL,
  `created_by` int DEFAULT NULL,
  `created_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  KEY `vehiculo_id` (`vehiculo_id`),
  CONSTRAINT `fk_cot_veh` FOREIGN KEY (`vehiculo_id`) REFERENCES `flota_vehiculos` (`id`) ON DELETE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

--
-- Dumping data for table `flota_cotizacion`
--

INSERT INTO `flota_cotizacion` VALUES (2,1,'2025-10-18','ZAGA CORP. S.A.C. - 20606621931',NULL,NULL,'https://drive.google.com/file/d/1rNsdewsWs_T0hE7-BfKGmpFvjObTCG8d/view?usp=drivesdk',1,'2025-10-18 15:04:50');

--
-- Table structure for table `flota_doc_tipos`
--

CREATE TABLE `flota_doc_tipos` (
  `id` int NOT NULL AUTO_INCREMENT,
  `nombre` varchar(60) NOT NULL,
  `crit_30` tinyint unsigned DEFAULT '30',
  `crit_15` tinyint unsigned DEFAULT '15',
  `crit_7` tinyint unsigned DEFAULT '7',
  `creado_en` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  UNIQUE KEY `nombre` (`nombre`),
  UNIQUE KEY `uq_flota_doc_tipos_nombre` (`nombre`)
) ENGINE=InnoDB AUTO_INCREMENT=15 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

--
-- Dumping data for table `flota_doc_tipos`
--

INSERT INTO `flota_doc_tipos` VALUES (1,'SOAT',30,15,7,'2025-10-07 14:38:25'),(2,'REVISION_TECNICA',30,15,7,'2025-10-07 14:38:25'),(3,'SEGURO',30,15,7,'2025-10-07 14:38:25'),(4,'TARJETA_PROPIEDAD',30,15,7,'2025-10-07 14:38:25'),(5,'PERMISO_CIRCULACION',30,15,7,'2025-10-07 14:38:25'),(6,'MANTENIMIENTO',30,15,7,'2025-10-07 14:38:25'),(7,'GPS_TELEMATICA',30,15,7,'2025-10-07 14:38:25'),(8,'CERTIFICADO GNV',30,15,7,'2025-10-11 01:35:54'),(9,'CERTIFICADO GLP',30,15,7,'2025-10-11 01:35:54'),(10,'CERTIFICADO INSPECCION VEHICULAR',30,15,7,'2025-10-11 01:35:54'),(11,'BOLETA INFORMATIVA',30,15,7,'2025-10-11 01:35:54'),(12,'TARJETA IDENTIFICACION',30,15,7,'2025-10-11 01:35:54'),(13,'PERMISO POLARIZADO',30,15,7,'2025-10-11 01:35:54'),(14,'BREVETE VIRTUAL',30,15,7,'2025-10-11 01:35:54');

--
-- Table structure for table `flota_documentos`
--

CREATE TABLE `flota_documentos` (
  `id` int NOT NULL AUTO_INCREMENT,
  `vehiculo_id` int NOT NULL,
  `doc_tipo_id` int NOT NULL,
  `periodicidad` enum('ANUAL','MENSUAL') NOT NULL DEFAULT 'ANUAL',
  `numero` varchar(80) DEFAULT NULL,
  `entidad` varchar(120) DEFAULT NULL,
  `fecha_emision` date DEFAULT NULL,
  `fecha_vencimiento` date DEFAULT NULL,
  `archivo_path` varchar(255) DEFAULT NULL,
  `archivo_drive_id` varchar(128) DEFAULT NULL,
  `archivo_drive_mime` varchar(100) DEFAULT NULL,
  `archivo_drive_size` bigint DEFAULT NULL,
  `archivo_drive_url` varchar(512) DEFAULT NULL,
  `estado` enum('VIGENTE','POR_VENCER','VENCIDO') DEFAULT 'VIGENTE',
  `notas` text,
  `created_by` int DEFAULT NULL,
  `updated_by` int DEFAULT NULL,
  `created_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
  `updated_at` timestamp NULL DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  KEY `flota_fk_doc_cb` (`created_by`),
  KEY `flota_fk_doc_ub` (`updated_by`),
  KEY `flota_idx_doc_venc` (`fecha_vencimiento`),
  KEY `flota_idx_doc_estado` (`estado`),
  KEY `flota_idx_doc_veh` (`vehiculo_id`),
  KEY `idx_fd_vehiculo` (`vehiculo_id`),
  KEY `idx_fd_tipo` (`doc_tipo_id`),
  KEY `idx_fd_venc` (`fecha_vencimiento`),
  KEY `idx_fd_estado` (`estado`),
  CONSTRAINT `flota_fk_doc_cb` FOREIGN KEY (`created_by`) REFERENCES `usuarios` (`id`),
  CONSTRAINT `flota_fk_doc_tip` FOREIGN KEY (`doc_tipo_id`) REFERENCES `flota_doc_tipos` (`id`),
  CONSTRAINT `flota_fk_doc_ub` FOREIGN KEY (`updated_by`) REFERENCES `usuarios` (`id`),
  CONSTRAINT `flota_fk_doc_veh` FOREIGN KEY (`vehiculo_id`) REFERENCES `flota_vehiculos` (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=10 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

--
-- Dumping data for table `flota_documentos`
--

INSERT INTO `flota_documentos` VALUES (1,2,12,'ANUAL','55438801','SUNARP','2025-06-09',NULL,'/uploads/docs/CTB590/2025/10/601d48a2f1cd2806.pdf','1bgcr9UfNwi3y0kReyFqIQ6H1tmgYYh4I','application/pdf',438379,'https://drive.google.com/file/d/1bgcr9UfNwi3y0kReyFqIQ6H1tmgYYh4I/view?usp=drivesdk','VIGENTE','',1,NULL,'2025-10-11 02:43:59',NULL),(2,1,12,'ANUAL','51802168','SUNARP','2020-09-04',NULL,'/uploads/docs/A1K049/2025/10/d2382831997c9a77.pdf','15H0dwHaLZe3fdaJohyYnmEHOl8eJOq7N','application/pdf',414438,'https://drive.google.com/file/d/15H0dwHaLZe3fdaJohyYnmEHOl8eJOq7N/view?usp=drivesdk','VIGENTE','',1,NULL,'2025-10-11 02:45:32',NULL),(4,1,1,'ANUAL','594121044','INTERSEGURO','2025-03-13','2026-03-13','/uploads/docs/A1K049/2025/10/d596e30b62e3c24e.pdf','1MWJaEXf85IFnpQ7xNMsCv8T_eA12DxiM','application/pdf',283806,'https://drive.google.com/file/d/1MWJaEXf85IFnpQ7xNMsCv8T_eA12DxiM/view?usp=drivesdk','VIGENTE','',1,NULL,'2025-10-22 16:27:19',NULL),(5,1,8,'ANUAL','AJS67730-2025','CERTIFICADORA INNOVA GROUP S.A.C.','2025-03-01','2026-02-28','/uploads/docs/A1K049/2025/10/c5f12ac5455c29ab.pdf','1gVcdN5vdydy5XKPnbKxssrIM7uz6r8PE','application/pdf',1112646,'https://drive.google.com/file/d/1gVcdN5vdydy5XKPnbKxssrIM7uz6r8PE/view?usp=drivesdk','VIGENTE','',1,NULL,'2025-10-22 16:29:14',NULL),(6,1,11,'ANUAL','-','SUNARP',NULL,NULL,'/uploads/docs/A1K049/2025/10/730127a508ae77c8.pdf','1p6oAo0yJxzYz7-i-bS-YyvOX0ADTpfyl','application/pdf',82240,'https://drive.google.com/file/d/1p6oAo0yJxzYz7-i-bS-YyvOX0ADTpfyl/view?usp=drivesdk','VIGENTE','',1,NULL,'2025-10-22 16:30:25',NULL),(7,2,1,'ANUAL','141618367 - 0','LA POSITIVA SEGUROS Y REASEGUROS','2025-06-17','2026-06-17','/uploads/docs/CTB590/2025/10/ddaf527485318670.pdf','1K7QQ8opK1krxun4L1gy6NZAj6gIQUAh8','application/pdf',217457,'https://drive.google.com/file/d/1K7QQ8opK1krxun4L1gy6NZAj6gIQUAh8/view?usp=drivesdk','VIGENTE','',1,NULL,'2025-10-22 16:32:42',NULL),(8,2,9,'ANUAL','-','BUERAU VERITAS DEL PERU S.A.',NULL,NULL,'/uploads/docs/CTB590/2025/10/ea038edc1fef4d4d.pdf','11Vg-5iU6Ye2l4yqJ-VmgF2Gm0IGRnsZh','application/pdf',933557,'https://drive.google.com/file/d/11Vg-5iU6Ye2l4yqJ-VmgF2Gm0IGRnsZh/view?usp=drivesdk','VIGENTE','',1,NULL,'2025-10-22 16:33:40',NULL),(9,1,10,'ANUAL','C-2024-328-488-027169','FARENET','2024-10-22','2025-10-22','/uploads/docs/A1K049/2025/10/4b166a505d42300b.pdf','1xPYp9yDpgS6Jh9nPcLTQtfDtFwvjs5_e','application/pdf',1243344,'https://drive.google.com/file/d/1xPYp9yDpgS6Jh9nPcLTQtfDtFwvjs5_e/view?usp=drivesdk','VIGENTE','',1,NULL,'2025-10-22 16:47:53',NULL);

--
-- Temporary view structure for view `flota_documentos_view`
--

/*!50001 DROP VIEW IF EXISTS `flota_documentos_view`*/;
/*!50001 CREATE VIEW `flota_documentos_view` AS SELECT 
 1 AS `id`,
 1 AS `vehiculo_id`,
 1 AS `doc_tipo_id`,
 1 AS `numero`,
 1 AS `entidad`,
 1 AS `fecha_emision`,
 1 AS `fecha_vencimiento`,
 1 AS `archivo_path`,
 1 AS `estado`,
 1 AS `notas`,
 1 AS `created_by`,
 1 AS `updated_by`,
 1 AS `created_at`,
 1 AS `updated_at`,
 1 AS `estado_dyn`*/;

--
-- Table structure for table `flota_gastos`
--

CREATE TABLE `flota_gastos` (
  `id` int NOT NULL AUTO_INCREMENT,
  `vehiculo_id` int NOT NULL,
  `fecha` date NOT NULL,
  `categoria` enum('PEAJE','ESTACIONAMIENTO','LAVADO','MULTA','OTRO') NOT NULL,
  `importe` decimal(12,2) NOT NULL DEFAULT '0.00',
  `proveedor` varchar(120) DEFAULT NULL,
  `archivo_path` varchar(255) DEFAULT NULL,
  `notas` text,
  `created_by` int DEFAULT NULL,
  `created_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  KEY `flota_fk_fg_user` (`created_by`),
  KEY `flota_idx_fg_veh` (`vehiculo_id`,`fecha`),
  CONSTRAINT `flota_fk_fg_user` FOREIGN KEY (`created_by`) REFERENCES `usuarios` (`id`),
  CONSTRAINT `flota_fk_fg_veh` FOREIGN KEY (`vehiculo_id`) REFERENCES `flota_vehiculos` (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

--
-- Dumping data for table `flota_gastos`
--


--
-- Table structure for table `flota_mant_pieza`
--

CREATE TABLE `flota_mant_pieza` (
  `id` int NOT NULL AUTO_INCREMENT,
  `mant_id` int NOT NULL,
  `pieza_id` int NOT NULL,
  `cantidad` decimal(12,3) NOT NULL DEFAULT '1.000',
  `costo_unit` decimal(12,4) NOT NULL DEFAULT '0.0000',
  `proveedor_id` int DEFAULT NULL,
  `garantia_meses` int DEFAULT NULL,
  `obs` varchar(255) DEFAULT NULL,
  PRIMARY KEY (`id`),
  KEY `mant_id` (`mant_id`),
  KEY `pieza_id` (`pieza_id`),
  KEY `proveedor_id` (`proveedor_id`),
  CONSTRAINT `flota_mant_pieza_ibfk_1` FOREIGN KEY (`mant_id`) REFERENCES `flota_mantenimiento` (`id`) ON DELETE CASCADE,
  CONSTRAINT `flota_mant_pieza_ibfk_2` FOREIGN KEY (`pieza_id`) REFERENCES `flota_pieza` (`id`),
  CONSTRAINT `flota_mant_pieza_ibfk_3` FOREIGN KEY (`proveedor_id`) REFERENCES `flota_proveedor` (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

--
-- Dumping data for table `flota_mant_pieza`
--


--
-- Table structure for table `flota_mant_tipo`
--

CREATE TABLE `flota_mant_tipo` (
  `id` int NOT NULL AUTO_INCREMENT,
  `nombre` varchar(80) NOT NULL,
  `cada_km` int DEFAULT NULL,
  `cada_dias` int DEFAULT NULL,
  `activo` tinyint(1) DEFAULT '1',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

--
-- Dumping data for table `flota_mant_tipo`
--

INSERT INTO `flota_mant_tipo` VALUES (1,'Cambio de aceite',5000,NULL,1),(2,'Cambio de filtro de aceite',NULL,NULL,1),(3,'Cambio de filtro de aire',10000,NULL,1),(4,'Frenos (pastillas/servicio)',NULL,NULL,1),(5,'Alineación y balanceo',8000,NULL,1),(6,'Batería',NULL,NULL,1),(7,'Revisión general',NULL,180,1);

--
-- Table structure for table `flota_mantenimiento`
--

CREATE TABLE `flota_mantenimiento` (
  `id` int NOT NULL AUTO_INCREMENT,
  `vehiculo_id` int NOT NULL,
  `mant_tipo_id` int DEFAULT NULL,
  `fecha` date NOT NULL,
  `odometro` int NOT NULL,
  `costo_total` decimal(12,2) DEFAULT '0.00',
  `proveedor` varchar(120) DEFAULT NULL,
  `notas` varchar(255) DEFAULT NULL,
  `items_json` text,
  `archivo_path` varchar(255) DEFAULT NULL,
  `archivo_drive_id` varchar(80) DEFAULT NULL,
  `archivo_drive_mime` varchar(80) DEFAULT NULL,
  `archivo_drive_size` int DEFAULT NULL,
  `archivo_drive_url` varchar(255) DEFAULT NULL,
  `created_by` int NOT NULL,
  `created_at` datetime NOT NULL,
  `updated_by` int DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL,
  PRIMARY KEY (`id`),
  KEY `vehiculo_id` (`vehiculo_id`,`fecha`),
  KEY `vehiculo_id_2` (`vehiculo_id`,`mant_tipo_id`,`fecha`),
  KEY `fk_mant_tipo` (`mant_tipo_id`),
  CONSTRAINT `fk_mant_tipo` FOREIGN KEY (`mant_tipo_id`) REFERENCES `flota_mant_tipo` (`id`),
  CONSTRAINT `fk_mant_veh` FOREIGN KEY (`vehiculo_id`) REFERENCES `flota_vehiculos` (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

--
-- Dumping data for table `flota_mantenimiento`
--

INSERT INTO `flota_mantenimiento` VALUES (4,1,NULL,'2025-10-18',45000,230.00,'ZAGA CORP. S.A.C. - 20606621931','','[{\"desc\":\"CAMBIO DE ACEITE\",\"cant\":1,\"precio\":150},{\"desc\":\"FILTRO DE AIRE\",\"cant\":1,\"precio\":50},{\"desc\":\"PRUEBA ITEM\",\"cant\":1,\"precio\":30}]','/uploads/mantenimiento/A1K049/2025/10/5537fd0f20611ed2.pdf','1w5DLpXvEWHUKoU_C-aK0Gg5OOk5a_A-p','application/pdf',11649,'https://drive.google.com/file/d/1w5DLpXvEWHUKoU_C-aK0Gg5OOk5a_A-p/view?usp=drivesdk',1,'2025-10-18 15:59:18',NULL,NULL);

--
-- Table structure for table `flota_pieza`
--

CREATE TABLE `flota_pieza` (
  `id` int NOT NULL AUTO_INCREMENT,
  `codigo` varchar(50) DEFAULT NULL,
  `nombre` varchar(120) NOT NULL,
  `unidad` varchar(20) DEFAULT 'ud',
  `vida_km` int DEFAULT NULL,
  `vida_dias` int DEFAULT NULL,
  `activo` tinyint(1) DEFAULT '1',
  PRIMARY KEY (`id`),
  UNIQUE KEY `codigo` (`codigo`)
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

--
-- Dumping data for table `flota_pieza`
--

INSERT INTO `flota_pieza` VALUES (1,'ACE-5W30','Aceite 5W30','ud',5000,NULL,1),(2,'FLT-ACE','Filtro de aceite','ud',5000,NULL,1),(3,'FLT-AIR','Filtro de aire','ud',10000,NULL,1),(4,'PST-FRN','Pastillas de freno','juego',NULL,NULL,1),(5,'BAT-45A','Batería 45Ah','ud',NULL,720,1);

--
-- Table structure for table `flota_pieza_mov`
--

CREATE TABLE `flota_pieza_mov` (
  `id` int NOT NULL AUTO_INCREMENT,
  `pieza_id` int NOT NULL,
  `fecha` date NOT NULL,
  `tipo` enum('IN','OUT') NOT NULL,
  `cantidad` decimal(12,3) NOT NULL,
  `costo_unit` decimal(12,4) DEFAULT '0.0000',
  `ref` text,
  `mant_id` int DEFAULT NULL,
  `created_by` int NOT NULL,
  `created_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  KEY `pieza_id` (`pieza_id`),
  CONSTRAINT `flota_pieza_mov_ibfk_1` FOREIGN KEY (`pieza_id`) REFERENCES `flota_pieza` (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

--
-- Dumping data for table `flota_pieza_mov`
--


--
-- Table structure for table `flota_pieza_stock`
--

CREATE TABLE `flota_pieza_stock` (
  `pieza_id` int NOT NULL,
  `stock` decimal(12,3) NOT NULL DEFAULT '0.000',
  `min_stock` decimal(12,3) NOT NULL DEFAULT '0.000',
  PRIMARY KEY (`pieza_id`),
  CONSTRAINT `flota_pieza_stock_ibfk_1` FOREIGN KEY (`pieza_id`) REFERENCES `flota_pieza` (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

--
-- Dumping data for table `flota_pieza_stock`
--


--
-- Table structure for table `flota_proveedor`
--

CREATE TABLE `flota_proveedor` (
  `id` int NOT NULL AUTO_INCREMENT,
  `nombre` varchar(120) NOT NULL,
  `ruc` varchar(20) DEFAULT NULL,
  `contacto` varchar(120) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

--
-- Dumping data for table `flota_proveedor`
--

INSERT INTO `flota_proveedor` VALUES (1,'RAZON SOCIAL PRUEBA','206045214766','987463210'),(2,'ZAGA CORP. S.A.C.','20606621931','960242112 - 944820481');

--
-- Table structure for table `flota_vehiculos`
--

CREATE TABLE `flota_vehiculos` (
  `id` int NOT NULL AUTO_INCREMENT,
  `placa` varchar(12) NOT NULL,
  `marca` varchar(50) DEFAULT NULL,
  `modelo` varchar(60) DEFAULT NULL,
  `anio` smallint DEFAULT NULL,
  `km_actual` int DEFAULT '0',
  `area_id` int DEFAULT NULL,
  `uso` varchar(100) DEFAULT NULL,
  `responsable_id` int DEFAULT NULL,
  `responsable_txt` varchar(120) DEFAULT NULL,
  `creado_en` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
  `actualizado_en` timestamp NULL DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  UNIQUE KEY `placa` (`placa`),
  KEY `flota_fk_v_area` (`area_id`),
  KEY `flota_fk_v_user` (`responsable_id`),
  CONSTRAINT `flota_fk_v_area` FOREIGN KEY (`area_id`) REFERENCES `areas` (`area_id`),
  CONSTRAINT `flota_fk_v_user` FOREIGN KEY (`responsable_id`) REFERENCES `usuarios` (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

--
-- Dumping data for table `flota_vehiculos`
--

INSERT INTO `flota_vehiculos` VALUES (1,'A1K049','HYUNDAI','ACCENT',2010,NULL,NULL,'',NULL,'','2025-10-10 17:07:18',NULL),(2,'CTB590','KIA','K3',2026,1000,NULL,'',NULL,'','2025-10-10 17:08:27',NULL);

--
-- Table structure for table `gastos`
--

CREATE TABLE `gastos` (
  `id` int NOT NULL AUTO_INCREMENT,
  `unidad_id` int NOT NULL,
  `contrato_id` int DEFAULT NULL,
  `categoria` enum('AGUA','LUZ','INTERNET','MUNI','MANTENIMIENTO','OTRO') NOT NULL,
  `proveedor` varchar(120) DEFAULT NULL,
  `descripcion` varchar(255) DEFAULT NULL,
  `fecha` date NOT NULL,
  `periodo` char(7) NOT NULL,
  `moneda` char(3) NOT NULL DEFAULT 'PEN',
  `monto` decimal(10,2) NOT NULL,
  `cobrar_inquilino` tinyint(1) NOT NULL DEFAULT '0',
  `periodo_cobro` char(7) DEFAULT NULL,
  `notas` text,
  `created_at` datetime DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=10 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

--
-- Dumping data for table `gastos`
--

INSERT INTO `gastos` VALUES (4,17,5,'AGUA','SEDAPAL','','2025-10-13','2025-10','PEN',100.00,0,'','','2025-10-13 07:44:16'),(6,17,5,'LUZ','ENEL','','2025-10-13','2025-10','PEN',450.00,1,'2025-10','','2025-10-13 07:48:48');

--
-- Table structure for table `gastos_adjuntos`
--

CREATE TABLE `gastos_adjuntos` (
  `id` int NOT NULL AUTO_INCREMENT,
  `gasto_id` int NOT NULL,
  `path` varchar(255) NOT NULL,
  `mime` varchar(80) NOT NULL,
  `created_at` datetime DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  KEY `gasto_id` (`gasto_id`)
) ENGINE=InnoDB AUTO_INCREMENT=10 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

--
-- Dumping data for table `gastos_adjuntos`
--

INSERT INTO `gastos_adjuntos` VALUES (4,4,'uploads/gastos/2025/10/gst_68ecf42067c03.png','image/*','2025-10-13 07:44:16'),(6,6,'uploads/gastos/2025/10/gst_68ecf530c5df5.png','image/*','2025-10-13 07:48:48');

--
-- Table structure for table `holding`
--

CREATE TABLE `holding` (
  `id` int NOT NULL AUTO_INCREMENT,
  `usuario_id` int NOT NULL,
  `anio` smallint NOT NULL,
  `nombre` varchar(180) NOT NULL,
  `enero` decimal(14,2) NOT NULL DEFAULT '0.00',
  `febrero` decimal(14,2) NOT NULL DEFAULT '0.00',
  `marzo` decimal(14,2) NOT NULL DEFAULT '0.00',
  `abril` decimal(14,2) NOT NULL DEFAULT '0.00',
  `mayo` decimal(14,2) NOT NULL DEFAULT '0.00',
  `junio` decimal(14,2) NOT NULL DEFAULT '0.00',
  `julio` decimal(14,2) NOT NULL DEFAULT '0.00',
  `agosto` decimal(14,2) NOT NULL DEFAULT '0.00',
  `septiembre` decimal(14,2) NOT NULL DEFAULT '0.00',
  `octubre` decimal(14,2) NOT NULL DEFAULT '0.00',
  `noviembre` decimal(14,2) NOT NULL DEFAULT '0.00',
  `diciembre` decimal(14,2) NOT NULL DEFAULT '0.00',
  `total` decimal(16,2) NOT NULL DEFAULT '0.00',
  `manual_html` longtext,
  `created_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `updated_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  UNIQUE KEY `uniq_user_anio_nombre` (`usuario_id`,`anio`,`nombre`),
  KEY `idx_anio_user` (`anio`,`usuario_id`)
) ENGINE=InnoDB AUTO_INCREMENT=10 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

--
-- Dumping data for table `holding`
--

INSERT INTO `holding` VALUES (1,1,2025,'BIDEX PRESENCIAL',0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,NULL,'2025-09-17 06:58:06','2025-09-18 21:00:49');
INSERT INTO `holding` VALUES (3,1,2025,'__MANUAL__',0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,'<h1 style=\"text-align: center;\"><span style=\"font-size: 18pt;\"><span style=\"text-decoration: underline;\">6 Frases&nbsp; que TRANSFORMA mi VIDA</span></span></h1>\n<h1 style=\"text-align: justify;\"><span style=\"font-size: 14pt;\">1. Soy capaz de lograr cualquier cosa &nbsp;que me proponga</span><br><span style=\"font-size: 14pt;\">2. hoy es el mejor &nbsp;d&iacute;a para empezar</span><br><span style=\"font-size: 14pt;\">3. estoy agradecido por todo lo que tengo y &nbsp;todo lo que SOY</span><br><span style=\"font-size: 14pt;\">4. Cada dia es una nueva oportunidad para mejorar, &nbsp;crecer y acercarme a la mejor versi&oacute;n de mi Mismo, cada acci&oacute;n que tomo me lleva un paso m&aacute;s cerca del exito</span><br><span style=\"font-size: 14pt;\">5. Mis pensamientos son poderosos, mis acciones son decisivos y mi disciplina me convierte en una persona imparable. Cada d&iacute;a construy&oacute; la vida que Obtengo con determinaci&oacute;n y enfoque</span><br><span style=\"font-size: 14pt;\">6. Soy responsable al 100% &nbsp;de mi vida, mis resultado y mi destino. Todo lo que pienso, digo y hago tiene un impacto directo en mi exito. Elijo actuar con determinaci&oacute;n y confianza. C</span><span style=\"font-size: 14pt;\">on esfeuerzo, perseverancia y la mentalidad correcta cada meta que me propongo es completamente alcanzable.</span></h1>\n<p>&nbsp;</p>\n<p>https://www.tiktok.com/@fullmotivacion365/video/7547814032091139341?q=6%20frases%20que%20cambiar%C3%A1n%20tu%20mente&amp;t=1758246634578&nbsp;</p>\n<h1 style=\"text-align: center;\"><span style=\"text-decoration: underline;\">CUADRO DE RESULTADOS OBTENIDOS :&nbsp;<span style=\"color: #3598db; text-decoration: underline;\">LIBERTAD FINANCIERA EVP</span></span></h1>\n<p>Es la Matriz desde donde inicia el planeamiento</p>\n<h3>1. un problema 3 alternativas de solucion</h3>\n<h3>MISION: <strong><span style=\"color: #3598db;\">Poner en funcionamiento Todas las <span style=\"color: #236fa1;\">Empresas</span></span> </strong><span style=\"color: #236fa1;\">y obtener gan des utilidades como 1\'000.000 de euros&nbsp; en el periodo del&nbsp;</span></h3>\n<h3><span style=\"color: #3598db;\">01/01/2025&nbsp; &nbsp; AL 31/12/2025&nbsp;</span></h3>\n<h3><strong> VISION:&nbsp; &nbsp;<span style=\"color: #236fa1;\">Ser Un millonario con libertad&nbsp; financiera con buena Salud, Feliz al lado de mi Familia&nbsp; y Vivir hasta los 110 a&ntilde;os disfrutando de la VIDA&nbsp;</span></strong></h3>\n<h3><strong>OBJETIVOS:</strong> <span style=\"color: #3598db;\">Planificar y Generar Utilidades por Empresas, por mes,como se definio en el cuadro de utilidades</span></h3>\n<p><span style=\"color: #3598db;\">HERRAMIENTAS</span></p>\n<ul>\n<li>PRIVADO</li>\n<li>AREAS&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;* PRIVADO&nbsp; &nbsp;*ACTIVIDADES</li>\n</ul>\n<p><img style=\"display: block; margin-left: auto; margin-right: auto;\" src=\"data:image/png;base64,[BLOB]