-- Dumping data for table `provision_pagos_ordenes_mantenimientos_detalle`
--

DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`localhost`*/ /*!50003 TRIGGER `provision_pagos_ordenes_mantenimientos_detalle_after_update` AFTER UPDATE ON `provision_pagos_ordenes_mantenimientos_detalle`
 FOR EACH ROW BEGIN 

UPDATE ordenes_mantenimientos r 
  SET r.provision_pagos_ordenes_mantenimientos_id=NULL
    WHERE r.id=OLD.ordenes_mantenimientos_id;
    
UPDATE ordenes_mantenimientos r 
  SET r.provision_pagos_ordenes_mantenimientos_id=NEW.provision_pagos_ordenes_mantenimientos_id, r.total=NEW.importe
    WHERE r.id=NEW.ordenes_mantenimientos_id;
      
      
END */;;
DELIMITER ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`localhost`*/ /*!50003 TRIGGER `provision_pagos_ordenes_mantenimientos_detalle_after_delete` AFTER DELETE ON `provision_pagos_ordenes_mantenimientos_detalle`
 FOR EACH ROW BEGIN 

UPDATE ordenes_mantenimientos r 
  SET r.provision_pagos_ordenes_mantenimientos_id=NULL
    WHERE r.id=OLD.ordenes_mantenimientos_id; 
      
END */;;
DELIMITER ;

--
-- Table structure for table `provision_pagos_ordenes_mantenimientos_pagos_detalle`
--

CREATE TABLE `provision_pagos_ordenes_mantenimientos_pagos_detalle` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `provision_pagos_ordenes_mantenimientos_id` int(11) DEFAULT NULL,
  `pago_orden_mantenimiento` varchar(20) DEFAULT NULL,
  `fecha_hora` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
  `fecha_aplicacion` datetime NOT NULL,
  `estatus` varchar(20) NOT NULL,
  `bancos_id` int(11) NOT NULL,
  `bancos_cuenta` varchar(50) NOT NULL,
  `numero_autorizacion` varchar(20) DEFAULT NULL COMMENT 'Autorizacion / Referencia',
  `forma_pago` varchar(50) NOT NULL,
  `saldo_provision_pago` decimal(11,2) DEFAULT NULL,
  `importe` decimal(11,2) DEFAULT NULL,
  `fecha_cancelacion` date DEFAULT NULL,
  `causas_cancelacion_id` int(11) DEFAULT NULL,
  PRIMARY KEY (`id`),
  KEY `bancos_id` (`bancos_id`),
  KEY `causas_cancelacion_id` (`causas_cancelacion_id`),
  KEY `provision_pagos_ordenes_mantenimientos_id` (`provision_pagos_ordenes_mantenimientos_id`) USING BTREE,
  KEY `pago_orden_mantenimiento` (`pago_orden_mantenimiento`),
  KEY `fecha_hora` (`fecha_hora`),
  KEY `estatus` (`estatus`),
  KEY `forma_pago` (`forma_pago`),
  CONSTRAINT `provision_pagos_ordenes_mantenimientos_pagos_detalle_ibfk_1` FOREIGN KEY (`provision_pagos_ordenes_mantenimientos_id`) REFERENCES `provision_pagos_ordenes_mantenimientos` (`id`),
  CONSTRAINT `provision_pagos_ordenes_mantenimientos_pagos_detalle_ibfk_2` FOREIGN KEY (`bancos_id`) REFERENCES `bancos` (`id`),
  CONSTRAINT `provision_pagos_ordenes_mantenimientos_pagos_detalle_ibfk_3` FOREIGN KEY (`causas_cancelacion_id`) REFERENCES `causas_cancelacion` (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

--
-- Dumping data for table `provision_pagos_ordenes_mantenimientos_pagos_detalle`
--

DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`localhost`*/ /*!50003 TRIGGER `provision_pagos_o_m_pagos_detalle_before_insert` BEFORE INSERT ON `provision_pagos_ordenes_mantenimientos_pagos_detalle`
 FOR EACH ROW BEGIN

   DECLARE vFolio INT(11);
   DECLARE vSerie VARCHAR(3);

      SELECT nextval('pagos_proveedores') INTO vFolio;
      
      SELECT getserie('pagos_proveedores') INTO vSerie;

      SET NEW.pago_orden_mantenimiento = CONCAT(vSerie,vFolio);

      SET NEW.fecha_hora = SYSDATE();

	IF (NEW.estatus = 'Pagado') THEN
    	SET NEW.estatus='Capturado';
    END IF;
END */;;
DELIMITER ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`localhost`*/ /*!50003 TRIGGER `provision_pagos_o_m_pagos_detalle_after_update` AFTER UPDATE ON `provision_pagos_ordenes_mantenimientos_pagos_detalle`
 FOR EACH ROW BEGIN 

   DECLARE proveedor_deposito VARCHAR(50);
   DECLARE total_pagos DECIMAL(11,2) ;
   SET total_pagos = 0 ;
   
IF (NEW.estatus = 'Pagado' and OLD.estatus = 'Capturado') THEN
  SELECT COALESCE(SUM(provision_pagos_ordenes_mantenimientos_pagos_detalle.importe)) INTO total_pagos
   FROM provision_pagos_ordenes_mantenimientos_pagos_detalle
   WHERE provision_pagos_ordenes_mantenimientos_pagos_detalle.provision_pagos_ordenes_mantenimientos_id = NEW.provision_pagos_ordenes_mantenimientos_id AND provision_pagos_ordenes_mantenimientos_pagos_detalle.estatus='Pagado';

  SELECT COALESCE(total_pagos, 0) INTO total_pagos ;

  UPDATE provision_pagos_ordenes_mantenimientos 
      SET provision_pagos_ordenes_mantenimientos.saldo = provision_pagos_ordenes_mantenimientos.total - total_pagos
      WHERE provision_pagos_ordenes_mantenimientos.id = COALESCE(NEW.provision_pagos_ordenes_mantenimientos_id, OLD.provision_pagos_ordenes_mantenimientos_id) ;
 
    END IF;
    
  IF (NEW.estatus = 'Pagado' AND OLD.estatus <> 'Pagado') THEN
    
    SELECT proveedores.razon_social INTO proveedor_deposito 
    FROM proveedores
    LEFT JOIN provision_pagos_ordenes_mantenimientos ON provision_pagos_ordenes_mantenimientos.id=NEW.provision_pagos_ordenes_mantenimientos_id
    WHERE proveedores.id = provision_pagos_ordenes_mantenimientos.proveedores_id;

	INSERT INTO bancos_saldos (fecha_hora, bancos_id, tipo_operacion, razon_social, folio, numero_autorizacion, movimiento, monto_deposito, monto_retiro)
	VALUES (NEW.fecha_aplicacion, NEW.bancos_id, 'Pago Orden Mantenimiento', proveedor_deposito, NEW.pago_orden_mantenimiento, NEW.numero_autorizacion, 'Retiro', NULL, NEW.importe);
    
  END IF;
  
  IF (NEW.estatus = 'Cancelado' AND OLD.estatus = 'Pagado') THEN
    
    SELECT proveedores.razon_social INTO proveedor_deposito 
    FROM proveedores
    LEFT JOIN provision_pagos_ordenes_mantenimientos ON provision_pagos_ordenes_mantenimientos.id=NEW.provision_pagos_ordenes_mantenimientos_id
    WHERE proveedores.id = provision_pagos_ordenes_mantenimientos.proveedores_id;

	INSERT INTO bancos_saldos (fecha_hora, bancos_id, tipo_operacion, razon_social, folio, numero_autorizacion, movimiento, monto_deposito, monto_retiro)
	VALUES (NEW.fecha_aplicacion, NEW.bancos_id, 'Cancelacion Pago Orden Mantenimiento', proveedor_deposito, NEW.pago_orden_mantenimiento, NEW.numero_autorizacion, 'Deposito', NEW.importe, NULL);
    
  END IF;
END */;;
DELIMITER ;

--
-- Table structure for table `provision_pagos_permisionarios`
--

CREATE TABLE `provision_pagos_permisionarios` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `provision_pago_permisionario` varchar(20) DEFAULT NULL,
  `fecha_hora` timestamp NULL DEFAULT NULL,
  `moneda` varchar(20) NOT NULL,
  `tipo_cambio` decimal(11,2) NOT NULL,
  `fecha_programacion_pago` date DEFAULT NULL,
  `estatus` varchar(20) NOT NULL,
  `fecha_cancelacion` date DEFAULT NULL,
  `causas_cancelacion_id` int(11) DEFAULT NULL,
  `permisionarios_id` int(11) NOT NULL,
  `proveedores_factura` varchar(50) NOT NULL,
  `comentarios` varchar(250) DEFAULT NULL,
  `porc_iva` int(11) DEFAULT NULL,
  `porc_retencion` int(11) DEFAULT NULL,
  `subtotal` decimal(11,2) DEFAULT NULL,
  `iva` decimal(11,2) DEFAULT NULL,
  `retencion` decimal(11,2) DEFAULT NULL,
  `total` decimal(11,2) DEFAULT NULL,
  `saldo` decimal(11,2) DEFAULT NULL,
  `fecha_vencimiento` date DEFAULT NULL,
  PRIMARY KEY (`id`),
  KEY `permisionarios_id` (`permisionarios_id`),
  KEY `causas_cancelacion_id` (`causas_cancelacion_id`),
  KEY `provision_pago_permisionario` (`provision_pago_permisionario`),
  KEY `fecha_hora` (`fecha_hora`),
  KEY `estatus` (`estatus`),
  KEY `moneda` (`moneda`),
  KEY `proveedores_factura` (`proveedores_factura`),
  CONSTRAINT `provision_pagos_permisionarios_ibfk_1` FOREIGN KEY (`causas_cancelacion_id`) REFERENCES `causas_cancelacion` (`id`),
  CONSTRAINT `provision_pagos_permisionarios_ibfk_2` FOREIGN KEY (`permisionarios_id`) REFERENCES `permisionarios` (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

--
-- Dumping data for table `provision_pagos_permisionarios`
--

DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`localhost`*/ /*!50003 TRIGGER `provision_pagos_permisionarios_before_insert` BEFORE INSERT ON `provision_pagos_permisionarios`
 FOR EACH ROW BEGIN

   DECLARE vFolio INT(11);
   DECLARE vSerie VARCHAR(3);

      SELECT nextval('compras_permisionarios') INTO vFolio;
      
      SELECT getserie('compras_permisionarios') INTO vSerie;

      SET NEW.provision_pago_permisionario = CONCAT(vSerie,vFolio);

      SET NEW.fecha_hora = SYSDATE();

END */;;
DELIMITER ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`localhost`*/ /*!50003 TRIGGER `provision_pagos_permisionarios_after_insert` AFTER INSERT ON `provision_pagos_permisionarios`
 FOR EACH ROW BEGIN

	INSERT INTO provision_pagos_permisionarios_detalle (provision_pagos_permisionarios_id, remisiones_permisionarios_id, total, total_maniobras, total_anticipos) (SELECT NEW.id, r.id, r.lq_precio_compra, COALESCE(r.precio_maniobras,0), COALESCE(r.total_anticipos,0) FROM remisiones_permisionarios r WHERE r.permisionarios_id=NEW.permisionarios_id AND r.lq_estatus='Autorizada' AND r.provision_pagos_permisionarios_id IS NULL AND r.moneda=NEW.moneda);
    
END */;;
DELIMITER ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`localhost`*/ /*!50003 TRIGGER `provision_pagos_permisionarios_before_update` BEFORE UPDATE ON `provision_pagos_permisionarios`
 FOR EACH ROW BEGIN

	DECLARE dias INT(11);
    
    IF (NEW.estatus = 'Autorizado' AND OLD.estatus <> 'Autorizado') THEN
    	SELECT COALESCE(s.dias_credito,0) FROM permisionarios s WHERE s.id=NEW.permisionarios_id INTO dias;
        IF (NEW.fecha_programacion_pago IS NOT NULL) THEN
        	SET NEW.fecha_vencimiento = DATE_ADD(NEW.fecha_programacion_pago, INTERVAL dias DAY);
        ELSE
        	SET NEW.fecha_vencimiento = DATE_ADD(CURDATE(), INTERVAL dias DAY);
        END IF;
    	SET NEW.saldo = NEW.total;
    END IF;

	IF (NEW.saldo = 0 AND OLD.estatus = 'Autorizado') THEN
    	SET NEW.estatus='Pagado';
        
        UPDATE remisiones_permisionarios r INNER JOIN provision_pagos_permisionarios_detalle d ON
	r.id = d.remisiones_permisionarios_id SET r.lq_estatus = 'Pagada'
		WHERE d.provision_pagos_permisionarios_id = NEW.id;
    END IF;
    
    IF (NEW.estatus = "Cancelado" AND OLD.estatus= "Pagado") THEN
          UPDATE remisiones_permisionarios r INNER JOIN provision_pagos_permisionarios_detalle d ON
  r.id = d.remisiones_permisionarios_id SET r.lq_estatus = 'Autorizada'
    WHERE d.provision_pagos_permisionarios_id = NEW.id;
    END IF;
END */;;
DELIMITER ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`localhost`*/ /*!50003 TRIGGER `provision_pagos_permisionarios_after_update` AFTER UPDATE ON `provision_pagos_permisionarios`
 FOR EACH ROW BEGIN
	UPDATE remisiones_permisionarios r INNER JOIN provision_pagos_permisionarios_detalle d ON
	r.id = d.remisiones_permisionarios_id SET r.provision_pagos_permisionarios_id = NEW.id
		WHERE d.provision_pagos_permisionarios_id = NEW.id;
        
END */;;
DELIMITER ;

--
-- Table structure for table `provision_pagos_permisionarios_detalle`
--

CREATE TABLE `provision_pagos_permisionarios_detalle` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `provision_pagos_permisionarios_id` int(11) DEFAULT NULL,
  `remisiones_permisionarios_id` int(11) NOT NULL,
  `total` decimal(11,2) DEFAULT NULL,
  `total_combustibles` decimal(11,2) DEFAULT NULL,
  `total_maniobras` decimal(11,2) DEFAULT NULL,
  `total_anticipos` decimal(11,2) DEFAULT NULL,
  PRIMARY KEY (`id`),
  KEY `remisiones_permisionarios_id` (`remisiones_permisionarios_id`) USING BTREE,
  KEY `provision_pagos_permisionarios_id` (`provision_pagos_permisionarios_id`) USING BTREE,
  CONSTRAINT `provision_pagos_permisionarios_detalle_ibfk_1` FOREIGN KEY (`provision_pagos_permisionarios_id`) REFERENCES `provision_pagos_permisionarios` (`id`),
  CONSTRAINT `provision_pagos_permisionarios_detalle_ibfk_2` FOREIGN KEY (`remisiones_permisionarios_id`) REFERENCES `remisiones_permisionarios` (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

--
-- Dumping data for table `provision_pagos_permisionarios_detalle`
--

DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`localhost`*/ /*!50003 TRIGGER `provision_pagos_permisionarios_detalle_after_update` AFTER UPDATE ON `provision_pagos_permisionarios_detalle`
 FOR EACH ROW BEGIN 

UPDATE remisiones_permisionarios r 
	SET r.provision_pagos_permisionarios_id=NULL
    WHERE r.id=OLD.remisiones_permisionarios_id;
    
UPDATE remisiones_permisionarios r 
	SET r.provision_pagos_permisionarios_id=NEW.provision_pagos_permisionarios_id
    WHERE r.id=NEW.remisiones_permisionarios_id;
      
      
END */;;
DELIMITER ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`localhost`*/ /*!50003 TRIGGER `provision_pagos_permisionarios_detalle_after_delete` AFTER DELETE ON `provision_pagos_permisionarios_detalle`
 FOR EACH ROW BEGIN 

UPDATE remisiones_permisionarios r 
	SET r.provision_pagos_permisionarios_id=NULL
    WHERE r.id=OLD.remisiones_permisionarios_id; 
      
END */;;
DELIMITER ;

--
-- Table structure for table `provision_pagos_permisionarios_pagos_detalle`
--

CREATE TABLE `provision_pagos_permisionarios_pagos_detalle` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `provision_pagos_permisionarios_id` int(11) DEFAULT NULL,
  `pago_permisionario` varchar(20) DEFAULT NULL,
  `fecha_hora` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
  `fecha_aplicacion` datetime NOT NULL,
  `estatus` varchar(20) NOT NULL,
  `bancos_id` int(11) NOT NULL,
  `bancos_cuenta` varchar(50) NOT NULL,
  `numero_autorizacion` varchar(20) DEFAULT NULL COMMENT 'Autorizacion / Referencia',
  `forma_pago` varchar(50) NOT NULL,
  `saldo_provision_pago` decimal(11,2) DEFAULT NULL,
  `importe` decimal(11,2) DEFAULT NULL,
  `fecha_cancelacion` date DEFAULT NULL,
  `causas_cancelacion_id` int(11) DEFAULT NULL,
  PRIMARY KEY (`id`),
  KEY `bancos_id` (`bancos_id`),
  KEY `causas_cancelacion_id` (`causas_cancelacion_id`),
  KEY `provision_pagos_permisionarios_id` (`provision_pagos_permisionarios_id`) USING BTREE,
  KEY `pago_permisionario` (`pago_permisionario`),
  KEY `fecha_hora` (`fecha_hora`),
  KEY `estatus` (`estatus`),
  KEY `forma_pago` (`forma_pago`),
  CONSTRAINT `provision_pagos_permisionarios_pagos_detalle_ibfk_1` FOREIGN KEY (`provision_pagos_permisionarios_id`) REFERENCES `provision_pagos_permisionarios` (`id`),
  CONSTRAINT `provision_pagos_permisionarios_pagos_detalle_ibfk_2` FOREIGN KEY (`bancos_id`) REFERENCES `bancos` (`id`),
  CONSTRAINT `provision_pagos_permisionarios_pagos_detalle_ibfk_3` FOREIGN KEY (`causas_cancelacion_id`) REFERENCES `causas_cancelacion` (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

--
-- Dumping data for table `provision_pagos_permisionarios_pagos_detalle`
--

DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`localhost`*/ /*!50003 TRIGGER `provision_pagos_permisionarios_pagos_detalle_before_insert` BEFORE INSERT ON `provision_pagos_permisionarios_pagos_detalle`
 FOR EACH ROW BEGIN

   DECLARE vFolio INT(11);
   DECLARE vSerie VARCHAR(3);

      SELECT nextval('pagos_permisionarios') INTO vFolio;
      
      SELECT getserie('pagos_permisionarios') INTO vSerie;

      SET NEW.pago_permisionario = CONCAT(vSerie,vFolio);

      SET NEW.fecha_hora = SYSDATE();

	IF (NEW.estatus = 'Pagado') THEN
    	SET NEW.estatus='Capturado';
    END IF;
END */;;
DELIMITER ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`localhost`*/ /*!50003 TRIGGER `provision_pagos_permisionarios_pagos_detalle_after_update` AFTER UPDATE ON `provision_pagos_permisionarios_pagos_detalle`
 FOR EACH ROW BEGIN 

   DECLARE proveedor_deposito VARCHAR(50);
   DECLARE total_pagos DECIMAL(11,2) ;
   SET total_pagos = 0 ;
   
IF (NEW.estatus = 'Pagado' and OLD.estatus = 'Capturado') THEN
  SELECT COALESCE(SUM(provision_pagos_permisionarios_pagos_detalle.importe)) INTO total_pagos
   FROM provision_pagos_permisionarios_pagos_detalle
   WHERE provision_pagos_permisionarios_pagos_detalle.provision_pagos_permisionarios_id = NEW.provision_pagos_permisionarios_id AND provision_pagos_permisionarios_pagos_detalle.estatus='Pagado';

  SELECT COALESCE(total_pagos, 0) INTO total_pagos ;

  UPDATE provision_pagos_permisionarios 
      SET provision_pagos_permisionarios.saldo = provision_pagos_permisionarios.total - total_pagos
			WHERE provision_pagos_permisionarios.id = COALESCE(NEW.provision_pagos_permisionarios_id, OLD.provision_pagos_permisionarios_id) ;
 
    END IF;
    
  IF (NEW.estatus = 'Pagado' AND OLD.estatus <> 'Pagado') THEN
    
    SELECT permisionarios.razon_social_permisionario INTO proveedor_deposito 
    FROM permisionarios
    LEFT JOIN provision_pagos_permisionarios ON provision_pagos_permisionarios.id=NEW.provision_pagos_permisionarios_id
    WHERE permisionarios.id = provision_pagos_permisionarios.permisionarios_id;

	INSERT INTO bancos_saldos (fecha_hora, bancos_id, tipo_operacion, razon_social, folio, numero_autorizacion, movimiento, monto_deposito, monto_retiro)
	VALUES (NEW.fecha_aplicacion, NEW.bancos_id, 'Pago Permisionario', proveedor_deposito, NEW.pago_permisionario, NEW.numero_autorizacion, 'Retiro', NULL, NEW.importe);
    
  END IF;
  
  IF (NEW.estatus = 'Cancelado' AND OLD.estatus = 'Pagado') THEN
    
    SELECT permisionarios.razon_social_permisionario INTO proveedor_deposito 
    FROM permisionarios
    LEFT JOIN provision_pagos_permisionarios ON provision_pagos_permisionarios.id=NEW.provision_pagos_permisionarios_id
    WHERE permisionarios.id = provision_pagos_permisionarios.permisionarios_id;

	INSERT INTO bancos_saldos (fecha_hora, bancos_id, tipo_operacion, razon_social, folio, numero_autorizacion, movimiento, monto_deposito, monto_retiro)
	VALUES (NEW.fecha_aplicacion, NEW.bancos_id, 'Cancelacion Pago Permisionario', proveedor_deposito, NEW.pago_permisionario, NEW.numero_autorizacion, 'Deposito', NEW.importe, NULL);
    
  END IF;
END */;;
DELIMITER ;

--
-- Table structure for table `provision_pagos_repartidores_paqueteria`
--

CREATE TABLE `provision_pagos_repartidores_paqueteria` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `provision_pago_repartidor_paqueteria` varchar(20) DEFAULT NULL,
  `fecha_hora` timestamp NULL DEFAULT NULL,
  `moneda` varchar(20) NOT NULL,
  `tipo_cambio` decimal(11,2) NOT NULL,
  `fecha_programacion_pago` date DEFAULT NULL,
  `estatus` varchar(20) NOT NULL,
  `fecha_cancelacion` date DEFAULT NULL,
  `causas_cancelacion_id` int(11) DEFAULT NULL,
  `fecha_inicio` date NOT NULL,
  `fecha_fin` date NOT NULL,
  `empleados_id` int(11) NOT NULL,
  `comentarios` varchar(250) DEFAULT NULL,
  `total` decimal(11,2) DEFAULT NULL,
  `saldo` decimal(11,2) DEFAULT NULL,
  `fecha_vencimiento` date DEFAULT NULL,
  PRIMARY KEY (`id`),
  KEY `causas_cancelacion_id` (`causas_cancelacion_id`),
  KEY `provision_pago_repartidor_paqueteria` (`provision_pago_repartidor_paqueteria`),
  KEY `fecha_hora` (`fecha_hora`),
  KEY `estatus` (`estatus`),
  KEY `moneda` (`moneda`),
  KEY `empleados_id` (`empleados_id`) USING BTREE,
  CONSTRAINT `provision_pagos_repartidores_paqueteria_ibfk_1` FOREIGN KEY (`causas_cancelacion_id`) REFERENCES `causas_cancelacion` (`id`),
  CONSTRAINT `provision_pagos_repartidores_paqueteria_ibfk_2` FOREIGN KEY (`empleados_id`) REFERENCES `empleados` (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

--
-- Dumping data for table `provision_pagos_repartidores_paqueteria`
--

DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`localhost`*/ /*!50003 TRIGGER `provision_pagos_repartidores_paqueteria_before_insert` BEFORE INSERT ON `provision_pagos_repartidores_paqueteria`
 FOR EACH ROW BEGIN

   DECLARE vFolio INT(11);
   DECLARE vSerie VARCHAR(3);

      SELECT nextval('compras_repartidores_paqueteria') INTO vFolio;
      
      SELECT getserie('compras_repartidores_paqueteria') INTO vSerie;

      SET NEW.provision_pago_repartidor_paqueteria = CONCAT(vSerie,vFolio);

      SET NEW.fecha_hora = SYSDATE();

END */;;
DELIMITER ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`localhost`*/ /*!50003 TRIGGER `provision_pagos_repartidores_paqueteria_after_insert` AFTER INSERT ON `provision_pagos_repartidores_paqueteria`
 FOR EACH ROW BEGIN

  INSERT INTO provision_pagos_repartidores_paqueteria_detalle (provision_pagos_repartidores_paqueteria_id, viajes_repartos_id) (SELECT NEW.id, r.id FROM viajes_repartos r WHERE r.empleados_id=NEW.empleados_id AND r.lq_estatus='Autorizada' AND r.provision_pagos_repartidores_paqueteria_id IS NULL);
    
END */;;
DELIMITER ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`localhost`*/ /*!50003 TRIGGER `provision_pagos_repartidores_paqueteria_before_update` BEFORE UPDATE ON `provision_pagos_repartidores_paqueteria`
 FOR EACH ROW BEGIN
    
    IF (NEW.estatus = 'Autorizado' AND OLD.estatus <> 'Autorizado') THEN
      
      SET NEW.saldo = NEW.total;

    END IF;

    IF (NEW.saldo = 0 AND OLD.estatus = 'Autorizado') THEN
      SET NEW.estatus='Pagado';
      UPDATE viajes_informes r INNER JOIN provision_pagos_operadores_paqueteria_detalle d ON
	r.id = d.viajes_informes_id SET r.lq_estatus = 'Pagada'
		WHERE d.provision_pagos_operadores_paqueteria_id = NEW.id;
    END IF;
END */;;
DELIMITER ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`localhost`*/ /*!50003 TRIGGER `provision_pagos_repartidores_paqueteria_after_update` AFTER UPDATE ON `provision_pagos_repartidores_paqueteria`
 FOR EACH ROW BEGIN
  UPDATE viajes_repartos r INNER JOIN provision_pagos_repartidores_paqueteria_detalle d ON
  r.id = d.viajes_repartos_id SET r.provision_pagos_repartidores_paqueteria_id = NEW.id
    WHERE d.provision_pagos_repartidores_paqueteria_id = NEW.id;
        
END */;;
DELIMITER ;

--
-- Table structure for table `provision_pagos_repartidores_paqueteria_detalle`
--

CREATE TABLE `provision_pagos_repartidores_paqueteria_detalle` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `provision_pagos_repartidores_paqueteria_id` int(11) DEFAULT NULL,
  `viajes_repartos_id` int(11) NOT NULL,
  PRIMARY KEY (`id`),
  KEY `viajes_repartos_id` (`viajes_repartos_id`) USING BTREE,
  KEY `provision_pagos_repartidores_paqueteria_id` (`provision_pagos_repartidores_paqueteria_id`) USING BTREE,
  CONSTRAINT `provision_pagos_repartidores_paqueteria_detalle_ibfk_1` FOREIGN KEY (`provision_pagos_repartidores_paqueteria_id`) REFERENCES `provision_pagos_repartidores_paqueteria` (`id`),
  CONSTRAINT `provision_pagos_repartidores_paqueteria_detalle_ibfk_2` FOREIGN KEY (`viajes_repartos_id`) REFERENCES `viajes_repartos` (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

--
-- Dumping data for table `provision_pagos_repartidores_paqueteria_detalle`
--

DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`localhost`*/ /*!50003 TRIGGER `provision_pagos_repartidores_paqueteria_detalle_after_update` AFTER UPDATE ON `provision_pagos_repartidores_paqueteria_detalle`
 FOR EACH ROW BEGIN 

UPDATE viajes_repartos r 
  SET r.provision_pagos_repartidores_paqueteria_id=NULL
    WHERE r.id=OLD.viajes_repartos_id;
    
UPDATE viajes_repartos r 
  SET r.provision_pagos_repartidores_paqueteria_id=NEW.provision_pagos_repartidores_paqueteria_id
    WHERE r.id=NEW.viajes_repartos_id;
      
      
END */;;
DELIMITER ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`localhost`*/ /*!50003 TRIGGER `provision_pagos_repartidores_paqueteria_detalle_after_delete` AFTER DELETE ON `provision_pagos_repartidores_paqueteria_detalle`
 FOR EACH ROW BEGIN 

UPDATE viajes_repartos r 
  SET r.provision_pagos_repartidores_paqueteria_id=NULL
    WHERE r.id=OLD.viajes_repartos_id; 
      
END */;;
DELIMITER ;

--
-- Table structure for table `provision_pagos_repartidores_paqueteria_pagos_detalle`
--

CREATE TABLE `provision_pagos_repartidores_paqueteria_pagos_detalle` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `provision_pagos_repartidores_paqueteria_id` int(11) DEFAULT NULL,
  `pago_repartidor_paqueteria` varchar(20) DEFAULT NULL,
  `fecha_hora` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
  `fecha_aplicacion` datetime NOT NULL,
  `estatus` varchar(20) NOT NULL,
  `bancos_id` int(11) NOT NULL,
  `bancos_cuenta` varchar(50) NOT NULL,
  `numero_autorizacion` varchar(20) DEFAULT NULL COMMENT 'Autorizacion / Referencia',
  `forma_pago` varchar(50) NOT NULL,
  `saldo_provision_pago` decimal(11,2) DEFAULT NULL,
  `importe` decimal(11,2) DEFAULT NULL,
  `fecha_cancelacion` date DEFAULT NULL,
  `causas_cancelacion_id` int(11) DEFAULT NULL,
  PRIMARY KEY (`id`),
  KEY `bancos_id` (`bancos_id`),
  KEY `causas_cancelacion_id` (`causas_cancelacion_id`),
  KEY `provision_pagos_repartidores_paqueteria_id` (`provision_pagos_repartidores_paqueteria_id`) USING BTREE,
  KEY `pago_repartidor_paqueteria` (`pago_repartidor_paqueteria`),
  KEY `fecha_hora` (`fecha_hora`),
  KEY `estatus` (`estatus`),
  KEY `forma_pago` (`forma_pago`),
  CONSTRAINT `provision_pagos_repartidores_paqueteria_pagos_detalle_ibfk_1` FOREIGN KEY (`provision_pagos_repartidores_paqueteria_id`) REFERENCES `provision_pagos_repartidores_paqueteria` (`id`),
  CONSTRAINT `provision_pagos_repartidores_paqueteria_pagos_detalle_ibfk_2` FOREIGN KEY (`bancos_id`) REFERENCES `bancos` (`id`),
  CONSTRAINT `provision_pagos_repartidores_paqueteria_pagos_detalle_ibfk_3` FOREIGN KEY (`causas_cancelacion_id`) REFERENCES `causas_cancelacion` (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

--
-- Dumping data for table `provision_pagos_repartidores_paqueteria_pagos_detalle`
--

DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`localhost`*/ /*!50003 TRIGGER `provision_pagos_repartidores_paq_pagos_detalle_before_insert` BEFORE INSERT ON `provision_pagos_repartidores_paqueteria_pagos_detalle`
 FOR EACH ROW BEGIN

   DECLARE vFolio INT(11);
   DECLARE vSerie VARCHAR(3);

      SELECT nextval('pagos_repartidores_paqueteria') INTO vFolio;
      
      SELECT getserie('pagos_repartidores_paqueteria') INTO vSerie;

      SET NEW.pago_repartidor_paqueteria = CONCAT(vSerie,vFolio);

      SET NEW.fecha_hora = SYSDATE();

	IF (NEW.estatus = 'Pagado') THEN
    	SET NEW.estatus='Capturado';
    END IF;
END */;;
DELIMITER ;
DELIMITER ;;
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`localhost`*/ /*!50003 TRIGGER `provision_pagos_repartidores_paq_pagos_detalle_after_update` AFTER UPDATE ON `provision_pagos_repartidores_paqueteria_pagos_detalle`
 FOR EACH ROW BEGIN 

   DECLARE proveedor_deposito VARCHAR(100);
   DECLARE total_pagos DECIMAL(11,2) ;
   SET total_pagos = 0 ;
   
IF (NEW.estatus = 'Pagado' and OLD.estatus = 'Capturado') THEN
  SELECT COALESCE(SUM(provision_pagos_repartidores_paqueteria_pagos_detalle.importe)) INTO total_pagos
   FROM provision_pagos_repartidores_paqueteria_pagos_detalle
   WHERE provision_pagos_repartidores_paqueteria_pagos_detalle.provision_pagos_repartidores_paqueteria_id = NEW.provision_pagos_repartidores_paqueteria_id AND provision_pagos_repartidores_paqueteria_pagos_detalle.estatus='Pagado';

  SELECT COALESCE(total_pagos, 0) INTO total_pagos ;

  UPDATE provision_pagos_repartidores_paqueteria 
      SET provision_pagos_repartidores_paqueteria.saldo = provision_pagos_repartidores_paqueteria.total - total_pagos
      WHERE provision_pagos_repartidores_paqueteria.id = COALESCE(NEW.provision_pagos_repartidores_paqueteria_id, OLD.provision_pagos_repartidores_paqueteria_id) ;
 
    END IF;

  IF (NEW.estatus = 'Pagado' AND OLD.estatus <> 'Pagado') THEN
    
    SELECT repartidores.repartidor INTO proveedor_deposito 
    FROM repartidores
    LEFT JOIN provision_pagos_repartidores_paqueteria ON provision_pagos_repartidores_paqueteria.id=NEW.provision_pagos_repartidores_paqueteria_id
    WHERE repartidores.id = provision_pagos_repartidores_paqueteria.repartidores_id;

	INSERT INTO bancos_saldos (fecha_hora, bancos_id, tipo_operacion, razon_social, folio, numero_autorizacion, movimiento, monto_deposito, monto_retiro)
	VALUES (NEW.fecha_aplicacion, NEW.bancos_id, 'Pago Repartidor Paqueteria', proveedor_deposito, NEW.pago_repartidor_paqueteria, NEW.numero_autorizacion, 'Retiro', NULL, NEW.importe);
    
  END IF;
  
  IF (NEW.estatus = 'Cancelado' AND OLD.estatus = 'Pagado') THEN
    
    SELECT repartidores.repartidor INTO proveedor_deposito 
    FROM repartidores
    LEFT JOIN provision_pagos_repartidores_paqueteria ON provision_pagos_repartidores_paqueteria.id=NEW.provision_pagos_repartidores_paqueteria_id
    WHERE repartidores.id = provision_pagos_repartidores_paqueteria.repartidores_id;

	INSERT INTO bancos_saldos (fecha_hora, bancos_id, tipo_operacion, razon_social, folio, numero_autorizacion, movimiento, monto_deposito, monto_retiro)
	VALUES (NEW.fecha_aplicacion, NEW.bancos_id, 'Cancelacion Pago Repartidor Paqueteria', proveedor_deposito, NEW.pago_repartidor_paqueteria, NEW.numero_autorizacion, 'Deposito', NEW.importe, NULL);
    
  END IF;
END */;;
DELIMITER ;

--
-- Table structure for table `puestos`
--

CREATE TABLE `puestos` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `puesto` varchar(150) NOT NULL,
  PRIMARY KEY (`id`),
  KEY `servicio` (`puesto`)
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8;

--
-- Dumping data for table `puestos`
--

INSERT INTO `puestos` VALUES (4,'ADMINISTRATIVO'),(2,'MECANICO'),(1,'OPERADOR');

--
-- Table structure for table `razones_sociales`
--

CREATE TABLE `razones_sociales` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `razon_social` varchar(100) NOT NULL,
  `rfc` varchar(20) NOT NULL,
  `persona` char(10) DEFAULT NULL,
  `cuenta` varchar(20) DEFAULT NULL,
  `user` varchar(20) DEFAULT NULL,
  `password` varchar(30) DEFAULT NULL,
  `regimen` varchar(5) DEFAULT NULL,
  `expedicion` varchar(6) DEFAULT NULL,
  `user_valida` varchar(20) DEFAULT NULL,
  `password_valida` varchar(100) DEFAULT NULL,
  `activo` varchar(3) DEFAULT NULL,
  `telefono` varchar(60) DEFAULT NULL,
  `colonia` varchar(200) DEFAULT NULL,
  `ciudad` varchar(30) DEFAULT NULL,
  `estado` varchar(20) DEFAULT NULL,
  `pagina_web` varchar(100) DEFAULT NULL,
  `slogan` varchar(50) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=latin1;

--
-- Dumping data for table `razones_sociales`
--

INSERT INTO `razones_sociales` VALUES (1,'NEARTEC','NEA040929DKA','Moral','demo','administrador','Administr4dor','601','22000','demo','e893129cc15170','Si','','Santa Tere 76','Santa margarita','Jalisco','www.ag_solucion.com','AG ES TU SOLUCION'),(2,'Matias Sebastian','MASE84571X1','Moral','demo','ag','systemag','601','45200','AG','systemag','Si','','Valle de los Molinos','Zapopan','Jalisco','','');

--
-- Table structure for table `remisiones`
--

CREATE TABLE `remisiones` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `remision` varchar(20) DEFAULT NULL,
  `fecha_hora` timestamp NULL DEFAULT NULL,
  `facturas_id` int(11) DEFAULT NULL,
  `moneda` varchar(20) CHARACTER SET utf8 NOT NULL,
  `tipo_cambio` decimal(11,2) NOT NULL,
  `solicitudes_servicio_id` int(11) DEFAULT NULL,
  `fecha_viaje` date DEFAULT NULL,
  `orden_servicio` varchar(20) DEFAULT NULL,
  `tipo_documento` varchar(20) DEFAULT NULL,
  `sucursales_id` int(11) NOT NULL,
  `razones_sociales_id` int(11) NOT NULL COMMENT 'Razon Social Emisor',
  `estatus` varchar(20) NOT NULL,
  `fecha_cancelacion` date DEFAULT NULL,
  `causas_cancelacion_id` int(11) DEFAULT NULL,
  `clientes_id` int(11) NOT NULL,
  `rutas_id` int(11) NOT NULL,
  `remitente_id` int(11) DEFAULT NULL,
  `destinatario_id` int(11) DEFAULT NULL,
  `empleados_id` int(11) NOT NULL,
  `unidades_id` int(11) NOT NULL,
  `clave_configautotransporte_id` int(11) DEFAULT NULL,
  `remolquea_id` int(11) DEFAULT NULL,
  `dolly_id` int(11) DEFAULT NULL,
  `remolqueb_id` int(11) DEFAULT NULL,
  `numero_contenedor_a` varchar(30) DEFAULT NULL,
  `numero_contenedor_b` varchar(30) DEFAULT NULL,
  `pedimento_a` varchar(100) DEFAULT NULL,
  `pedimento_b` varchar(100) DEFAULT NULL,
  `sello_a` varchar(100) DEFAULT NULL,
  `sello_b` varchar(100) DEFAULT NULL,
  `peso_a` decimal(11,2) DEFAULT NULL,
  `peso_b` decimal(11,2) DEFAULT NULL,
  `clientes_ejecutivos_id` int(11) DEFAULT NULL,
  `comentarios` varchar(250) DEFAULT NULL,
  `transporte_internacional` varchar(3) DEFAULT NULL,
  `entrada_salida_mercancia` varchar(20) DEFAULT NULL,
  `clave_viaentradasalida_id` int(11) DEFAULT NULL,
  `tipo_estacion_id` int(11) DEFAULT NULL,
  `propietarios_id` int(11) DEFAULT NULL,
  `propietarios_arrendatario_id` int(11) DEFAULT NULL,
  `propietarios_notificar_id` int(11) DEFAULT NULL,
  `fecha_salida_remitente` datetime DEFAULT NULL,
  `fecha_llegada` datetime DEFAULT NULL,
  `existen_autopistas` int(11) DEFAULT '0',
  `poliza_seguro` varchar(30) DEFAULT NULL,
  `subtotal` decimal(11,2) DEFAULT NULL,
  `valor_declarado` decimal(11,2) DEFAULT NULL,
  `iva` decimal(11,2) DEFAULT NULL,
  `asegmedamb` varchar(100) DEFAULT NULL COMMENT 'Aseg Medio Ambiente',
  `retencion` decimal(11,2) DEFAULT NULL,
  `asegmedamb_poliza` varchar(30) DEFAULT NULL COMMENT 'Poliza Medio Ambiente',
  `remisiones_borrado_campos` varchar(50) DEFAULT NULL,
  `total` decimal(11,2) DEFAULT NULL,
  `total_casetas_ruta` decimal(11,2) DEFAULT NULL,
  `total_viaticos_ruta` decimal(11,2) DEFAULT NULL,
  `viaticos_kms_ruta` decimal(11,2) DEFAULT NULL COMMENT 'KMs Ruta',
  `total_litros_ruta` decimal(11,2) DEFAULT NULL,
  `total_combustible_ruta` decimal(11,2) DEFAULT NULL,
  `viaticos_rendimiento_establecido` decimal(11,2) DEFAULT NULL COMMENT 'Rendimiento',
  `total_gastos_ruta` decimal(11,2) DEFAULT NULL,
  `lq_fecha_hora` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT 'Fecha Hora Liquidacion',
  `compras_administrativos_id` int(11) DEFAULT NULL,
  `lq_estatus` varchar(50) DEFAULT 'Capturada' COMMENT 'Estatus Liquidacion',
  `total_fletes` decimal(11,2) DEFAULT NULL,
  `comision_empleado` decimal(11,2) DEFAULT NULL,
  `porcentaje_comision` decimal(11,2) DEFAULT NULL COMMENT 'Porcentaje Comisión %',
  `cantidad_comision` decimal(11,2) DEFAULT NULL COMMENT 'Cantidad para Comision',
  `comision_porc_ruta` decimal(11,2) DEFAULT NULL,
  `porcentaje_ruta_comision` decimal(11,2) DEFAULT NULL COMMENT 'Porcentaje Ruta %',
  `bonos` decimal(11,2) DEFAULT NULL,
  `comision_fija_ruta` decimal(11,2) DEFAULT NULL,
  `cantidad_fija` decimal(11,2) DEFAULT NULL,
  `km_ruta` decimal(11,2) DEFAULT NULL COMMENT 'KM Ruta',
  `comision_kms_ruta` decimal(11,2) DEFAULT NULL,
  `cantidad_kms_ruta` decimal(11,2) DEFAULT NULL COMMENT 'Cantidad por KM Ruta',
  `porcentaje_ruta` decimal(11,2) DEFAULT NULL,
  `comision_ruta` decimal(11,2) DEFAULT NULL,
  `lq_operadores_porcentaje_comision` decimal(11,2) DEFAULT NULL COMMENT 'Comision',
  `km_odometro_inicial` decimal(11,2) DEFAULT NULL,
  `km_odometro_final` decimal(11,2) DEFAULT NULL,
  `kms_vacio` decimal(11,2) DEFAULT NULL,
  `kms_ruta` decimal(11,2) DEFAULT NULL,
  `kms_recorrido_viaje` decimal(11,2) DEFAULT NULL COMMENT 'KM Recorrido Viaje',
  `diferencia_kms` decimal(11,2) DEFAULT NULL,
  `rendimiento_establecido` decimal(11,2) DEFAULT NULL,
  `rendimiento_actual` decimal(11,2) DEFAULT NULL,
  `diferencia_rendimiento` decimal(11,2) DEFAULT NULL,
  `diferencia_lts` decimal(11,2) DEFAULT NULL,
  `diferencia_dinero` decimal(11,2) DEFAULT NULL,
  `lq_prestamos_operadores_id` int(11) DEFAULT NULL,
  `vales_combustibles` decimal(11,2) DEFAULT NULL COMMENT 'Vales de Combustible',
  `operador_total_comision` decimal(11,2) DEFAULT NULL,
  `total_iave` decimal(11,2) DEFAULT NULL COMMENT 'Casetas Electronicas',
  `total_conceptos_cobro_gastos` decimal(11,2) DEFAULT NULL COMMENT 'Gastos Extra',
  `operador_egresos` decimal(11,2) DEFAULT NULL COMMENT 'Viaticos',
  `operador_comprobado` decimal(11,2) DEFAULT NULL COMMENT 'Comprobacion Viaticos',
  `facturasextras_importe` decimal(11,2) DEFAULT '0.00' COMMENT 'Ingresos Extras',
  `diferencia_viaticos` decimal(11,2) DEFAULT NULL,
  `ingresos` decimal(11,2) DEFAULT NULL COMMENT 'Ingresos',
  `egresos` decimal(11,2) DEFAULT NULL,
  `egresos_notas_cargo` decimal(11,2) DEFAULT NULL COMMENT 'Nota Cargo',
  `saldo` decimal(11,2) DEFAULT NULL,
  `egresos_prestamos_descontado` decimal(11,2) DEFAULT NULL COMMENT 'Abono Prestamo',
  `operador_diferencia_lts` decimal(11,2) DEFAULT NULL COMMENT 'Combustible Descontar',
  `devolucion_efectivo` decimal(11,2) DEFAULT NULL,
  `deducciones` decimal(11,2) DEFAULT NULL,
  `total_pagar` decimal(11,2) DEFAULT NULL,
  `lq_comentarios` varchar(255) DEFAULT NULL COMMENT 'Comentarios',
  `fecha_timbrado` datetime DEFAULT NULL,
  `uuid` varchar(50) DEFAULT NULL,
  `cfdi_mensajes` varchar(255) DEFAULT NULL,
  `monitoreo` varchar(50) DEFAULT NULL,
  `estatus_monitoreo_id` int(11) DEFAULT NULL COMMENT 'Estatus Monitoreo',
  `monitoreo_contenedores` varchar(20) DEFAULT NULL,
  `total_gastos` decimal(11,2) DEFAULT NULL,
  `egresos_prestamos` decimal(11,2) DEFAULT NULL,
  `operador_diferencia` decimal(11,2) DEFAULT NULL,
  `lq_tipo_comision` varchar(50) DEFAULT NULL,
  `lq_comision` decimal(11,2) DEFAULT NULL,
  `lq_lts_convenio` decimal(11,2) DEFAULT NULL,
  `lq_campo_3` decimal(11,2) DEFAULT NULL,
  `lq_campo_4` decimal(11,2) DEFAULT NULL,
  `lq_campo_5` decimal(11,2) DEFAULT NULL,
  `kms_recorrido_ruta` decimal(11,2) DEFAULT NULL COMMENT 'KM Recorrido Ruta',
  `lq_egresos_combustible_comprobado_tracto` decimal(11,2) DEFAULT NULL,
  `lq_egresos_egresos_recibidos` decimal(11,2) DEFAULT NULL,
  `lq_egresos_combustible_convenio` decimal(11,2) DEFAULT NULL,
  `lq_operador_notas_cargo` decimal(11,2) DEFAULT NULL,
  `lq_operador_prestamos` decimal(11,2) DEFAULT NULL,
  `lq_operador_ajuste_comision` int(11) DEFAULT NULL,
  `lq_cobrado_fletes` decimal(11,2) DEFAULT NULL,
  `lq_combustible_efectivo` decimal(11,2) DEFAULT NULL,
  `lq_combustible_credito` decimal(11,2) DEFAULT NULL,
  `lq_combustible_transferencia` decimal(11,2) DEFAULT NULL,
  `lq_total_prestamos` decimal(11,2) DEFAULT NULL,
  `lq_vales_transferencia` decimal(11,2) DEFAULT NULL,
  `lq_vales_cheque` decimal(11,2) DEFAULT NULL,
  `tarifas_flete` varchar(50) DEFAULT NULL,
  `conv_calculado` tinyint(1) DEFAULT '0',
  `remision_xml` mediumblob,
  `serie_certificado_csd` varchar(255) DEFAULT NULL,
  `serie_certificado_sat` varchar(255) DEFAULT NULL,
  `sello_sat` varchar(1000) DEFAULT NULL,
  `sello_cfd` varchar(1000) DEFAULT NULL,
  `cadena_original` varchar(500) DEFAULT NULL,
  `unidad_medida` varchar(100) DEFAULT NULL,
  `remision_pdf` longblob,
  `codigo_qr_txt` varchar(500) DEFAULT NULL,
  `serie` varchar(5) DEFAULT NULL,
  `folio` int(11) DEFAULT NULL,
  `empresas_custodia_id` int(11) DEFAULT NULL,
  `custodios_id` int(11) DEFAULT NULL,
  `custodios2_id` int(11) DEFAULT NULL,
  `inicio_monitoreo` datetime DEFAULT NULL,
  `idccp` varchar(37) DEFAULT NULL,
  `registro_istmo` varchar(4) DEFAULT NULL,
  `clave_regimenaduanero_id` int(11) DEFAULT NULL,
  `ubicacion_polo_destino` varchar(4) DEFAULT NULL,
  `ubicacion_polo_origen` varchar(4) DEFAULT NULL,
  `logistica_inversa_recoleccion_devolucion` varchar(4) DEFAULT NULL,
  PRIMARY KEY (`id`),
  KEY `facturas_id` (`facturas_id`),
  KEY `clientes_id` (`clientes_id`),
  KEY `rutas_id` (`rutas_id`),
  KEY `remitente_id` (`remitente_id`),
  KEY `destinatario_id` (`destinatario_id`),
  KEY `unidades_id` (`unidades_id`),
  KEY `remolquea_id` (`remolquea_id`),
  KEY `dolly_id` (`dolly_id`),
  KEY `remolqueb_id` (`remolqueb_id`),
  KEY `solicitudes_servicio_id` (`solicitudes_servicio_id`),
  KEY `causas_cancelacion_id` (`causas_cancelacion_id`),
  KEY `lq_prestamos_operadores_id` (`lq_prestamos_operadores_id`),
  KEY `estatus_monitoreo_id` (`estatus_monitoreo_id`),
  KEY `empresas_custodia_id` (`empresas_custodia_id`),
  KEY `custodios_id` (`custodios_id`),
  KEY `custodios2_id` (`custodios2_id`),
  KEY `remision` (`remision`),
  KEY `fecha_hora` (`fecha_hora`),
  KEY `orden_servicio` (`orden_servicio`),
  KEY `estatus` (`estatus`),
  KEY `moneda` (`moneda`),
  KEY `clientes_ejecutivos_id` (`clientes_ejecutivos_id`),
  KEY `empleados_id` (`empleados_id`) USING BTREE,
  KEY `sucursales_id` (`sucursales_id`),
  KEY `compras_administrativos_id` (`compras_administrativos_id`) USING BTREE,
  KEY `tipo_estacion_id` (`tipo_estacion_id`),
  KEY `clave_viaentradasalida_id` (`clave_viaentradasalida_id`),
  KEY `propietarios_id` (`propietarios_id`),
  KEY `propietarios_arrendatario_id` (`propietarios_arrendatario_id`),
  KEY `propietarios_notificar_id` (`propietarios_notificar_id`),
  KEY `clave_configautotransporte_id` (`clave_configautotransporte_id`),
  KEY `razones_sociales_id` (`razones_sociales_id`),
  CONSTRAINT `remisiones_ibfk_1` FOREIGN KEY (`facturas_id`) REFERENCES `facturas` (`id`),
  CONSTRAINT `remisiones_ibfk_10` FOREIGN KEY (`empleados_id`) REFERENCES `empleados` (`id`),
  CONSTRAINT `remisiones_ibfk_11` FOREIGN KEY (`unidades_id`) REFERENCES `unidades` (`id`),
  CONSTRAINT `remisiones_ibfk_12` FOREIGN KEY (`remolquea_id`) REFERENCES `unidades` (`id`),
  CONSTRAINT `remisiones_ibfk_13` FOREIGN KEY (`dolly_id`) REFERENCES `unidades` (`id`),
  CONSTRAINT `remisiones_ibfk_14` FOREIGN KEY (`remolqueb_id`) REFERENCES `unidades` (`id`),
  CONSTRAINT `remisiones_ibfk_15` FOREIGN KEY (`clientes_ejecutivos_id`) REFERENCES `clientes_ejecutivos` (`id`),
  CONSTRAINT `remisiones_ibfk_16` FOREIGN KEY (`compras_administrativos_id`) REFERENCES `compras_administrativos` (`id`),
  CONSTRAINT `remisiones_ibfk_17` FOREIGN KEY (`clave_viaentradasalida_id`) REFERENCES `clave_viaentradasalida` (`id`),
  CONSTRAINT `remisiones_ibfk_18` FOREIGN KEY (`tipo_estacion_id`) REFERENCES `tipo_estacion` (`id`),
  CONSTRAINT `remisiones_ibfk_19` FOREIGN KEY (`propietarios_id`) REFERENCES `propietarios` (`id`),
  CONSTRAINT `remisiones_ibfk_2` FOREIGN KEY (`solicitudes_servicio_id`) REFERENCES `solicitudes_servicio` (`id`),
  CONSTRAINT `remisiones_ibfk_20` FOREIGN KEY (`propietarios_arrendatario_id`) REFERENCES `propietarios` (`id`),
  CONSTRAINT `remisiones_ibfk_21` FOREIGN KEY (`propietarios_notificar_id`) REFERENCES `propietarios` (`id`),
  CONSTRAINT `remisiones_ibfk_22` FOREIGN KEY (`lq_prestamos_operadores_id`) REFERENCES `prestamos_operadores` (`id`),
  CONSTRAINT `remisiones_ibfk_23` FOREIGN KEY (`clave_configautotransporte_id`) REFERENCES `clave_configautotransporte` (`id`),
  CONSTRAINT `remisiones_ibfk_24` FOREIGN KEY (`razones_sociales_id`) REFERENCES `razones_sociales` (`id`),
  CONSTRAINT `remisiones_ibfk_3` FOREIGN KEY (`sucursales_id`) REFERENCES `sucursales` (`id`),
  CONSTRAINT `remisiones_ibfk_4` FOREIGN KEY (`estatus_monitoreo_id`) REFERENCES `estatus_monitoreo` (`id`),
  CONSTRAINT `remisiones_ibfk_5` FOREIGN KEY (`causas_cancelacion_id`) REFERENCES `causas_cancelacion` (`id`),
  CONSTRAINT `remisiones_ibfk_6` FOREIGN KEY (`clientes_id`) REFERENCES `clientes` (`id`),
  CONSTRAINT `remisiones_ibfk_7` FOREIGN KEY (`rutas_id`) REFERENCES `rutas` (`id`),
  CONSTRAINT `remisiones_ibfk_8` FOREIGN KEY (`remitente_id`) REFERENCES `direcciones` (`id`),
  CONSTRAINT `remisiones_ibfk_9` FOREIGN KEY (`destinatario_id`) REFERENCES `direcciones` (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=11 DEFAULT CHARSET=latin1;

--
-- Dumping data for table `remisiones`
--

INSERT INTO `remisiones` VALUES (1,'REM1','2025-10-29 23:43:37',NULL,'Pesos',1.00,NULL,'2025-10-29','1','Normal',8,1,'Transito',NULL,NULL,1,1,2,1,1,1,6,2,NULL,NULL,'','','','','','',NULL,NULL,1,'','No','Entrada',1,NULL,NULL,NULL,NULL,'2025-10-30 17:20:39','2025-11-02 14:20:39',1,'',15000.00,NULL,2400.00,'',600.00,'','Elegir',16800.00,0.00,0.00,64.00,30.48,0.00,2.10,0.00,'2025-10-29 23:43:37',NULL,'Capturada',15000.00,0.00,0.00,NULL,0.00,0.00,1000.00,1250.00,1250.00,64.00,0.00,0.00,0.00,1250.00,0.00,1.00,1000.00,NULL,64.00,999.00,935.00,2.10,24.98,-22.88,-27.91,-1172.37,NULL,1680.00,2250.00,6654.00,1200.00,1000.00,750.00,0.00,250.00,15000.00,11684.00,100.00,3316.00,1000.00,NULL,250.00,1100.00,1150.00,'',NULL,'','',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'REM',1,NULL,NULL,NULL,NULL,'','No',NULL,'01','01','No'),(2,'REM2','2025-11-04 19:52:36',16,'Pesos',1.00,NULL,'2025-11-04','3','Normal',8,2,'Inicio',NULL,NULL,2,4,3,4,1,3,21,5,NULL,NULL,'','','','','','',NULL,NULL,2,'','No','Entrada',1,NULL,NULL,NULL,NULL,'2025-11-04 13:40:07','2025-11-06 13:40:07',1,'',10000.00,NULL,0.00,'',0.00,'','Elegir',10000.00,0.00,0.00,280.00,133.33,0.00,2.10,0.00,'2025-11-04 19:52:36',NULL,'Capturada',NULL,NULL,NULL,NULL,NULL,NULL,0.00,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,280.00,NULL,NULL,2.10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,6654.00,NULL,250.00,NULL,NULL,NULL,NULL,NULL,0.00,NULL,NULL,NULL,NULL,NULL,NULL,'',NULL,'','',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'REM',2,NULL,NULL,NULL,NULL,'CCCe34f4-1553-438a-a9ad-815a8963c28f','No',NULL,'01','01','No'),(3,'CP1','2025-11-04 23:20:28',4,'Pesos',1.00,NULL,'2025-11-11','2','Normal',9,1,'Inicio',NULL,NULL,3,5,4,3,2,7,31,8,NULL,NULL,'','','','','','',NULL,NULL,4,'','No','Entrada',1,NULL,NULL,NULL,NULL,'2025-12-02 12:25:42','2025-12-02 12:25:42',1,'',25000.00,NULL,2400.00,'',0.00,'','Elegir',27400.00,6654.00,3000.00,450.00,225.00,0.00,2.00,9654.00,'2025-11-04 23:20:28',NULL,'Capturada',25000.00,0.00,0.00,NULL,0.00,0.00,0.00,0.00,0.00,450.00,0.00,0.00,0.00,0.00,0.00,1.00,451.00,0.00,450.00,450.00,0.00,2.00,4.50,-2.50,-125.00,-3125.00,NULL,2500.00,0.00,6654.00,2100.00,2000.00,1370.00,0.00,630.00,25000.00,12254.00,0.00,12746.00,1000.00,NULL,630.00,1000.00,-1000.00,'',NULL,'','-1comprobante con folio: CP1 ya se encuentra registrado',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'CP',1,NULL,NULL,NULL,NULL,'CCC90825-ec52-4704-aa38-369fcae52dd9','No',NULL,'01','01','No'),(4,'REM3','2025-12-02 19:17:56',3,'Pesos',1.00,NULL,'2025-12-02','123546','Traslado',8,1,'Transito',NULL,NULL,5,5,2,2,2,7,4,2,NULL,NULL,'','','','','','',NULL,NULL,NULL,'','No','Entrada',NULL,NULL,NULL,NULL,NULL,'2025-12-02 13:15:34','2025-12-03 13:15:34',0,'',1015.00,NULL,162.40,'',0.00,'','Elegir',1177.40,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'2025-12-02 19:17:56',NULL,'Capturada',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'','2025-12-02 17:51:36','BA28E5DE-442D-4619-9931-7EB67DD4F1A4','101Error -1 al timbrar: \'El campo DomicilioFiscalReceptor del receptor, debe pertenecer al nombre asociado al RFC registrado en el campo Rfc del Receptor.\'',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,_binary '[encoded data, 8964 characters]','00001000000708235127','30001000000500003456','M8khhke/XrPB78zp8Yn/JpFeWbNlbLPhc2d9wfUkLaEVWM0dC+hz5/QsxNQ/8wUTMSg70UaswZAs7PJk/gvWVnsStW9IQPQpXjPeHNBJsVOG/1fMWJHfhOEWbApJW1GSTkGL9XZEAjT0k/agLiW9RUyoQPrlTah/kJjp81H99ZP0xcPZaqVV4OLH51A3gUa0dazvDzcsUP6krUG+KAX50ulqscODpCusua0rzoABvYykMWr4G9xUSxhUu0n4b7KxHu/vBkGyoLydNNvjZ4e7PW8a+9knR60N31Hl8J43ckDsTldB3GC1tn9LMB/pwgPR7Ip3jeRp93JQ88vRHqdq3g==','iaK268zJTUZSdlcWWrAR7lK38cbwYqrBeg3EZ08BeA/VprCy+ehVTmYUz70t/wBVoAgqpDwF0J3H0wP1ILO2A1bQC2MwSeG/q1l223egnNiBvWNxIwC066uM1D1th7jPqystz8vBkqLodNeLbGNaISDGJU5c1qs7Ju0oX5Bif7DI8EctFph7zV7helQ+2oAFsXuVZgWKZ3cJGwv1y2g3AD8qxrNyTi6aQrttO9b/7YrrJJZTWUX0jyny3/Z0p7haBuLCKLe7LwjhclzO5wdWuS2bQ5hfS/8VZQ16ZFZ+quwPrb/bP1EFJiIRX8M7ZNt1OrIvq+h51qYhUEyt3X6mDA==','||1.0|BA28E5DE-442D-4619-9931-7EB67DD4F1A4|2025-12-02T17:51:36|iaK268zJTUZSdlcWWrAR7lK38cbwYqrBeg3EZ08BeA/VprCy+ehVTmYUz70t/wBVoAgqpDwF0J3H0wP1ILO2A1bQC2MwSeG/q1l223egnNiBvWNxIwC066uM1D1th7jPqystz8vBkqLodNeLbGNaISDGJU5c1qs7Ju0oX5Bif7DI8EctFph7zV7helQ+2oAFsXuVZgWKZ3cJGwv1y2g3AD8qxrNyTi6aQrttO9b/7YrrJJZTWUX0jyny3/Z0p7haBuLCKLe7LwjhclzO5wdWuS2bQ5hfS/8VZQ16ZFZ+quwPrb/bP1EFJiIRX8M7ZNt1OrIvq+h51qYhUEyt3X6mDA==|30001000000500003456||','Servicio',_binary '[encoded data, 448509 characters]