(991,'mod/app_ventas/index.php','2025-01-31 11:37:00','rafael',225,10350,'<?php\n\nfunction calcularTotalVenta($id, $returnArr = \"\") {\n    $venta = PCO_EjecutarSQL(\"\n        SELECT SUM(precio * cantidad) as total, SUM(precio * iva/100) iva\n        FROM app_ventas_detalle\n        WHERE id_venta = \'$id\' GROUP BY id_venta\n    \")->fetch();\n    $ventaMecanico = PCO_EjecutarSQL(\"\n        SELECT TRUNCATE(SUM(vd.precio * vd.cantidad * p.porcentaje_mecanico/100), 2)\n        FROM app_ventas_detalle vd, app_ventas v, app_productos p\n        WHERE vd.id_venta=v.id AND vd.id_producto=p.id AND  vd.id_venta = \'$id\' AND v.id_mecanico <> 0 GROUP BY vd.id_venta\n    \")->fetchColumn();\n    $total = $venta[\"total\"] ? $venta[\"total\"] : 0;\n    $iva = $venta[\"iva\"] ? $venta[\"iva\"] : 0;\n    PCO_EjecutarSQLUnaria(\"UPDATE app_ventas SET total = $total, iva = $iva, total_mecanico=\'$ventaMecanico\' WHERE id = $id \");\n    if($returnArr)\n        return $venta;\n    return \'\"total\": \' . $total . \', \"iva\": \' . $iva;\n}\n\nif($PCO_Accion == \"VENTA_ingresarRealizarVenta\") {\n    $ventaAbierta = PCO_EjecutarSQL(\"\n        SELECT id, id_cliente, total, iva, placa\n        FROM app_ventas\n        WHERE id=\'$PCO_Valor\'\n    \")->fetch();\n\n    $id_venta = $ventaAbierta[\"id\"] || \"\";\n    if($id_venta) {\n        $total = number_format($ventaAbierta[\"total\"], 2);\n        $iva = number_format($ventaAbierta[\"iva\"], 2);\n        $id_cliente = $ventaAbierta[\"id_cliente\"];\n    }\n\n    PCO_CargarFormulario(8, 1, \"id\", $id_venta);\n}\n\nif($PCO_Accion == \"VENTA_agregarProductoCrearOC\") {\n        //crear cliente en caso de que no llegue id_cliente\n        if(!$id_cliente) {\n            PCO_EjecutarSQLUnaria(\"INSERT INTO app_clientes (nombre_completo, numero_documento, telefono) VALUES (?,?,?) \",\n                \"$nombre_completo$_SeparadorCampos_$numero_documento$_SeparadorCampos_$telefono\"\n            );\n            // $id_cliente = PCO_ObtenerUltimoIDInsertado();\n            $id_cliente = PCO_EjecutarSQL(\"\n                SELECT id\n                FROM app_clientes\n                WHERE numero_documento=\'$numero_documento\' AND telefono=\'$telefono\' AND \'$nombre_completo\'\n            \")->fetchColumn();\n        }\n        $todayMysql = date(\"Y-m-d H:i:s\");\n        PCO_EjecutarSQLUnaria(\"INSERT INTO app_ventas (id_cliente, usuario, fecha, placa, id_mecanico, tipo_venta) VALUES (?,?,?,?,?,?) \", \"$id_cliente$_SeparadorCampos_$PCOSESS_LoginUsuario$_SeparadorCampos_$todayMysql$_SeparadorCampos_$placa$_SeparadorCampos_$id_mecanico$_SeparadorCampos_$tipo_venta\");\n        $id = PCO_EjecutarSQL(\"\n            SELECT id\n            FROM app_ventas\n            WHERE fecha=\'$todayMysql\' AND usuario=\'$PCOSESS_LoginUsuario\' AND id_cliente = \'$id_cliente\'\n        \")->fetchColumn();\n        // $id = PCO_ObtenerUltimoIDInsertado();\n\n    $producto = PCO_EjecutarSQL(\"\n        SELECT id, precio_venta, iva, inventario\n        FROM app_productos\n        WHERE id = \'$id_producto\'\n    \")->fetch();\n    if($producto[\"id\"]) {\n        $existe = PCO_EjecutarSQL(\"\n            SELECT count(id)\n            FROM app_ventas_detalle\n            WHERE id_venta = $id AND id_producto = \'$id_producto\'\n        \")->fetchColumn();\n        if($existe > 0) {\n            print_r(\'{\"success\": false, \"msg\": \"El producto ya se ha ingresado\"}\');\n            die();\n        }\n        /* if($producto[\"inventario\"] < $cantidad) {\n            print_r(\'{\"success\": false, \"msg\": \"La cantidad digitada supera la del invetario\"}\');\n            die();\n        } */\n        // $inventarioNew = $producto[\"inventario\"] - $cantidad;\n        // PCO_EjecutarSQLUnaria(\"UPDATE app_productos SET inventario = $inventarioNew WHERE id = \" . $producto[\"id\"]);\n        PCO_EjecutarSQLUnaria(\"INSERT INTO app_ventas_detalle (id_venta, id_producto, cantidad, precio, iva, hora_inicio, hora_fin, guaje) VALUES (?,?,?,?,?,?,?,?) \", \n            \"$id$_SeparadorCampos_$id_producto$_SeparadorCampos_$cantidad$_SeparadorCampos_$precio$_SeparadorCampos_\" . $producto[\"iva\"].\"$_SeparadorCampos_$hora_inicio$_SeparadorCampos_$hora_fin$_SeparadorCampos_$guaje\");\n        calcularTotalVenta($id);\n        \n        /* $total = number_format($result[\"total\"], 2);\n        $iva = number_format($result[\"iva\"], 2); */\n\n        echo \'<script type=\"text/javascript\">\n        	document.FRMBASEINFORME.PCO_Accion.value=\"PCO_CargarObjeto\";\n        	document.FRMBASEINFORME.PCO_Objeto.value=\"frm:8:1:id:\'.$id.\'\";\n        	document.FRMBASEINFORME.Precarga_EstilosBS.value=\"1\";\n        	document.FRMBASEINFORME.Presentar_FullScreen.value=\"0\";\n        	document.FRMBASEINFORME.target=\"_self\";\n        	document.FRMBASEINFORME.submit();\n    	 </script>\';\n    }\n}\n\nif($PCO_Accion == \"VENTA_agregarProducto\") {\n    $producto = PCO_EjecutarSQL(\"\n        SELECT id, precio_venta, iva\n        FROM app_productos\n        WHERE id = \'$id_producto\'\n    \")->fetch();\n    if($producto[\"id\"]) {\n        $existe = PCO_EjecutarSQL(\"\n            SELECT count(id)\n            FROM app_ventas_detalle\n            WHERE id_venta = $id AND id_producto = \'$id_producto\'\n        \")->fetchColumn();\n        if($existe > 0) {\n            print_r(\'{\"success\": false, \"msg\": \"El producto ya se ha ingresado\"}\');\n            die();\n        }\n        /* if($producto[\"inventario\"] < $cantidad) {\n            print_r(\'{\"success\": false, \"msg\": \"La cantidad digitada supera la del invetario\"}\');\n            die();\n        } */\n        // $inventarioNew = $producto[\"inventario\"] - $cantidad;\n        // PCO_EjecutarSQLUnaria(\"UPDATE app_productos SET inventario = $inventarioNew WHERE id = \" . $producto[\"id\"]);\n        PCO_EjecutarSQLUnaria(\"INSERT INTO app_ventas_detalle (id_venta, id_producto, cantidad, precio, iva, hora_inicio, hora_fin, guaje) VALUES (?,?,?,?,?,?,?,?) \", \n            \"$id$_SeparadorCampos_$id_producto$_SeparadorCampos_$cantidad$_SeparadorCampos_$precioVenta$_SeparadorCampos_\" . $producto[\"iva\"].\"$_SeparadorCampos$hora_inicio$_SeparadorCampos$hora_fin$_SeparadorCampos$guaje\");\n        $result = calcularTotalVenta($id);\n        print_r(\'{\"success\": true, \"id\": \' . $id . \', \' . $result . \'}\');\n        die();\n    }\n    print_r(\'{\"success\": false, \"msg\": \"No se ha encontrado el producto seleccionado\"}\');\n    die();\n}\n\nif($PCO_Accion == \"VENTA_consultarTotalVenta\") {\n    if($id) {\n        $result = calcularTotalVenta($id);\n        print_r(\'{\"success\": true, \"id\": \' . $id . \', \' . $result . \'}\');\n        die();\n    }\n    print_r(\'{\"success\": false, \"msg\": \"No se encontro la venta\"}\');\n    die();\n}\n\nif($PCO_Accion == \"VENTA_eliminarProducto\") {\n\n    if($id_venta_detalle && $id_venta) {\n        $producto = PCO_EjecutarSQL(\"\n            SELECT p.inventario, vd.cantidad, p.id\n            FROM app_ventas_detalle vd, app_productos p\n            WHERE vd.id_producto = p.id AND vd.id = \'$id_venta_detalle\'\n        \")->fetch();\n        //Restablecemos el inventario\n        $inventarioNew = $producto[\"inventario\"] + $producto[\"cantidad\"];\n        PCO_EjecutarSQLUnaria(\"UPDATE app_productos SET inventario = $inventarioNew WHERE id = \" . $producto[\"id\"]);\n        PCO_EjecutarSQLUnaria(\"DELETE FROM app_ventas_detalle WHERE id_venta = $id_venta AND id = $id_venta_detalle\");\n        $result = calcularTotalVenta($id_venta);\n        print_r(\'{\"success\": true, \"msg\": \"Se ha eliminado el producto exitosamente\", \' . $result . \'}\');\n        die();\n    }\n    print_r(\'{\"success\": false, \"msg\": \"No se pudo eliminar el producto\"}\');\n    die();\n}\n\nif($PCO_Accion == \"VENTA_actualizarProductoVenta\") {\n    if($id) {\n        PCO_EjecutarSQLUnaria(\"UPDATE app_ventas_detalle SET cantidad=\'$cantidad\', precio=\'$precio\' WHERE id = \'$id\'\");\n        echo 1;\n        die();\n    }\n    echo 0;\n    die();\n}\n\nif($PCO_Accion == \"VENTA_imprimirFactura\") {\n    if($PCO_Valor)\n        $id = $PCO_Valor;\n    if($id) {\n        include_once \"imprimirFactura.php\";\n    }\n}\n\nif($PCO_Accion == \"VENTA_generarLiquidacionMecanicos\") {\n    $ventas = PCO_EjecutarSQL(\"\n        SELECT v.id, v.id_mecanico, SUM(v.total_mecanico) as Total, m.seguridad_social\n        FROM app_mecanicos m,app_ventas v\n        WHERE m.id = v.id_mecanico AND v.fecha >= \'$fecha_inicio 00:00:00\' AND v.fecha <= \'$fecha_fin 23:59:59\' AND v.estado = 1 AND id_mecanico <> 0 AND id_liquidacion=0\n        GROUP BY v.id_mecanico\n    \")->fetchAll();\n    foreach ($ventas as $venta) {\n        $valor_novedad = PCO_EjecutarSQL(\"\n            SELECT  \n                SUM(case when tipo_novedad=\'Abonar\' then valor_novedad else 0 end) as abonar,\n                SUM(case when tipo_novedad=\'Debitar\' then valor_novedad else 0 end) as debitar\n            FROM app_novedades_mecanicos\n            WHERE fecha >= \'$fecha_inicio\' AND fecha <= \'$fecha_fin\'\n                AND id_mecanico=\'\".$venta[\'id_mecanico\'].\"\' AND id_liquidacion=0\n            GROUP BY id_mecanico\n        \")->fetch();\n\n        PCO_EjecutarSQLUnaria(\"INSERT INTO app_liquidacion_mecanicos_enc (id_mecanico, fecha_inicio, fecha_fin, fecha, valor_venta, valor_novedad_abonar, valor_novedad_debitar, seguridad_social, usuario) VALUES (?,?,?,?,?,?,?,?,?) \",\n            $venta[\"id_mecanico\"].\"$_SeparadorCampos_$fecha_inicio$_SeparadorCampos_$fecha_fin$_SeparadorCampos_$PCO_FechaOperacionGuiones$_SeparadorCampos_\".$venta[\"Total\"].\"$_SeparadorCampos_\".$valor_novedad[\'abonar\'].\"$_SeparadorCampos_\".$valor_novedad[\'debitar\'].\"$_SeparadorCampos_\".$venta[\"seguridad_social\"].\"$_SeparadorCampos_$PCOSESS_LoginUsuario\"\n        );\n        \n        PCO_EjecutarSQLUnaria(\"\n        UPDATE app_novedades_mecanicos \n        SET id_liquidacion=1\n        WHERE \n            fecha >= \'$fecha_inicio\' AND fecha <= \'$fecha_fin\' AND id_mecanico=\'\".$venta[\'id_mecanico\'].\"\' AND id_liquidacion=0\n        \");\n    }\n        // arq de estados\n        //actualiozar estados\n    PCO_EjecutarSQLUnaria(\"\n        UPDATE app_ventas \n        SET id_liquidacion=1\n        WHERE app_mecanicos.id = app_ventas.id_mecanico AND app_ventas.fecha >= \'$fecha_inicio 00:00:00\' AND app_ventas.fecha <= \'$fecha_fin 23:59:59\' AND app_ventas.estado = 1 AND id_mecanico <> 0 AND id_liquidacion=0\");\n    PCO_CargarFormulario(14);\n}\n\nif($PCO_Accion == \"VENTAS_verLiquidacion\") {\n    $liq = PCO_EjecutarSQL(\"\n        SELECT l.*, m.nombre_completo, m.cedula, m.telefono, m.direccion, m.correo \n        FROM app_liquidacion_mecanicos_enc l,app_mecanicos m \n        WHERE l.id_mecanico = m.id AND id=\'$PCO_Valor\'\n    \")->fetch();\n    include \'liquidacion_mecanicos.php\';\n}','A'),(992,'mod/app_ventas/liquidacion_mecanicos.php','2025-01-31 11:42:00','rafael',487,12863,'<?php\n\n @session_start();\n\nif(!isset($_SESSION[\'PCOSESS_SesionAbierta\'])) {\n	echo \'<head><title>Error</title><style type=\"text/css\"> body { background-color: #000000; color: #7f7f7f; font-family: sans-serif,helvetica; } </style></head><body><table width=\"100%\" height=\"100%\" border=0><tr><td align=center>&#9827; Acceso no autorizado !</td></tr></table></body>\';\n	die();\n}\n/*include_once \'../../core/configuracion.php\';\ninclude_once \'../../core/conexiones.php\';\ninclude_once \'../../inc/practico/def_basedatos.php\';\ninclude_once \'../../core/comunes.php\';*/\n\n$saldoFavor = $factura[\"saldo_pendiente\"] < 0 ? -$factura[\"saldo_pendiente\"] : 0;\n$nombreFactura = $factura[\"id_contrato\"] . \'-\' .$factura[\"nombres\"] . \' \' . $factura[\"apellidos\"];\n$saldoPendienteValor = $factura[\"saldo_pendiente\"] > 0 ? $factura[\"saldo_pendiente\"] : 0;\n$saldoPendiente = number_format($saldoPendienteValor, 0, \',\', \'.\');\n$totalValor =  number_format($factura[\"valor_sin_recargo\"] + $saldoPendienteValor - $saldoFavor, 0, \',\', \'.\');\n$total = $totalValor > 0 ? $totalValor : 0;\n\n$fechaSinRecargoBr = str_replace(\"-\", \"\", $factura[\"fecha_sin_recargo\"]);\n$totalValor =  number_format($factura[\"valor_sin_recargo\"] + $saldoPendienteValor - $saldoFavor, 0, \',\', \'.\');\n$total = $totalValor > 0 ? $totalValor : 0;\n$totalBr = str_replace(\".\", \"\", $total);\n// $codigobarra = $factura[\"codigo_gs1\"]; // \"7709998678439\";\n// $BarcodeParent = \"(415)$codigobarra(8020)\" . $factura[\"id\"] . \"(3900)$totalBr(96)$fechaSinRecargoBr\";\n\n$descargar = 0;\n/* if ($PCO_Accion == \"FACTURAS_descargarFactura\")\n    $descargar = 1; */\n\n$html = \'\n<html>\n\n<head>\n   <meta charset=\"utf-8\">\n   <title>Factura</title>\n   <style>\n      * {\n         border: 0;\n         box-sizing: content-box;\n         color: inherit;\n         font-family: Verdana;\n         font-size: inherit;\n         font-style: inherit;\n         font-weight: inherit;\n         line-height: inherit;\n         list-style: none;\n         margin: 0;\n         padding: 0;\n         text-decoration: none;\n         vertical-align: top;\n      }\n\n      /* heading */\n\n      h1 {\n         font: bold 100% sans-serif;\n         letter-spacing: 0.5em;\n         text-align: center;\n         text-transform: uppercase;\n      }\n\n      /* table */\n\n      table {\n         font-size: 75%;\n         table-layout: fixed;\n         width: 100%;\n      }\n\n      table {\n         border-collapse: separate;\n         border-spacing: 3px;\n      }\n\n      th,\n      td {\n         border-width: 1px;\n         padding: 0.5em;\n         position: relative;\n         text-align: center;\n      }\n\n      th,\n      td {\n         border-radius: 0.25em;\n         border-style: solid;\n      }\n\n      th {\n         background: #1f60a0;\n         color: #fff;\n         border-color: #BBB;\n      }\n\n      td {\n         border-color: #DDD;\n      }\n\n      /* page */\n\n      html {\n         font: 16px/1 \"Open Sans\", sans-serif;\n         overflow: auto;\n         padding: 0.5in;\n      }\n\n      html {\n         background: #999;\n         cursor: default;\n      }\n\n      body {\n         box-sizing: border-box;\n         height: 11in;\n         margin: 0 auto;\n         overflow: hidden;\n         padding: 0.5in;\n         width: 8.5in;\n      }\n\n      body {\n         background: #FFF;\n         border-radius: 1px;\n         box-shadow: 0 0 1in -0.25in rgba(0, 0, 0, 0.5);\n      }\n\n      /* header */\n\n      header {\n         margin: 0 0 3em;\n      }\n\n      header:after {\n         clear: both;\n         content: \"\";\n         display: table;\n      }\n\n      header h1 {\n         background: #000;\n         border-radius: 0.25em;\n         color: #FFF;\n         margin: 0 0 1em;\n         padding: 0.5em 0;\n      }\n\n      header address {\n         float: left;\n         font-size: 75%;\n         font-style: normal;\n         line-height: 1.25;\n         margin: 0 1em 1em 0;\n      }\n\n      header address p {\n         margin: 0 0 0.25em;\n      }\n\n      header span,\n      header img {\n         display: block;\n         float: right;\n      }\n\n      header span {\n         margin: 0 0 1em 1em;\n         max-height: 25%;\n         max-width: 60%;\n         position: relative;\n      }\n\n      header img {\n         max-height: 100%;\n         max-width: 100%;\n      }\n\n      header input {\n         cursor: pointer;\n         -ms-filter: \"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)\";\n         height: 100%;\n         left: 0;\n         opacity: 0;\n         position: absolute;\n         top: 0;\n         width: 100%;\n      }\n\n      /* article */\n\n      article,\n      article address,\n      table.meta,\n      table.inventory {\n         margin: 0 0 1.3em;\n      }\n\n      article:after {\n         clear: both;\n         content: \"\";\n         display: table;\n      }\n\n      article h1 {\n         clip: rect(0 0 0 0);\n         position: absolute;\n      }\n\n      article address {\n         float: left;\n         font-size: 125%;\n      }\n\n      /* table meta & balance */\n\n      table.meta,\n      table.balance {\n         float: right;\n         width: 36%;\n      }\n\n      table.meta:after,\n      table.balance:after {\n         clear: both;\n         content: \"\";\n         display: table;\n      }\n\n      /* table meta */\n\n      table.meta th {\n         width: 40%;\n      }\n\n      table.meta td {\n         width: 60%;\n      }\n\n      /* table items */\n\n      table.inventory {\n         clear: both;\n         width: 100%;\n      }\n\n      table.inventory th {\n         font-weight: bold;\n         text-align: center;\n      }\n\n      table.inventory td:nth-child(1) {\n         width: 26%;\n      }\n\n      table.inventory td:nth-child(2) {\n         width: 38%;\n      }\n\n      table.inventory td:nth-child(3) {\n         text-align: center;\n         width: 12%;\n      }\n\n      table.inventory td:nth-child(4) {\n         text-align: center;\n         width: 12%;\n      }\n\n      table.inventory td:nth-child(5) {\n         text-align: center;\n         width: 12%;\n      }\n\n      /* table balance */\n\n      table.balance th {\n         width: 40%;\n         text-align: center;\n      }\n\n      table.balance td {\n         width: 60%;\n         text-align: center;\n      }\n\n      /* aside */\n\n      aside h1 {\n         border: none;\n         border-width: 0 0 1px;\n         margin: 0 0 1em;\n      }\n\n      aside h1 {\n         border-color: #999;\n         border-bottom-style: solid;\n      }\n\n      /* javascript */\n\n      @media print {\n         * {\n            -webkit-print-color-adjust: exact;\n         }\n\n         html {\n            background: none;\n            padding: 0;\n         }\n\n         body {\n            box-shadow: none;\n            margin: 0;\n         }\n\n         span:empty {\n            display: none;\n         }\n      }\n\n      @page {\n         margin: 0;\n      }\n   </style>\n    <link rel=\"stylesheet\" href=\"inc/pdfLib/all.min.css\">\n    <script type=\"text/javascript\" src=\"inc/pdfLib/html2pdf.bundle.min.js\"></script>\n    <script type=\"text/javascript\" src=\"inc/bwip/bwip-js-min.js\"></script>\n    \n            <!--<link rel=\"stylesheet\" href=\"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.1/css/all.min.css\">-->\n            <!--<script src=\"https://cdnjs.cloudflare.com/ajax/libs/html2pdf.js/0.10.1/html2pdf.bundle.min.js\"\n              integrity=\"sha512-GsLlZN/3F2ErC5ifS5QtgpiJtWd43JWSuIgh7mbzZ8zBps+dvLusV+eNQATqgA/HdeKFVgA5v3S/cIrLF7QnIg==\"\n              crossorigin=\"anonymous\" referrerpolicy=\"no-referrer\"></script>-->\n</head>\n<body id=\"Invoices\">\n\n   <article>\n      <BR>\n      <BR>\n      <BR>\n      <address>\n         <!--<p style=\"color:#14406b; font-size: 18px; font-weight: bold;\">AUTONORTE</p>\n         <p style=\"font-size: 12px;\">NIT: 811018300-6</p>\n         <p style=\"font-size: 12px;\">CLL 21 # 8-78 San Jerónimo, Ant</p> -->\n         <BR>\n         <p style=\"font-size: 14px;\">\n            <span style=\"font-weight: bold;\">Nombre: </span>\' . $liq[\"nombre_completo\"] . \' <br>\n            <span style=\"font-weight: bold;\">Dirección: </span>\' . $liq[\"direccion\"] . \' <br>\n         </p>\n      </address>\n\n      <table class=\"meta\">\n         <tr>\n            <th style=\"width: 120px !important;\"><span>Abonar</span></th>\n            <td><span>\' . $liq[\"id\"] . \'</span></td>\n         </tr>\n         <tr>\n            <th><span>Fecha sin recargo</span></th>\n            <td><span>\' . $factura[\"fecha_sin_recargo\"] . \'</span></td>\n         </tr>\n         <tr>\n            <th><span>Fecha con recargo</span></th>\n            <td><span>\' . $factura[\"fecha_con_recargo\"] . \'</span></td>\n         </tr>\n      </table>\n      <table class=\"inventory\">\n         <thead>\n            <tr>\n               <th><span>Descripción</span></th>\n               <th><span>Cantidad</span></th>\n               <th style=\"background-color: #14406b;\"><span>Precio</span></th>\n            </tr>\n         </thead>\n         <tbody>\n            <tr>\n               <td><span>Consumo de agua m3</span></td>\n               <td><span>1</span></td>\n               <td style=\"text-align: center !important;\"><span data-prefix>$</span><span>\' . number_format($factura[\"valor_sin_recargo\"], 0, \',\', \'.\') . \'</span></td>\n            </tr>\n         </tbody>\n      </table>\n\n      <table class=\"balance\" style=\"font-size: 11px;\">\n         <tr>\n            <td><span>SUBTOTAL</span></td>\n            <th><span data-prefix>$</span><span>\' . number_format($factura[\"valor_sin_recargo\"], 0, \',\', \'.\') . \'</span></th>\n         </tr>\n         <tr>\n            <td><span>CUENTAS VENCIDAS</span></td>\n            <th><span data-prefix>$</span><span>\' . $saldoPendiente . \'</span></th>\n         </tr>\n         <tr>\n            <td><span>SALDO A FAVOR</span></td>\n            <th><span data-prefix>$</span><span>\' . number_format($saldoFavor, 0, \',\', \'.\') . \'</span></th>\n         </tr>\n         <tr>\n            <td><span>OTROS</span></td>\n            <th><span data-prefix>$</span><span>0</span></th>\n         </tr>\n         <tr style=\"color: #fff; font-size: 16px;\">\n            <td style=\"background-color: #1f60a0; font-weight: bold;\"><span>TOTAL</span></td>\n            <th style=\"background-color: #14406b;\"><span data-prefix>$</span><span>\' . $total . \'</span></th>\n         </tr>\n       \n            \n        </tr>\n         </tr>\n      </table>\n      </div>\n        \n         </br>\n         </br>\n         </br>\n        <table style=\"border-collapse: collapse; border:none; border-width: 0px; style=\"vertical-align: middle !important;\">\n            <tr style=\"float: middle; !important;\">\n                <td style=\"border-radius: 0 !important; border-style: none !important; vertical-align: middle !important; width:30%\">\n                    <img id=\"barcodeTarget\" width=\"500\" />\n                    <canvas id=\"mycanvas\"></canvas>\n                </td>\n            </tr>\n        </table>\n   </article>\n \n       <script>\n        const options = {\n            bcid:        \"gs1-128\",       // Barcode type\n            text:        \"\' . $BarcodeParent. \'\",    // Text to encode\n            scale:       2,               // 3x scaling factor\n            height:      8,              // Bar height, in millimeters\n            includetext: true,            // Show human-readable text\n            textxalign:  \"center\",        // Always good to set this\n        };\n\n        const hola3 = () => {\n            const canvas = document.createElement(\"canvas\");\n            try {\n                bwipjs.toCanvas(canvas, options);\n                document.getElementById(\"barcodeTarget\").src = canvas.toDataURL(\"image/png\");\n            } catch (e) { console.log({e}); }\n        };\n        //addEventListener(\"DOMContentLoaded\", () => {\n            hola3();\n        //});\n\n	</script>\n	\n\n	\n	\n      <script>\n      document.addEventListener(\"DOMContentLoaded\", function (event) {\n        //setTimeout(function(){ hola(); }, 1000);\n        var descargar = \' . $descargar . \';\n        if(descargar == 1) {\n             var element = document.getElementById(\"Invoices\");\n             \n             var opt = {\n                filename: \"\' . str_replace(\' \', \'\', $nombreFactura) . \'.pdf\",\n                image: { type: \"jpeg\", quality: 0.98 },\n                html2canvas: { scale: 2, useCORS: true, letterRendering: true },\n                jsPDF: { unit: \"mm\", format: \"letter\", orientation: \"portrait\" }\n             };\n    		 html2pdf(element, opt);\n    		 setTimeout(function(){ window.close(); }, 1650);\n        }\n        });\n        \n        function hola(){\n            var element = document.getElementById(\"Invoices\");\n             \n             var opt = {\n                filename: \"\' . $factura[\"contrato\"] . \'.pdf\",\n                image: { type: \"jpeg\", quality: 0.98 },\n                html2canvas: { scale: 2, useCORS: true, letterRendering: true },\n                jsPDF: { unit: \"mm\", format: \"letter\", orientation: \"portrait\" }\n             };\n    		 html2pdf(element, opt);\n        }\n   </script>\n</body>\n</html>\';\n\necho $html;\ndie();\n\n\n?>','A'),(993,'mod/app_ventas/liquidacion_mecanicos.php','2025-01-31 11:45:00','rafael',495,13177,'<?php\n\n @session_start();\n\nif(!isset($_SESSION[\'PCOSESS_SesionAbierta\'])) {\n	echo \'<head><title>Error</title><style type=\"text/css\"> body { background-color: #000000; color: #7f7f7f; font-family: sans-serif,helvetica; } </style></head><body><table width=\"100%\" height=\"100%\" border=0><tr><td align=center>&#9827; Acceso no autorizado !</td></tr></table></body>\';\n	die();\n}\n/*include_once \'../../core/configuracion.php\';\ninclude_once \'../../core/conexiones.php\';\ninclude_once \'../../inc/practico/def_basedatos.php\';\ninclude_once \'../../core/comunes.php\';*/\n\n$saldoFavor = $factura[\"saldo_pendiente\"] < 0 ? -$factura[\"saldo_pendiente\"] : 0;\n$nombreFactura = $factura[\"id_contrato\"] . \'-\' .$factura[\"nombres\"] . \' \' . $factura[\"apellidos\"];\n$saldoPendienteValor = $factura[\"saldo_pendiente\"] > 0 ? $factura[\"saldo_pendiente\"] : 0;\n$saldoPendiente = number_format($saldoPendienteValor, 0, \',\', \'.\');\n$totalValor =  number_format($factura[\"valor_sin_recargo\"] + $saldoPendienteValor - $saldoFavor, 0, \',\', \'.\');\n$total = $totalValor > 0 ? $totalValor : 0;\n\n$fechaSinRecargoBr = str_replace(\"-\", \"\", $factura[\"fecha_sin_recargo\"]);\n$totalValor =  number_format($factura[\"valor_sin_recargo\"] + $saldoPendienteValor - $saldoFavor, 0, \',\', \'.\');\n$total = $totalValor > 0 ? $totalValor : 0;\n$totalBr = str_replace(\".\", \"\", $total);\n// $codigobarra = $factura[\"codigo_gs1\"]; // \"7709998678439\";\n// $BarcodeParent = \"(415)$codigobarra(8020)\" . $factura[\"id\"] . \"(3900)$totalBr(96)$fechaSinRecargoBr\";\n\n$descargar = 0;\n/* if ($PCO_Accion == \"FACTURAS_descargarFactura\")\n    $descargar = 1; */\n\n$html = \'\n<html>\n\n<head>\n   <meta charset=\"utf-8\">\n   <title>Factura</title>\n   <style>\n      * {\n         border: 0;\n         box-sizing: content-box;\n         color: inherit;\n         font-family: Verdana;\n         font-size: inherit;\n         font-style: inherit;\n         font-weight: inherit;\n         line-height: inherit;\n         list-style: none;\n         margin: 0;\n         padding: 0;\n         text-decoration: none;\n         vertical-align: top;\n      }\n\n      /* heading */\n\n      h1 {\n         font: bold 100% sans-serif;\n         letter-spacing: 0.5em;\n         text-align: center;\n         text-transform: uppercase;\n      }\n\n      /* table */\n\n      table {\n         font-size: 75%;\n         table-layout: fixed;\n         width: 100%;\n      }\n\n      table {\n         border-collapse: separate;\n         border-spacing: 3px;\n      }\n\n      th,\n      td {\n         border-width: 1px;\n         padding: 0.5em;\n         position: relative;\n         text-align: center;\n      }\n\n      th,\n      td {\n         border-radius: 0.25em;\n         border-style: solid;\n      }\n\n      th {\n         background: #1f60a0;\n         color: #fff;\n         border-color: #BBB;\n      }\n\n      td {\n         border-color: #DDD;\n      }\n\n      /* page */\n\n      html {\n         font: 16px/1 \"Open Sans\", sans-serif;\n         overflow: auto;\n         padding: 0.5in;\n      }\n\n      html {\n         background: #999;\n         cursor: default;\n      }\n\n      body {\n         box-sizing: border-box;\n         height: 11in;\n         margin: 0 auto;\n         overflow: hidden;\n         padding: 0.5in;\n         width: 8.5in;\n      }\n\n      body {\n         background: #FFF;\n         border-radius: 1px;\n         box-shadow: 0 0 1in -0.25in rgba(0, 0, 0, 0.5);\n      }\n\n      /* header */\n\n      header {\n         margin: 0 0 3em;\n      }\n\n      header:after {\n         clear: both;\n         content: \"\";\n         display: table;\n      }\n\n      header h1 {\n         background: #000;\n         border-radius: 0.25em;\n         color: #FFF;\n         margin: 0 0 1em;\n         padding: 0.5em 0;\n      }\n\n      header address {\n         float: left;\n         font-size: 75%;\n         font-style: normal;\n         line-height: 1.25;\n         margin: 0 1em 1em 0;\n      }\n\n      header address p {\n         margin: 0 0 0.25em;\n      }\n\n      header span,\n      header img {\n         display: block;\n         float: right;\n      }\n\n      header span {\n         margin: 0 0 1em 1em;\n         max-height: 25%;\n         max-width: 60%;\n         position: relative;\n      }\n\n      header img {\n         max-height: 100%;\n         max-width: 100%;\n      }\n\n      header input {\n         cursor: pointer;\n         -ms-filter: \"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)\";\n         height: 100%;\n         left: 0;\n         opacity: 0;\n         position: absolute;\n         top: 0;\n         width: 100%;\n      }\n\n      /* article */\n\n      article,\n      article address,\n      table.meta,\n      table.inventory {\n         margin: 0 0 1.3em;\n      }\n\n      article:after {\n         clear: both;\n         content: \"\";\n         display: table;\n      }\n\n      article h1 {\n         clip: rect(0 0 0 0);\n         position: absolute;\n      }\n\n      article address {\n         float: left;\n         font-size: 125%;\n      }\n\n      /* table meta & balance */\n\n      table.meta,\n      table.balance {\n         float: right;\n         width: 36%;\n      }\n\n      table.meta:after,\n      table.balance:after {\n         clear: both;\n         content: \"\";\n         display: table;\n      }\n\n      /* table meta */\n\n      table.meta th {\n         width: 40%;\n      }\n\n      table.meta td {\n         width: 60%;\n      }\n\n      /* table items */\n\n      table.inventory {\n         clear: both;\n         width: 100%;\n      }\n\n      table.inventory th {\n         font-weight: bold;\n         text-align: center;\n      }\n\n      table.inventory td:nth-child(1) {\n         width: 26%;\n      }\n\n      table.inventory td:nth-child(2) {\n         width: 38%;\n      }\n\n      table.inventory td:nth-child(3) {\n         text-align: center;\n         width: 12%;\n      }\n\n      table.inventory td:nth-child(4) {\n         text-align: center;\n         width: 12%;\n      }\n\n      table.inventory td:nth-child(5) {\n         text-align: center;\n         width: 12%;\n      }\n\n      /* table balance */\n\n      table.balance th {\n         width: 40%;\n         text-align: center;\n      }\n\n      table.balance td {\n         width: 60%;\n         text-align: center;\n      }\n\n      /* aside */\n\n      aside h1 {\n         border: none;\n         border-width: 0 0 1px;\n         margin: 0 0 1em;\n      }\n\n      aside h1 {\n         border-color: #999;\n         border-bottom-style: solid;\n      }\n\n      /* javascript */\n\n      @media print {\n         * {\n            -webkit-print-color-adjust: exact;\n         }\n\n         html {\n            background: none;\n            padding: 0;\n         }\n\n         body {\n            box-shadow: none;\n            margin: 0;\n         }\n\n         span:empty {\n            display: none;\n         }\n      }\n\n      @page {\n         margin: 0;\n      }\n   </style>\n    <link rel=\"stylesheet\" href=\"inc/pdfLib/all.min.css\">\n    <script type=\"text/javascript\" src=\"inc/pdfLib/html2pdf.bundle.min.js\"></script>\n    <script type=\"text/javascript\" src=\"inc/bwip/bwip-js-min.js\"></script>\n    \n            <!--<link rel=\"stylesheet\" href=\"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.1/css/all.min.css\">-->\n            <!--<script src=\"https://cdnjs.cloudflare.com/ajax/libs/html2pdf.js/0.10.1/html2pdf.bundle.min.js\"\n              integrity=\"sha512-GsLlZN/3F2ErC5ifS5QtgpiJtWd43JWSuIgh7mbzZ8zBps+dvLusV+eNQATqgA/HdeKFVgA5v3S/cIrLF7QnIg==\"\n              crossorigin=\"anonymous\" referrerpolicy=\"no-referrer\"></script>-->\n</head>\n<body id=\"Invoices\">\n\n   <article>\n      <BR>\n      <BR>\n      <BR>\n      <address>\n         <!--<p style=\"color:#14406b; font-size: 18px; font-weight: bold;\">AUTONORTE</p>\n         <p style=\"font-size: 12px;\">NIT: 811018300-6</p>\n         <p style=\"font-size: 12px;\">CLL 21 # 8-78 San Jerónimo, Ant</p> -->\n         <BR>\n         <p style=\"font-size: 14px;\">\n            <span style=\"font-weight: bold;\">Nombre: </span>\' . $liq[\"nombre_completo\"] . \' <br>\n            <span style=\"font-weight: bold;\">Dirección: </span>\' . $liq[\"direccion\"] . \' <br>\n         </p>\n      </address>\n\n      <table class=\"meta\">\n         <tr>\n            <th><span>Nombre Empleado</span></th>\n            <td><span>\' . $liq[\"nombre_completo\"] . \'</span></td>\n         </tr>\n        <tr>\n            <th style=\"width: 120px !important;\"><span>Fecha</span></th>\n            <td><span>\' . $liq[\"fecha\"] . \'</span></td>\n         </tr>\n         <tr>\n            <th style=\"width: 120px !important;\"><span>Valor abono</span></th>\n            <td><span>\' . $liq[\"valor_novedad_abonar\"] . \'</span></td>\n         </tr>\n         <tr>\n            <th><span>Valor debito</span></th>\n            <td><span>\' . $liq[\"valor_novedad_debitar\"] . \'</span></td>\n         </tr>\n         <tr>\n            <th><span>Seguridad social</span></th>\n            <td><span>\' . $liq[\"seguridad_social\"] . \'</span></td>\n         </tr>\n      </table>\n      <table class=\"inventory\">\n         <thead>\n            <tr>\n               <th><span>Descripción</span></th>\n               <th><span>Cantidad</span></th>\n               <th style=\"background-color: #14406b;\"><span>Precio</span></th>\n            </tr>\n         </thead>\n         <tbody>\n            <tr>\n               <td><span>Consumo de agua m3</span></td>\n               <td><span>1</span></td>\n               <td style=\"text-align: center !important;\"><span data-prefix>$</span><span>\' . number_format($factura[\"valor_sin_recargo\"], 0, \',\', \'.\') . \'</span></td>\n            </tr>\n         </tbody>\n      </table>\n\n      <table class=\"balance\" style=\"font-size: 11px;\">\n         <tr>\n            <td><span>SUBTOTAL</span></td>\n            <th><span data-prefix>$</span><span>\' . number_format($factura[\"valor_sin_recargo\"], 0, \',\', \'.\') . \'</span></th>\n         </tr>\n         <tr>\n            <td><span>CUENTAS VENCIDAS</span></td>\n            <th><span data-prefix>$</span><span>\' . $saldoPendiente . \'</span></th>\n         </tr>\n         <tr>\n            <td><span>SALDO A FAVOR</span></td>\n            <th><span data-prefix>$</span><span>\' . number_format($saldoFavor, 0, \',\', \'.\') . \'</span></th>\n         </tr>\n         <tr>\n            <td><span>OTROS</span></td>\n            <th><span data-prefix>$</span><span>0</span></th>\n         </tr>\n         <tr style=\"color: #fff; font-size: 16px;\">\n            <td style=\"background-color: #1f60a0; font-weight: bold;\"><span>TOTAL</span></td>\n            <th style=\"background-color: #14406b;\"><span data-prefix>$</span><span>\' . $total . \'</span></th>\n         </tr>\n       \n            \n        </tr>\n         </tr>\n      </table>\n      </div>\n        \n         </br>\n         </br>\n         </br>\n        <table style=\"border-collapse: collapse; border:none; border-width: 0px; style=\"vertical-align: middle !important;\">\n            <tr style=\"float: middle; !important;\">\n                <td style=\"border-radius: 0 !important; border-style: none !important; vertical-align: middle !important; width:30%\">\n                    <img id=\"barcodeTarget\" width=\"500\" />\n                    <canvas id=\"mycanvas\"></canvas>\n                </td>\n            </tr>\n        </table>\n   </article>\n \n       <script>\n        const options = {\n            bcid:        \"gs1-128\",       // Barcode type\n            text:        \"\' . $BarcodeParent. \'\",    // Text to encode\n            scale:       2,               // 3x scaling factor\n            height:      8,              // Bar height, in millimeters\n            includetext: true,            // Show human-readable text\n            textxalign:  \"center\",        // Always good to set this\n        };\n\n        const hola3 = () => {\n            const canvas = document.createElement(\"canvas\");\n            try {\n                bwipjs.toCanvas(canvas, options);\n                document.getElementById(\"barcodeTarget\").src = canvas.toDataURL(\"image/png\");\n            } catch (e) { console.log({e}); }\n        };\n        //addEventListener(\"DOMContentLoaded\", () => {\n            hola3();\n        //});\n\n	</script>\n	\n\n	\n	\n      <script>\n      document.addEventListener(\"DOMContentLoaded\", function (event) {\n        //setTimeout(function(){ hola(); }, 1000);\n        var descargar = \' . $descargar . \';\n        if(descargar == 1) {\n             var element = document.getElementById(\"Invoices\");\n             \n             var opt = {\n                filename: \"\' . str_replace(\' \', \'\', $nombreFactura) . \'.pdf\",\n                image: { type: \"jpeg\", quality: 0.98 },\n                html2canvas: { scale: 2, useCORS: true, letterRendering: true },\n                jsPDF: { unit: \"mm\", format: \"letter\", orientation: \"portrait\" }\n             };\n    		 html2pdf(element, opt);\n    		 setTimeout(function(){ window.close(); }, 1650);\n        }\n        });\n        \n        function hola(){\n            var element = document.getElementById(\"Invoices\");\n             \n             var opt = {\n                filename: \"\' . $factura[\"contrato\"] . \'.pdf\",\n                image: { type: \"jpeg\", quality: 0.98 },\n                html2canvas: { scale: 2, useCORS: true, letterRendering: true },\n                jsPDF: { unit: \"mm\", format: \"letter\", orientation: \"portrait\" }\n             };\n    		 html2pdf(element, opt);\n        }\n   </script>\n</body>\n</html>\';\n\necho $html;\ndie();\n\n\n?>','A'),(994,'mod/app_ventas/index.php','2025-01-31 11:45:00','rafael',225,10351,'<?php\n\nfunction calcularTotalVenta($id, $returnArr = \"\") {\n    $venta = PCO_EjecutarSQL(\"\n        SELECT SUM(precio * cantidad) as total, SUM(precio * iva/100) iva\n        FROM app_ventas_detalle\n        WHERE id_venta = \'$id\' GROUP BY id_venta\n    \")->fetch();\n    $ventaMecanico = PCO_EjecutarSQL(\"\n        SELECT TRUNCATE(SUM(vd.precio * vd.cantidad * p.porcentaje_mecanico/100), 2)\n        FROM app_ventas_detalle vd, app_ventas v, app_productos p\n        WHERE vd.id_venta=v.id AND vd.id_producto=p.id AND  vd.id_venta = \'$id\' AND v.id_mecanico <> 0 GROUP BY vd.id_venta\n    \")->fetchColumn();\n    $total = $venta[\"total\"] ? $venta[\"total\"] : 0;\n    $iva = $venta[\"iva\"] ? $venta[\"iva\"] : 0;\n    PCO_EjecutarSQLUnaria(\"UPDATE app_ventas SET total = $total, iva = $iva, total_mecanico=\'$ventaMecanico\' WHERE id = $id \");\n    if($returnArr)\n        return $venta;\n    return \'\"total\": \' . $total . \', \"iva\": \' . $iva;\n}\n\nif($PCO_Accion == \"VENTA_ingresarRealizarVenta\") {\n    $ventaAbierta = PCO_EjecutarSQL(\"\n        SELECT id, id_cliente, total, iva, placa\n        FROM app_ventas\n        WHERE id=\'$PCO_Valor\'\n    \")->fetch();\n\n    $id_venta = $ventaAbierta[\"id\"] || \"\";\n    if($id_venta) {\n        $total = number_format($ventaAbierta[\"total\"], 2);\n        $iva = number_format($ventaAbierta[\"iva\"], 2);\n        $id_cliente = $ventaAbierta[\"id_cliente\"];\n    }\n\n    PCO_CargarFormulario(8, 1, \"id\", $id_venta);\n}\n\nif($PCO_Accion == \"VENTA_agregarProductoCrearOC\") {\n        //crear cliente en caso de que no llegue id_cliente\n        if(!$id_cliente) {\n            PCO_EjecutarSQLUnaria(\"INSERT INTO app_clientes (nombre_completo, numero_documento, telefono) VALUES (?,?,?) \",\n                \"$nombre_completo$_SeparadorCampos_$numero_documento$_SeparadorCampos_$telefono\"\n            );\n            // $id_cliente = PCO_ObtenerUltimoIDInsertado();\n            $id_cliente = PCO_EjecutarSQL(\"\n                SELECT id\n                FROM app_clientes\n                WHERE numero_documento=\'$numero_documento\' AND telefono=\'$telefono\' AND \'$nombre_completo\'\n            \")->fetchColumn();\n        }\n        $todayMysql = date(\"Y-m-d H:i:s\");\n        PCO_EjecutarSQLUnaria(\"INSERT INTO app_ventas (id_cliente, usuario, fecha, placa, id_mecanico, tipo_venta) VALUES (?,?,?,?,?,?) \", \"$id_cliente$_SeparadorCampos_$PCOSESS_LoginUsuario$_SeparadorCampos_$todayMysql$_SeparadorCampos_$placa$_SeparadorCampos_$id_mecanico$_SeparadorCampos_$tipo_venta\");\n        $id = PCO_EjecutarSQL(\"\n            SELECT id\n            FROM app_ventas\n            WHERE fecha=\'$todayMysql\' AND usuario=\'$PCOSESS_LoginUsuario\' AND id_cliente = \'$id_cliente\'\n        \")->fetchColumn();\n        // $id = PCO_ObtenerUltimoIDInsertado();\n\n    $producto = PCO_EjecutarSQL(\"\n        SELECT id, precio_venta, iva, inventario\n        FROM app_productos\n        WHERE id = \'$id_producto\'\n    \")->fetch();\n    if($producto[\"id\"]) {\n        $existe = PCO_EjecutarSQL(\"\n            SELECT count(id)\n            FROM app_ventas_detalle\n            WHERE id_venta = $id AND id_producto = \'$id_producto\'\n        \")->fetchColumn();\n        if($existe > 0) {\n            print_r(\'{\"success\": false, \"msg\": \"El producto ya se ha ingresado\"}\');\n            die();\n        }\n        /* if($producto[\"inventario\"] < $cantidad) {\n            print_r(\'{\"success\": false, \"msg\": \"La cantidad digitada supera la del invetario\"}\');\n            die();\n        } */\n        // $inventarioNew = $producto[\"inventario\"] - $cantidad;\n        // PCO_EjecutarSQLUnaria(\"UPDATE app_productos SET inventario = $inventarioNew WHERE id = \" . $producto[\"id\"]);\n        PCO_EjecutarSQLUnaria(\"INSERT INTO app_ventas_detalle (id_venta, id_producto, cantidad, precio, iva, hora_inicio, hora_fin, guaje) VALUES (?,?,?,?,?,?,?,?) \", \n            \"$id$_SeparadorCampos_$id_producto$_SeparadorCampos_$cantidad$_SeparadorCampos_$precio$_SeparadorCampos_\" . $producto[\"iva\"].\"$_SeparadorCampos_$hora_inicio$_SeparadorCampos_$hora_fin$_SeparadorCampos_$guaje\");\n        calcularTotalVenta($id);\n        \n        /* $total = number_format($result[\"total\"], 2);\n        $iva = number_format($result[\"iva\"], 2); */\n\n        echo \'<script type=\"text/javascript\">\n        	document.FRMBASEINFORME.PCO_Accion.value=\"PCO_CargarObjeto\";\n        	document.FRMBASEINFORME.PCO_Objeto.value=\"frm:8:1:id:\'.$id.\'\";\n        	document.FRMBASEINFORME.Precarga_EstilosBS.value=\"1\";\n        	document.FRMBASEINFORME.Presentar_FullScreen.value=\"0\";\n        	document.FRMBASEINFORME.target=\"_self\";\n        	document.FRMBASEINFORME.submit();\n    	 </script>\';\n    }\n}\n\nif($PCO_Accion == \"VENTA_agregarProducto\") {\n    $producto = PCO_EjecutarSQL(\"\n        SELECT id, precio_venta, iva\n        FROM app_productos\n        WHERE id = \'$id_producto\'\n    \")->fetch();\n    if($producto[\"id\"]) {\n        $existe = PCO_EjecutarSQL(\"\n            SELECT count(id)\n            FROM app_ventas_detalle\n            WHERE id_venta = $id AND id_producto = \'$id_producto\'\n        \")->fetchColumn();\n        if($existe > 0) {\n            print_r(\'{\"success\": false, \"msg\": \"El producto ya se ha ingresado\"}\');\n            die();\n        }\n        /* if($producto[\"inventario\"] < $cantidad) {\n            print_r(\'{\"success\": false, \"msg\": \"La cantidad digitada supera la del invetario\"}\');\n            die();\n        } */\n        // $inventarioNew = $producto[\"inventario\"] - $cantidad;\n        // PCO_EjecutarSQLUnaria(\"UPDATE app_productos SET inventario = $inventarioNew WHERE id = \" . $producto[\"id\"]);\n        PCO_EjecutarSQLUnaria(\"INSERT INTO app_ventas_detalle (id_venta, id_producto, cantidad, precio, iva, hora_inicio, hora_fin, guaje) VALUES (?,?,?,?,?,?,?,?) \", \n            \"$id$_SeparadorCampos_$id_producto$_SeparadorCampos_$cantidad$_SeparadorCampos_$precioVenta$_SeparadorCampos_\" . $producto[\"iva\"].\"$_SeparadorCampos$hora_inicio$_SeparadorCampos$hora_fin$_SeparadorCampos$guaje\");\n        $result = calcularTotalVenta($id);\n        print_r(\'{\"success\": true, \"id\": \' . $id . \', \' . $result . \'}\');\n        die();\n    }\n    print_r(\'{\"success\": false, \"msg\": \"No se ha encontrado el producto seleccionado\"}\');\n    die();\n}\n\nif($PCO_Accion == \"VENTA_consultarTotalVenta\") {\n    if($id) {\n        $result = calcularTotalVenta($id);\n        print_r(\'{\"success\": true, \"id\": \' . $id . \', \' . $result . \'}\');\n        die();\n    }\n    print_r(\'{\"success\": false, \"msg\": \"No se encontro la venta\"}\');\n    die();\n}\n\nif($PCO_Accion == \"VENTA_eliminarProducto\") {\n\n    if($id_venta_detalle && $id_venta) {\n        $producto = PCO_EjecutarSQL(\"\n            SELECT p.inventario, vd.cantidad, p.id\n            FROM app_ventas_detalle vd, app_productos p\n            WHERE vd.id_producto = p.id AND vd.id = \'$id_venta_detalle\'\n        \")->fetch();\n        //Restablecemos el inventario\n        $inventarioNew = $producto[\"inventario\"] + $producto[\"cantidad\"];\n        PCO_EjecutarSQLUnaria(\"UPDATE app_productos SET inventario = $inventarioNew WHERE id = \" . $producto[\"id\"]);\n        PCO_EjecutarSQLUnaria(\"DELETE FROM app_ventas_detalle WHERE id_venta = $id_venta AND id = $id_venta_detalle\");\n        $result = calcularTotalVenta($id_venta);\n        print_r(\'{\"success\": true, \"msg\": \"Se ha eliminado el producto exitosamente\", \' . $result . \'}\');\n        die();\n    }\n    print_r(\'{\"success\": false, \"msg\": \"No se pudo eliminar el producto\"}\');\n    die();\n}\n\nif($PCO_Accion == \"VENTA_actualizarProductoVenta\") {\n    if($id) {\n        PCO_EjecutarSQLUnaria(\"UPDATE app_ventas_detalle SET cantidad=\'$cantidad\', precio=\'$precio\' WHERE id = \'$id\'\");\n        echo 1;\n        die();\n    }\n    echo 0;\n    die();\n}\n\nif($PCO_Accion == \"VENTA_imprimirFactura\") {\n    if($PCO_Valor)\n        $id = $PCO_Valor;\n    if($id) {\n        include_once \"imprimirFactura.php\";\n    }\n}\n\nif($PCO_Accion == \"VENTA_generarLiquidacionMecanicos\") {\n    $ventas = PCO_EjecutarSQL(\"\n        SELECT v.id, v.id_mecanico, SUM(v.total_mecanico) as Total, m.seguridad_social\n        FROM app_mecanicos m,app_ventas v\n        WHERE m.id = v.id_mecanico AND v.fecha >= \'$fecha_inicio 00:00:00\' AND v.fecha <= \'$fecha_fin 23:59:59\' AND v.estado = 1 AND id_mecanico <> 0 AND id_liquidacion=0\n        GROUP BY v.id_mecanico\n    \")->fetchAll();\n    foreach ($ventas as $venta) {\n        $valor_novedad = PCO_EjecutarSQL(\"\n            SELECT  \n                SUM(case when tipo_novedad=\'Abonar\' then valor_novedad else 0 end) as abonar,\n                SUM(case when tipo_novedad=\'Debitar\' then valor_novedad else 0 end) as debitar\n            FROM app_novedades_mecanicos\n            WHERE fecha >= \'$fecha_inicio\' AND fecha <= \'$fecha_fin\'\n                AND id_mecanico=\'\".$venta[\'id_mecanico\'].\"\' AND id_liquidacion=0\n            GROUP BY id_mecanico\n        \")->fetch();\n\n        PCO_EjecutarSQLUnaria(\"INSERT INTO app_liquidacion_mecanicos_enc (id_mecanico, fecha_inicio, fecha_fin, fecha, valor_venta, valor_novedad_abonar, valor_novedad_debitar, seguridad_social, usuario) VALUES (?,?,?,?,?,?,?,?,?) \",\n            $venta[\"id_mecanico\"].\"$_SeparadorCampos_$fecha_inicio$_SeparadorCampos_$fecha_fin$_SeparadorCampos_$PCO_FechaOperacionGuiones$_SeparadorCampos_\".$venta[\"Total\"].\"$_SeparadorCampos_\".$valor_novedad[\'abonar\'].\"$_SeparadorCampos_\".$valor_novedad[\'debitar\'].\"$_SeparadorCampos_\".$venta[\"seguridad_social\"].\"$_SeparadorCampos_$PCOSESS_LoginUsuario\"\n        );\n        \n        PCO_EjecutarSQLUnaria(\"\n        UPDATE app_novedades_mecanicos \n        SET id_liquidacion=1\n        WHERE \n            fecha >= \'$fecha_inicio\' AND fecha <= \'$fecha_fin\' AND id_mecanico=\'\".$venta[\'id_mecanico\'].\"\' AND id_liquidacion=0\n        \");\n    }\n        // arq de estados\n        //actualiozar estados\n    PCO_EjecutarSQLUnaria(\"\n        UPDATE app_ventas \n        SET id_liquidacion=1\n        WHERE app_mecanicos.id = app_ventas.id_mecanico AND app_ventas.fecha >= \'$fecha_inicio 00:00:00\' AND app_ventas.fecha <= \'$fecha_fin 23:59:59\' AND app_ventas.estado = 1 AND id_mecanico <> 0 AND id_liquidacion=0\");\n    PCO_CargarFormulario(14);\n}\n\nif($PCO_Accion == \"VENTAS_verLiquidacion\") {\n    $liq = PCO_EjecutarSQL(\"\n        SELECT l.*, m.nombre_completo, m.cedula, m.telefono, m.direccion, m.correo \n        FROM app_liquidacion_mecanicos_enc l,app_mecanicos m \n        WHERE l.id_mecanico = m.id AND l.id=\'$PCO_Valor\'\n    \")->fetch();\n    include \'liquidacion_mecanicos.php\';\n}','A'),(995,'mod/app_ventas/liquidacion_mecanicos.php','2025-01-31 11:48:00','rafael',495,13112,'<?php\n\n @session_start();\n\nif(!isset($_SESSION[\'PCOSESS_SesionAbierta\'])) {\n	echo \'<head><title>Error</title><style type=\"text/css\"> body { background-color: #000000; color: #7f7f7f; font-family: sans-serif,helvetica; } </style></head><body><table width=\"100%\" height=\"100%\" border=0><tr><td align=center>&#9827; Acceso no autorizado !</td></tr></table></body>\';\n	die();\n}\n/*include_once \'../../core/configuracion.php\';\ninclude_once \'../../core/conexiones.php\';\ninclude_once \'../../inc/practico/def_basedatos.php\';\ninclude_once \'../../core/comunes.php\';*/\n\n$saldoFavor = $factura[\"saldo_pendiente\"] < 0 ? -$factura[\"saldo_pendiente\"] : 0;\n$nombreFactura = $factura[\"id_contrato\"] . \'-\' .$factura[\"nombres\"] . \' \' . $factura[\"apellidos\"];\n$saldoPendienteValor = $factura[\"saldo_pendiente\"] > 0 ? $factura[\"saldo_pendiente\"] : 0;\n$saldoPendiente = number_format($saldoPendienteValor, 0, \',\', \'.\');\n$totalValor =  number_format($factura[\"valor_sin_recargo\"] + $saldoPendienteValor - $saldoFavor, 0, \',\', \'.\');\n$total = $totalValor > 0 ? $totalValor : 0;\n\n$fechaSinRecargoBr = str_replace(\"-\", \"\", $factura[\"fecha_sin_recargo\"]);\n$totalValor =  number_format($factura[\"valor_sin_recargo\"] + $saldoPendienteValor - $saldoFavor, 0, \',\', \'.\');\n$total = $totalValor > 0 ? $totalValor : 0;\n$totalBr = str_replace(\".\", \"\", $total);\n// $codigobarra = $factura[\"codigo_gs1\"]; // \"7709998678439\";\n// $BarcodeParent = \"(415)$codigobarra(8020)\" . $factura[\"id\"] . \"(3900)$totalBr(96)$fechaSinRecargoBr\";\n\n$descargar = 0;\n/* if ($PCO_Accion == \"FACTURAS_descargarFactura\")\n    $descargar = 1; */\n\n$html = \'\n<html>\n\n<head>\n   <meta charset=\"utf-8\">\n   <title>Factura</title>\n   <style>\n      * {\n         border: 0;\n         box-sizing: content-box;\n         color: inherit;\n         font-family: Verdana;\n         font-size: inherit;\n         font-style: inherit;\n         font-weight: inherit;\n         line-height: inherit;\n         list-style: none;\n         margin: 0;\n         padding: 0;\n         text-decoration: none;\n         vertical-align: top;\n      }\n\n      /* heading */\n\n      h1 {\n         font: bold 100% sans-serif;\n         letter-spacing: 0.5em;\n         text-align: center;\n         text-transform: uppercase;\n      }\n\n      /* table */\n\n      table {\n         font-size: 75%;\n         table-layout: fixed;\n         width: 100%;\n      }\n\n      table {\n         border-collapse: separate;\n         border-spacing: 3px;\n      }\n\n      th,\n      td {\n         border-width: 1px;\n         padding: 0.5em;\n         position: relative;\n         text-align: center;\n      }\n\n      th,\n      td {\n         border-radius: 0.25em;\n         border-style: solid;\n      }\n\n      th {\n         background: #1f60a0;\n         color: #fff;\n         border-color: #BBB;\n      }\n\n      td {\n         border-color: #DDD;\n      }\n\n      /* page */\n\n      html {\n         font: 16px/1 \"Open Sans\", sans-serif;\n         overflow: auto;\n         padding: 0.5in;\n      }\n\n      html {\n         background: #999;\n         cursor: default;\n      }\n\n      body {\n         box-sizing: border-box;\n         height: 11in;\n         margin: 0 auto;\n         overflow: hidden;\n         padding: 0.5in;\n         width: 8.5in;\n      }\n\n      body {\n         background: #FFF;\n         border-radius: 1px;\n         box-shadow: 0 0 1in -0.25in rgba(0, 0, 0, 0.5);\n      }\n\n      /* header */\n\n      header {\n         margin: 0 0 3em;\n      }\n\n      header:after {\n         clear: both;\n         content: \"\";\n         display: table;\n      }\n\n      header h1 {\n         background: #000;\n         border-radius: 0.25em;\n         color: #FFF;\n         margin: 0 0 1em;\n         padding: 0.5em 0;\n      }\n\n      header address {\n         float: left;\n         font-size: 75%;\n         font-style: normal;\n         line-height: 1.25;\n         margin: 0 1em 1em 0;\n      }\n\n      header address p {\n         margin: 0 0 0.25em;\n      }\n\n      header span,\n      header img {\n         display: block;\n         float: right;\n      }\n\n      header span {\n         margin: 0 0 1em 1em;\n         max-height: 25%;\n         max-width: 60%;\n         position: relative;\n      }\n\n      header img {\n         max-height: 100%;\n         max-width: 100%;\n      }\n\n      header input {\n         cursor: pointer;\n         -ms-filter: \"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)\";\n         height: 100%;\n         left: 0;\n         opacity: 0;\n         position: absolute;\n         top: 0;\n         width: 100%;\n      }\n\n      /* article */\n\n      article,\n      article address,\n      table.meta,\n      table.inventory {\n         margin: 0 0 1.3em;\n      }\n\n      article:after {\n         clear: both;\n         content: \"\";\n         display: table;\n      }\n\n      article h1 {\n         clip: rect(0 0 0 0);\n         position: absolute;\n      }\n\n      article address {\n         float: left;\n         font-size: 125%;\n      }\n\n      /* table meta & balance */\n\n      table.meta,\n      table.balance {\n         float: right;\n         width: 36%;\n      }\n\n      table.meta:after,\n      table.balance:after {\n         clear: both;\n         content: \"\";\n         display: table;\n      }\n\n      /* table meta */\n\n      table.meta th {\n         width: 40%;\n      }\n\n      table.meta td {\n         width: 60%;\n      }\n\n      /* table items */\n\n      table.inventory {\n         clear: both;\n         width: 100%;\n      }\n\n      table.inventory th {\n         font-weight: bold;\n         text-align: center;\n      }\n\n      table.inventory td:nth-child(1) {\n         width: 26%;\n      }\n\n      table.inventory td:nth-child(2) {\n         width: 38%;\n      }\n\n      table.inventory td:nth-child(3) {\n         text-align: center;\n         width: 12%;\n      }\n\n      table.inventory td:nth-child(4) {\n         text-align: center;\n         width: 12%;\n      }\n\n      table.inventory td:nth-child(5) {\n         text-align: center;\n         width: 12%;\n      }\n\n      /* table balance */\n\n      table.balance th {\n         width: 40%;\n         text-align: center;\n      }\n\n      table.balance td {\n         width: 60%;\n         text-align: center;\n      }\n\n      /* aside */\n\n      aside h1 {\n         border: none;\n         border-width: 0 0 1px;\n         margin: 0 0 1em;\n      }\n\n      aside h1 {\n         border-color: #999;\n         border-bottom-style: solid;\n      }\n\n      /* javascript */\n\n      @media print {\n         * {\n            -webkit-print-color-adjust: exact;\n         }\n\n         html {\n            background: none;\n            padding: 0;\n         }\n\n         body {\n            box-shadow: none;\n            margin: 0;\n         }\n\n         span:empty {\n            display: none;\n         }\n      }\n\n      @page {\n         margin: 0;\n      }\n   </style>\n    <link rel=\"stylesheet\" href=\"inc/pdfLib/all.min.css\">\n    <script type=\"text/javascript\" src=\"inc/pdfLib/html2pdf.bundle.min.js\"></script>\n    <script type=\"text/javascript\" src=\"inc/bwip/bwip-js-min.js\"></script>\n    \n            <!--<link rel=\"stylesheet\" href=\"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.1/css/all.min.css\">-->\n            <!--<script src=\"https://cdnjs.cloudflare.com/ajax/libs/html2pdf.js/0.10.1/html2pdf.bundle.min.js\"\n              integrity=\"sha512-GsLlZN/3F2ErC5ifS5QtgpiJtWd43JWSuIgh7mbzZ8zBps+dvLusV+eNQATqgA/HdeKFVgA5v3S/cIrLF7QnIg==\"\n              crossorigin=\"anonymous\" referrerpolicy=\"no-referrer\"></script>-->\n</head>\n<body id=\"Invoices\">\n\n   <article>\n      <BR>\n      <BR>\n      <BR>\n      <address>\n         <!--<p style=\"color:#14406b; font-size: 18px; font-weight: bold;\">AUTONORTE</p>\n         <p style=\"font-size: 12px;\">NIT: 811018300-6</p>\n         <p style=\"font-size: 12px;\">CLL 21 # 8-78 San Jerónimo, Ant</p> -->\n         <BR>\n         <p style=\"font-size: 14px;\">\n            <span style=\"font-weight: bold;\">Nombre: </span>\' . $liq[\"nombre_completo\"] . \' <br>\n            <span style=\"font-weight: bold;\">Dirección: </span>\' . $liq[\"direccion\"] . \' <br>\n         </p>\n      </address>\n\n      <table class=\"meta\">\n         <tr>\n            <th><span>Nombre Empleado</span></th>\n            <td><span>\' . $liq[\"nombre_completo\"] . \'</span></td>\n         </tr>\n        <tr>\n            <th style=\"width: 120px !important;\"><span>Fecha</span></th>\n            <td><span>\' . $liq[\"fecha\"] . \'</span></td>\n         </tr>\n         <tr>\n            <th style=\"width: 120px !important;\"><span>Valor abono</span></th>\n            <td><span>\' . $liq[\"valor_novedad_abonar\"] . \'</span></td>\n         </tr>\n         <tr>\n            <th><span>Valor debito</span></th>\n            <td><span>\' . $liq[\"valor_novedad_debitar\"] . \'</span></td>\n         </tr>\n         <tr>\n            <th><span>Seguridad social</span></th>\n            <td><span>\' . $liq[\"seguridad_social\"] . \'</span></td>\n         </tr>\n      </table>\n      <table class=\"inventory\">\n         <thead>\n            <tr>\n               <th><span>Valor abono</span></th>\n               <th><span>Valor debito</span></th>\n               <th><span>Seguridad social</span></th>\n            </tr>\n         </thead>\n         <tbody>\n            <tr>\n               <td><span>\' . $liq[\"valor_novedad_abonar\"] . \'</span></td>\n               <td><span>\' . $liq[\"valor_novedad_debitar\"] . \'</span></td>\n               <td><span>\' . $liq[\"seguridad_social\"] . \'</span></td>\n            </tr>\n         </tbody>\n      </table>\n\n      <table class=\"balance\" style=\"font-size: 11px;\">\n         <tr>\n            <td><span>SUBTOTAL</span></td>\n            <th><span data-prefix>$</span><span>\' . number_format($factura[\"valor_sin_recargo\"], 0, \',\', \'.\') . \'</span></th>\n         </tr>\n         <tr>\n            <td><span>CUENTAS VENCIDAS</span></td>\n            <th><span data-prefix>$</span><span>\' . $saldoPendiente . \'</span></th>\n         </tr>\n         <tr>\n            <td><span>SALDO A FAVOR</span></td>\n            <th><span data-prefix>$</span><span>\' . number_format($saldoFavor, 0, \',\', \'.\') . \'</span></th>\n         </tr>\n         <tr>\n            <td><span>OTROS</span></td>\n            <th><span data-prefix>$</span><span>0</span></th>\n         </tr>\n         <tr style=\"color: #fff; font-size: 16px;\">\n            <td style=\"background-color: #1f60a0; font-weight: bold;\"><span>TOTAL</span></td>\n            <th style=\"background-color: #14406b;\"><span data-prefix>$</span><span>\' . $total . \'</span></th>\n         </tr>\n       \n            \n        </tr>\n         </tr>\n      </table>\n      </div>\n        \n         </br>\n         </br>\n         </br>\n        <table style=\"border-collapse: collapse; border:none; border-width: 0px; style=\"vertical-align: middle !important;\">\n            <tr style=\"float: middle; !important;\">\n                <td style=\"border-radius: 0 !important; border-style: none !important; vertical-align: middle !important; width:30%\">\n                    <img id=\"barcodeTarget\" width=\"500\" />\n                    <canvas id=\"mycanvas\"></canvas>\n                </td>\n            </tr>\n        </table>\n   </article>\n \n       <script>\n        const options = {\n            bcid:        \"gs1-128\",       // Barcode type\n            text:        \"\' . $BarcodeParent. \'\",    // Text to encode\n            scale:       2,               // 3x scaling factor\n            height:      8,              // Bar height, in millimeters\n            includetext: true,            // Show human-readable text\n            textxalign:  \"center\",        // Always good to set this\n        };\n\n        const hola3 = () => {\n            const canvas = document.createElement(\"canvas\");\n            try {\n                bwipjs.toCanvas(canvas, options);\n                document.getElementById(\"barcodeTarget\").src = canvas.toDataURL(\"image/png\");\n            } catch (e) { console.log({e}); }\n        };\n        //addEventListener(\"DOMContentLoaded\", () => {\n            hola3();\n        //});\n\n	</script>\n	\n\n	\n	\n      <script>\n      document.addEventListener(\"DOMContentLoaded\", function (event) {\n        //setTimeout(function(){ hola(); }, 1000);\n        var descargar = \' . $descargar . \';\n        if(descargar == 1) {\n             var element = document.getElementById(\"Invoices\");\n             \n             var opt = {\n                filename: \"\' . str_replace(\' \', \'\', $nombreFactura) . \'.pdf\",\n                image: { type: \"jpeg\", quality: 0.98 },\n                html2canvas: { scale: 2, useCORS: true, letterRendering: true },\n                jsPDF: { unit: \"mm\", format: \"letter\", orientation: \"portrait\" }\n             };\n    		 html2pdf(element, opt);\n    		 setTimeout(function(){ window.close(); }, 1650);\n        }\n        });\n        \n        function hola(){\n            var element = document.getElementById(\"Invoices\");\n             \n             var opt = {\n                filename: \"\' . $factura[\"contrato\"] . \'.pdf\",\n                image: { type: \"jpeg\", quality: 0.98 },\n                html2canvas: { scale: 2, useCORS: true, letterRendering: true },\n                jsPDF: { unit: \"mm\", format: \"letter\", orientation: \"portrait\" }\n             };\n    		 html2pdf(element, opt);\n        }\n   </script>\n</body>\n</html>\';\n\necho $html;\ndie();\n\n\n?>','A'),(996,'mod/app_ventas/liquidacion_mecanicos.php','2025-01-31 11:48:00','rafael',483,12638,'<?php\n\n @session_start();\n\nif(!isset($_SESSION[\'PCOSESS_SesionAbierta\'])) {\n	echo \'<head><title>Error</title><style type=\"text/css\"> body { background-color: #000000; color: #7f7f7f; font-family: sans-serif,helvetica; } </style></head><body><table width=\"100%\" height=\"100%\" border=0><tr><td align=center>&#9827; Acceso no autorizado !</td></tr></table></body>\';\n	die();\n}\n/*include_once \'../../core/configuracion.php\';\ninclude_once \'../../core/conexiones.php\';\ninclude_once \'../../inc/practico/def_basedatos.php\';\ninclude_once \'../../core/comunes.php\';*/\n\n$saldoFavor = $factura[\"saldo_pendiente\"] < 0 ? -$factura[\"saldo_pendiente\"] : 0;\n$nombreFactura = $factura[\"id_contrato\"] . \'-\' .$factura[\"nombres\"] . \' \' . $factura[\"apellidos\"];\n$saldoPendienteValor = $factura[\"saldo_pendiente\"] > 0 ? $factura[\"saldo_pendiente\"] : 0;\n$saldoPendiente = number_format($saldoPendienteValor, 0, \',\', \'.\');\n$totalValor =  number_format($factura[\"valor_sin_recargo\"] + $saldoPendienteValor - $saldoFavor, 0, \',\', \'.\');\n$total = $totalValor > 0 ? $totalValor : 0;\n\n$fechaSinRecargoBr = str_replace(\"-\", \"\", $factura[\"fecha_sin_recargo\"]);\n$totalValor =  number_format($factura[\"valor_sin_recargo\"] + $saldoPendienteValor - $saldoFavor, 0, \',\', \'.\');\n$total = $totalValor > 0 ? $totalValor : 0;\n$totalBr = str_replace(\".\", \"\", $total);\n// $codigobarra = $factura[\"codigo_gs1\"]; // \"7709998678439\";\n// $BarcodeParent = \"(415)$codigobarra(8020)\" . $factura[\"id\"] . \"(3900)$totalBr(96)$fechaSinRecargoBr\";\n\n$descargar = 0;\n/* if ($PCO_Accion == \"FACTURAS_descargarFactura\")\n    $descargar = 1; */\n\n$html = \'\n<html>\n\n<head>\n   <meta charset=\"utf-8\">\n   <title>Factura</title>\n   <style>\n      * {\n         border: 0;\n         box-sizing: content-box;\n         color: inherit;\n         font-family: Verdana;\n         font-size: inherit;\n         font-style: inherit;\n         font-weight: inherit;\n         line-height: inherit;\n         list-style: none;\n         margin: 0;\n         padding: 0;\n         text-decoration: none;\n         vertical-align: top;\n      }\n\n      /* heading */\n\n      h1 {\n         font: bold 100% sans-serif;\n         letter-spacing: 0.5em;\n         text-align: center;\n         text-transform: uppercase;\n      }\n\n      /* table */\n\n      table {\n         font-size: 75%;\n         table-layout: fixed;\n         width: 100%;\n      }\n\n      table {\n         border-collapse: separate;\n         border-spacing: 3px;\n      }\n\n      th,\n      td {\n         border-width: 1px;\n         padding: 0.5em;\n         position: relative;\n         text-align: center;\n      }\n\n      th,\n      td {\n         border-radius: 0.25em;\n         border-style: solid;\n      }\n\n      th {\n         background: #1f60a0;\n         color: #fff;\n         border-color: #BBB;\n      }\n\n      td {\n         border-color: #DDD;\n      }\n\n      /* page */\n\n      html {\n         font: 16px/1 \"Open Sans\", sans-serif;\n         overflow: auto;\n         padding: 0.5in;\n      }\n\n      html {\n         background: #999;\n         cursor: default;\n      }\n\n      body {\n         box-sizing: border-box;\n         height: 11in;\n         margin: 0 auto;\n         overflow: hidden;\n         padding: 0.5in;\n         width: 8.5in;\n      }\n\n      body {\n         background: #FFF;\n         border-radius: 1px;\n         box-shadow: 0 0 1in -0.25in rgba(0, 0, 0, 0.5);\n      }\n\n      /* header */\n\n      header {\n         margin: 0 0 3em;\n      }\n\n      header:after {\n         clear: both;\n         content: \"\";\n         display: table;\n      }\n\n      header h1 {\n         background: #000;\n         border-radius: 0.25em;\n         color: #FFF;\n         margin: 0 0 1em;\n         padding: 0.5em 0;\n      }\n\n      header address {\n         float: left;\n         font-size: 75%;\n         font-style: normal;\n         line-height: 1.25;\n         margin: 0 1em 1em 0;\n      }\n\n      header address p {\n         margin: 0 0 0.25em;\n      }\n\n      header span,\n      header img {\n         display: block;\n         float: right;\n      }\n\n      header span {\n         margin: 0 0 1em 1em;\n         max-height: 25%;\n         max-width: 60%;\n         position: relative;\n      }\n\n      header img {\n         max-height: 100%;\n         max-width: 100%;\n      }\n\n      header input {\n         cursor: pointer;\n         -ms-filter: \"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)\";\n         height: 100%;\n         left: 0;\n         opacity: 0;\n         position: absolute;\n         top: 0;\n         width: 100%;\n      }\n\n      /* article */\n\n      article,\n      article address,\n      table.meta,\n      table.inventory {\n         margin: 0 0 1.3em;\n      }\n\n      article:after {\n         clear: both;\n         content: \"\";\n         display: table;\n      }\n\n      article h1 {\n         clip: rect(0 0 0 0);\n         position: absolute;\n      }\n\n      article address {\n         float: left;\n         font-size: 125%;\n      }\n\n      /* table meta & balance */\n\n      table.meta,\n      table.balance {\n         float: right;\n         width: 36%;\n      }\n\n      table.meta:after,\n      table.balance:after {\n         clear: both;\n         content: \"\";\n         display: table;\n      }\n\n      /* table meta */\n\n      table.meta th {\n         width: 40%;\n      }\n\n      table.meta td {\n         width: 60%;\n      }\n\n      /* table items */\n\n      table.inventory {\n         clear: both;\n         width: 100%;\n      }\n\n      table.inventory th {\n         font-weight: bold;\n         text-align: center;\n      }\n\n      table.inventory td:nth-child(1) {\n         width: 26%;\n      }\n\n      table.inventory td:nth-child(2) {\n         width: 38%;\n      }\n\n      table.inventory td:nth-child(3) {\n         text-align: center;\n         width: 12%;\n      }\n\n      table.inventory td:nth-child(4) {\n         text-align: center;\n         width: 12%;\n      }\n\n      table.inventory td:nth-child(5) {\n         text-align: center;\n         width: 12%;\n      }\n\n      /* table balance */\n\n      table.balance th {\n         width: 40%;\n         text-align: center;\n      }\n\n      table.balance td {\n         width: 60%;\n         text-align: center;\n      }\n\n      /* aside */\n\n      aside h1 {\n         border: none;\n         border-width: 0 0 1px;\n         margin: 0 0 1em;\n      }\n\n      aside h1 {\n         border-color: #999;\n         border-bottom-style: solid;\n      }\n\n      /* javascript */\n\n      @media print {\n         * {\n            -webkit-print-color-adjust: exact;\n         }\n\n         html {\n            background: none;\n            padding: 0;\n         }\n\n         body {\n            box-shadow: none;\n            margin: 0;\n         }\n\n         span:empty {\n            display: none;\n         }\n      }\n\n      @page {\n         margin: 0;\n      }\n   </style>\n    <link rel=\"stylesheet\" href=\"inc/pdfLib/all.min.css\">\n    <script type=\"text/javascript\" src=\"inc/pdfLib/html2pdf.bundle.min.js\"></script>\n    <script type=\"text/javascript\" src=\"inc/bwip/bwip-js-min.js\"></script>\n    \n            <!--<link rel=\"stylesheet\" href=\"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.1/css/all.min.css\">-->\n            <!--<script src=\"https://cdnjs.cloudflare.com/ajax/libs/html2pdf.js/0.10.1/html2pdf.bundle.min.js\"\n              integrity=\"sha512-GsLlZN/3F2ErC5ifS5QtgpiJtWd43JWSuIgh7mbzZ8zBps+dvLusV+eNQATqgA/HdeKFVgA5v3S/cIrLF7QnIg==\"\n              crossorigin=\"anonymous\" referrerpolicy=\"no-referrer\"></script>-->\n</head>\n<body id=\"Invoices\">\n\n   <article>\n      <BR>\n      <BR>\n      <BR>\n      <address>\n         <!--<p style=\"color:#14406b; font-size: 18px; font-weight: bold;\">AUTONORTE</p>\n         <p style=\"font-size: 12px;\">NIT: 811018300-6</p>\n         <p style=\"font-size: 12px;\">CLL 21 # 8-78 San Jerónimo, Ant</p> -->\n         <BR>\n         <p style=\"font-size: 14px;\">\n            <span style=\"font-weight: bold;\">Nombre: </span>\' . $liq[\"nombre_completo\"] . \' <br>\n            <span style=\"font-weight: bold;\">Dirección: </span>\' . $liq[\"direccion\"] . \' <br>\n         </p>\n      </address>\n\n      <table class=\"meta\">\n         <tr>\n            <th><span>Nombre Empleado</span></th>\n            <td><span>\' . $liq[\"nombre_completo\"] . \'</span></td>\n         </tr>\n        <tr>\n            <th style=\"width: 120px !important;\"><span>Fecha</span></th>\n            <td><span>\' . $liq[\"fecha\"] . \'</span></td>\n         </tr>\n      </table>\n      <table class=\"inventory\">\n         <thead>\n            <tr>\n               <th><span>Valor abono</span></th>\n               <th><span>Valor debito</span></th>\n               <th><span>Seguridad social</span></th>\n            </tr>\n         </thead>\n         <tbody>\n            <tr>\n               <td><span>\' . $liq[\"valor_novedad_abonar\"] . \'</span></td>\n               <td><span>\' . $liq[\"valor_novedad_debitar\"] . \'</span></td>\n               <td><span>\' . $liq[\"seguridad_social\"] . \'</span></td>\n            </tr>\n         </tbody>\n      </table>\n\n      <table class=\"balance\" style=\"font-size: 11px;\">\n         <tr>\n            <td><span>SUBTOTAL</span></td>\n            <th><span data-prefix>$</span><span>\' . number_format($factura[\"valor_sin_recargo\"], 0, \',\', \'.\') . \'</span></th>\n         </tr>\n         <tr>\n            <td><span>CUENTAS VENCIDAS</span></td>\n            <th><span data-prefix>$</span><span>\' . $saldoPendiente . \'</span></th>\n         </tr>\n         <tr>\n            <td><span>SALDO A FAVOR</span></td>\n            <th><span data-prefix>$</span><span>\' . number_format($saldoFavor, 0, \',\', \'.\') . \'</span></th>\n         </tr>\n         <tr>\n            <td><span>OTROS</span></td>\n            <th><span data-prefix>$</span><span>0</span></th>\n         </tr>\n         <tr style=\"color: #fff; font-size: 16px;\">\n            <td style=\"background-color: #1f60a0; font-weight: bold;\"><span>TOTAL</span></td>\n            <th style=\"background-color: #14406b;\"><span data-prefix>$</span><span>\' . $total . \'</span></th>\n         </tr>\n       \n            \n        </tr>\n         </tr>\n      </table>\n      </div>\n        \n         </br>\n         </br>\n         </br>\n        <table style=\"border-collapse: collapse; border:none; border-width: 0px; style=\"vertical-align: middle !important;\">\n            <tr style=\"float: middle; !important;\">\n                <td style=\"border-radius: 0 !important; border-style: none !important; vertical-align: middle !important; width:30%\">\n                    <img id=\"barcodeTarget\" width=\"500\" />\n                    <canvas id=\"mycanvas\"></canvas>\n                </td>\n            </tr>\n        </table>\n   </article>\n \n       <script>\n        const options = {\n            bcid:        \"gs1-128\",       // Barcode type\n            text:        \"\' . $BarcodeParent. \'\",    // Text to encode\n            scale:       2,               // 3x scaling factor\n            height:      8,              // Bar height, in millimeters\n            includetext: true,            // Show human-readable text\n            textxalign:  \"center\",        // Always good to set this\n        };\n\n        const hola3 = () => {\n            const canvas = document.createElement(\"canvas\");\n            try {\n                bwipjs.toCanvas(canvas, options);\n                document.getElementById(\"barcodeTarget\").src = canvas.toDataURL(\"image/png\");\n            } catch (e) { console.log({e}); }\n        };\n        //addEventListener(\"DOMContentLoaded\", () => {\n            hola3();\n        //});\n\n	</script>\n	\n\n	\n	\n      <script>\n      document.addEventListener(\"DOMContentLoaded\", function (event) {\n        //setTimeout(function(){ hola(); }, 1000);\n        var descargar = \' . $descargar . \';\n        if(descargar == 1) {\n             var element = document.getElementById(\"Invoices\");\n             \n             var opt = {\n                filename: \"\' . str_replace(\' \', \'\', $nombreFactura) . \'.pdf\",\n                image: { type: \"jpeg\", quality: 0.98 },\n                html2canvas: { scale: 2, useCORS: true, letterRendering: true },\n                jsPDF: { unit: \"mm\", format: \"letter\", orientation: \"portrait\" }\n             };\n    		 html2pdf(element, opt);\n    		 setTimeout(function(){ window.close(); }, 1650);\n        }\n        });\n        \n        function hola(){\n            var element = document.getElementById(\"Invoices\");\n             \n             var opt = {\n                filename: \"\' . $factura[\"contrato\"] . \'.pdf\",\n                image: { type: \"jpeg\", quality: 0.98 },\n                html2canvas: { scale: 2, useCORS: true, letterRendering: true },\n                jsPDF: { unit: \"mm\", format: \"letter\", orientation: \"portrait\" }\n             };\n    		 html2pdf(element, opt);\n        }\n   </script>\n</body>\n</html>\';\n\necho $html;\ndie();\n\n\n?>','A'),(997,'mod/app_ventas/liquidacion_mecanicos.php','2025-01-31 11:49:00','rafael',479,12493,'<?php\n\n @session_start();\n\nif(!isset($_SESSION[\'PCOSESS_SesionAbierta\'])) {\n	echo \'<head><title>Error</title><style type=\"text/css\"> body { background-color: #000000; color: #7f7f7f; font-family: sans-serif,helvetica; } </style></head><body><table width=\"100%\" height=\"100%\" border=0><tr><td align=center>&#9827; Acceso no autorizado !</td></tr></table></body>\';\n	die();\n}\n/*include_once \'../../core/configuracion.php\';\ninclude_once \'../../core/conexiones.php\';\ninclude_once \'../../inc/practico/def_basedatos.php\';\ninclude_once \'../../core/comunes.php\';*/\n\n$saldoFavor = $factura[\"saldo_pendiente\"] < 0 ? -$factura[\"saldo_pendiente\"] : 0;\n$nombreFactura = $factura[\"id_contrato\"] . \'-\' .$factura[\"nombres\"] . \' \' . $factura[\"apellidos\"];\n$saldoPendienteValor = $factura[\"saldo_pendiente\"] > 0 ? $factura[\"saldo_pendiente\"] : 0;\n$saldoPendiente = number_format($saldoPendienteValor, 0, \',\', \'.\');\n$totalValor =  number_format($factura[\"valor_sin_recargo\"] + $saldoPendienteValor - $saldoFavor, 0, \',\', \'.\');\n$total = $totalValor > 0 ? $totalValor : 0;\n\n$fechaSinRecargoBr = str_replace(\"-\", \"\", $factura[\"fecha_sin_recargo\"]);\n$totalValor =  number_format($factura[\"valor_sin_recargo\"] + $saldoPendienteValor - $saldoFavor, 0, \',\', \'.\');\n$total = $totalValor > 0 ? $totalValor : 0;\n$totalBr = str_replace(\".\", \"\", $total);\n// $codigobarra = $factura[\"codigo_gs1\"]; // \"7709998678439\";\n// $BarcodeParent = \"(415)$codigobarra(8020)\" . $factura[\"id\"] . \"(3900)$totalBr(96)$fechaSinRecargoBr\";\n\n$descargar = 0;\n/* if ($PCO_Accion == \"FACTURAS_descargarFactura\")\n    $descargar = 1; */\n\n$html = \'\n<html>\n\n<head>\n   <meta charset=\"utf-8\">\n   <title>Factura</title>\n   <style>\n      * {\n         border: 0;\n         box-sizing: content-box;\n         color: inherit;\n         font-family: Verdana;\n         font-size: inherit;\n         font-style: inherit;\n         font-weight: inherit;\n         line-height: inherit;\n         list-style: none;\n         margin: 0;\n         padding: 0;\n         text-decoration: none;\n         vertical-align: top;\n      }\n\n      /* heading */\n\n      h1 {\n         font: bold 100% sans-serif;\n         letter-spacing: 0.5em;\n         text-align: center;\n         text-transform: uppercase;\n      }\n\n      /* table */\n\n      table {\n         font-size: 75%;\n         table-layout: fixed;\n         width: 100%;\n      }\n\n      table {\n         border-collapse: separate;\n         border-spacing: 3px;\n      }\n\n      th,\n      td {\n         border-width: 1px;\n         padding: 0.5em;\n         position: relative;\n         text-align: center;\n      }\n\n      th,\n      td {\n         border-radius: 0.25em;\n         border-style: solid;\n      }\n\n      th {\n         background: #1f60a0;\n         color: #fff;\n         border-color: #BBB;\n      }\n\n      td {\n         border-color: #DDD;\n      }\n\n      /* page */\n\n      html {\n         font: 16px/1 \"Open Sans\", sans-serif;\n         overflow: auto;\n         padding: 0.5in;\n      }\n\n      html {\n         background: #999;\n         cursor: default;\n      }\n\n      body {\n         box-sizing: border-box;\n         height: 11in;\n         margin: 0 auto;\n         overflow: hidden;\n         padding: 0.5in;\n         width: 8.5in;\n      }\n\n      body {\n         background: #FFF;\n         border-radius: 1px;\n         box-shadow: 0 0 1in -0.25in rgba(0, 0, 0, 0.5);\n      }\n\n      /* header */\n\n      header {\n         margin: 0 0 3em;\n      }\n\n      header:after {\n         clear: both;\n         content: \"\";\n         display: table;\n      }\n\n      header h1 {\n         background: #000;\n         border-radius: 0.25em;\n         color: #FFF;\n         margin: 0 0 1em;\n         padding: 0.5em 0;\n      }\n\n      header address {\n         float: left;\n         font-size: 75%;\n         font-style: normal;\n         line-height: 1.25;\n         margin: 0 1em 1em 0;\n      }\n\n      header address p {\n         margin: 0 0 0.25em;\n      }\n\n      header span,\n      header img {\n         display: block;\n         float: right;\n      }\n\n      header span {\n         margin: 0 0 1em 1em;\n         max-height: 25%;\n         max-width: 60%;\n         position: relative;\n      }\n\n      header img {\n         max-height: 100%;\n         max-width: 100%;\n      }\n\n      header input {\n         cursor: pointer;\n         -ms-filter: \"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)\";\n         height: 100%;\n         left: 0;\n         opacity: 0;\n         position: absolute;\n         top: 0;\n         width: 100%;\n      }\n\n      /* article */\n\n      article,\n      article address,\n      table.meta,\n      table.inventory {\n         margin: 0 0 1.3em;\n      }\n\n      article:after {\n         clear: both;\n         content: \"\";\n         display: table;\n      }\n\n      article h1 {\n         clip: rect(0 0 0 0);\n         position: absolute;\n      }\n\n      article address {\n         float: left;\n         font-size: 125%;\n      }\n\n      /* table meta & balance */\n\n      table.meta,\n      table.balance {\n         float: right;\n         width: 36%;\n      }\n\n      table.meta:after,\n      table.balance:after {\n         clear: both;\n         content: \"\";\n         display: table;\n      }\n\n      /* table meta */\n\n      table.meta th {\n         width: 40%;\n      }\n\n      table.meta td {\n         width: 60%;\n      }\n\n      /* table items */\n\n      table.inventory {\n         clear: both;\n         width: 100%;\n      }\n\n      table.inventory th {\n         font-weight: bold;\n         text-align: center;\n      }\n\n      table.inventory td:nth-child(1) {\n         width: 26%;\n      }\n\n      table.inventory td:nth-child(2) {\n         width: 38%;\n      }\n\n      table.inventory td:nth-child(3) {\n         text-align: center;\n         width: 12%;\n      }\n\n      table.inventory td:nth-child(4) {\n         text-align: center;\n         width: 12%;\n      }\n\n      table.inventory td:nth-child(5) {\n         text-align: center;\n         width: 12%;\n      }\n\n      /* table balance */\n\n      table.balance th {\n         width: 40%;\n         text-align: center;\n      }\n\n      table.balance td {\n         width: 60%;\n         text-align: center;\n      }\n\n      /* aside */\n\n      aside h1 {\n         border: none;\n         border-width: 0 0 1px;\n         margin: 0 0 1em;\n      }\n\n      aside h1 {\n         border-color: #999;\n         border-bottom-style: solid;\n      }\n\n      /* javascript */\n\n      @media print {\n         * {\n            -webkit-print-color-adjust: exact;\n         }\n\n         html {\n            background: none;\n            padding: 0;\n         }\n\n         body {\n            box-shadow: none;\n            margin: 0;\n         }\n\n         span:empty {\n            display: none;\n         }\n      }\n\n      @page {\n         margin: 0;\n      }\n   </style>\n    <link rel=\"stylesheet\" href=\"inc/pdfLib/all.min.css\">\n    <script type=\"text/javascript\" src=\"inc/pdfLib/html2pdf.bundle.min.js\"></script>\n    <script type=\"text/javascript\" src=\"inc/bwip/bwip-js-min.js\"></script>\n    \n            <!--<link rel=\"stylesheet\" href=\"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.1/css/all.min.css\">-->\n            <!--<script src=\"https://cdnjs.cloudflare.com/ajax/libs/html2pdf.js/0.10.1/html2pdf.bundle.min.js\"\n              integrity=\"sha512-GsLlZN/3F2ErC5ifS5QtgpiJtWd43JWSuIgh7mbzZ8zBps+dvLusV+eNQATqgA/HdeKFVgA5v3S/cIrLF7QnIg==\"\n              crossorigin=\"anonymous\" referrerpolicy=\"no-referrer\"></script>-->\n</head>\n<body id=\"Invoices\">\n\n   <article>\n      <BR>\n      <BR>\n      <BR>\n      <address>\n         <!--<p style=\"color:#14406b; font-size: 18px; font-weight: bold;\">AUTONORTE</p>\n         <p style=\"font-size: 12px;\">NIT: 811018300-6</p>\n         <p style=\"font-size: 12px;\">CLL 21 # 8-78 San Jerónimo, Ant</p> -->\n         <BR>\n         <p style=\"font-size: 14px;\">\n            <span style=\"font-weight: bold;\">Nombre: </span>\' . $liq[\"nombre_completo\"] . \' <br>\n            <span style=\"font-weight: bold;\">Dirección: </span>\' . $liq[\"direccion\"] . \' <br>\n         </p>\n      </address>\n\n      <table class=\"meta\">\n        <tr>\n            <th style=\"width: 120px !important;\"><span>Fecha</span></th>\n            <td><span>\' . $liq[\"fecha\"] . \'</span></td>\n         </tr>\n      </table>\n      <table class=\"inventory\">\n         <thead>\n            <tr>\n               <th><span>Valor abono</span></th>\n               <th><span>Valor debito</span></th>\n               <th><span>Seguridad social</span></th>\n            </tr>\n         </thead>\n         <tbody>\n            <tr>\n               <td><span>\' . $liq[\"valor_novedad_abonar\"] . \'</span></td>\n               <td><span>\' . $liq[\"valor_novedad_debitar\"] . \'</span></td>\n               <td><span>\' . $liq[\"seguridad_social\"] . \'</span></td>\n            </tr>\n         </tbody>\n      </table>\n\n      <table class=\"balance\" style=\"font-size: 11px;\">\n         <tr>\n            <td><span>SUBTOTAL</span></td>\n            <th><span data-prefix>$</span><span>\' . number_format($factura[\"valor_sin_recargo\"], 0, \',\', \'.\') . \'</span></th>\n         </tr>\n         <tr>\n            <td><span>CUENTAS VENCIDAS</span></td>\n            <th><span data-prefix>$</span><span>\' . $saldoPendiente . \'</span></th>\n         </tr>\n         <tr>\n            <td><span>SALDO A FAVOR</span></td>\n            <th><span data-prefix>$</span><span>\' . number_format($saldoFavor, 0, \',\', \'.\') . \'</span></th>\n         </tr>\n         <tr>\n            <td><span>OTROS</span></td>\n            <th><span data-prefix>$</span><span>0</span></th>\n         </tr>\n         <tr style=\"color: #fff; font-size: 16px;\">\n            <td style=\"background-color: #1f60a0; font-weight: bold;\"><span>TOTAL</span></td>\n            <th style=\"background-color: #14406b;\"><span data-prefix>$</span><span>\' . $total . \'</span></th>\n         </tr>\n       \n            \n        </tr>\n         </tr>\n      </table>\n      </div>\n        \n         </br>\n         </br>\n         </br>\n        <table style=\"border-collapse: collapse; border:none; border-width: 0px; style=\"vertical-align: middle !important;\">\n            <tr style=\"float: middle; !important;\">\n                <td style=\"border-radius: 0 !important; border-style: none !important; vertical-align: middle !important; width:30%\">\n                    <img id=\"barcodeTarget\" width=\"500\" />\n                    <canvas id=\"mycanvas\"></canvas>\n                </td>\n            </tr>\n        </table>\n   </article>\n \n       <script>\n        const options = {\n            bcid:        \"gs1-128\",       // Barcode type\n            text:        \"\' . $BarcodeParent. \'\",    // Text to encode\n            scale:       2,               // 3x scaling factor\n            height:      8,              // Bar height, in millimeters\n            includetext: true,            // Show human-readable text\n            textxalign:  \"center\",        // Always good to set this\n        };\n\n        const hola3 = () => {\n            const canvas = document.createElement(\"canvas\");\n            try {\n                bwipjs.toCanvas(canvas, options);\n                document.getElementById(\"barcodeTarget\").src = canvas.toDataURL(\"image/png\");\n            } catch (e) { console.log({e}); }\n        };\n        //addEventListener(\"DOMContentLoaded\", () => {\n            hola3();\n        //});\n\n	</script>\n	\n\n	\n	\n      <script>\n      document.addEventListener(\"DOMContentLoaded\", function (event) {\n        //setTimeout(function(){ hola(); }, 1000);\n        var descargar = \' . $descargar . \';\n        if(descargar == 1) {\n             var element = document.getElementById(\"Invoices\");\n             \n             var opt = {\n                filename: \"\' . str_replace(\' \', \'\', $nombreFactura) . \'.pdf\",\n                image: { type: \"jpeg\", quality: 0.98 },\n                html2canvas: { scale: 2, useCORS: true, letterRendering: true },\n                jsPDF: { unit: \"mm\", format: \"letter\", orientation: \"portrait\" }\n             };\n    		 html2pdf(element, opt);\n    		 setTimeout(function(){ window.close(); }, 1650);\n        }\n        });\n        \n        function hola(){\n            var element = document.getElementById(\"Invoices\");\n             \n             var opt = {\n                filename: \"\' . $factura[\"contrato\"] . \'.pdf\",\n                image: { type: \"jpeg\", quality: 0.98 },\n                html2canvas: { scale: 2, useCORS: true, letterRendering: true },\n                jsPDF: { unit: \"mm\", format: \"letter\", orientation: \"portrait\" }\n             };\n    		 html2pdf(element, opt);\n        }\n   </script>\n</body>\n</html>\';\n\necho $html;\ndie();\n\n\n?>','A'),(998,'mod/app_ventas/liquidacion_mecanicos.php','2025-01-31 11:50:00','rafael',481,12607,'<?php\n\n @session_start();\n\nif(!isset($_SESSION[\'PCOSESS_SesionAbierta\'])) {\n	echo \'<head><title>Error</title><style type=\"text/css\"> body { background-color: #000000; color: #7f7f7f; font-family: sans-serif,helvetica; } </style></head><body><table width=\"100%\" height=\"100%\" border=0><tr><td align=center>&#9827; Acceso no autorizado !</td></tr></table></body>\';\n	die();\n}\n/*include_once \'../../core/configuracion.php\';\ninclude_once \'../../core/conexiones.php\';\ninclude_once \'../../inc/practico/def_basedatos.php\';\ninclude_once \'../../core/comunes.php\';*/\n\n$saldoFavor = $factura[\"saldo_pendiente\"] < 0 ? -$factura[\"saldo_pendiente\"] : 0;\n$nombreFactura = $factura[\"id_contrato\"] . \'-\' .$factura[\"nombres\"] . \' \' . $factura[\"apellidos\"];\n$saldoPendienteValor = $factura[\"saldo_pendiente\"] > 0 ? $factura[\"saldo_pendiente\"] : 0;\n$saldoPendiente = number_format($saldoPendienteValor, 0, \',\', \'.\');\n$totalValor =  number_format($factura[\"valor_sin_recargo\"] + $saldoPendienteValor - $saldoFavor, 0, \',\', \'.\');\n$total = $totalValor > 0 ? $totalValor : 0;\n\n$fechaSinRecargoBr = str_replace(\"-\", \"\", $factura[\"fecha_sin_recargo\"]);\n$totalValor =  number_format($factura[\"valor_sin_recargo\"] + $saldoPendienteValor - $saldoFavor, 0, \',\', \'.\');\n$total = $totalValor > 0 ? $totalValor : 0;\n$totalBr = str_replace(\".\", \"\", $total);\n// $codigobarra = $factura[\"codigo_gs1\"]; // \"7709998678439\";\n// $BarcodeParent = \"(415)$codigobarra(8020)\" . $factura[\"id\"] . \"(3900)$totalBr(96)$fechaSinRecargoBr\";\n\n$descargar = 0;\n/* if ($PCO_Accion == \"FACTURAS_descargarFactura\")\n    $descargar = 1; */\n\n$html = \'\n<html>\n\n<head>\n   <meta charset=\"utf-8\">\n   <title>Factura</title>\n   <style>\n      * {\n         border: 0;\n         box-sizing: content-box;\n         color: inherit;\n         font-family: Verdana;\n         font-size: inherit;\n         font-style: inherit;\n         font-weight: inherit;\n         line-height: inherit;\n         list-style: none;\n         margin: 0;\n         padding: 0;\n         text-decoration: none;\n         vertical-align: top;\n      }\n\n      /* heading */\n\n      h1 {\n         font: bold 100% sans-serif;\n         letter-spacing: 0.5em;\n         text-align: center;\n         text-transform: uppercase;\n      }\n\n      /* table */\n\n      table {\n         font-size: 75%;\n         table-layout: fixed;\n         width: 100%;\n      }\n\n      table {\n         border-collapse: separate;\n         border-spacing: 3px;\n      }\n\n      th,\n      td {\n         border-width: 1px;\n         padding: 0.5em;\n         position: relative;\n         text-align: center;\n      }\n\n      th,\n      td {\n         border-radius: 0.25em;\n         border-style: solid;\n      }\n\n      th {\n         background: #1f60a0;\n         color: #fff;\n         border-color: #BBB;\n      }\n\n      td {\n         border-color: #DDD;\n      }\n\n      /* page */\n\n      html {\n         font: 16px/1 \"Open Sans\", sans-serif;\n         overflow: auto;\n         padding: 0.5in;\n      }\n\n      html {\n         background: #999;\n         cursor: default;\n      }\n\n      body {\n         box-sizing: border-box;\n         height: 11in;\n         margin: 0 auto;\n         overflow: hidden;\n         padding: 0.5in;\n         width: 8.5in;\n      }\n\n      body {\n         background: #FFF;\n         border-radius: 1px;\n         box-shadow: 0 0 1in -0.25in rgba(0, 0, 0, 0.5);\n      }\n\n      /* header */\n\n      header {\n         margin: 0 0 3em;\n      }\n\n      header:after {\n         clear: both;\n         content: \"\";\n         display: table;\n      }\n\n      header h1 {\n         background: #000;\n         border-radius: 0.25em;\n         color: #FFF;\n         margin: 0 0 1em;\n         padding: 0.5em 0;\n      }\n\n      header address {\n         float: left;\n         font-size: 75%;\n         font-style: normal;\n         line-height: 1.25;\n         margin: 0 1em 1em 0;\n      }\n\n      header address p {\n         margin: 0 0 0.25em;\n      }\n\n      header span,\n      header img {\n         display: block;\n         float: right;\n      }\n\n      header span {\n         margin: 0 0 1em 1em;\n         max-height: 25%;\n         max-width: 60%;\n         position: relative;\n      }\n\n      header img {\n         max-height: 100%;\n         max-width: 100%;\n      }\n\n      header input {\n         cursor: pointer;\n         -ms-filter: \"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)\";\n         height: 100%;\n         left: 0;\n         opacity: 0;\n         position: absolute;\n         top: 0;\n         width: 100%;\n      }\n\n      /* article */\n\n      article,\n      article address,\n      table.meta,\n      table.inventory {\n         margin: 0 0 1.3em;\n      }\n\n      article:after {\n         clear: both;\n         content: \"\";\n         display: table;\n      }\n\n      article h1 {\n         clip: rect(0 0 0 0);\n         position: absolute;\n      }\n\n      article address {\n         float: left;\n         font-size: 125%;\n      }\n\n      /* table meta & balance */\n\n      table.meta,\n      table.balance {\n         float: right;\n         width: 36%;\n      }\n\n      table.meta:after,\n      table.balance:after {\n         clear: both;\n         content: \"\";\n         display: table;\n      }\n\n      /* table meta */\n\n      table.meta th {\n         width: 40%;\n      }\n\n      table.meta td {\n         width: 60%;\n      }\n\n      /* table items */\n\n      table.inventory {\n         clear: both;\n         width: 100%;\n      }\n\n      table.inventory th {\n         font-weight: bold;\n         text-align: center;\n      }\n\n      table.inventory td:nth-child(1) {\n         width: 26%;\n      }\n\n      table.inventory td:nth-child(2) {\n         width: 38%;\n      }\n\n      table.inventory td:nth-child(3) {\n         text-align: center;\n         width: 12%;\n      }\n\n      table.inventory td:nth-child(4) {\n         text-align: center;\n         width: 12%;\n      }\n\n      table.inventory td:nth-child(5) {\n         text-align: center;\n         width: 12%;\n      }\n\n      /* table balance */\n\n      table.balance th {\n         width: 40%;\n         text-align: center;\n      }\n\n      table.balance td {\n         width: 60%;\n         text-align: center;\n      }\n\n      /* aside */\n\n      aside h1 {\n         border: none;\n         border-width: 0 0 1px;\n         margin: 0 0 1em;\n      }\n\n      aside h1 {\n         border-color: #999;\n         border-bottom-style: solid;\n      }\n\n      /* javascript */\n\n      @media print {\n         * {\n            -webkit-print-color-adjust: exact;\n         }\n\n         html {\n            background: none;\n            padding: 0;\n         }\n\n         body {\n            box-shadow: none;\n            margin: 0;\n         }\n\n         span:empty {\n            display: none;\n         }\n      }\n\n      @page {\n         margin: 0;\n      }\n   </style>\n    <link rel=\"stylesheet\" href=\"inc/pdfLib/all.min.css\">\n    <script type=\"text/javascript\" src=\"inc/pdfLib/html2pdf.bundle.min.js\"></script>\n    <script type=\"text/javascript\" src=\"inc/bwip/bwip-js-min.js\"></script>\n    \n            <!--<link rel=\"stylesheet\" href=\"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.1/css/all.min.css\">-->\n            <!--<script src=\"https://cdnjs.cloudflare.com/ajax/libs/html2pdf.js/0.10.1/html2pdf.bundle.min.js\"\n              integrity=\"sha512-GsLlZN/3F2ErC5ifS5QtgpiJtWd43JWSuIgh7mbzZ8zBps+dvLusV+eNQATqgA/HdeKFVgA5v3S/cIrLF7QnIg==\"\n              crossorigin=\"anonymous\" referrerpolicy=\"no-referrer\"></script>-->\n</head>\n<body id=\"Invoices\">\n\n   <article>\n      <BR>\n      <BR>\n      <BR>\n      <address>\n         <!--<p style=\"color:#14406b; font-size: 18px; font-weight: bold;\">AUTONORTE</p>\n         <p style=\"font-size: 12px;\">NIT: 811018300-6</p>\n         <p style=\"font-size: 12px;\">CLL 21 # 8-78 San Jerónimo, Ant</p> -->\n         <BR>\n         <p style=\"font-size: 14px;\">\n            <span style=\"font-weight: bold;\">Nombre: </span>\' . $liq[\"nombre_completo\"] . \' <br>\n            <span style=\"font-weight: bold;\">Dirección: </span>\' . $liq[\"direccion\"] . \' <br>\n         </p>\n      </address>\n\n      <table class=\"meta\">\n        <tr>\n            <th style=\"width: 120px !important;\"><span>Fecha</span></th>\n            <td><span>\' . $liq[\"fecha\"] . \'</span></td>\n         </tr>\n      </table>\n      <table class=\"inventory\">\n         <thead>\n            <tr>\n               <th><span>Valor venta</span></th>\n               <th><span>Valor abono</span></th>\n               <th><span>Valor debito</span></th>\n               <th><span>Seguridad social</span></th>\n            </tr>\n         </thead>\n         <tbody>\n            <tr>\n               <td><span>\' . $liq[\"valor_venta\"] . \'</span></td>\n               <td><span>\' . $liq[\"valor_novedad_abonar\"] . \'</span></td>\n               <td><span>\' . $liq[\"valor_novedad_debitar\"] . \'</span></td>\n               <td><span>\' . $liq[\"seguridad_social\"] . \'</span></td>\n            </tr>\n         </tbody>\n      </table>\n\n      <table class=\"balance\" style=\"font-size: 11px;\">\n         <tr>\n            <td><span>SUBTOTAL</span></td>\n            <th><span data-prefix>$</span><span>\' . number_format($factura[\"valor_sin_recargo\"], 0, \',\', \'.\') . \'</span></th>\n         </tr>\n         <tr>\n            <td><span>CUENTAS VENCIDAS</span></td>\n            <th><span data-prefix>$</span><span>\' . $saldoPendiente . \'</span></th>\n         </tr>\n         <tr>\n            <td><span>SALDO A FAVOR</span></td>\n            <th><span data-prefix>$</span><span>\' . number_format($saldoFavor, 0, \',\', \'.\') . \'</span></th>\n         </tr>\n         <tr>\n            <td><span>OTROS</span></td>\n            <th><span data-prefix>$</span><span>0</span></th>\n         </tr>\n         <tr style=\"color: #fff; font-size: 16px;\">\n            <td style=\"background-color: #1f60a0; font-weight: bold;\"><span>TOTAL</span></td>\n            <th style=\"background-color: #14406b;\"><span data-prefix>$</span><span>\' . $total . \'</span></th>\n         </tr>\n       \n            \n        </tr>\n         </tr>\n      </table>\n      </div>\n        \n         </br>\n         </br>\n         </br>\n        <table style=\"border-collapse: collapse; border:none; border-width: 0px; style=\"vertical-align: middle !important;\">\n            <tr style=\"float: middle; !important;\">\n                <td style=\"border-radius: 0 !important; border-style: none !important; vertical-align: middle !important; width:30%\">\n                    <img id=\"barcodeTarget\" width=\"500\" />\n                    <canvas id=\"mycanvas\"></canvas>\n                </td>\n            </tr>\n        </table>\n   </article>\n \n       <script>\n        const options = {\n            bcid:        \"gs1-128\",       // Barcode type\n            text:        \"\' . $BarcodeParent. \'\",    // Text to encode\n            scale:       2,               // 3x scaling factor\n            height:      8,              // Bar height, in millimeters\n            includetext: true,            // Show human-readable text\n            textxalign:  \"center\",        // Always good to set this\n        };\n\n        const hola3 = () => {\n            const canvas = document.createElement(\"canvas\");\n            try {\n                bwipjs.toCanvas(canvas, options);\n                document.getElementById(\"barcodeTarget\").src = canvas.toDataURL(\"image/png\");\n            } catch (e) { console.log({e}); }\n        };\n        //addEventListener(\"DOMContentLoaded\", () => {\n            hola3();\n        //});\n\n	</script>\n	\n\n	\n	\n      <script>\n      document.addEventListener(\"DOMContentLoaded\", function (event) {\n        //setTimeout(function(){ hola(); }, 1000);\n        var descargar = \' . $descargar . \';\n        if(descargar == 1) {\n             var element = document.getElementById(\"Invoices\");\n             \n             var opt = {\n                filename: \"\' . str_replace(\' \', \'\', $nombreFactura) . \'.pdf\",\n                image: { type: \"jpeg\", quality: 0.98 },\n                html2canvas: { scale: 2, useCORS: true, letterRendering: true },\n                jsPDF: { unit: \"mm\", format: \"letter\", orientation: \"portrait\" }\n             };\n    		 html2pdf(element, opt);\n    		 setTimeout(function(){ window.close(); }, 1650);\n        }\n        });\n        \n        function hola(){\n            var element = document.getElementById(\"Invoices\");\n             \n             var opt = {\n                filename: \"\' . $factura[\"contrato\"] . \'.pdf\",\n                image: { type: \"jpeg\", quality: 0.98 },\n                html2canvas: { scale: 2, useCORS: true, letterRendering: true },\n                jsPDF: { unit: \"mm\", format: \"letter\", orientation: \"portrait\" }\n             };\n    		 html2pdf(element, opt);\n        }\n   </script>\n</body>\n</html>\';\n\necho $html;\ndie();\n\n\n?>','A'),(999,'mod/app_ventas/index.php','2025-01-31 11:53:00','rafael',226,10488,'<?php\n\nfunction calcularTotalVenta($id, $returnArr = \"\") {\n    $venta = PCO_EjecutarSQL(\"\n        SELECT SUM(precio * cantidad) as total, SUM(precio * iva/100) iva\n        FROM app_ventas_detalle\n        WHERE id_venta = \'$id\' GROUP BY id_venta\n    \")->fetch();\n    $ventaMecanico = PCO_EjecutarSQL(\"\n        SELECT TRUNCATE(SUM(vd.precio * vd.cantidad * p.porcentaje_mecanico/100), 2)\n        FROM app_ventas_detalle vd, app_ventas v, app_productos p\n        WHERE vd.id_venta=v.id AND vd.id_producto=p.id AND  vd.id_venta = \'$id\' AND v.id_mecanico <> 0 GROUP BY vd.id_venta\n    \")->fetchColumn();\n    $total = $venta[\"total\"] ? $venta[\"total\"] : 0;\n    $iva = $venta[\"iva\"] ? $venta[\"iva\"] : 0;\n    PCO_EjecutarSQLUnaria(\"UPDATE app_ventas SET total = $total, iva = $iva, total_mecanico=\'$ventaMecanico\' WHERE id = $id \");\n    if($returnArr)\n        return $venta;\n    return \'\"total\": \' . $total . \', \"iva\": \' . $iva;\n}\n\nif($PCO_Accion == \"VENTA_ingresarRealizarVenta\") {\n    $ventaAbierta = PCO_EjecutarSQL(\"\n        SELECT id, id_cliente, total, iva, placa\n        FROM app_ventas\n        WHERE id=\'$PCO_Valor\'\n    \")->fetch();\n\n    $id_venta = $ventaAbierta[\"id\"] || \"\";\n    if($id_venta) {\n        $total = number_format($ventaAbierta[\"total\"], 2);\n        $iva = number_format($ventaAbierta[\"iva\"], 2);\n        $id_cliente = $ventaAbierta[\"id_cliente\"];\n    }\n\n    PCO_CargarFormulario(8, 1, \"id\", $id_venta);\n}\n\nif($PCO_Accion == \"VENTA_agregarProductoCrearOC\") {\n        //crear cliente en caso de que no llegue id_cliente\n        if(!$id_cliente) {\n            PCO_EjecutarSQLUnaria(\"INSERT INTO app_clientes (nombre_completo, numero_documento, telefono) VALUES (?,?,?) \",\n                \"$nombre_completo$_SeparadorCampos_$numero_documento$_SeparadorCampos_$telefono\"\n            );\n            // $id_cliente = PCO_ObtenerUltimoIDInsertado();\n            $id_cliente = PCO_EjecutarSQL(\"\n                SELECT id\n                FROM app_clientes\n                WHERE numero_documento=\'$numero_documento\' AND telefono=\'$telefono\' AND \'$nombre_completo\'\n            \")->fetchColumn();\n        }\n        $todayMysql = date(\"Y-m-d H:i:s\");\n        PCO_EjecutarSQLUnaria(\"INSERT INTO app_ventas (id_cliente, usuario, fecha, placa, id_mecanico, tipo_venta) VALUES (?,?,?,?,?,?) \", \"$id_cliente$_SeparadorCampos_$PCOSESS_LoginUsuario$_SeparadorCampos_$todayMysql$_SeparadorCampos_$placa$_SeparadorCampos_$id_mecanico$_SeparadorCampos_$tipo_venta\");\n        $id = PCO_EjecutarSQL(\"\n            SELECT id\n            FROM app_ventas\n            WHERE fecha=\'$todayMysql\' AND usuario=\'$PCOSESS_LoginUsuario\' AND id_cliente = \'$id_cliente\'\n        \")->fetchColumn();\n        // $id = PCO_ObtenerUltimoIDInsertado();\n\n    $producto = PCO_EjecutarSQL(\"\n        SELECT id, precio_venta, iva, inventario\n        FROM app_productos\n        WHERE id = \'$id_producto\'\n    \")->fetch();\n    if($producto[\"id\"]) {\n        $existe = PCO_EjecutarSQL(\"\n            SELECT count(id)\n            FROM app_ventas_detalle\n            WHERE id_venta = $id AND id_producto = \'$id_producto\'\n        \")->fetchColumn();\n        if($existe > 0) {\n            print_r(\'{\"success\": false, \"msg\": \"El producto ya se ha ingresado\"}\');\n            die();\n        }\n        /* if($producto[\"inventario\"] < $cantidad) {\n            print_r(\'{\"success\": false, \"msg\": \"La cantidad digitada supera la del invetario\"}\');\n            die();\n        } */\n        // $inventarioNew = $producto[\"inventario\"] - $cantidad;\n        // PCO_EjecutarSQLUnaria(\"UPDATE app_productos SET inventario = $inventarioNew WHERE id = \" . $producto[\"id\"]);\n        PCO_EjecutarSQLUnaria(\"INSERT INTO app_ventas_detalle (id_venta, id_producto, cantidad, precio, iva, hora_inicio, hora_fin, guaje) VALUES (?,?,?,?,?,?,?,?) \", \n            \"$id$_SeparadorCampos_$id_producto$_SeparadorCampos_$cantidad$_SeparadorCampos_$precio$_SeparadorCampos_\" . $producto[\"iva\"].\"$_SeparadorCampos_$hora_inicio$_SeparadorCampos_$hora_fin$_SeparadorCampos_$guaje\");\n        calcularTotalVenta($id);\n        \n        /* $total = number_format($result[\"total\"], 2);\n        $iva = number_format($result[\"iva\"], 2); */\n\n        echo \'<script type=\"text/javascript\">\n        	document.FRMBASEINFORME.PCO_Accion.value=\"PCO_CargarObjeto\";\n        	document.FRMBASEINFORME.PCO_Objeto.value=\"frm:8:1:id:\'.$id.\'\";\n        	document.FRMBASEINFORME.Precarga_EstilosBS.value=\"1\";\n        	document.FRMBASEINFORME.Presentar_FullScreen.value=\"0\";\n        	document.FRMBASEINFORME.target=\"_self\";\n        	document.FRMBASEINFORME.submit();\n    	 </script>\';\n    }\n}\n\nif($PCO_Accion == \"VENTA_agregarProducto\") {\n    $producto = PCO_EjecutarSQL(\"\n        SELECT id, precio_venta, iva\n        FROM app_productos\n        WHERE id = \'$id_producto\'\n    \")->fetch();\n    if($producto[\"id\"]) {\n        $existe = PCO_EjecutarSQL(\"\n            SELECT count(id)\n            FROM app_ventas_detalle\n            WHERE id_venta = $id AND id_producto = \'$id_producto\'\n        \")->fetchColumn();\n        if($existe > 0) {\n            print_r(\'{\"success\": false, \"msg\": \"El producto ya se ha ingresado\"}\');\n            die();\n        }\n        /* if($producto[\"inventario\"] < $cantidad) {\n            print_r(\'{\"success\": false, \"msg\": \"La cantidad digitada supera la del invetario\"}\');\n            die();\n        } */\n        // $inventarioNew = $producto[\"inventario\"] - $cantidad;\n        // PCO_EjecutarSQLUnaria(\"UPDATE app_productos SET inventario = $inventarioNew WHERE id = \" . $producto[\"id\"]);\n        PCO_EjecutarSQLUnaria(\"INSERT INTO app_ventas_detalle (id_venta, id_producto, cantidad, precio, iva, hora_inicio, hora_fin, guaje) VALUES (?,?,?,?,?,?,?,?) \", \n            \"$id$_SeparadorCampos_$id_producto$_SeparadorCampos_$cantidad$_SeparadorCampos_$precioVenta$_SeparadorCampos_\" . $producto[\"iva\"].\"$_SeparadorCampos$hora_inicio$_SeparadorCampos$hora_fin$_SeparadorCampos$guaje\");\n        $result = calcularTotalVenta($id);\n        print_r(\'{\"success\": true, \"id\": \' . $id . \', \' . $result . \'}\');\n        die();\n    }\n    print_r(\'{\"success\": false, \"msg\": \"No se ha encontrado el producto seleccionado\"}\');\n    die();\n}\n\nif($PCO_Accion == \"VENTA_consultarTotalVenta\") {\n    if($id) {\n        $result = calcularTotalVenta($id);\n        print_r(\'{\"success\": true, \"id\": \' . $id . \', \' . $result . \'}\');\n        die();\n    }\n    print_r(\'{\"success\": false, \"msg\": \"No se encontro la venta\"}\');\n    die();\n}\n\nif($PCO_Accion == \"VENTA_eliminarProducto\") {\n\n    if($id_venta_detalle && $id_venta) {\n        $producto = PCO_EjecutarSQL(\"\n            SELECT p.inventario, vd.cantidad, p.id\n            FROM app_ventas_detalle vd, app_productos p\n            WHERE vd.id_producto = p.id AND vd.id = \'$id_venta_detalle\'\n        \")->fetch();\n        //Restablecemos el inventario\n        $inventarioNew = $producto[\"inventario\"] + $producto[\"cantidad\"];\n        PCO_EjecutarSQLUnaria(\"UPDATE app_productos SET inventario = $inventarioNew WHERE id = \" . $producto[\"id\"]);\n        PCO_EjecutarSQLUnaria(\"DELETE FROM app_ventas_detalle WHERE id_venta = $id_venta AND id = $id_venta_detalle\");\n        $result = calcularTotalVenta($id_venta);\n        print_r(\'{\"success\": true, \"msg\": \"Se ha eliminado el producto exitosamente\", \' . $result . \'}\');\n        die();\n    }\n    print_r(\'{\"success\": false, \"msg\": \"No se pudo eliminar el producto\"}\');\n    die();\n}\n\nif($PCO_Accion == \"VENTA_actualizarProductoVenta\") {\n    if($id) {\n        PCO_EjecutarSQLUnaria(\"UPDATE app_ventas_detalle SET cantidad=\'$cantidad\', precio=\'$precio\' WHERE id = \'$id\'\");\n        echo 1;\n        die();\n    }\n    echo 0;\n    die();\n}\n\nif($PCO_Accion == \"VENTA_imprimirFactura\") {\n    if($PCO_Valor)\n        $id = $PCO_Valor;\n    if($id) {\n        include_once \"imprimirFactura.php\";\n    }\n}\n\nif($PCO_Accion == \"VENTA_generarLiquidacionMecanicos\") {\n    $ventas = PCO_EjecutarSQL(\"\n        SELECT v.id, v.id_mecanico, SUM(v.total_mecanico) as Total, m.seguridad_social\n        FROM app_mecanicos m,app_ventas v\n        WHERE m.id = v.id_mecanico AND v.fecha >= \'$fecha_inicio 00:00:00\' AND v.fecha <= \'$fecha_fin 23:59:59\' AND v.estado = 1 AND id_mecanico <> 0 AND id_liquidacion=0\n        GROUP BY v.id_mecanico\n    \")->fetchAll();\n    foreach ($ventas as $venta) {\n        $valor_novedad = PCO_EjecutarSQL(\"\n            SELECT  \n                SUM(case when tipo_novedad=\'Abonar\' then valor_novedad else 0 end) as abonar,\n                SUM(case when tipo_novedad=\'Debitar\' then valor_novedad else 0 end) as debitar\n            FROM app_novedades_mecanicos\n            WHERE fecha >= \'$fecha_inicio\' AND fecha <= \'$fecha_fin\'\n                AND id_mecanico=\'\".$venta[\'id_mecanico\'].\"\' AND id_liquidacion=0\n            GROUP BY id_mecanico\n        \")->fetch();\n\n        PCO_EjecutarSQLUnaria(\"INSERT INTO app_liquidacion_mecanicos_enc (id_mecanico, fecha_inicio, fecha_fin, fecha, valor_venta, valor_novedad_abonar, valor_novedad_debitar, seguridad_social, usuario) VALUES (?,?,?,?,?,?,?,?,?) \",\n            $venta[\"id_mecanico\"].\"$_SeparadorCampos_$fecha_inicio$_SeparadorCampos_$fecha_fin$_SeparadorCampos_$PCO_FechaOperacionGuiones$_SeparadorCampos_\".$venta[\"Total\"].\"$_SeparadorCampos_\".$valor_novedad[\'abonar\'].\"$_SeparadorCampos_\".$valor_novedad[\'debitar\'].\"$_SeparadorCampos_\".$venta[\"seguridad_social\"].\"$_SeparadorCampos_$PCOSESS_LoginUsuario\"\n        );\n        \n        PCO_EjecutarSQLUnaria(\"\n        UPDATE app_novedades_mecanicos \n        SET id_liquidacion=1\n        WHERE \n            fecha >= \'$fecha_inicio\' AND fecha <= \'$fecha_fin\' AND id_mecanico=\'\".$venta[\'id_mecanico\'].\"\' AND id_liquidacion=0\n        \");\n    }\n        // arq de estados\n        //actualiozar estados\n    PCO_EjecutarSQLUnaria(\"\n        UPDATE app_ventas \n        SET id_liquidacion=1\n        WHERE app_mecanicos.id = app_ventas.id_mecanico AND app_ventas.fecha >= \'$fecha_inicio 00:00:00\' AND app_ventas.fecha <= \'$fecha_fin 23:59:59\' AND app_ventas.estado = 1 AND id_mecanico <> 0 AND id_liquidacion=0\");\n    PCO_CargarFormulario(14);\n}\n\nif($PCO_Accion == \"VENTAS_verLiquidacion\") {\n    $liq = PCO_EjecutarSQL(\"\n        SELECT l.*, m.nombre_completo, m.cedula, m.telefono, m.direccion, m.correo,\n            CONCAT(\'$\',FORMAT((l.valor_venta + l.valor_novedad_abonar - l.valor_novedad_debitar - l.seguridad_social),2,\'de_DE\')) total\n        FROM app_liquidacion_mecanicos_enc l,app_mecanicos m \n        WHERE l.id_mecanico = m.id AND l.id=\'$PCO_Valor\'\n    \")->fetch();\n    include \'liquidacion_mecanicos.php\';\n}','A'),(1000,'mod/app_ventas/liquidacion_mecanicos.php','2025-01-31 11:53:00','rafael',455,11203,'<?php\n\n @session_start();\n\nif(!isset($_SESSION[\'PCOSESS_SesionAbierta\'])) {\n	echo \'<head><title>Error</title><style type=\"text/css\"> body { background-color: #000000; color: #7f7f7f; font-family: sans-serif,helvetica; } </style></head><body><table width=\"100%\" height=\"100%\" border=0><tr><td align=center>&#9827; Acceso no autorizado !</td></tr></table></body>\';\n	die();\n}\n\n$total = $liq[\'total\'];\n// $codigobarra = $factura[\"codigo_gs1\"]; // \"7709998678439\";\n// $BarcodeParent = \"(415)$codigobarra(8020)\" . $factura[\"id\"] . \"(3900)$totalBr(96)$fechaSinRecargoBr\";\n\n$descargar = 0;\n/* if ($PCO_Accion == \"FACTURAS_descargarFactura\")\n    $descargar = 1; */\n\n$html = \'\n<html>\n\n<head>\n   <meta charset=\"utf-8\">\n   <title>Factura</title>\n   <style>\n      * {\n         border: 0;\n         box-sizing: content-box;\n         color: inherit;\n         font-family: Verdana;\n         font-size: inherit;\n         font-style: inherit;\n         font-weight: inherit;\n         line-height: inherit;\n         list-style: none;\n         margin: 0;\n         padding: 0;\n         text-decoration: none;\n         vertical-align: top;\n      }\n\n      /* heading */\n\n      h1 {\n         font: bold 100% sans-serif;\n         letter-spacing: 0.5em;\n         text-align: center;\n         text-transform: uppercase;\n      }\n\n      /* table */\n\n      table {\n         font-size: 75%;\n         table-layout: fixed;\n         width: 100%;\n      }\n\n      table {\n         border-collapse: separate;\n         border-spacing: 3px;\n      }\n\n      th,\n      td {\n         border-width: 1px;\n         padding: 0.5em;\n         position: relative;\n         text-align: center;\n      }\n\n      th,\n      td {\n         border-radius: 0.25em;\n         border-style: solid;\n      }\n\n      th {\n         background: #1f60a0;\n         color: #fff;\n         border-color: #BBB;\n      }\n\n      td {\n         border-color: #DDD;\n      }\n\n      /* page */\n\n      html {\n         font: 16px/1 \"Open Sans\", sans-serif;\n         overflow: auto;\n         padding: 0.5in;\n      }\n\n      html {\n         background: #999;\n         cursor: default;\n      }\n\n      body {\n         box-sizing: border-box;\n         height: 11in;\n         margin: 0 auto;\n         overflow: hidden;\n         padding: 0.5in;\n         width: 8.5in;\n      }\n\n      body {\n         background: #FFF;\n         border-radius: 1px;\n         box-shadow: 0 0 1in -0.25in rgba(0, 0, 0, 0.5);\n      }\n\n      /* header */\n\n      header {\n         margin: 0 0 3em;\n      }\n\n      header:after {\n         clear: both;\n         content: \"\";\n         display: table;\n      }\n\n      header h1 {\n         background: #000;\n         border-radius: 0.25em;\n         color: #FFF;\n         margin: 0 0 1em;\n         padding: 0.5em 0;\n      }\n\n      header address {\n         float: left;\n         font-size: 75%;\n         font-style: normal;\n         line-height: 1.25;\n         margin: 0 1em 1em 0;\n      }\n\n      header address p {\n         margin: 0 0 0.25em;\n      }\n\n      header span,\n      header img {\n         display: block;\n         float: right;\n      }\n\n      header span {\n         margin: 0 0 1em 1em;\n         max-height: 25%;\n         max-width: 60%;\n         position: relative;\n      }\n\n      header img {\n         max-height: 100%;\n         max-width: 100%;\n      }\n\n      header input {\n         cursor: pointer;\n         -ms-filter: \"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)\";\n         height: 100%;\n         left: 0;\n         opacity: 0;\n         position: absolute;\n         top: 0;\n         width: 100%;\n      }\n\n      /* article */\n\n      article,\n      article address,\n      table.meta,\n      table.inventory {\n         margin: 0 0 1.3em;\n      }\n\n      article:after {\n         clear: both;\n         content: \"\";\n         display: table;\n      }\n\n      article h1 {\n         clip: rect(0 0 0 0);\n         position: absolute;\n      }\n\n      article address {\n         float: left;\n         font-size: 125%;\n      }\n\n      /* table meta & balance */\n\n      table.meta,\n      table.balance {\n         float: right;\n         width: 36%;\n      }\n\n      table.meta:after,\n      table.balance:after {\n         clear: both;\n         content: \"\";\n         display: table;\n      }\n\n      /* table meta */\n\n      table.meta th {\n         width: 40%;\n      }\n\n      table.meta td {\n         width: 60%;\n      }\n\n      /* table items */\n\n      table.inventory {\n         clear: both;\n         width: 100%;\n      }\n\n      table.inventory th {\n         font-weight: bold;\n         text-align: center;\n      }\n\n      table.inventory td:nth-child(1) {\n         width: 26%;\n      }\n\n      table.inventory td:nth-child(2) {\n         width: 38%;\n      }\n\n      table.inventory td:nth-child(3) {\n         text-align: center;\n         width: 12%;\n      }\n\n      table.inventory td:nth-child(4) {\n         text-align: center;\n         width: 12%;\n      }\n\n      table.inventory td:nth-child(5) {\n         text-align: center;\n         width: 12%;\n      }\n\n      /* table balance */\n\n      table.balance th {\n         width: 40%;\n         text-align: center;\n      }\n\n      table.balance td {\n         width: 60%;\n         text-align: center;\n      }\n\n      /* aside */\n\n      aside h1 {\n         border: none;\n         border-width: 0 0 1px;\n         margin: 0 0 1em;\n      }\n\n      aside h1 {\n         border-color: #999;\n         border-bottom-style: solid;\n      }\n\n      /* javascript */\n\n      @media print {\n         * {\n            -webkit-print-color-adjust: exact;\n         }\n\n         html {\n            background: none;\n            padding: 0;\n         }\n\n         body {\n            box-shadow: none;\n            margin: 0;\n         }\n\n         span:empty {\n            display: none;\n         }\n      }\n\n      @page {\n         margin: 0;\n      }\n   </style>\n    <link rel=\"stylesheet\" href=\"inc/pdfLib/all.min.css\">\n    <script type=\"text/javascript\" src=\"inc/pdfLib/html2pdf.bundle.min.js\"></script>\n    <script type=\"text/javascript\" src=\"inc/bwip/bwip-js-min.js\"></script>\n    \n            <!--<link rel=\"stylesheet\" href=\"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.1/css/all.min.css\">-->\n            <!--<script src=\"https://cdnjs.cloudflare.com/ajax/libs/html2pdf.js/0.10.1/html2pdf.bundle.min.js\"\n              integrity=\"sha512-GsLlZN/3F2ErC5ifS5QtgpiJtWd43JWSuIgh7mbzZ8zBps+dvLusV+eNQATqgA/HdeKFVgA5v3S/cIrLF7QnIg==\"\n              crossorigin=\"anonymous\" referrerpolicy=\"no-referrer\"></script>-->\n</head>\n<body id=\"Invoices\">\n\n   <article>\n      <BR>\n      <BR>\n      <BR>\n      <address>\n         <!--<p style=\"color:#14406b; font-size: 18px; font-weight: bold;\">AUTONORTE</p>\n         <p style=\"font-size: 12px;\">NIT: 811018300-6</p>\n         <p style=\"font-size: 12px;\">CLL 21 # 8-78 San Jerónimo, Ant</p> -->\n         <BR>\n         <p style=\"font-size: 14px;\">\n            <span style=\"font-weight: bold;\">Nombre: </span>\' . $liq[\"nombre_completo\"] . \' <br>\n            <span style=\"font-weight: bold;\">Dirección: </span>\' . $liq[\"direccion\"] . \' <br>\n         </p>\n      </address>\n\n      <table class=\"meta\">\n        <tr>\n            <th style=\"width: 120px !important;\"><span>Fecha</span></th>\n            <td><span>\' . $liq[\"fecha\"] . \'</span></td>\n         </tr>\n      </table>\n      <table class=\"inventory\">\n         <thead>\n            <tr>\n               <th><span>Valor venta</span></th>\n               <th><span>Valor abono</span></th>\n               <th><span>Valor debito</span></th>\n               <th><span>Seguridad social</span></th>\n            </tr>\n         </thead>\n         <tbody>\n            <tr>\n               <td><span>\' . $liq[\"valor_venta\"] . \'</span></td>\n               <td><span>\' . $liq[\"valor_novedad_abonar\"] . \'</span></td>\n               <td><span>\' . $liq[\"valor_novedad_debitar\"] . \'</span></td>\n               <td><span>\' . $liq[\"seguridad_social\"] . \'</span></td>\n            </tr>\n         </tbody>\n      </table>\n\n      <table class=\"balance\" style=\"font-size: 11px;\">\n         <tr>\n            <td><span>SUBTOTAL</span></td>\n            <th><span data-prefix>$</span><span>\' . number_format($factura[\"valor_sin_recargo\"], 0, \',\', \'.\') . \'</span></th>\n         </tr>\n         <tr style=\"color: #fff; font-size: 16px;\">\n            <td style=\"background-color: #1f60a0; font-weight: bold;\"><span>TOTAL</span></td>\n            <th style=\"background-color: #14406b;\"><span data-prefix>$</span><span>\' . $total . \'</span></th>\n         </tr>\n       \n            \n        </tr>\n         </tr>\n      </table>\n      </div>\n        \n         </br>\n         </br>\n         </br>\n        <table style=\"border-collapse: collapse; border:none; border-width: 0px; style=\"vertical-align: middle !important;\">\n            <tr style=\"float: middle; !important;\">\n                <td style=\"border-radius: 0 !important; border-style: none !important; vertical-align: middle !important; width:30%\">\n                    <img id=\"barcodeTarget\" width=\"500\" />\n                    <canvas id=\"mycanvas\"></canvas>\n                </td>\n            </tr>\n        </table>\n   </article>\n \n       <script>\n        const options = {\n            bcid:        \"gs1-128\",       // Barcode type\n            text:        \"\' . $BarcodeParent. \'\",    // Text to encode\n            scale:       2,               // 3x scaling factor\n            height:      8,              // Bar height, in millimeters\n            includetext: true,            // Show human-readable text\n            textxalign:  \"center\",        // Always good to set this\n        };\n\n        const hola3 = () => {\n            const canvas = document.createElement(\"canvas\");\n            try {\n                bwipjs.toCanvas(canvas, options);\n                document.getElementById(\"barcodeTarget\").src = canvas.toDataURL(\"image/png\");\n            } catch (e) { console.log({e}); }\n        };\n        //addEventListener(\"DOMContentLoaded\", () => {\n            hola3();\n        //});\n\n	</script>\n	\n\n	\n	\n      <script>\n      document.addEventListener(\"DOMContentLoaded\", function (event) {\n        //setTimeout(function(){ hola(); }, 1000);\n        var descargar = \' . $descargar . \';\n        if(descargar == 1) {\n             var element = document.getElementById(\"Invoices\");\n             \n             var opt = {\n                filename: \"\' . str_replace(\' \', \'\', $nombreFactura) . \'.pdf\",\n                image: { type: \"jpeg\", quality: 0.98 },\n                html2canvas: { scale: 2, useCORS: true, letterRendering: true },\n                jsPDF: { unit: \"mm\", format: \"letter\", orientation: \"portrait\" }\n             };\n    		 html2pdf(element, opt);\n    		 setTimeout(function(){ window.close(); }, 1650);\n        }\n        });\n        \n        function hola(){\n            var element = document.getElementById(\"Invoices\");\n             \n             var opt = {\n                filename: \"\' . $factura[\"contrato\"] . \'.pdf\",\n                image: { type: \"jpeg\", quality: 0.98 },\n                html2canvas: { scale: 2, useCORS: true, letterRendering: true },\n                jsPDF: { unit: \"mm\", format: \"letter\", orientation: \"portrait\" }\n             };\n    		 html2pdf(element, opt);\n        }\n   </script>\n</body>\n</html>\';\n\necho $html;\ndie();\n\n\n?>','A'),(1001,'mod/app_ventas/liquidacion_mecanicos.php','2025-01-31 11:54:00','rafael',455,11177,'<?php\n\n @session_start();\n\nif(!isset($_SESSION[\'PCOSESS_SesionAbierta\'])) {\n	echo \'<head><title>Error</title><style type=\"text/css\"> body { background-color: #000000; color: #7f7f7f; font-family: sans-serif,helvetica; } </style></head><body><table width=\"100%\" height=\"100%\" border=0><tr><td align=center>&#9827; Acceso no autorizado !</td></tr></table></body>\';\n	die();\n}\n\n$total = $liq[\'total\'];\n// $codigobarra = $factura[\"codigo_gs1\"]; // \"7709998678439\";\n// $BarcodeParent = \"(415)$codigobarra(8020)\" . $factura[\"id\"] . \"(3900)$totalBr(96)$fechaSinRecargoBr\";\n\n$descargar = 0;\n/* if ($PCO_Accion == \"FACTURAS_descargarFactura\")\n    $descargar = 1; */\n\n$html = \'\n<html>\n\n<head>\n   <meta charset=\"utf-8\">\n   <title>Factura</title>\n   <style>\n      * {\n         border: 0;\n         box-sizing: content-box;\n         color: inherit;\n         font-family: Verdana;\n         font-size: inherit;\n         font-style: inherit;\n         font-weight: inherit;\n         line-height: inherit;\n         list-style: none;\n         margin: 0;\n         padding: 0;\n         text-decoration: none;\n         vertical-align: top;\n      }\n\n      /* heading */\n\n      h1 {\n         font: bold 100% sans-serif;\n         letter-spacing: 0.5em;\n         text-align: center;\n         text-transform: uppercase;\n      }\n\n      /* table */\n\n      table {\n         font-size: 75%;\n         table-layout: fixed;\n         width: 100%;\n      }\n\n      table {\n         border-collapse: separate;\n         border-spacing: 3px;\n      }\n\n      th,\n      td {\n         border-width: 1px;\n         padding: 0.5em;\n         position: relative;\n         text-align: center;\n      }\n\n      th,\n      td {\n         border-radius: 0.25em;\n         border-style: solid;\n      }\n\n      th {\n         background: #1f60a0;\n         color: #fff;\n         border-color: #BBB;\n      }\n\n      td {\n         border-color: #DDD;\n      }\n\n      /* page */\n\n      html {\n         font: 16px/1 \"Open Sans\", sans-serif;\n         overflow: auto;\n         padding: 0.5in;\n      }\n\n      html {\n         background: #999;\n         cursor: default;\n      }\n\n      body {\n         box-sizing: border-box;\n         height: 11in;\n         margin: 0 auto;\n         overflow: hidden;\n         padding: 0.5in;\n         width: 8.5in;\n      }\n\n      body {\n         background: #FFF;\n         border-radius: 1px;\n         box-shadow: 0 0 1in -0.25in rgba(0, 0, 0, 0.5);\n      }\n\n      /* header */\n\n      header {\n         margin: 0 0 3em;\n      }\n\n      header:after {\n         clear: both;\n         content: \"\";\n         display: table;\n      }\n\n      header h1 {\n         background: #000;\n         border-radius: 0.25em;\n         color: #FFF;\n         margin: 0 0 1em;\n         padding: 0.5em 0;\n      }\n\n      header address {\n         float: left;\n         font-size: 75%;\n         font-style: normal;\n         line-height: 1.25;\n         margin: 0 1em 1em 0;\n      }\n\n      header address p {\n         margin: 0 0 0.25em;\n      }\n\n      header span,\n      header img {\n         display: block;\n         float: right;\n      }\n\n      header span {\n         margin: 0 0 1em 1em;\n         max-height: 25%;\n         max-width: 60%;\n         position: relative;\n      }\n\n      header img {\n         max-height: 100%;\n         max-width: 100%;\n      }\n\n      header input {\n         cursor: pointer;\n         -ms-filter: \"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)\";\n         height: 100%;\n         left: 0;\n         opacity: 0;\n         position: absolute;\n         top: 0;\n         width: 100%;\n      }\n\n      /* article */\n\n      article,\n      article address,\n      table.meta,\n      table.inventory {\n         margin: 0 0 1.3em;\n      }\n\n      article:after {\n         clear: both;\n         content: \"\";\n         display: table;\n      }\n\n      article h1 {\n         clip: rect(0 0 0 0);\n         position: absolute;\n      }\n\n      article address {\n         float: left;\n         font-size: 125%;\n      }\n\n      /* table meta & balance */\n\n      table.meta,\n      table.balance {\n         float: right;\n         width: 36%;\n      }\n\n      table.meta:after,\n      table.balance:after {\n         clear: both;\n         content: \"\";\n         display: table;\n      }\n\n      /* table meta */\n\n      table.meta th {\n         width: 40%;\n      }\n\n      table.meta td {\n         width: 60%;\n      }\n\n      /* table items */\n\n      table.inventory {\n         clear: both;\n         width: 100%;\n      }\n\n      table.inventory th {\n         font-weight: bold;\n         text-align: center;\n      }\n\n      table.inventory td:nth-child(1) {\n         width: 26%;\n      }\n\n      table.inventory td:nth-child(2) {\n         width: 38%;\n      }\n\n      table.inventory td:nth-child(3) {\n         text-align: center;\n         width: 12%;\n      }\n\n      table.inventory td:nth-child(4) {\n         text-align: center;\n         width: 12%;\n      }\n\n      table.inventory td:nth-child(5) {\n         text-align: center;\n         width: 12%;\n      }\n\n      /* table balance */\n\n      table.balance th {\n         width: 40%;\n         text-align: center;\n      }\n\n      table.balance td {\n         width: 60%;\n         text-align: center;\n      }\n\n      /* aside */\n\n      aside h1 {\n         border: none;\n         border-width: 0 0 1px;\n         margin: 0 0 1em;\n      }\n\n      aside h1 {\n         border-color: #999;\n         border-bottom-style: solid;\n      }\n\n      /* javascript */\n\n      @media print {\n         * {\n            -webkit-print-color-adjust: exact;\n         }\n\n         html {\n            background: none;\n            padding: 0;\n         }\n\n         body {\n            box-shadow: none;\n            margin: 0;\n         }\n\n         span:empty {\n            display: none;\n         }\n      }\n\n      @page {\n         margin: 0;\n      }\n   </style>\n    <link rel=\"stylesheet\" href=\"inc/pdfLib/all.min.css\">\n    <script type=\"text/javascript\" src=\"inc/pdfLib/html2pdf.bundle.min.js\"></script>\n    <script type=\"text/javascript\" src=\"inc/bwip/bwip-js-min.js\"></script>\n    \n            <!--<link rel=\"stylesheet\" href=\"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.1/css/all.min.css\">-->\n            <!--<script src=\"https://cdnjs.cloudflare.com/ajax/libs/html2pdf.js/0.10.1/html2pdf.bundle.min.js\"\n              integrity=\"sha512-GsLlZN/3F2ErC5ifS5QtgpiJtWd43JWSuIgh7mbzZ8zBps+dvLusV+eNQATqgA/HdeKFVgA5v3S/cIrLF7QnIg==\"\n              crossorigin=\"anonymous\" referrerpolicy=\"no-referrer\"></script>-->\n</head>\n<body id=\"Invoices\">\n\n   <article>\n      <BR>\n      <BR>\n      <BR>\n      <address>\n         <!--<p style=\"color:#14406b; font-size: 18px; font-weight: bold;\">AUTONORTE</p>\n         <p style=\"font-size: 12px;\">NIT: 811018300-6</p>\n         <p style=\"font-size: 12px;\">CLL 21 # 8-78 San Jerónimo, Ant</p> -->\n         <BR>\n         <p style=\"font-size: 14px;\">\n            <span style=\"font-weight: bold;\">Nombre: </span>\' . $liq[\"nombre_completo\"] . \' <br>\n            <span style=\"font-weight: bold;\">Dirección: </span>\' . $liq[\"direccion\"] . \' <br>\n         </p>\n      </address>\n\n      <table class=\"meta\">\n        <tr>\n            <th style=\"width: 120px !important;\"><span>Fecha</span></th>\n            <td><span>\' . $liq[\"fecha\"] . \'</span></td>\n         </tr>\n      </table>\n      <table class=\"inventory\">\n         <thead>\n            <tr>\n               <th><span>Valor venta</span></th>\n               <th><span>Valor abono</span></th>\n               <th><span>Valor debito</span></th>\n               <th><span>Seguridad social</span></th>\n            </tr>\n         </thead>\n         <tbody>\n            <tr>\n               <td><span>\' . $liq[\"valor_venta\"] . \'</span></td>\n               <td><span>\' . $liq[\"valor_novedad_abonar\"] . \'</span></td>\n               <td><span>\' . $liq[\"valor_novedad_debitar\"] . \'</span></td>\n               <td><span>\' . $liq[\"seguridad_social\"] . \'</span></td>\n            </tr>\n         </tbody>\n      </table>\n\n      <table class=\"balance\" style=\"font-size: 11px;\">\n         <tr>\n            <td><span>SUBTOTAL</span></td>\n            <th><span data-prefix>$</span><span>\' . number_format($factura[\"valor_sin_recargo\"], 0, \',\', \'.\') . \'</span></th>\n         </tr>\n         <tr style=\"color: #fff; font-size: 16px;\">\n            <td style=\"background-color: #1f60a0; font-weight: bold;\"><span>TOTAL</span></td>\n            <th style=\"background-color: #14406b;\"><span>\' . $total . \'</span></th>\n         </tr>\n       \n            \n        </tr>\n         </tr>\n      </table>\n      </div>\n        \n         </br>\n         </br>\n         </br>\n        <table style=\"border-collapse: collapse; border:none; border-width: 0px; style=\"vertical-align: middle !important;\">\n            <tr style=\"float: middle; !important;\">\n                <td style=\"border-radius: 0 !important; border-style: none !important; vertical-align: middle !important; width:30%\">\n                    <img id=\"barcodeTarget\" width=\"500\" />\n                    <canvas id=\"mycanvas\"></canvas>\n                </td>\n            </tr>\n        </table>\n   </article>\n \n       <script>\n        const options = {\n            bcid:        \"gs1-128\",       // Barcode type\n            text:        \"\' . $BarcodeParent. \'\",    // Text to encode\n            scale:       2,               // 3x scaling factor\n            height:      8,              // Bar height, in millimeters\n            includetext: true,            // Show human-readable text\n            textxalign:  \"center\",        // Always good to set this\n        };\n\n        const hola3 = () => {\n            const canvas = document.createElement(\"canvas\");\n            try {\n                bwipjs.toCanvas(canvas, options);\n                document.getElementById(\"barcodeTarget\").src = canvas.toDataURL(\"image/png\");\n            } catch (e) { console.log({e}); }\n        };\n        //addEventListener(\"DOMContentLoaded\", () => {\n            hola3();\n        //});\n\n	</script>\n	\n\n	\n	\n      <script>\n      document.addEventListener(\"DOMContentLoaded\", function (event) {\n        //setTimeout(function(){ hola(); }, 1000);\n        var descargar = \' . $descargar . \';\n        if(descargar == 1) {\n             var element = document.getElementById(\"Invoices\");\n             \n             var opt = {\n                filename: \"\' . str_replace(\' \', \'\', $nombreFactura) . \'.pdf\",\n                image: { type: \"jpeg\", quality: 0.98 },\n                html2canvas: { scale: 2, useCORS: true, letterRendering: true },\n                jsPDF: { unit: \"mm\", format: \"letter\", orientation: \"portrait\" }\n             };\n    		 html2pdf(element, opt);\n    		 setTimeout(function(){ window.close(); }, 1650);\n        }\n        });\n        \n        function hola(){\n            var element = document.getElementById(\"Invoices\");\n             \n             var opt = {\n                filename: \"\' . $factura[\"contrato\"] . \'.pdf\",\n                image: { type: \"jpeg\", quality: 0.98 },\n                html2canvas: { scale: 2, useCORS: true, letterRendering: true },\n                jsPDF: { unit: \"mm\", format: \"letter\", orientation: \"portrait\" }\n             };\n    		 html2pdf(element, opt);\n        }\n   </script>\n</body>\n</html>\';\n\necho $html;\ndie();\n\n\n?>','A'),(1002,'mod/app_ventas/liquidacion_mecanicos.php','2025-01-31 11:54:00','rafael',455,11184,'<?php\n\n @session_start();\n\nif(!isset($_SESSION[\'PCOSESS_SesionAbierta\'])) {\n	echo \'<head><title>Error</title><style type=\"text/css\"> body { background-color: #000000; color: #7f7f7f; font-family: sans-serif,helvetica; } </style></head><body><table width=\"100%\" height=\"100%\" border=0><tr><td align=center>&#9827; Acceso no autorizado !</td></tr></table></body>\';\n	die();\n}\n\n$total = $liq[\'total\'];\n// $codigobarra = $factura[\"codigo_gs1\"]; // \"7709998678439\";\n// $BarcodeParent = \"(415)$codigobarra(8020)\" . $factura[\"id\"] . \"(3900)$totalBr(96)$fechaSinRecargoBr\";\n\n$descargar = 0;\n/* if ($PCO_Accion == \"FACTURAS_descargarFactura\")\n    $descargar = 1; */\n\n$html = \'\n<html>\n\n<head>\n   <meta charset=\"utf-8\">\n   <title>Factura</title>\n   <style>\n      * {\n         border: 0;\n         box-sizing: content-box;\n         color: inherit;\n         font-family: Verdana;\n         font-size: inherit;\n         font-style: inherit;\n         font-weight: inherit;\n         line-height: inherit;\n         list-style: none;\n         margin: 0;\n         padding: 0;\n         text-decoration: none;\n         vertical-align: top;\n      }\n\n      /* heading */\n\n      h1 {\n         font: bold 100% sans-serif;\n         letter-spacing: 0.5em;\n         text-align: center;\n         text-transform: uppercase;\n      }\n\n      /* table */\n\n      table {\n         font-size: 75%;\n         table-layout: fixed;\n         width: 100%;\n      }\n\n      table {\n         border-collapse: separate;\n         border-spacing: 3px;\n      }\n\n      th,\n      td {\n         border-width: 1px;\n         padding: 0.5em;\n         position: relative;\n         text-align: center;\n      }\n\n      th,\n      td {\n         border-radius: 0.25em;\n         border-style: solid;\n      }\n\n      th {\n         background: #1f60a0;\n         color: #fff;\n         border-color: #BBB;\n      }\n\n      td {\n         border-color: #DDD;\n      }\n\n      /* page */\n\n      html {\n         font: 16px/1 \"Open Sans\", sans-serif;\n         overflow: auto;\n         padding: 0.5in;\n      }\n\n      html {\n         background: #999;\n         cursor: default;\n      }\n\n      body {\n         box-sizing: border-box;\n         height: 11in;\n         margin: 0 auto;\n         overflow: hidden;\n         padding: 0.5in;\n         width: 8.5in;\n      }\n\n      body {\n         background: #FFF;\n         border-radius: 1px;\n         box-shadow: 0 0 1in -0.25in rgba(0, 0, 0, 0.5);\n      }\n\n      /* header */\n\n      header {\n         margin: 0 0 3em;\n      }\n\n      header:after {\n         clear: both;\n         content: \"\";\n         display: table;\n      }\n\n      header h1 {\n         background: #000;\n         border-radius: 0.25em;\n         color: #FFF;\n         margin: 0 0 1em;\n         padding: 0.5em 0;\n      }\n\n      header address {\n         float: left;\n         font-size: 75%;\n         font-style: normal;\n         line-height: 1.25;\n         margin: 0 1em 1em 0;\n      }\n\n      header address p {\n         margin: 0 0 0.25em;\n      }\n\n      header span,\n      header img {\n         display: block;\n         float: right;\n      }\n\n      header span {\n         margin: 0 0 1em 1em;\n         max-height: 25%;\n         max-width: 60%;\n         position: relative;\n      }\n\n      header img {\n         max-height: 100%;\n         max-width: 100%;\n      }\n\n      header input {\n         cursor: pointer;\n         -ms-filter: \"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)\";\n         height: 100%;\n         left: 0;\n         opacity: 0;\n         position: absolute;\n         top: 0;\n         width: 100%;\n      }\n\n      /* article */\n\n      article,\n      article address,\n      table.meta,\n      table.inventory {\n         margin: 0 0 1.3em;\n      }\n\n      article:after {\n         clear: both;\n         content: \"\";\n         display: table;\n      }\n\n      article h1 {\n         clip: rect(0 0 0 0);\n         position: absolute;\n      }\n\n      article address {\n         float: left;\n         font-size: 125%;\n      }\n\n      /* table meta & balance */\n\n      table.meta,\n      table.balance {\n         float: right;\n         width: 36%;\n      }\n\n      table.meta:after,\n      table.balance:after {\n         clear: both;\n         content: \"\";\n         display: table;\n      }\n\n      /* table meta */\n\n      table.meta th {\n         width: 40%;\n      }\n\n      table.meta td {\n         width: 60%;\n      }\n\n      /* table items */\n\n      table.inventory {\n         clear: both;\n         width: 100%;\n      }\n\n      table.inventory th {\n         font-weight: bold;\n         text-align: center;\n      }\n\n      table.inventory td:nth-child(1) {\n         width: 26%;\n      }\n\n      table.inventory td:nth-child(2) {\n         width: 38%;\n      }\n\n      table.inventory td:nth-child(3) {\n         text-align: center;\n         width: 12%;\n      }\n\n      table.inventory td:nth-child(4) {\n         text-align: center;\n         width: 12%;\n      }\n\n      table.inventory td:nth-child(5) {\n         text-align: center;\n         width: 12%;\n      }\n\n      /* table balance */\n\n      table.balance th {\n         width: 40%;\n         text-align: center;\n      }\n\n      table.balance td {\n         width: 60%;\n         text-align: center;\n      }\n\n      /* aside */\n\n      aside h1 {\n         border: none;\n         border-width: 0 0 1px;\n         margin: 0 0 1em;\n      }\n\n      aside h1 {\n         border-color: #999;\n         border-bottom-style: solid;\n      }\n\n      /* javascript */\n\n      @media print {\n         * {\n            -webkit-print-color-adjust: exact;\n         }\n\n         html {\n            background: none;\n            padding: 0;\n         }\n\n         body {\n            box-shadow: none;\n            margin: 0;\n         }\n\n         span:empty {\n            display: none;\n         }\n      }\n\n      @page {\n         margin: 0;\n      }\n   </style>\n    <link rel=\"stylesheet\" href=\"inc/pdfLib/all.min.css\">\n    <script type=\"text/javascript\" src=\"inc/pdfLib/html2pdf.bundle.min.js\"></script>\n    <script type=\"text/javascript\" src=\"inc/bwip/bwip-js-min.js\"></script>\n    \n            <!--<link rel=\"stylesheet\" href=\"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.1/css/all.min.css\">-->\n            <!--<script src=\"https://cdnjs.cloudflare.com/ajax/libs/html2pdf.js/0.10.1/html2pdf.bundle.min.js\"\n              integrity=\"sha512-GsLlZN/3F2ErC5ifS5QtgpiJtWd43JWSuIgh7mbzZ8zBps+dvLusV+eNQATqgA/HdeKFVgA5v3S/cIrLF7QnIg==\"\n              crossorigin=\"anonymous\" referrerpolicy=\"no-referrer\"></script>-->\n</head>\n<body id=\"Invoices\">\n\n   <article>\n      <BR>\n      <BR>\n      <BR>\n      <address>\n         <!--<p style=\"color:#14406b; font-size: 18px; font-weight: bold;\">AUTONORTE</p>\n         <p style=\"font-size: 12px;\">NIT: 811018300-6</p>\n         <p style=\"font-size: 12px;\">CLL 21 # 8-78 San Jerónimo, Ant</p> -->\n         <BR>\n         <p style=\"font-size: 14px;\">\n            <span style=\"font-weight: bold;\">Nombre: </span>\' . $liq[\"nombre_completo\"] . \' <br>\n            <span style=\"font-weight: bold;\">Dirección: </span>\' . $liq[\"direccion\"] . \' <br>\n         </p>\n      </address>\n\n      <table class=\"meta\">\n        <tr>\n            <th style=\"width: 120px !important;\"><span>Fecha</span></th>\n            <td><span>\' . $liq[\"fecha\"] . \'</span></td>\n         </tr>\n      </table>\n      <table class=\"inventory\">\n         <thead>\n            <tr>\n               <th><span>Valor venta</span></th>\n               <th><span>Valor abono</span></th>\n               <th><span>Valor debito</span></th>\n               <th><span>Seguridad social</span></th>\n            </tr>\n         </thead>\n         <tbody>\n            <tr>\n               <td><span>\' . $liq[\"valor_venta\"] . \'</span></td>\n               <td><span>\' . $liq[\"valor_novedad_abonar\"] . \'</span></td>\n               <td><span>\' . $liq[\"valor_novedad_debitar\"] . \'</span></td>\n               <td><span>\' . $liq[\"seguridad_social\"] . \'</span></td>\n            </tr>\n         </tbody>\n      </table>\n\n      <table class=\"balance\" style=\"font-size: 11px;\">\n         <!--<tr>\n            <td><span>SUBTOTAL</span></td>\n            <th><span data-prefix>$</span><span>\' . number_format($factura[\"valor_sin_recargo\"], 0, \',\', \'.\') . \'</span></th>\n         </tr>-->\n         <tr style=\"color: #fff; font-size: 16px;\">\n            <td style=\"background-color: #1f60a0; font-weight: bold;\"><span>TOTAL</span></td>\n            <th style=\"background-color: #14406b;\"><span>\' . $total . \'</span></th>\n         </tr>\n       \n            \n        </tr>\n         </tr>\n      </table>\n      </div>\n        \n         </br>\n         </br>\n         </br>\n        <table style=\"border-collapse: collapse; border:none; border-width: 0px; style=\"vertical-align: middle !important;\">\n            <tr style=\"float: middle; !important;\">\n                <td style=\"border-radius: 0 !important; border-style: none !important; vertical-align: middle !important; width:30%\">\n                    <img id=\"barcodeTarget\" width=\"500\" />\n                    <canvas id=\"mycanvas\"></canvas>\n                </td>\n            </tr>\n        </table>\n   </article>\n \n       <script>\n        const options = {\n            bcid:        \"gs1-128\",       // Barcode type\n            text:        \"\' . $BarcodeParent. \'\",    // Text to encode\n            scale:       2,               // 3x scaling factor\n            height:      8,              // Bar height, in millimeters\n            includetext: true,            // Show human-readable text\n            textxalign:  \"center\",        // Always good to set this\n        };\n\n        const hola3 = () => {\n            const canvas = document.createElement(\"canvas\");\n            try {\n                bwipjs.toCanvas(canvas, options);\n                document.getElementById(\"barcodeTarget\").src = canvas.toDataURL(\"image/png\");\n            } catch (e) { console.log({e}); }\n        };\n        //addEventListener(\"DOMContentLoaded\", () => {\n            hola3();\n        //});\n\n	</script>\n	\n\n	\n	\n      <script>\n      document.addEventListener(\"DOMContentLoaded\", function (event) {\n        //setTimeout(function(){ hola(); }, 1000);\n        var descargar = \' . $descargar . \';\n        if(descargar == 1) {\n             var element = document.getElementById(\"Invoices\");\n             \n             var opt = {\n                filename: \"\' . str_replace(\' \', \'\', $nombreFactura) . \'.pdf\",\n                image: { type: \"jpeg\", quality: 0.98 },\n                html2canvas: { scale: 2, useCORS: true, letterRendering: true },\n                jsPDF: { unit: \"mm\", format: \"letter\", orientation: \"portrait\" }\n             };\n    		 html2pdf(element, opt);\n    		 setTimeout(function(){ window.close(); }, 1650);\n        }\n        });\n        \n        function hola(){\n            var element = document.getElementById(\"Invoices\");\n             \n             var opt = {\n                filename: \"\' . $factura[\"contrato\"] . \'.pdf\",\n                image: { type: \"jpeg\", quality: 0.98 },\n                html2canvas: { scale: 2, useCORS: true, letterRendering: true },\n                jsPDF: { unit: \"mm\", format: \"letter\", orientation: \"portrait\" }\n             };\n    		 html2pdf(element, opt);\n        }\n   </script>\n</body>\n</html>\';\n\necho $html;\ndie();\n\n\n?>','A'),(1003,'mod/app_ventas/liquidacion_mecanicos.php','2025-01-31 11:54:00','rafael',455,11183,'<?php\n\n @session_start();\n\nif(!isset($_SESSION[\'PCOSESS_SesionAbierta\'])) {\n	echo \'<head><title>Error</title><style type=\"text/css\"> body { background-color: #000000; color: #7f7f7f; font-family: sans-serif,helvetica; } </style></head><body><table width=\"100%\" height=\"100%\" border=0><tr><td align=center>&#9827; Acceso no autorizado !</td></tr></table></body>\';\n	die();\n}\n\n$total = $liq[\'total\'];\n// $codigobarra = $factura[\"codigo_gs1\"]; // \"7709998678439\";\n// $BarcodeParent = \"(415)$codigobarra(8020)\" . $factura[\"id\"] . \"(3900)$totalBr(96)$fechaSinRecargoBr\";\n\n$descargar = 0;\n/* if ($PCO_Accion == \"FACTURAS_descargarFactura\")\n    $descargar = 1; */\n\n$html = \'\n<html>\n\n<head>\n   <meta charset=\"utf-8\">\n   <title>Factura</title>\n   <style>\n      * {\n         border: 0;\n         box-sizing: content-box;\n         color: inherit;\n         font-family: Verdana;\n         font-size: inherit;\n         font-style: inherit;\n         font-weight: inherit;\n         line-height: inherit;\n         list-style: none;\n         margin: 0;\n         padding: 0;\n         text-decoration: none;\n         vertical-align: top;\n      }\n\n      /* heading */\n\n      h1 {\n         font: bold 100% sans-serif;\n         letter-spacing: 0.5em;\n         text-align: center;\n         text-transform: uppercase;\n      }\n\n      /* table */\n\n      table {\n         font-size: 75%;\n         table-layout: fixed;\n         width: 100%;\n      }\n\n      table {\n         border-collapse: separate;\n         border-spacing: 3px;\n      }\n\n      th,\n      td {\n         border-width: 1px;\n         padding: 0.5em;\n         position: relative;\n         text-align: center;\n      }\n\n      th,\n      td {\n         border-radius: 0.25em;\n         border-style: solid;\n      }\n\n      th {\n         background: #1f60a0;\n         color: #fff;\n         border-color: #BBB;\n      }\n\n      td {\n         border-color: #DDD;\n      }\n\n      /* page */\n\n      html {\n         font: 16px/1 \"Open Sans\", sans-serif;\n         overflow: auto;\n         padding: 0.5in;\n      }\n\n      html {\n         background: #999;\n         cursor: default;\n      }\n\n      body {\n         box-sizing: border-box;\n         height: 11in;\n         margin: 0 auto;\n         overflow: hidden;\n         padding: 0.5in;\n         width: 8.5in;\n      }\n\n      body {\n         background: #FFF;\n         border-radius: 1px;\n         box-shadow: 0 0 1in -0.25in rgba(0, 0, 0, 0.5);\n      }\n\n      /* header */\n\n      header {\n         margin: 0 0 3em;\n      }\n\n      header:after {\n         clear: both;\n         content: \"\";\n         display: table;\n      }\n\n      header h1 {\n         background: #000;\n         border-radius: 0.25em;\n         color: #FFF;\n         margin: 0 0 1em;\n         padding: 0.5em 0;\n      }\n\n      header address {\n         float: left;\n         font-size: 75%;\n         font-style: normal;\n         line-height: 1.25;\n         margin: 0 1em 1em 0;\n      }\n\n      header address p {\n         margin: 0 0 0.25em;\n      }\n\n      header span,\n      header img {\n         display: block;\n         float: right;\n      }\n\n      header span {\n         margin: 0 0 1em 1em;\n         max-height: 25%;\n         max-width: 60%;\n         position: relative;\n      }\n\n      header img {\n         max-height: 100%;\n         max-width: 100%;\n      }\n\n      header input {\n         cursor: pointer;\n         -ms-filter: \"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)\";\n         height: 100%;\n         left: 0;\n         opacity: 0;\n         position: absolute;\n         top: 0;\n         width: 100%;\n      }\n\n      /* article */\n\n      article,\n      article address,\n      table.meta,\n      table.inventory {\n         margin: 0 0 1.3em;\n      }\n\n      article:after {\n         clear: both;\n         content: \"\";\n         display: table;\n      }\n\n      article h1 {\n         clip: rect(0 0 0 0);\n         position: absolute;\n      }\n\n      article address {\n         float: left;\n         font-size: 125%;\n      }\n\n      /* table meta & balance */\n\n      table.meta,\n      table.balance {\n         float: right;\n         width: 36%;\n      }\n\n      table.meta:after,\n      table.balance:after {\n         clear: both;\n         content: \"\";\n         display: table;\n      }\n\n      /* table meta */\n\n      table.meta th {\n         width: 40%;\n      }\n\n      table.meta td {\n         width: 60%;\n      }\n\n      /* table items */\n\n      table.inventory {\n         clear: both;\n         width: 100%;\n      }\n\n      table.inventory th {\n         font-weight: bold;\n         text-align: center;\n      }\n\n      table.inventory td:nth-child(1) {\n         width: 26%;\n      }\n\n      table.inventory td:nth-child(2) {\n         width: 38%;\n      }\n\n      table.inventory td:nth-child(3) {\n         text-align: center;\n         width: 12%;\n      }\n\n      table.inventory td:nth-child(4) {\n         text-align: center;\n         width: 12%;\n      }\n\n      table.inventory td:nth-child(5) {\n         text-align: center;\n         width: 12%;\n      }\n\n      /* table balance */\n\n      table.balance th {\n         width: 40%;\n         text-align: center;\n      }\n\n      table.balance td {\n         width: 60%;\n         text-align: center;\n      }\n\n      /* aside */\n\n      aside h1 {\n         border: none;\n         border-width: 0 0 1px;\n         margin: 0 0 1em;\n      }\n\n      aside h1 {\n         border-color: #999;\n         border-bottom-style: solid;\n      }\n\n      /* javascript */\n\n      @media print {\n         * {\n            -webkit-print-color-adjust: exact;\n         }\n\n         html {\n            background: none;\n            padding: 0;\n         }\n\n         body {\n            box-shadow: none;\n            margin: 0;\n         }\n\n         span:empty {\n            display: none;\n         }\n      }\n\n      @page {\n         margin: 0;\n      }\n   </style>\n    <link rel=\"stylesheet\" href=\"inc/pdfLib/all.min.css\">\n    <script type=\"text/javascript\" src=\"inc/pdfLib/html2pdf.bundle.min.js\"></script>\n    <script type=\"text/javascript\" src=\"inc/bwip/bwip-js-min.js\"></script>\n    \n            <!--<link rel=\"stylesheet\" href=\"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.1/css/all.min.css\">-->\n            <!--<script src=\"https://cdnjs.cloudflare.com/ajax/libs/html2pdf.js/0.10.1/html2pdf.bundle.min.js\"\n              integrity=\"sha512-GsLlZN/3F2ErC5ifS5QtgpiJtWd43JWSuIgh7mbzZ8zBps+dvLusV+eNQATqgA/HdeKFVgA5v3S/cIrLF7QnIg==\"\n              crossorigin=\"anonymous\" referrerpolicy=\"no-referrer\"></script>-->\n</head>\n<body id=\"Invoices\">\n\n   <article>\n      <BR>\n      <BR>\n      <BR>\n      <address>\n         <!--<p style=\"color:#14406b; font-size: 18px; font-weight: bold;\">AUTONORTE</p>\n         <p style=\"font-size: 12px;\">NIT: 811018300-6</p>\n         <p style=\"font-size: 12px;\">CLL 21 # 8-78 San Jerónimo, Ant</p> -->\n         <BR>\n         <p style=\"font-size: 14px;\">\n            <span style=\"font-weight: bold;\">Nombre: </span>\' . $liq[\"nombre_completo\"] . \' <br>\n            <span style=\"font-weight: bold;\">Dirección: </span>\' . $liq[\"direccion\"] . \' <br>\n         </p>\n      </address>\n\n      <table class=\"meta\">\n        <tr>\n            <th style=\"width: 120px !important;\"><span>Fecha</span></th>\n            <td><span>\' . $liq[\"fecha\"] . \'</span></td>\n         </tr>\n      </table>\n      <table class=\"inventory\">\n         <thead>\n            <tr>\n               <th><span>Valor venta</span></th>\n               <th><span>Valor abono</span></th>\n               <th><span>Valor debito</span></th>\n               <th><span>Seguridad social</span></th>\n            </tr>\n         </thead>\n         <tbody>\n            <tr>\n               <td><span>\' . $liq[\"valor_venta\"] . \'</span></td>\n               <td><span>\' . $liq[\"valor_novedad_abonar\"] . \'</span></td>\n               <td><span>\' . $liq[\"valor_novedad_debitar\"] . \'</span></td>\n               <td><span>\' . $liq[\"seguridad_social\"] . \'</span></td>\n            </tr>\n         </tbody>\n      </table>\n\n      <table class=\"balance\" style=\"font-size: 11px;\">\n         <!--<tr>\n            <td><span>SUBTOTAL</span></td>\n            <th><span data-prefix>$</span><span>\' . number_format($factura[\"valor_sin_recargo\"], 0, \',\', \'.\') . \'</span></th>\n         </tr>-->\n         <tr style=\"color: #fff; font-size: 14px;\">\n            <td style=\"background-color: #1f60a0; font-weight: bold;\"><span>TOTAL</span></td>\n            <th style=\"background-color: #14406b;\"><span>\' . $total . \'</span></th>\n         </tr>\n       \n            \n        </tr>\n         </tr>\n      </table>\n      </div>\n        \n         </br>\n         </br>\n         </br>\n        <table style=\"border-collapse: collapse; border:none; border-width: 0px; style=\"vertical-align: middle !important;\">\n            <tr style=\"float: middle; !important;\">\n                <td style=\"border-radius: 0 !important; border-style: none !important; vertical-align: middle !important; width:30%\">\n                    <img id=\"barcodeTarget\" width=\"500\" />\n                    <canvas id=\"mycanvas\"></canvas>\n                </td>\n            </tr>\n        </table>\n   </article>\n \n       <script>\n        const options = {\n            bcid:        \"gs1-128\",       // Barcode type\n            text:        \"\' . $BarcodeParent. \'\",    // Text to encode\n            scale:       2,               // 3x scaling factor\n            height:      8,              // Bar height, in millimeters\n            includetext: true,            // Show human-readable text\n            textxalign:  \"center\",        // Always good to set this\n        };\n\n        const hola3 = () => {\n            const canvas = document.createElement(\"canvas\");\n            try {\n                bwipjs.toCanvas(canvas, options);\n                document.getElementById(\"barcodeTarget\").src = canvas.toDataURL(\"image/png\");\n            } catch (e) { console.log({e}); }\n        };\n        //addEventListener(\"DOMContentLoaded\", () => {\n            hola3();\n        //});\n\n	</script>\n	\n\n	\n	\n      <script>\n      document.addEventListener(\"DOMContentLoaded\", function (event) {\n        //setTimeout(function(){ hola(); }, 1000);\n        var descargar = \' . $descargar . \';\n        if(descargar == 1) {\n             var element = document.getElementById(\"Invoices\");\n             \n             var opt = {\n                filename: \"\' . str_replace(\' \', \'\', $nombreFactura) . \'.pdf\",\n                image: { type: \"jpeg\", quality: 0.98 },\n                html2canvas: { scale: 2, useCORS: true, letterRendering: true },\n                jsPDF: { unit: \"mm\", format: \"letter\", orientation: \"portrait\" }\n             };\n    		 html2pdf(element, opt);\n    		 setTimeout(function(){ window.close(); }, 1650);\n        }\n        });\n        \n        function hola(){\n            var element = document.getElementById(\"Invoices\");\n             \n             var opt = {\n                filename: \"\' . $factura[\"contrato\"] . \'.pdf\",\n                image: { type: \"jpeg\", quality: 0.98 },\n                html2canvas: { scale: 2, useCORS: true, letterRendering: true },\n                jsPDF: { unit: \"mm\", format: \"letter\", orientation: \"portrait\" }\n             };\n    		 html2pdf(element, opt);\n        }\n   </script>\n</body>\n</html>\';\n\necho $html;\ndie();\n\n\n?>','A'),(1004,'mod/app_ventas/liquidacion_mecanicos.php','2025-01-31 11:54:00','rafael',455,11183,'<?php\n\n @session_start();\n\nif(!isset($_SESSION[\'PCOSESS_SesionAbierta\'])) {\n	echo \'<head><title>Error</title><style type=\"text/css\"> body { background-color: #000000; color: #7f7f7f; font-family: sans-serif,helvetica; } </style></head><body><table width=\"100%\" height=\"100%\" border=0><tr><td align=center>&#9827; Acceso no autorizado !</td></tr></table></body>\';\n	die();\n}\n\n$total = $liq[\'total\'];\n// $codigobarra = $factura[\"codigo_gs1\"]; // \"7709998678439\";\n// $BarcodeParent = \"(415)$codigobarra(8020)\" . $factura[\"id\"] . \"(3900)$totalBr(96)$fechaSinRecargoBr\";\n\n$descargar = 0;\n/* if ($PCO_Accion == \"FACTURAS_descargarFactura\")\n    $descargar = 1; */\n\n$html = \'\n<html>\n\n<head>\n   <meta charset=\"utf-8\">\n   <title>Factura</title>\n   <style>\n      * {\n         border: 0;\n         box-sizing: content-box;\n         color: inherit;\n         font-family: Verdana;\n         font-size: inherit;\n         font-style: inherit;\n         font-weight: inherit;\n         line-height: inherit;\n         list-style: none;\n         margin: 0;\n         padding: 0;\n         text-decoration: none;\n         vertical-align: top;\n      }\n\n      /* heading */\n\n      h1 {\n         font: bold 100% sans-serif;\n         letter-spacing: 0.5em;\n         text-align: center;\n         text-transform: uppercase;\n      }\n\n      /* table */\n\n      table {\n         font-size: 75%;\n         table-layout: fixed;\n         width: 100%;\n      }\n\n      table {\n         border-collapse: separate;\n         border-spacing: 3px;\n      }\n\n      th,\n      td {\n         border-width: 1px;\n         padding: 0.5em;\n         position: relative;\n         text-align: center;\n      }\n\n      th,\n      td {\n         border-radius: 0.25em;\n         border-style: solid;\n      }\n\n      th {\n         background: #1f60a0;\n         color: #fff;\n         border-color: #BBB;\n      }\n\n      td {\n         border-color: #DDD;\n      }\n\n      /* page */\n\n      html {\n         font: 16px/1 \"Open Sans\", sans-serif;\n         overflow: auto;\n         padding: 0.5in;\n      }\n\n      html {\n         background: #999;\n         cursor: default;\n      }\n\n      body {\n         box-sizing: border-box;\n         height: 11in;\n         margin: 0 auto;\n         overflow: hidden;\n         padding: 0.5in;\n         width: 8.5in;\n      }\n\n      body {\n         background: #FFF;\n         border-radius: 1px;\n         box-shadow: 0 0 1in -0.25in rgba(0, 0, 0, 0.5);\n      }\n\n      /* header */\n\n      header {\n         margin: 0 0 3em;\n      }\n\n      header:after {\n         clear: both;\n         content: \"\";\n         display: table;\n      }\n\n      header h1 {\n         background: #000;\n         border-radius: 0.25em;\n         color: #FFF;\n         margin: 0 0 1em;\n         padding: 0.5em 0;\n      }\n\n      header address {\n         float: left;\n         font-size: 75%;\n         font-style: normal;\n         line-height: 1.25;\n         margin: 0 1em 1em 0;\n      }\n\n      header address p {\n         margin: 0 0 0.25em;\n      }\n\n      header span,\n      header img {\n         display: block;\n         float: right;\n      }\n\n      header span {\n         margin: 0 0 1em 1em;\n         max-height: 25%;\n         max-width: 60%;\n         position: relative;\n      }\n\n      header img {\n         max-height: 100%;\n         max-width: 100%;\n      }\n\n      header input {\n         cursor: pointer;\n         -ms-filter: \"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)\";\n         height: 100%;\n         left: 0;\n         opacity: 0;\n         position: absolute;\n         top: 0;\n         width: 100%;\n      }\n\n      /* article */\n\n      article,\n      article address,\n      table.meta,\n      table.inventory {\n         margin: 0 0 1.3em;\n      }\n\n      article:after {\n         clear: both;\n         content: \"\";\n         display: table;\n      }\n\n      article h1 {\n         clip: rect(0 0 0 0);\n         position: absolute;\n      }\n\n      article address {\n         float: left;\n         font-size: 125%;\n      }\n\n      /* table meta & balance */\n\n      table.meta,\n      table.balance {\n         float: right;\n         width: 36%;\n      }\n\n      table.meta:after,\n      table.balance:after {\n         clear: both;\n         content: \"\";\n         display: table;\n      }\n\n      /* table meta */\n\n      table.meta th {\n         width: 40%;\n      }\n\n      table.meta td {\n         width: 60%;\n      }\n\n      /* table items */\n\n      table.inventory {\n         clear: both;\n         width: 100%;\n      }\n\n      table.inventory th {\n         font-weight: bold;\n         text-align: center;\n      }\n\n      table.inventory td:nth-child(1) {\n         width: 26%;\n      }\n\n      table.inventory td:nth-child(2) {\n         width: 38%;\n      }\n\n      table.inventory td:nth-child(3) {\n         text-align: center;\n         width: 12%;\n      }\n\n      table.inventory td:nth-child(4) {\n         text-align: center;\n         width: 12%;\n      }\n\n      table.inventory td:nth-child(5) {\n         text-align: center;\n         width: 12%;\n      }\n\n      /* table balance */\n\n      table.balance th {\n         width: 40%;\n         text-align: center;\n      }\n\n      table.balance td {\n         width: 60%;\n         text-align: center;\n      }\n\n      /* aside */\n\n      aside h1 {\n         border: none;\n         border-width: 0 0 1px;\n         margin: 0 0 1em;\n      }\n\n      aside h1 {\n         border-color: #999;\n         border-bottom-style: solid;\n      }\n\n      /* javascript */\n\n      @media print {\n         * {\n            -webkit-print-color-adjust: exact;\n         }\n\n         html {\n            background: none;\n            padding: 0;\n         }\n\n         body {\n            box-shadow: none;\n            margin: 0;\n         }\n\n         span:empty {\n            display: none;\n         }\n      }\n\n      @page {\n         margin: 0;\n      }\n   </style>\n    <link rel=\"stylesheet\" href=\"inc/pdfLib/all.min.css\">\n    <script type=\"text/javascript\" src=\"inc/pdfLib/html2pdf.bundle.min.js\"></script>\n    <script type=\"text/javascript\" src=\"inc/bwip/bwip-js-min.js\"></script>\n    \n            <!--<link rel=\"stylesheet\" href=\"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.1/css/all.min.css\">-->\n            <!--<script src=\"https://cdnjs.cloudflare.com/ajax/libs/html2pdf.js/0.10.1/html2pdf.bundle.min.js\"\n              integrity=\"sha512-GsLlZN/3F2ErC5ifS5QtgpiJtWd43JWSuIgh7mbzZ8zBps+dvLusV+eNQATqgA/HdeKFVgA5v3S/cIrLF7QnIg==\"\n              crossorigin=\"anonymous\" referrerpolicy=\"no-referrer\"></script>-->\n</head>\n<body id=\"Invoices\">\n\n   <article>\n      <BR>\n      <BR>\n      <BR>\n      <address>\n         <!--<p style=\"color:#14406b; font-size: 18px; font-weight: bold;\">AUTONORTE</p>\n         <p style=\"font-size: 12px;\">NIT: 811018300-6</p>\n         <p style=\"font-size: 12px;\">CLL 21 # 8-78 San Jerónimo, Ant</p> -->\n         <BR>\n         <p style=\"font-size: 14px;\">\n            <span style=\"font-weight: bold;\">Nombre: </span>\' . $liq[\"nombre_completo\"] . \' <br>\n            <span style=\"font-weight: bold;\">Dirección: </span>\' . $liq[\"direccion\"] . \' <br>\n         </p>\n      </address>\n\n      <table class=\"meta\">\n        <tr>\n            <th style=\"width: 120px !important;\"><span>Fecha</span></th>\n            <td><span>\' . $liq[\"fecha\"] . \'</span></td>\n         </tr>\n      </table>\n      <table class=\"inventory\">\n         <thead>\n            <tr>\n               <th><span>Valor venta</span></th>\n               <th><span>Valor abono</span></th>\n               <th><span>Valor debito</span></th>\n               <th><span>Seguridad social</span></th>\n            </tr>\n         </thead>\n         <tbody>\n            <tr>\n               <td><span>\' . $liq[\"valor_venta\"] . \'</span></td>\n               <td><span>\' . $liq[\"valor_novedad_abonar\"] . \'</span></td>\n               <td><span>\' . $liq[\"valor_novedad_debitar\"] . \'</span></td>\n               <td><span>\' . $liq[\"seguridad_social\"] . \'</span></td>\n            </tr>\n         </tbody>\n      </table>\n\n      <table class=\"balance\" style=\"font-size: 11px;\">\n         <!--<tr>\n            <td><span>SUBTOTAL</span></td>\n            <th><span data-prefix>$</span><span>\' . number_format($factura[\"valor_sin_recargo\"], 0, \',\', \'.\') . \'</span></th>\n         </tr>-->\n         <tr style=\"color: #fff; font-size: 12px;\">\n            <td style=\"background-color: #1f60a0; font-weight: bold;\"><span>TOTAL</span></td>\n            <th style=\"background-color: #14406b;\"><span>\' . $total . \'</span></th>\n         </tr>\n       \n            \n        </tr>\n         </tr>\n      </table>\n      </div>\n        \n         </br>\n         </br>\n         </br>\n        <table style=\"border-collapse: collapse; border:none; border-width: 0px; style=\"vertical-align: middle !important;\">\n            <tr style=\"float: middle; !important;\">\n                <td style=\"border-radius: 0 !important; border-style: none !important; vertical-align: middle !important; width:30%\">\n                    <img id=\"barcodeTarget\" width=\"500\" />\n                    <canvas id=\"mycanvas\"></canvas>\n                </td>\n            </tr>\n        </table>\n   </article>\n \n       <script>\n        const options = {\n            bcid:        \"gs1-128\",       // Barcode type\n            text:        \"\' . $BarcodeParent. \'\",    // Text to encode\n            scale:       2,               // 3x scaling factor\n            height:      8,              // Bar height, in millimeters\n            includetext: true,            // Show human-readable text\n            textxalign:  \"center\",        // Always good to set this\n        };\n\n        const hola3 = () => {\n            const canvas = document.createElement(\"canvas\");\n            try {\n                bwipjs.toCanvas(canvas, options);\n                document.getElementById(\"barcodeTarget\").src = canvas.toDataURL(\"image/png\");\n            } catch (e) { console.log({e}); }\n        };\n        //addEventListener(\"DOMContentLoaded\", () => {\n            hola3();\n        //});\n\n	</script>\n	\n\n	\n	\n      <script>\n      document.addEventListener(\"DOMContentLoaded\", function (event) {\n        //setTimeout(function(){ hola(); }, 1000);\n        var descargar = \' . $descargar . \';\n        if(descargar == 1) {\n             var element = document.getElementById(\"Invoices\");\n             \n             var opt = {\n                filename: \"\' . str_replace(\' \', \'\', $nombreFactura) . \'.pdf\",\n                image: { type: \"jpeg\", quality: 0.98 },\n                html2canvas: { scale: 2, useCORS: true, letterRendering: true },\n                jsPDF: { unit: \"mm\", format: \"letter\", orientation: \"portrait\" }\n             };\n    		 html2pdf(element, opt);\n    		 setTimeout(function(){ window.close(); }, 1650);\n        }\n        });\n        \n        function hola(){\n            var element = document.getElementById(\"Invoices\");\n             \n             var opt = {\n                filename: \"\' . $factura[\"contrato\"] . \'.pdf\",\n                image: { type: \"jpeg\", quality: 0.98 },\n                html2canvas: { scale: 2, useCORS: true, letterRendering: true },\n                jsPDF: { unit: \"mm\", format: \"letter\", orientation: \"portrait\" }\n             };\n    		 html2pdf(element, opt);\n        }\n   </script>\n</body>\n</html>\';\n\necho $html;\ndie();\n\n\n?>','A'),(1005,'mod/app_ventas/liquidacion_mecanicos.php','2025-01-31 11:56:00','rafael',455,11183,'<?php\n\n @session_start();\n\nif(!isset($_SESSION[\'PCOSESS_SesionAbierta\'])) {\n	echo \'<head><title>Error</title><style type=\"text/css\"> body { background-color: #000000; color: #7f7f7f; font-family: sans-serif,helvetica; } </style></head><body><table width=\"100%\" height=\"100%\" border=0><tr><td align=center>&#9827; Acceso no autorizado !</td></tr></table></body>\';\n	die();\n}\n\n$total = $liq[\'total\'];\n// $codigobarra = $factura[\"codigo_gs1\"]; // \"7709998678439\";\n// $BarcodeParent = \"(415)$codigobarra(8020)\" . $factura[\"id\"] . \"(3900)$totalBr(96)$fechaSinRecargoBr\";\n\n$descargar = 0;\n/* if ($PCO_Accion == \"FACTURAS_descargarFactura\")\n    $descargar = 1; */\n\n$html = \'\n<html>\n\n<head>\n   <meta charset=\"utf-8\">\n   <title>Factura</title>\n   <style>\n      * {\n         border: 0;\n         box-sizing: content-box;\n         color: inherit;\n         font-family: Verdana;\n         font-size: inherit;\n         font-style: inherit;\n         font-weight: inherit;\n         line-height: inherit;\n         list-style: none;\n         margin: 0;\n         padding: 0;\n         text-decoration: none;\n         vertical-align: top;\n      }\n\n      /* heading */\n\n      h1 {\n         font: bold 100% sans-serif;\n         letter-spacing: 0.5em;\n         text-align: center;\n         text-transform: uppercase;\n      }\n\n      /* table */\n\n      table {\n         font-size: 75%;\n         table-layout: fixed;\n         width: 100%;\n      }\n\n      table {\n         border-collapse: separate;\n         border-spacing: 3px;\n      }\n\n      th,\n      td {\n         border-width: 1px;\n         padding: 0.5em;\n         position: relative;\n         text-align: center;\n      }\n\n      th,\n      td {\n         border-radius: 0.25em;\n         border-style: solid;\n      }\n\n      th {\n         background: #1f60a0;\n         color: #fff;\n         border-color: #BBB;\n      }\n\n      td {\n         border-color: #DDD;\n      }\n\n      /* page */\n\n      html {\n         font: 16px/1 \"Open Sans\", sans-serif;\n         overflow: auto;\n         padding: 0.5in;\n      }\n\n      html {\n         background: #999;\n         cursor: default;\n      }\n\n      body {\n         box-sizing: border-box;\n         height: 11in;\n         margin: 0 auto;\n         overflow: hidden;\n         padding: 0.5in;\n         width: 8.5in;\n      }\n\n      body {\n         background: #FFF;\n         border-radius: 1px;\n         box-shadow: 0 0 1in -0.25in rgba(0, 0, 0, 0.5);\n      }\n\n      /* header */\n\n      header {\n         margin: 0 0 3em;\n      }\n\n      header:after {\n         clear: both;\n         content: \"\";\n         display: table;\n      }\n\n      header h1 {\n         background: #000;\n         border-radius: 0.25em;\n         color: #FFF;\n         margin: 0 0 1em;\n         padding: 0.5em 0;\n      }\n\n      header address {\n         float: left;\n         font-size: 75%;\n         font-style: normal;\n         line-height: 1.25;\n         margin: 0 1em 1em 0;\n      }\n\n      header address p {\n         margin: 0 0 0.25em;\n      }\n\n      header span,\n      header img {\n         display: block;\n         float: right;\n      }\n\n      header span {\n         margin: 0 0 1em 1em;\n         max-height: 25%;\n         max-width: 60%;\n         position: relative;\n      }\n\n      header img {\n         max-height: 100%;\n         max-width: 100%;\n      }\n\n      header input {\n         cursor: pointer;\n         -ms-filter: \"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)\";\n         height: 100%;\n         left: 0;\n         opacity: 0;\n         position: absolute;\n         top: 0;\n         width: 100%;\n      }\n\n      /* article */\n\n      article,\n      article address,\n      table.meta,\n      table.inventory {\n         margin: 0 0 1.3em;\n      }\n\n      article:after {\n         clear: both;\n         content: \"\";\n         display: table;\n      }\n\n      article h1 {\n         clip: rect(0 0 0 0);\n         position: absolute;\n      }\n\n      article address {\n         float: left;\n         font-size: 125%;\n      }\n\n      /* table meta & balance */\n\n      table.meta,\n      table.balance {\n         float: right;\n         width: 36%;\n      }\n\n      table.meta:after,\n      table.balance:after {\n         clear: both;\n         content: \"\";\n         display: table;\n      }\n\n      /* table meta */\n\n      table.meta th {\n         width: 40%;\n      }\n\n      table.meta td {\n         width: 60%;\n      }\n\n      /* table items */\n\n      table.inventory {\n         clear: both;\n         width: 100%;\n      }\n\n      table.inventory th {\n         font-weight: bold;\n         text-align: center;\n      }\n\n      table.inventory td:nth-child(1) {\n         width: 26%;\n      }\n\n      table.inventory td:nth-child(2) {\n         width: 38%;\n      }\n\n      table.inventory td:nth-child(3) {\n         text-align: center;\n         width: 12%;\n      }\n\n      table.inventory td:nth-child(4) {\n         text-align: center;\n         width: 12%;\n      }\n\n      table.inventory td:nth-child(5) {\n         text-align: center;\n         width: 12%;\n      }\n\n      /* table balance */\n\n      table.balance th {\n         width: 50%;\n         text-align: center;\n      }\n\n      table.balance td {\n         width: 60%;\n         text-align: center;\n      }\n\n      /* aside */\n\n      aside h1 {\n         border: none;\n         border-width: 0 0 1px;\n         margin: 0 0 1em;\n      }\n\n      aside h1 {\n         border-color: #999;\n         border-bottom-style: solid;\n      }\n\n      /* javascript */\n\n      @media print {\n         * {\n            -webkit-print-color-adjust: exact;\n         }\n\n         html {\n            background: none;\n            padding: 0;\n         }\n\n         body {\n            box-shadow: none;\n            margin: 0;\n         }\n\n         span:empty {\n            display: none;\n         }\n      }\n\n      @page {\n         margin: 0;\n      }\n   </style>\n    <link rel=\"stylesheet\" href=\"inc/pdfLib/all.min.css\">\n    <script type=\"text/javascript\" src=\"inc/pdfLib/html2pdf.bundle.min.js\"></script>\n    <script type=\"text/javascript\" src=\"inc/bwip/bwip-js-min.js\"></script>\n    \n            <!--<link rel=\"stylesheet\" href=\"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.1/css/all.min.css\">-->\n            <!--<script src=\"https://cdnjs.cloudflare.com/ajax/libs/html2pdf.js/0.10.1/html2pdf.bundle.min.js\"\n              integrity=\"sha512-GsLlZN/3F2ErC5ifS5QtgpiJtWd43JWSuIgh7mbzZ8zBps+dvLusV+eNQATqgA/HdeKFVgA5v3S/cIrLF7QnIg==\"\n              crossorigin=\"anonymous\" referrerpolicy=\"no-referrer\"></script>-->\n</head>\n<body id=\"Invoices\">\n\n   <article>\n      <BR>\n      <BR>\n      <BR>\n      <address>\n         <!--<p style=\"color:#14406b; font-size: 18px; font-weight: bold;\">AUTONORTE</p>\n         <p style=\"font-size: 12px;\">NIT: 811018300-6</p>\n         <p style=\"font-size: 12px;\">CLL 21 # 8-78 San Jerónimo, Ant</p> -->\n         <BR>\n         <p style=\"font-size: 14px;\">\n            <span style=\"font-weight: bold;\">Nombre: </span>\' . $liq[\"nombre_completo\"] . \' <br>\n            <span style=\"font-weight: bold;\">Dirección: </span>\' . $liq[\"direccion\"] . \' <br>\n         </p>\n      </address>\n\n      <table class=\"meta\">\n        <tr>\n            <th style=\"width: 120px !important;\"><span>Fecha</span></th>\n            <td><span>\' . $liq[\"fecha\"] . \'</span></td>\n         </tr>\n      </table>\n      <table class=\"inventory\">\n         <thead>\n            <tr>\n               <th><span>Valor venta</span></th>\n               <th><span>Valor abono</span></th>\n               <th><span>Valor debito</span></th>\n               <th><span>Seguridad social</span></th>\n            </tr>\n         </thead>\n         <tbody>\n            <tr>\n               <td><span>\' . $liq[\"valor_venta\"] . \'</span></td>\n               <td><span>\' . $liq[\"valor_novedad_abonar\"] . \'</span></td>\n               <td><span>\' . $liq[\"valor_novedad_debitar\"] . \'</span></td>\n               <td><span>\' . $liq[\"seguridad_social\"] . \'</span></td>\n            </tr>\n         </tbody>\n      </table>\n\n      <table class=\"balance\" style=\"font-size: 11px;\">\n         <!--<tr>\n            <td><span>SUBTOTAL</span></td>\n            <th><span data-prefix>$</span><span>\' . number_format($factura[\"valor_sin_recargo\"], 0, \',\', \'.\') . \'</span></th>\n         </tr>-->\n         <tr style=\"color: #fff; font-size: 12px;\">\n            <td style=\"background-color: #1f60a0; font-weight: bold;\"><span>TOTAL</span></td>\n            <th style=\"background-color: #14406b;\"><span>\' . $total . \'</span></th>\n         </tr>\n       \n            \n        </tr>\n         </tr>\n      </table>\n      </div>\n        \n         </br>\n         </br>\n         </br>\n        <table style=\"border-collapse: collapse; border:none; border-width: 0px; style=\"vertical-align: middle !important;\">\n            <tr style=\"float: middle; !important;\">\n                <td style=\"border-radius: 0 !important; border-style: none !important; vertical-align: middle !important; width:30%\">\n                    <img id=\"barcodeTarget\" width=\"500\" />\n                    <canvas id=\"mycanvas\"></canvas>\n                </td>\n            </tr>\n        </table>\n   </article>\n \n       <script>\n        const options = {\n            bcid:        \"gs1-128\",       // Barcode type\n            text:        \"\' . $BarcodeParent. \'\",    // Text to encode\n            scale:       2,               // 3x scaling factor\n            height:      8,              // Bar height, in millimeters\n            includetext: true,            // Show human-readable text\n            textxalign:  \"center\",        // Always good to set this\n        };\n\n        const hola3 = () => {\n            const canvas = document.createElement(\"canvas\");\n            try {\n                bwipjs.toCanvas(canvas, options);\n                document.getElementById(\"barcodeTarget\").src = canvas.toDataURL(\"image/png\");\n            } catch (e) { console.log({e}); }\n        };\n        //addEventListener(\"DOMContentLoaded\", () => {\n            hola3();\n        //});\n\n	</script>\n	\n\n	\n	\n      <script>\n      document.addEventListener(\"DOMContentLoaded\", function (event) {\n        //setTimeout(function(){ hola(); }, 1000);\n        var descargar = \' . $descargar . \';\n        if(descargar == 1) {\n             var element = document.getElementById(\"Invoices\");\n             \n             var opt = {\n                filename: \"\' . str_replace(\' \', \'\', $nombreFactura) . \'.pdf\",\n                image: { type: \"jpeg\", quality: 0.98 },\n                html2canvas: { scale: 2, useCORS: true, letterRendering: true },\n                jsPDF: { unit: \"mm\", format: \"letter\", orientation: \"portrait\" }\n             };\n    		 html2pdf(element, opt);\n    		 setTimeout(function(){ window.close(); }, 1650);\n        }\n        });\n        \n        function hola(){\n            var element = document.getElementById(\"Invoices\");\n             \n             var opt = {\n                filename: \"\' . $factura[\"contrato\"] . \'.pdf\",\n                image: { type: \"jpeg\", quality: 0.98 },\n                html2canvas: { scale: 2, useCORS: true, letterRendering: true },\n                jsPDF: { unit: \"mm\", format: \"letter\", orientation: \"portrait\" }\n             };\n    		 html2pdf(element, opt);\n        }\n   </script>\n</body>\n</html>\';\n\necho $html;\ndie();\n\n\n?>','A'),(1006,'mod/app_ventas/liquidacion_mecanicos.php','2025-01-31 11:56:00','rafael',455,11184,'<?php\n\n @session_start();\n\nif(!isset($_SESSION[\'PCOSESS_SesionAbierta\'])) {\n	echo \'<head><title>Error</title><style type=\"text/css\"> body { background-color: #000000; color: #7f7f7f; font-family: sans-serif,helvetica; } </style></head><body><table width=\"100%\" height=\"100%\" border=0><tr><td align=center>&#9827; Acceso no autorizado !</td></tr></table></body>\';\n	die();\n}\n\n$total = $liq[\'total\'];\n// $codigobarra = $factura[\"codigo_gs1\"]; // \"7709998678439\";\n// $BarcodeParent = \"(415)$codigobarra(8020)\" . $factura[\"id\"] . \"(3900)$totalBr(96)$fechaSinRecargoBr\";\n\n$descargar = 0;\n/* if ($PCO_Accion == \"FACTURAS_descargarFactura\")\n    $descargar = 1; */\n\n$html = \'\n<html>\n\n<head>\n   <meta charset=\"utf-8\">\n   <title>Factura</title>\n   <style>\n      * {\n         border: 0;\n         box-sizing: content-box;\n         color: inherit;\n         font-family: Verdana;\n         font-size: inherit;\n         font-style: inherit;\n         font-weight: inherit;\n         line-height: inherit;\n         list-style: none;\n         margin: 0;\n         padding: 0;\n         text-decoration: none;\n         vertical-align: top;\n      }\n\n      /* heading */\n\n      h1 {\n         font: bold 100% sans-serif;\n         letter-spacing: 0.5em;\n         text-align: center;\n         text-transform: uppercase;\n      }\n\n      /* table */\n\n      table {\n         font-size: 75%;\n         table-layout: fixed;\n         width: 100%;\n      }\n\n      table {\n         border-collapse: separate;\n         border-spacing: 3px;\n      }\n\n      th,\n      td {\n         border-width: 1px;\n         padding: 0.5em;\n         position: relative;\n         text-align: center;\n      }\n\n      th,\n      td {\n         border-radius: 0.25em;\n         border-style: solid;\n      }\n\n      th {\n         background: #1f60a0;\n         color: #fff;\n         border-color: #BBB;\n      }\n\n      td {\n         border-color: #DDD;\n      }\n\n      /* page */\n\n      html {\n         font: 16px/1 \"Open Sans\", sans-serif;\n         overflow: auto;\n         padding: 0.5in;\n      }\n\n      html {\n         background: #999;\n         cursor: default;\n      }\n\n      body {\n         box-sizing: border-box;\n         height: 11in;\n         margin: 0 auto;\n         overflow: hidden;\n         padding: 0.5in;\n         width: 8.5in;\n      }\n\n      body {\n         background: #FFF;\n         border-radius: 1px;\n         box-shadow: 0 0 1in -0.25in rgba(0, 0, 0, 0.5);\n      }\n\n      /* header */\n\n      header {\n         margin: 0 0 3em;\n      }\n\n      header:after {\n         clear: both;\n         content: \"\";\n         display: table;\n      }\n\n      header h1 {\n         background: #000;\n         border-radius: 0.25em;\n         color: #FFF;\n         margin: 0 0 1em;\n         padding: 0.5em 0;\n      }\n\n      header address {\n         float: left;\n         font-size: 75%;\n         font-style: normal;\n         line-height: 1.25;\n         margin: 0 1em 1em 0;\n      }\n\n      header address p {\n         margin: 0 0 0.25em;\n      }\n\n      header span,\n      header img {\n         display: block;\n         float: right;\n      }\n\n      header span {\n         margin: 0 0 1em 1em;\n         max-height: 25%;\n         max-width: 60%;\n         position: relative;\n      }\n\n      header img {\n         max-height: 100%;\n         max-width: 100%;\n      }\n\n      header input {\n         cursor: pointer;\n         -ms-filter: \"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)\";\n         height: 100%;\n         left: 0;\n         opacity: 0;\n         position: absolute;\n         top: 0;\n         width: 100%;\n      }\n\n      /* article */\n\n      article,\n      article address,\n      table.meta,\n      table.inventory {\n         margin: 0 0 1.3em;\n      }\n\n      article:after {\n         clear: both;\n         content: \"\";\n         display: table;\n      }\n\n      article h1 {\n         clip: rect(0 0 0 0);\n         position: absolute;\n      }\n\n      article address {\n         float: left;\n         font-size: 125%;\n      }\n\n      /* table meta & balance */\n\n      table.meta,\n      table.balance {\n         float: right;\n         width: 36%;\n      }\n\n      table.meta:after,\n      table.balance:after {\n         clear: both;\n         content: \"\";\n         display: table;\n      }\n\n      /* table meta */\n\n      table.meta th {\n         width: 40%;\n      }\n\n      table.meta td {\n         width: 60%;\n      }\n\n      /* table items */\n\n      table.inventory {\n         clear: both;\n         width: 100%;\n      }\n\n      table.inventory th {\n         font-weight: bold;\n         text-align: center;\n      }\n\n      table.inventory td:nth-child(1) {\n         width: 26%;\n      }\n\n      table.inventory td:nth-child(2) {\n         width: 38%;\n      }\n\n      table.inventory td:nth-child(3) {\n         text-align: center;\n         width: 12%;\n      }\n\n      table.inventory td:nth-child(4) {\n         text-align: center;\n         width: 12%;\n      }\n\n      table.inventory td:nth-child(5) {\n         text-align: center;\n         width: 12%;\n      }\n\n      /* table balance */\n\n      table.balance th {\n         width: 60%;\n         text-align: center;\n      }\n\n      table.balance td {\n         width: 60%;\n         text-align: center;\n      }\n\n      /* aside */\n\n      aside h1 {\n         border: none;\n         border-width: 0 0 1px;\n         margin: 0 0 1em;\n      }\n\n      aside h1 {\n         border-color: #999;\n         border-bottom-style: solid;\n      }\n\n      /* javascript */\n\n      @media print {\n         * {\n            -webkit-print-color-adjust: exact;\n         }\n\n         html {\n            background: none;\n            padding: 0;\n         }\n\n         body {\n            box-shadow: none;\n            margin: 0;\n         }\n\n         span:empty {\n            display: none;\n         }\n      }\n\n      @page {\n         margin: 0;\n      }\n   </style>\n    <link rel=\"stylesheet\" href=\"inc/pdfLib/all.min.css\">\n    <script type=\"text/javascript\" src=\"inc/pdfLib/html2pdf.bundle.min.js\"></script>\n    <script type=\"text/javascript\" src=\"inc/bwip/bwip-js-min.js\"></script>\n    \n            <!--<link rel=\"stylesheet\" href=\"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.1/css/all.min.css\">-->\n            <!--<script src=\"https://cdnjs.cloudflare.com/ajax/libs/html2pdf.js/0.10.1/html2pdf.bundle.min.js\"\n              integrity=\"sha512-GsLlZN/3F2ErC5ifS5QtgpiJtWd43JWSuIgh7mbzZ8zBps+dvLusV+eNQATqgA/HdeKFVgA5v3S/cIrLF7QnIg==\"\n              crossorigin=\"anonymous\" referrerpolicy=\"no-referrer\"></script>-->\n</head>\n<body id=\"Invoices\">\n\n   <article>\n      <BR>\n      <BR>\n      <BR>\n      <address>\n         <!--<p style=\"color:#14406b; font-size: 18px; font-weight: bold;\">AUTONORTE</p>\n         <p style=\"font-size: 12px;\">NIT: 811018300-6</p>\n         <p style=\"font-size: 12px;\">CLL 21 # 8-78 San Jerónimo, Ant</p> -->\n         <BR>\n         <p style=\"font-size: 14px;\">\n            <span style=\"font-weight: bold;\">Nombre: </span>\' . $liq[\"nombre_completo\"] . \' <br>\n            <span style=\"font-weight: bold;\">Dirección: </span>\' . $liq[\"direccion\"] . \' <br>\n         </p>\n      </address>\n\n      <table class=\"meta\">\n        <tr>\n            <th style=\"width: 120px !important;\"><span>Fecha</span></th>\n            <td><span>\' . $liq[\"fecha\"] . \'</span></td>\n         </tr>\n      </table>\n      <table class=\"inventory\">\n         <thead>\n            <tr>\n               <th><span>Valor venta</span></th>\n               <th><span>Valor abono</span></th>\n               <th><span>Valor debito</span></th>\n               <th><span>Seguridad social</span></th>\n            </tr>\n         </thead>\n         <tbody>\n            <tr>\n               <td><span>\' . $liq[\"valor_venta\"] . \'</span></td>\n               <td><span>\' . $liq[\"valor_novedad_abonar\"] . \'</span></td>\n               <td><span>\' . $liq[\"valor_novedad_debitar\"] . \'</span></td>\n               <td><span>\' . $liq[\"seguridad_social\"] . \'</span></td>\n            </tr>\n         </tbody>\n      </table>\n\n      <table class=\"balance\" style=\"font-size: 11px;\">\n         <!--<tr>\n            <td><span>SUBTOTAL</span></td>\n            <th><span data-prefix>$</span><span>\' . number_format($factura[\"valor_sin_recargo\"], 0, \',\', \'.\') . \'</span></th>\n         </tr>-->\n         <tr style=\"color: #fff; font-size: 12px;\">\n            <td style=\"background-color: #1f60a0; font-weight: bold;\"><span>TOTAL</span></td>\n            <th style=\"background-color: #14406b;\"><span>\' . $total . \'</span></th>\n         </tr>\n       \n            \n        </tr>\n         </tr>\n      </table>\n      </div>\n        \n         </br>\n         </br>\n         </br>\n        <table style=\"border-collapse: collapse; border:none; border-width: 0px; style=\"vertical-align: middle !important;\">\n            <tr style=\"float: middle; !important;\">\n                <td style=\"border-radius: 0 !important; border-style: none !important; vertical-align: middle !important; width:30%\">\n                    <img id=\"barcodeTarget\" width=\"500\" />\n                    <canvas id=\"mycanvas\"></canvas>\n                </td>\n            </tr>\n        </table>\n   </article>\n \n       <script>\n        const options = {\n            bcid:        \"gs1-128\",       // Barcode type\n            text:        \"\' . $BarcodeParent. \'\",    // Text to encode\n            scale:       2,               // 3x scaling factor\n            height:      8,              // Bar height, in millimeters\n            includetext: true,            // Show human-readable text\n            textxalign:  \"center\",        // Always good to set this\n        };\n\n        const hola3 = () => {\n            const canvas = document.createElement(\"canvas\");\n            try {\n                bwipjs.toCanvas(canvas, options);\n                document.getElementById(\"barcodeTarget\").src = canvas.toDataURL(\"image/png\");\n            } catch (e) { console.log({e}); }\n        };\n        //addEventListener(\"DOMContentLoaded\", () => {\n            hola3();\n        //});\n\n	</script>\n	\n\n	\n	\n      <script>\n      document.addEventListener(\"DOMContentLoaded\", function (event) {\n        //setTimeout(function(){ hola(); }, 1000);\n        var descargar = \' . $descargar . \';\n        if(descargar == 1) {\n             var element = document.getElementById(\"Invoices\");\n             \n             var opt = {\n                filename: \"\' . str_replace(\' \', \'\', $nombreFactura) . \'.pdf\",\n                image: { type: \"jpeg\", quality: 0.98 },\n                html2canvas: { scale: 2, useCORS: true, letterRendering: true },\n                jsPDF: { unit: \"mm\", format: \"letter\", orientation: \"portrait\" }\n             };\n    		 html2pdf(element, opt);\n    		 setTimeout(function(){ window.close(); }, 1650);\n        }\n        });\n        \n        function hola(){\n            var element = document.getElementById(\"Invoices\");\n             \n             var opt = {\n                filename: \"\' . $factura[\"contrato\"] . \'.pdf\",\n                image: { type: \"jpeg\", quality: 0.98 },\n                html2canvas: { scale: 2, useCORS: true, letterRendering: true },\n                jsPDF: { unit: \"mm\", format: \"letter\", orientation: \"portrait\" }\n             };\n    		 html2pdf(element, opt);\n        }\n   </script>\n</body>\n</html>\';\n\necho $html;\ndie();\n\n\n?>','A'),(1007,'mod/app_ventas/liquidacion_mecanicos.php','2025-01-31 12:00:00','rafael',459,11363,'<?php\n\n @session_start();\n\nif(!isset($_SESSION[\'PCOSESS_SesionAbierta\'])) {\n	echo \'<head><title>Error</title><style type=\"text/css\"> body { background-color: #000000; color: #7f7f7f; font-family: sans-serif,helvetica; } </style></head><body><table width=\"100%\" height=\"100%\" border=0><tr><td align=center>&#9827; Acceso no autorizado !</td></tr></table></body>\';\n	die();\n}\n\n$total = $liq[\'total\'];\n// $codigobarra = $factura[\"codigo_gs1\"]; // \"7709998678439\";\n// $BarcodeParent = \"(415)$codigobarra(8020)\" . $factura[\"id\"] . \"(3900)$totalBr(96)$fechaSinRecargoBr\";\n\n$descargar = 0;\n/* if ($PCO_Accion == \"FACTURAS_descargarFactura\")\n    $descargar = 1; */\n\n$html = \'\n<html>\n\n<head>\n   <meta charset=\"utf-8\">\n   <title>Factura</title>\n   <style>\n      * {\n         border: 0;\n         box-sizing: content-box;\n         color: inherit;\n         font-family: Verdana;\n         font-size: inherit;\n         font-style: inherit;\n         font-weight: inherit;\n         line-height: inherit;\n         list-style: none;\n         margin: 0;\n         padding: 0;\n         text-decoration: none;\n         vertical-align: top;\n      }\n\n      /* heading */\n\n      h1 {\n         font: bold 100% sans-serif;\n         letter-spacing: 0.5em;\n         text-align: center;\n         text-transform: uppercase;\n      }\n\n      /* table */\n\n      table {\n         font-size: 75%;\n         table-layout: fixed;\n         width: 100%;\n      }\n\n      table {\n         border-collapse: separate;\n         border-spacing: 3px;\n      }\n\n      th,\n      td {\n         border-width: 1px;\n         padding: 0.5em;\n         position: relative;\n         text-align: center;\n      }\n\n      th,\n      td {\n         border-radius: 0.25em;\n         border-style: solid;\n      }\n\n      th {\n         background: #1f60a0;\n         color: #fff;\n         border-color: #BBB;\n      }\n\n      td {\n         border-color: #DDD;\n      }\n\n      /* page */\n\n      html {\n         font: 16px/1 \"Open Sans\", sans-serif;\n         overflow: auto;\n         padding: 0.5in;\n      }\n\n      html {\n         background: #999;\n         cursor: default;\n      }\n\n      body {\n         box-sizing: border-box;\n         height: 11in;\n         margin: 0 auto;\n         overflow: hidden;\n         padding: 0.5in;\n         width: 8.5in;\n      }\n\n      body {\n         background: #FFF;\n         border-radius: 1px;\n         box-shadow: 0 0 1in -0.25in rgba(0, 0, 0, 0.5);\n      }\n\n      /* header */\n\n      header {\n         margin: 0 0 3em;\n      }\n\n      header:after {\n         clear: both;\n         content: \"\";\n         display: table;\n      }\n\n      header h1 {\n         background: #000;\n         border-radius: 0.25em;\n         color: #FFF;\n         margin: 0 0 1em;\n         padding: 0.5em 0;\n      }\n\n      header address {\n         float: left;\n         font-size: 75%;\n         font-style: normal;\n         line-height: 1.25;\n         margin: 0 1em 1em 0;\n      }\n\n      header address p {\n         margin: 0 0 0.25em;\n      }\n\n      header span,\n      header img {\n         display: block;\n         float: right;\n      }\n\n      header span {\n         margin: 0 0 1em 1em;\n         max-height: 25%;\n         max-width: 60%;\n         position: relative;\n      }\n\n      header img {\n         max-height: 100%;\n         max-width: 100%;\n      }\n\n      header input {\n         cursor: pointer;\n         -ms-filter: \"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)\";\n         height: 100%;\n         left: 0;\n         opacity: 0;\n         position: absolute;\n         top: 0;\n         width: 100%;\n      }\n\n      /* article */\n\n      article,\n      article address,\n      table.meta,\n      table.inventory {\n         margin: 0 0 1.3em;\n      }\n\n      article:after {\n         clear: both;\n         content: \"\";\n         display: table;\n      }\n\n      article h1 {\n         clip: rect(0 0 0 0);\n         position: absolute;\n      }\n\n      article address {\n         float: left;\n         font-size: 125%;\n      }\n\n      /* table meta & balance */\n\n      table.meta,\n      table.balance {\n         float: right;\n         width: 36%;\n      }\n\n      table.meta:after,\n      table.balance:after {\n         clear: both;\n         content: \"\";\n         display: table;\n      }\n\n      /* table meta */\n\n      table.meta th {\n         width: 40%;\n      }\n\n      table.meta td {\n         width: 60%;\n      }\n\n      /* table items */\n\n      table.inventory {\n         clear: both;\n         width: 100%;\n      }\n\n      table.inventory th {\n         font-weight: bold;\n         text-align: center;\n      }\n\n      table.inventory td:nth-child(1) {\n         width: 26%;\n      }\n\n      table.inventory td:nth-child(2) {\n         width: 38%;\n      }\n\n      table.inventory td:nth-child(3) {\n         text-align: center;\n         width: 12%;\n      }\n\n      table.inventory td:nth-child(4) {\n         text-align: center;\n         width: 12%;\n      }\n\n      table.inventory td:nth-child(5) {\n         text-align: center;\n         width: 12%;\n      }\n\n      /* table balance */\n\n      table.balance th {\n         width: 60%;\n         text-align: center;\n      }\n\n      table.balance td {\n         width: 60%;\n         text-align: center;\n      }\n\n      /* aside */\n\n      aside h1 {\n         border: none;\n         border-width: 0 0 1px;\n         margin: 0 0 1em;\n      }\n\n      aside h1 {\n         border-color: #999;\n         border-bottom-style: solid;\n      }\n\n      /* javascript */\n\n      @media print {\n         * {\n            -webkit-print-color-adjust: exact;\n         }\n\n         html {\n            background: none;\n            padding: 0;\n         }\n\n         body {\n            box-shadow: none;\n            margin: 0;\n         }\n\n         span:empty {\n            display: none;\n         }\n      }\n\n      @page {\n         margin: 0;\n      }\n   </style>\n    <link rel=\"stylesheet\" href=\"inc/pdfLib/all.min.css\">\n    <script type=\"text/javascript\" src=\"inc/pdfLib/html2pdf.bundle.min.js\"></script>\n    <script type=\"text/javascript\" src=\"inc/bwip/bwip-js-min.js\"></script>\n    \n            <!--<link rel=\"stylesheet\" href=\"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.1/css/all.min.css\">-->\n            <!--<script src=\"https://cdnjs.cloudflare.com/ajax/libs/html2pdf.js/0.10.1/html2pdf.bundle.min.js\"\n              integrity=\"sha512-GsLlZN/3F2ErC5ifS5QtgpiJtWd43JWSuIgh7mbzZ8zBps+dvLusV+eNQATqgA/HdeKFVgA5v3S/cIrLF7QnIg==\"\n              crossorigin=\"anonymous\" referrerpolicy=\"no-referrer\"></script>-->\n</head>\n<body id=\"Invoices\">\n\n   <article>\n      <BR>\n      <BR>\n      <BR>\n      <address>\n         <!--<p style=\"color:#14406b; font-size: 18px; font-weight: bold;\">AUTONORTE</p>\n         <p style=\"font-size: 12px;\">NIT: 811018300-6</p>\n         <p style=\"font-size: 12px;\">CLL 21 # 8-78 San Jerónimo, Ant</p> -->\n         <BR>\n         <p style=\"font-size: 14px;\">\n            <span style=\"font-weight: bold;\">Nombre: </span>\' . $liq[\"nombre_completo\"] . \' <br>\n            <span style=\"font-weight: bold;\">Dirección: </span>\' . $liq[\"direccion\"] . \' <br>\n         </p>\n      </address>\n\n      <table class=\"meta\">\n        <tr>\n            <th style=\"width: 120px !important;\"><span>Fecha inicio</span></th>\n            <td><span>\' . $liq[\"fecha_inicio\"] . \'</span></td>\n         </tr>\n        <tr>\n            <th style=\"width: 120px !important;\"><span>Fecha fin</span></th>\n            <td><span>\' . $liq[\"fecha_fin\"] . \'</span></td>\n         </tr>\n      </table>\n      <table class=\"inventory\">\n         <thead>\n            <tr>\n               <th><span>Valor venta</span></th>\n               <th><span>Valor abono</span></th>\n               <th><span>Valor debito</span></th>\n               <th><span>Seguridad social</span></th>\n            </tr>\n         </thead>\n         <tbody>\n            <tr>\n               <td><span>\' . $liq[\"valor_venta\"] . \'</span></td>\n               <td><span>\' . $liq[\"valor_novedad_abonar\"] . \'</span></td>\n               <td><span>\' . $liq[\"valor_novedad_debitar\"] . \'</span></td>\n               <td><span>\' . $liq[\"seguridad_social\"] . \'</span></td>\n            </tr>\n         </tbody>\n      </table>\n\n      <table class=\"balance\" style=\"font-size: 11px;\">\n         <!--<tr>\n            <td><span>SUBTOTAL</span></td>\n            <th><span data-prefix>$</span><span>\' . number_format($factura[\"valor_sin_recargo\"], 0, \',\', \'.\') . \'</span></th>\n         </tr>-->\n         <tr style=\"color: #fff; font-size: 12px;\">\n            <td style=\"background-color: #1f60a0; font-weight: bold;\"><span>TOTAL</span></td>\n            <th style=\"background-color: #14406b;\"><span>\' . $total . \'</span></th>\n         </tr>\n       \n            \n        </tr>\n         </tr>\n      </table>\n      </div>\n        \n         </br>\n         </br>\n         </br>\n        <table style=\"border-collapse: collapse; border:none; border-width: 0px; style=\"vertical-align: middle !important;\">\n            <tr style=\"float: middle; !important;\">\n                <td style=\"border-radius: 0 !important; border-style: none !important; vertical-align: middle !important; width:30%\">\n                    <img id=\"barcodeTarget\" width=\"500\" />\n                    <canvas id=\"mycanvas\"></canvas>\n                </td>\n            </tr>\n        </table>\n   </article>\n \n       <script>\n        const options = {\n            bcid:        \"gs1-128\",       // Barcode type\n            text:        \"\' . $BarcodeParent. \'\",    // Text to encode\n            scale:       2,               // 3x scaling factor\n            height:      8,              // Bar height, in millimeters\n            includetext: true,            // Show human-readable text\n            textxalign:  \"center\",        // Always good to set this\n        };\n\n        const hola3 = () => {\n            const canvas = document.createElement(\"canvas\");\n            try {\n                bwipjs.toCanvas(canvas, options);\n                document.getElementById(\"barcodeTarget\").src = canvas.toDataURL(\"image/png\");\n            } catch (e) { console.log({e}); }\n        };\n        //addEventListener(\"DOMContentLoaded\", () => {\n            hola3();\n        //});\n\n	</script>\n	\n\n	\n	\n      <script>\n      document.addEventListener(\"DOMContentLoaded\", function (event) {\n        //setTimeout(function(){ hola(); }, 1000);\n        var descargar = \' . $descargar . \';\n        if(descargar == 1) {\n             var element = document.getElementById(\"Invoices\");\n             \n             var opt = {\n                filename: \"\' . str_replace(\' \', \'\', $nombreFactura) . \'.pdf\",\n                image: { type: \"jpeg\", quality: 0.98 },\n                html2canvas: { scale: 2, useCORS: true, letterRendering: true },\n                jsPDF: { unit: \"mm\", format: \"letter\", orientation: \"portrait\" }\n             };\n    		 html2pdf(element, opt);\n    		 setTimeout(function(){ window.close(); }, 1650);\n        }\n        });\n        \n        function hola(){\n            var element = document.getElementById(\"Invoices\");\n             \n             var opt = {\n                filename: \"\' . $factura[\"contrato\"] . \'.pdf\",\n                image: { type: \"jpeg\", quality: 0.98 },\n                html2canvas: { scale: 2, useCORS: true, letterRendering: true },\n                jsPDF: { unit: \"mm\", format: \"letter\", orientation: \"portrait\" }\n             };\n    		 html2pdf(element, opt);\n        }\n   </script>\n</body>\n</html>\';\n\necho $html;\ndie();\n\n\n?>','A');
INSERT INTO `core_pcoder_historial` VALUES (1008,'mod/app_ventas/liquidacion_mecanicos.php','2025-01-31 12:01:00','rafael',459,11363,'<?php\n\n @session_start();\n\nif(!isset($_SESSION[\'PCOSESS_SesionAbierta\'])) {\n	echo \'<head><title>Error</title><style type=\"text/css\"> body { background-color: #000000; color: #7f7f7f; font-family: sans-serif,helvetica; } </style></head><body><table width=\"100%\" height=\"100%\" border=0><tr><td align=center>&#9827; Acceso no autorizado !</td></tr></table></body>\';\n	die();\n}\n\n$total = $liq[\'total\'];\n// $codigobarra = $factura[\"codigo_gs1\"]; // \"7709998678439\";\n// $BarcodeParent = \"(415)$codigobarra(8020)\" . $factura[\"id\"] . \"(3900)$totalBr(96)$fechaSinRecargoBr\";\n\n$descargar = 0;\n/* if ($PCO_Accion == \"FACTURAS_descargarFactura\")\n    $descargar = 1; */\n\n$html = \'\n<html>\n\n<head>\n   <meta charset=\"utf-8\">\n   <title>Factura</title>\n   <style>\n      * {\n         border: 0;\n         box-sizing: content-box;\n         color: inherit;\n         font-family: Verdana;\n         font-size: inherit;\n         font-style: inherit;\n         font-weight: inherit;\n         line-height: inherit;\n         list-style: none;\n         margin: 0;\n         padding: 0;\n         text-decoration: none;\n         vertical-align: top;\n      }\n\n      /* heading */\n\n      h1 {\n         font: bold 100% sans-serif;\n         letter-spacing: 0.5em;\n         text-align: center;\n         text-transform: uppercase;\n      }\n\n      /* table */\n\n      table {\n         font-size: 75%;\n         table-layout: fixed;\n         width: 100%;\n      }\n\n      table {\n         border-collapse: separate;\n         border-spacing: 3px;\n      }\n\n      th,\n      td {\n         border-width: 1px;\n         padding: 0.5em;\n         position: relative;\n         text-align: center;\n      }\n\n      th,\n      td {\n         border-radius: 0.25em;\n         border-style: solid;\n      }\n\n      th {\n         background: #1f60a0;\n         color: #fff;\n         border-color: #BBB;\n      }\n\n      td {\n         border-color: #DDD;\n      }\n\n      /* page */\n\n      html {\n         font: 16px/1 \"Open Sans\", sans-serif;\n         overflow: auto;\n         padding: 0.5in;\n      }\n\n      html {\n         background: #999;\n         cursor: default;\n      }\n\n      body {\n         box-sizing: border-box;\n         height: 11in;\n         margin: 0 auto;\n         overflow: hidden;\n         padding: 0.5in;\n         width: 8.5in;\n      }\n\n      body {\n         background: #FFF;\n         border-radius: 1px;\n         box-shadow: 0 0 1in -0.25in rgba(0, 0, 0, 0.5);\n      }\n\n      /* header */\n\n      header {\n         margin: 0 0 3em;\n      }\n\n      header:after {\n         clear: both;\n         content: \"\";\n         display: table;\n      }\n\n      header h1 {\n         background: #000;\n         border-radius: 0.25em;\n         color: #FFF;\n         margin: 0 0 1em;\n         padding: 0.5em 0;\n      }\n\n      header address {\n         float: left;\n         font-size: 75%;\n         font-style: normal;\n         line-height: 1.25;\n         margin: 0 1em 1em 0;\n      }\n\n      header address p {\n         margin: 0 0 0.25em;\n      }\n\n      header span,\n      header img {\n         display: block;\n         float: right;\n      }\n\n      header span {\n         margin: 0 0 1em 1em;\n         max-height: 25%;\n         max-width: 60%;\n         position: relative;\n      }\n\n      header img {\n         max-height: 100%;\n         max-width: 100%;\n      }\n\n      header input {\n         cursor: pointer;\n         -ms-filter: \"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)\";\n         height: 100%;\n         left: 0;\n         opacity: 0;\n         position: absolute;\n         top: 0;\n         width: 100%;\n      }\n\n      /* article */\n\n      article,\n      article address,\n      table.meta,\n      table.inventory {\n         margin: 0 0 1.3em;\n      }\n\n      article:after {\n         clear: both;\n         content: \"\";\n         display: table;\n      }\n\n      article h1 {\n         clip: rect(0 0 0 0);\n         position: absolute;\n      }\n\n      article address {\n         float: left;\n         font-size: 125%;\n      }\n\n      /* table meta & balance */\n\n      table.meta,\n      table.balance {\n         float: right;\n         width: 36%;\n      }\n\n      table.meta:after,\n      table.balance:after {\n         clear: both;\n         content: \"\";\n         display: table;\n      }\n\n      /* table meta */\n\n      table.meta th {\n         width: 40%;\n      }\n\n      table.meta td {\n         width: 60%;\n      }\n\n      /* table items */\n\n      table.inventory {\n         clear: both;\n         width: 100%;\n      }\n\n      table.inventory th {\n         font-weight: bold;\n         text-align: center;\n      }\n\n      table.inventory td:nth-child(1) {\n         width: 26%;\n      }\n\n      table.inventory td:nth-child(2) {\n         width: 38%;\n      }\n\n      table.inventory td:nth-child(3) {\n         text-align: center;\n         width: 12%;\n      }\n\n      table.inventory td:nth-child(4) {\n         text-align: center;\n         width: 12%;\n      }\n\n      table.inventory td:nth-child(5) {\n         text-align: center;\n         width: 12%;\n      }\n\n      /* table balance */\n\n      table.balance th {\n         width: 60%;\n         text-align: center;\n      }\n\n      table.balance td {\n         width: 60%;\n         text-align: center;\n      }\n\n      /* aside */\n\n      aside h1 {\n         border: none;\n         border-width: 0 0 1px;\n         margin: 0 0 1em;\n      }\n\n      aside h1 {\n         border-color: #999;\n         border-bottom-style: solid;\n      }\n\n      /* javascript */\n\n      @media print {\n         * {\n            -webkit-print-color-adjust: exact;\n         }\n\n         html {\n            background: none;\n            padding: 0;\n         }\n\n         body {\n            box-shadow: none;\n            margin: 0;\n         }\n\n         span:empty {\n            display: none;\n         }\n      }\n\n      @page {\n         margin: 0;\n      }\n   </style>\n    <link rel=\"stylesheet\" href=\"inc/pdfLib/all.min.css\">\n    <script type=\"text/javascript\" src=\"inc/pdfLib/html2pdf.bundle.min.js\"></script>\n    <script type=\"text/javascript\" src=\"inc/bwip/bwip-js-min.js\"></script>\n    \n            <!--<link rel=\"stylesheet\" href=\"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.1/css/all.min.css\">-->\n            <!--<script src=\"https://cdnjs.cloudflare.com/ajax/libs/html2pdf.js/0.10.1/html2pdf.bundle.min.js\"\n              integrity=\"sha512-GsLlZN/3F2ErC5ifS5QtgpiJtWd43JWSuIgh7mbzZ8zBps+dvLusV+eNQATqgA/HdeKFVgA5v3S/cIrLF7QnIg==\"\n              crossorigin=\"anonymous\" referrerpolicy=\"no-referrer\"></script>-->\n</head>\n<body id=\"Invoices\">\n\n   <article>\n      <BR>\n      <BR>\n      <BR>\n      <address>\n         <!--<p style=\"color:#14406b; font-size: 18px; font-weight: bold;\">AUTONORTE</p>\n         <p style=\"font-size: 12px;\">NIT: 811018300-6</p>\n         <p style=\"font-size: 12px;\">CLL 21 # 8-78 San Jerónimo, Ant</p> -->\n         <BR>\n         <p style=\"font-size: 14px;\">\n            <span style=\"font-weight: bold;\">Nombre: </span>\' . $liq[\"nombre_completo\"] . \' <br>\n            <span style=\"font-weight: bold;\">Dirección: </span>\' . $liq[\"direccion\"] . \' <br>\n         </p>\n      </address>\n\n      <table class=\"meta\">\n        <tr>\n            <th style=\"width: 120px !important;\"><span>Fecha inicio</span></th>\n            <td><span>\' . $liq[\"fecha_inicio\"] . \'</span></td>\n         </tr>\n        <tr>\n            <th style=\"width: 120px !important;\"><span>Fecha fin</span></th>\n            <td><span>\' . $liq[\"fecha_fin\"] . \'</span></td>\n         </tr>\n      </table>\n      <table class=\"inventory\">\n         <thead>\n            <tr>\n               <th><span>Valor venta</span></th>\n               <th><span>Valor abono</span></th>\n               <th><span>Valor débito</span></th>\n               <th><span>Seguridad social</span></th>\n            </tr>\n         </thead>\n         <tbody>\n            <tr>\n               <td><span>\' . $liq[\"valor_venta\"] . \'</span></td>\n               <td><span>\' . $liq[\"valor_novedad_abonar\"] . \'</span></td>\n               <td><span>\' . $liq[\"valor_novedad_debitar\"] . \'</span></td>\n               <td><span>\' . $liq[\"seguridad_social\"] . \'</span></td>\n            </tr>\n         </tbody>\n      </table>\n\n      <table class=\"balance\" style=\"font-size: 11px;\">\n         <!--<tr>\n            <td><span>SUBTOTAL</span></td>\n            <th><span data-prefix>$</span><span>\' . number_format($factura[\"valor_sin_recargo\"], 0, \',\', \'.\') . \'</span></th>\n         </tr>-->\n         <tr style=\"color: #fff; font-size: 12px;\">\n            <td style=\"background-color: #1f60a0; font-weight: bold;\"><span>TOTAL</span></td>\n            <th style=\"background-color: #14406b;\"><span>\' . $total . \'</span></th>\n         </tr>\n       \n            \n        </tr>\n         </tr>\n      </table>\n      </div>\n        \n         </br>\n         </br>\n         </br>\n        <table style=\"border-collapse: collapse; border:none; border-width: 0px; style=\"vertical-align: middle !important;\">\n            <tr style=\"float: middle; !important;\">\n                <td style=\"border-radius: 0 !important; border-style: none !important; vertical-align: middle !important; width:30%\">\n                    <img id=\"barcodeTarget\" width=\"500\" />\n                    <canvas id=\"mycanvas\"></canvas>\n                </td>\n            </tr>\n        </table>\n   </article>\n \n       <script>\n        const options = {\n            bcid:        \"gs1-128\",       // Barcode type\n            text:        \"\' . $BarcodeParent. \'\",    // Text to encode\n            scale:       2,               // 3x scaling factor\n            height:      8,              // Bar height, in millimeters\n            includetext: true,            // Show human-readable text\n            textxalign:  \"center\",        // Always good to set this\n        };\n\n        const hola3 = () => {\n            const canvas = document.createElement(\"canvas\");\n            try {\n                bwipjs.toCanvas(canvas, options);\n                document.getElementById(\"barcodeTarget\").src = canvas.toDataURL(\"image/png\");\n            } catch (e) { console.log({e}); }\n        };\n        //addEventListener(\"DOMContentLoaded\", () => {\n            hola3();\n        //});\n\n	</script>\n	\n\n	\n	\n      <script>\n      document.addEventListener(\"DOMContentLoaded\", function (event) {\n        //setTimeout(function(){ hola(); }, 1000);\n        var descargar = \' . $descargar . \';\n        if(descargar == 1) {\n             var element = document.getElementById(\"Invoices\");\n             \n             var opt = {\n                filename: \"\' . str_replace(\' \', \'\', $nombreFactura) . \'.pdf\",\n                image: { type: \"jpeg\", quality: 0.98 },\n                html2canvas: { scale: 2, useCORS: true, letterRendering: true },\n                jsPDF: { unit: \"mm\", format: \"letter\", orientation: \"portrait\" }\n             };\n    		 html2pdf(element, opt);\n    		 setTimeout(function(){ window.close(); }, 1650);\n        }\n        });\n        \n        function hola(){\n            var element = document.getElementById(\"Invoices\");\n             \n             var opt = {\n                filename: \"\' . $factura[\"contrato\"] . \'.pdf\",\n                image: { type: \"jpeg\", quality: 0.98 },\n                html2canvas: { scale: 2, useCORS: true, letterRendering: true },\n                jsPDF: { unit: \"mm\", format: \"letter\", orientation: \"portrait\" }\n             };\n    		 html2pdf(element, opt);\n        }\n   </script>\n</body>\n</html>\';\n\necho $html;\ndie();\n\n\n?>','A'),(1009,'mod/app_ventas/liquidacion_mecanicos.php','2025-01-31 13:51:00','rafael',459,11363,'<?php\n\n @session_start();\n\nif(!isset($_SESSION[\'PCOSESS_SesionAbierta\'])) {\n	echo \'<head><title>Error</title><style type=\"text/css\"> body { background-color: #000000; color: #7f7f7f; font-family: sans-serif,helvetica; } </style></head><body><table width=\"100%\" height=\"100%\" border=0><tr><td align=center>&#9827; Acceso no autorizado !</td></tr></table></body>\';\n	die();\n}\n\n$total = $liq[\'total\'];\n// $codigobarra = $factura[\"codigo_gs1\"]; // \"7709998678439\";\n// $BarcodeParent = \"(415)$codigobarra(8020)\" . $factura[\"id\"] . \"(3900)$totalBr(96)$fechaSinRecargoBr\";\n\n$descargar = 0;\n/* if ($PCO_Accion == \"FACTURAS_descargarFactura\")\n    $descargar = 1; */\n\n$html = \'\n<html>\n\n<head>\n   <meta charset=\"utf-8\">\n   <title>Factura</title>\n   <style>\n      * {\n         border: 0;\n         box-sizing: content-box;\n         color: inherit;\n         font-family: Verdana;\n         font-size: inherit;\n         font-style: inherit;\n         font-weight: inherit;\n         line-height: inherit;\n         list-style: none;\n         margin: 0;\n         padding: 0;\n         text-decoration: none;\n         vertical-align: top;\n      }\n\n      /* heading */\n\n      h1 {\n         font: bold 100% sans-serif;\n         letter-spacing: 0.5em;\n         text-align: center;\n         text-transform: uppercase;\n      }\n\n      /* table */\n\n      table {\n         font-size: 75%;\n         table-layout: fixed;\n         width: 100%;\n      }\n\n      table {\n         border-collapse: separate;\n         border-spacing: 3px;\n      }\n\n      th,\n      td {\n         border-width: 1px;\n         padding: 0.5em;\n         position: relative;\n         text-align: center;\n      }\n\n      th,\n      td {\n         border-radius: 0.25em;\n         border-style: solid;\n      }\n\n      th {\n         background: #1f60a0;\n         color: #fff;\n         border-color: #BBB;\n      }\n\n      td {\n         border-color: #DDD;\n      }\n\n      /* page */\n\n      html {\n         font: 16px/1 \"Open Sans\", sans-serif;\n         overflow: auto;\n         padding: 0.5in;\n      }\n\n      html {\n         background: #999;\n         cursor: default;\n      }\n\n      body {\n         box-sizing: border-box;\n         height: 11in;\n         margin: 0 auto;\n         overflow: hidden;\n         padding: 0.5in;\n         width: 8.5in;\n      }\n\n      body {\n         background: #FFF;\n         border-radius: 1px;\n         box-shadow: 0 0 1in -0.25in rgba(0, 0, 0, 0.5);\n      }\n\n      /* header */\n\n      header {\n         margin: 0 0 3em;\n      }\n\n      header:after {\n         clear: both;\n         content: \"\";\n         display: table;\n      }\n\n      header h1 {\n         background: #000;\n         border-radius: 0.25em;\n         color: #FFF;\n         margin: 0 0 1em;\n         padding: 0.5em 0;\n      }\n\n      header address {\n         float: left;\n         font-size: 75%;\n         font-style: normal;\n         line-height: 1.25;\n         margin: 0 1em 1em 0;\n      }\n\n      header address p {\n         margin: 0 0 0.25em;\n      }\n\n      header span,\n      header img {\n         display: block;\n         float: right;\n      }\n\n      header span {\n         margin: 0 0 1em 1em;\n         max-height: 25%;\n         max-width: 60%;\n         position: relative;\n      }\n\n      header img {\n         max-height: 100%;\n         max-width: 100%;\n      }\n\n      header input {\n         cursor: pointer;\n         -ms-filter: \"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)\";\n         height: 100%;\n         left: 0;\n         opacity: 0;\n         position: absolute;\n         top: 0;\n         width: 100%;\n      }\n\n      /* article */\n\n      article,\n      article address,\n      table.meta,\n      table.inventory {\n         margin: 0 0 1.3em;\n      }\n\n      article:after {\n         clear: both;\n         content: \"\";\n         display: table;\n      }\n\n      article h1 {\n         clip: rect(0 0 0 0);\n         position: absolute;\n      }\n\n      article address {\n         float: left;\n         font-size: 125%;\n      }\n\n      /* table meta & balance */\n\n      table.meta,\n      table.balance {\n         float: right;\n         width: 36%;\n      }\n\n      table.meta:after,\n      table.balance:after {\n         clear: both;\n         content: \"\";\n         display: table;\n      }\n\n      /* table meta */\n\n      table.meta th {\n         width: 40%;\n      }\n\n      table.meta td {\n         width: 60%;\n      }\n\n      /* table items */\n\n      table.inventory {\n         clear: both;\n         width: 100%;\n      }\n\n      table.inventory th {\n         font-weight: bold;\n         text-align: center;\n      }\n\n      table.inventory td:nth-child(1) {\n         width: 26%;\n      }\n\n      table.inventory td:nth-child(2) {\n         width: 38%;\n      }\n\n      table.inventory td:nth-child(3) {\n         text-align: center;\n         width: 12%;\n      }\n\n      table.inventory td:nth-child(4) {\n         text-align: center;\n         width: 12%;\n      }\n\n      table.inventory td:nth-child(5) {\n         text-align: center;\n         width: 12%;\n      }\n\n      /* table balance */\n\n      table.balance th {\n         width: 60%;\n         text-align: center;\n      }\n\n      table.balance td {\n         width: 60%;\n         text-align: center;\n      }\n\n      /* aside */\n\n      aside h1 {\n         border: none;\n         border-width: 0 0 1px;\n         margin: 0 0 1em;\n      }\n\n      aside h1 {\n         border-color: #999;\n         border-bottom-style: solid;\n      }\n\n      /* javascript */\n\n      @media print {\n         * {\n            -webkit-print-color-adjust: exact;\n         }\n\n         html {\n            background: none;\n            padding: 0;\n         }\n\n         body {\n            box-shadow: none;\n            margin: 0;\n         }\n\n         span:empty {\n            display: none;\n         }\n      }\n\n      @page {\n         margin: 0;\n      }\n   </style>\n    <link rel=\"stylesheet\" href=\"inc/pdfLib/all.min.css\">\n    <script type=\"text/javascript\" src=\"inc/pdfLib/html2pdf.bundle.min.js\"></script>\n    <script type=\"text/javascript\" src=\"inc/bwip/bwip-js-min.js\"></script>\n    \n            <!--<link rel=\"stylesheet\" href=\"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.1/css/all.min.css\">-->\n            <!--<script src=\"https://cdnjs.cloudflare.com/ajax/libs/html2pdf.js/0.10.1/html2pdf.bundle.min.js\"\n              integrity=\"sha512-GsLlZN/3F2ErC5ifS5QtgpiJtWd43JWSuIgh7mbzZ8zBps+dvLusV+eNQATqgA/HdeKFVgA5v3S/cIrLF7QnIg==\"\n              crossorigin=\"anonymous\" referrerpolicy=\"no-referrer\"></script>-->\n</head>\n<body id=\"Invoices\">\n\n   <article>\n      <BR>\n      <BR>\n      <BR>\n      <address>\n         <!--<p style=\"color:#14406b; font-size: 18px; font-weight: bold;\">AUTONORTE</p>\n         <p style=\"font-size: 12px;\">NIT: 811018300-6</p>\n         <p style=\"font-size: 12px;\">CLL 21 # 8-78 San Jerónimo, Ant</p> -->\n         <BR>\n         <p style=\"font-size: 14px;\">\n            <span style=\"font-weight: bold;\">Nombre: </span>\' . $liq[\"nombre_completo\"] . \' <br>\n            <span style=\"font-weight: bold;\">Dirección: </span>\' . $liq[\"direccion\"] . \' <br>\n         </p>\n      </address>\n\n      <table class=\"meta\">\n        <tr>\n            <th style=\"width: 120px !important;\"><span>Fecha inicio</span></th>\n            <td><span>\' . $liq[\"fecha_inicio\"] . \'</span></td>\n         </tr>\n        <tr>\n            <th style=\"width: 120px !important;\"><span>Fecha fin</span></th>\n            <td><span>\' . $liq[\"fecha_fin\"] . \'</span></td>\n         </tr>\n      </table>\n      <table class=\"inventory\">\n         <thead>\n            <tr>\n               <th><span>Valor venta</span></th>\n               <th><span>Valor abono</span></th>\n               <th><span>Valor débito</span></th>\n               <th><span>Seguridad social</span></th>\n            </tr>\n         </thead>\n         <tbody>\n            <tr>\n               <td><span>\' . $liq[\"valor_venta\"] . \'</span></td>\n               <td><span>\' . $liq[\"valor_novedad_abonar\"] . \'</span></td>\n               <td><span>\' . $liq[\"valor_novedad_debitar\"] . \'</span></td>\n               <td><span>\' . $liq[\"seguridad_social\"] . \'</span></td>\n            </tr>\n         </tbody>\n      </table>\n\n      <table class=\"balance\" style=\"font-size: 11px;\">\n         <!--<tr>\n            <td><span>SUBTOTAL</span></td>\n            <th><span data-prefix>$</span><span>\' . number_format($factura[\"valor_sin_recargo\"], 0, \',\', \'.\') . \'</span></th>\n         </tr>-->\n         <tr style=\"color: #fff; font-size: 12px;\">\n            <td style=\"background-color: #1f60a0; font-weight: bold;\"><span>TOTAL</span></td>\n            <th style=\"background-color: #14406b;\"><span>\' . $total . \'</span></th>\n         </tr>\n       \n            \n        </tr>\n         </tr>\n      </table>\n      </div>\n        \n         </br>\n         </br>\n         </br>\n        <table style=\"border-collapse: collapse; border:none; border-width: 0px; style=\"vertical-align: middle !important;\">\n            <tr style=\"float: middle; !important;\">\n                <td style=\"border-radius: 0 !important; border-style: none !important; vertical-align: middle !important; width:30%\">\n                    <img id=\"barcodeTarget\" width=\"500\" />\n                    <canvas id=\"mycanvas\"></canvas>\n                </td>\n            </tr>\n        </table>\n   </article>\n \n       <script>\n        const options = {\n            bcid:        \"gs1-128\",       // Barcode type\n            text:        \"\' . $BarcodeParent. \'\",    // Text to encode\n            scale:       2,               // 3x scaling factor\n            height:      8,              // Bar height, in millimeters\n            includetext: true,            // Show human-readable text\n            textxalign:  \"center\",        // Always good to set this\n        };\n\n        const hola3 = () => {\n            const canvas = document.createElement(\"canvas\");\n            try {\n                bwipjs.toCanvas(canvas, options);\n                document.getElementById(\"barcodeTarget\").src = canvas.toDataURL(\"image/png\");\n            } catch (e) { console.log({e}); }\n        };\n        //addEventListener(\"DOMContentLoaded\", () => {\n            hola3();\n        //});\n\n	</script>\n	\n\n	\n	\n      <script>\n      document.addEventListener(\"DOMContentLoaded\", function (event) {\n        //setTimeout(function(){ hola(); }, 1000);\n        var descargar = \' . $descargar . \';\n        if(descargar == 1) {\n             var element = document.getElementById(\"Invoices\");\n             \n             var opt = {\n                filename: \"\' . str_replace(\' \', \'\', $nombreFactura) . \'.pdf\",\n                image: { type: \"jpeg\", quality: 0.98 },\n                html2canvas: { scale: 2, useCORS: true, letterRendering: true },\n                jsPDF: { unit: \"mm\", format: \"letter\", orientation: \"portrait\" }\n             };\n    		 html2pdf(element, opt);\n    		 setTimeout(function(){ window.close(); }, 1650);\n        }\n        });\n        \n        function hola(){\n            var element = document.getElementById(\"Invoices\");\n             \n             var opt = {\n                filename: \"\' . $factura[\"contrato\"] . \'.pdf\",\n                image: { type: \"jpeg\", quality: 0.98 },\n                html2canvas: { scale: 2, useCORS: true, letterRendering: true },\n                jsPDF: { unit: \"mm\", format: \"letter\", orientation: \"portrait\" }\n             };\n    		 html2pdf(element, opt);\n        }\n   </script>\n</body>\n</html>\';\n\necho $html;\ndie();\n\n\n?>','A'),(1010,'mod/app_ventas/liquidacion_mecanicos.php','2025-01-31 13:51:00','rafael',459,11362,'<?php\n\n @session_start();\n\nif(!isset($_SESSION[\'PCOSESS_SesionAbierta\'])) {\n	echo \'<head><title>Error</title><style type=\"text/css\"> body { background-color: #000000; color: #7f7f7f; font-family: sans-serif,helvetica; } </style></head><body><table width=\"100%\" height=\"100%\" border=0><tr><td align=center>&#9827; Acceso no autorizado !</td></tr></table></body>\';\n	die();\n}\n\n$total = $liq[\'total\'];\n// $codigobarra = $factura[\"codigo_gs1\"]; // \"7709998678439\";\n// $BarcodeParent = \"(415)$codigobarra(8020)\" . $factura[\"id\"] . \"(3900)$totalBr(96)$fechaSinRecargoBr\";\n\n$descargar = 0;\n/* if ($PCO_Accion == \"FACTURAS_descargarFactura\")\n    $descargar = 1; */\n\n$html = \'\n<html>\n\n<head>\n   <meta charset=\"utf-8\">\n   <title>Factura</title>\n   <style>\n      * {\n         border: 0;\n         box-sizing: content-box;\n         color: inherit;\n         font-family: Verdana;\n         font-size: inherit;\n         font-style: inherit;\n         font-weight: inherit;\n         line-height: inherit;\n         list-style: none;\n         margin: 0;\n         padding: 0;\n         text-decoration: none;\n         vertical-align: top;\n      }\n\n      /* heading */\n\n      h1 {\n         font: bold 100% sans-serif;\n         letter-spacing: 0.5em;\n         text-align: center;\n         text-transform: uppercase;\n      }\n\n      /* table */\n\n      table {\n         font-size: 75%;\n         table-layout: fixed;\n         width: 100%;\n      }\n\n      table {\n         border-collapse: separate;\n         border-spacing: 3px;\n      }\n\n      th,\n      td {\n         border-width: 1px;\n         padding: 0.5em;\n         position: relative;\n         text-align: center;\n      }\n\n      th,\n      td {\n         border-radius: 0.25em;\n         border-style: solid;\n      }\n\n      th {\n         background: #1f60a0;\n         color: #fff;\n         border-color: #BBB;\n      }\n\n      td {\n         border-color: #DDD;\n      }\n\n      /* page */\n\n      html {\n         font: 16px/1 \"Open Sans\", sans-serif;\n         overflow: auto;\n         padding: 0.5in;\n      }\n\n      html {\n         background: #999;\n         cursor: default;\n      }\n\n      body {\n         box-sizing: border-box;\n         height: 11in;\n         margin: 0 auto;\n         overflow: hidden;\n         padding: 0.5in;\n         width: 8.5in;\n      }\n\n      body {\n         background: #FFF;\n         border-radius: 1px;\n         box-shadow: 0 0 1in -0.25in rgba(0, 0, 0, 0.5);\n      }\n\n      /* header */\n\n      header {\n         margin: 0 0 3em;\n      }\n\n      header:after {\n         clear: both;\n         content: \"\";\n         display: table;\n      }\n\n      header h1 {\n         background: #000;\n         border-radius: 0.25em;\n         color: #FFF;\n         margin: 0 0 1em;\n         padding: 0.5em 0;\n      }\n\n      header address {\n         float: left;\n         font-size: 75%;\n         font-style: normal;\n         line-height: 1.25;\n         margin: 0 1em 1em 0;\n      }\n\n      header address p {\n         margin: 0 0 0.25em;\n      }\n\n      header span,\n      header img {\n         display: block;\n         float: right;\n      }\n\n      header span {\n         margin: 0 0 1em 1em;\n         max-height: 25%;\n         max-width: 60%;\n         position: relative;\n      }\n\n      header img {\n         max-height: 100%;\n         max-width: 100%;\n      }\n\n      header input {\n         cursor: pointer;\n         -ms-filter: \"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)\";\n         height: 100%;\n         left: 0;\n         opacity: 0;\n         position: absolute;\n         top: 0;\n         width: 100%;\n      }\n\n      /* article */\n\n      article,\n      article address,\n      table.meta,\n      table.inventory {\n         margin: 0 0 1.3em;\n      }\n\n      article:after {\n         clear: both;\n         content: \"\";\n         display: table;\n      }\n\n      article h1 {\n         clip: rect(0 0 0 0);\n         position: absolute;\n      }\n\n      article address {\n         float: left;\n         font-size: 125%;\n      }\n\n      /* table meta & balance */\n\n      table.meta,\n      table.balance {\n         float: right;\n         width: 36%;\n      }\n\n      table.meta:after,\n      table.balance:after {\n         clear: both;\n         content: \"\";\n         display: table;\n      }\n\n      /* table meta */\n\n      table.meta th {\n         width: 40%;\n      }\n\n      table.meta td {\n         width: 60%;\n      }\n\n      /* table items */\n\n      table.inventory {\n         clear: both;\n         width: 100%;\n      }\n\n      table.inventory th {\n         font-weight: bold;\n         text-align: center;\n      }\n\n      table.inventory td:nth-child(1) {\n         width: 26%;\n      }\n\n      table.inventory td:nth-child(2) {\n         width: 38%;\n      }\n\n      table.inventory td:nth-child(3) {\n         text-align: center;\n         width: 12%;\n      }\n\n      table.inventory td:nth-child(4) {\n         text-align: center;\n         width: 12%;\n      }\n\n      table.inventory td:nth-child(5) {\n         text-align: center;\n         width: 12%;\n      }\n\n      /* table balance */\n\n      table.balance th {\n         width: 60%;\n         text-align: center;\n      }\n\n      table.balance td {\n         width: 60%;\n         text-align: center;\n      }\n\n      /* aside */\n\n      aside h1 {\n         border: none;\n         border-width: 0 0 1px;\n         margin: 0 0 1em;\n      }\n\n      aside h1 {\n         border-color: #999;\n         border-bottom-style: solid;\n      }\n\n      /* javascript */\n\n      @media print {\n         * {\n            -webkit-print-color-adjust: exact;\n         }\n\n         html {\n            background: none;\n            padding: 0;\n         }\n\n         body {\n            box-shadow: none;\n            margin: 0;\n         }\n\n         span:empty {\n            display: none;\n         }\n      }\n\n      @page {\n         margin: 0;\n      }\n   </style>\n    <link rel=\"stylesheet\" href=\"inc/pdfLib/all.min.css\">\n    <script type=\"text/javascript\" src=\"inc/pdfLib/html2pdf.bundle.min.js\"></script>\n    <script type=\"text/javascript\" src=\"inc/bwip/bwip-js-min.js\"></script>\n    \n            <!--<link rel=\"stylesheet\" href=\"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.1/css/all.min.css\">-->\n            <!--<script src=\"https://cdnjs.cloudflare.com/ajax/libs/html2pdf.js/0.10.1/html2pdf.bundle.min.js\"\n              integrity=\"sha512-GsLlZN/3F2ErC5ifS5QtgpiJtWd43JWSuIgh7mbzZ8zBps+dvLusV+eNQATqgA/HdeKFVgA5v3S/cIrLF7QnIg==\"\n              crossorigin=\"anonymous\" referrerpolicy=\"no-referrer\"></script>-->\n</head>\n<body id=\"Invoices\">\n\n   <article>\n      <BR>\n      <BR>\n      <BR>\n      <table class=\"meta\">\n        <tr>\n            <th style=\"width: 120px !important;\"><span>Fecha inicio</span></th>\n            <td><span>\' . $liq[\"fecha_inicio\"] . \'</span></td>\n         </tr>\n        <tr>\n            <th style=\"width: 120px !important;\"><span>Fecha fin</span></th>\n            <td><span>\' . $liq[\"fecha_fin\"] . \'</span></td>\n         </tr>\n      </table>\n      <address>\n         <!--<p style=\"color:#14406b; font-size: 18px; font-weight: bold;\">AUTONORTE</p>\n         <p style=\"font-size: 12px;\">NIT: 811018300-6</p>\n         <p style=\"font-size: 12px;\">CLL 21 # 8-78 San Jerónimo, Ant</p> -->\n         <BR>\n         <p style=\"font-size: 14px;\">\n            <span style=\"font-weight: bold;\">Nombre: </span>\' . $liq[\"nombre_completo\"] . \' <br>\n            <span style=\"font-weight: bold;\">Dirección: </span>\' . $liq[\"direccion\"] . \' <br>\n         </p>\n      </address>\n\n      <table class=\"inventory\">\n         <thead>\n            <tr>\n               <th><span>Valor venta</span></th>\n               <th><span>Valor abono</span></th>\n               <th><span>Valor débito</span></th>\n               <th><span>Seguridad social</span></th>\n            </tr>\n         </thead>\n         <tbody>\n            <tr>\n               <td><span>\' . $liq[\"valor_venta\"] . \'</span></td>\n               <td><span>\' . $liq[\"valor_novedad_abonar\"] . \'</span></td>\n               <td><span>\' . $liq[\"valor_novedad_debitar\"] . \'</span></td>\n               <td><span>\' . $liq[\"seguridad_social\"] . \'</span></td>\n            </tr>\n         </tbody>\n      </table>\n\n      <table class=\"balance\" style=\"font-size: 11px;\">\n         <!--<tr>\n            <td><span>SUBTOTAL</span></td>\n            <th><span data-prefix>$</span><span>\' . number_format($factura[\"valor_sin_recargo\"], 0, \',\', \'.\') . \'</span></th>\n         </tr>-->\n         <tr style=\"color: #fff; font-size: 12px;\">\n            <td style=\"background-color: #1f60a0; font-weight: bold;\"><span>TOTAL</span></td>\n            <th style=\"background-color: #14406b;\"><span>\' . $total . \'</span></th>\n         </tr>\n       \n            \n        </tr>\n         </tr>\n      </table>\n      </div>\n        \n         </br>\n         </br>\n         </br>\n        <table style=\"border-collapse: collapse; border:none; border-width: 0px; style=\"vertical-align: middle !important;\">\n            <tr style=\"float: middle; !important;\">\n                <td style=\"border-radius: 0 !important; border-style: none !important; vertical-align: middle !important; width:30%\">\n                    <img id=\"barcodeTarget\" width=\"500\" />\n                    <canvas id=\"mycanvas\"></canvas>\n                </td>\n            </tr>\n        </table>\n   </article>\n \n       <script>\n        const options = {\n            bcid:        \"gs1-128\",       // Barcode type\n            text:        \"\' . $BarcodeParent. \'\",    // Text to encode\n            scale:       2,               // 3x scaling factor\n            height:      8,              // Bar height, in millimeters\n            includetext: true,            // Show human-readable text\n            textxalign:  \"center\",        // Always good to set this\n        };\n\n        const hola3 = () => {\n            const canvas = document.createElement(\"canvas\");\n            try {\n                bwipjs.toCanvas(canvas, options);\n                document.getElementById(\"barcodeTarget\").src = canvas.toDataURL(\"image/png\");\n            } catch (e) { console.log({e}); }\n        };\n        //addEventListener(\"DOMContentLoaded\", () => {\n            hola3();\n        //});\n\n	</script>\n	\n\n	\n	\n      <script>\n      document.addEventListener(\"DOMContentLoaded\", function (event) {\n        //setTimeout(function(){ hola(); }, 1000);\n        var descargar = \' . $descargar . \';\n        if(descargar == 1) {\n             var element = document.getElementById(\"Invoices\");\n             \n             var opt = {\n                filename: \"\' . str_replace(\' \', \'\', $nombreFactura) . \'.pdf\",\n                image: { type: \"jpeg\", quality: 0.98 },\n                html2canvas: { scale: 2, useCORS: true, letterRendering: true },\n                jsPDF: { unit: \"mm\", format: \"letter\", orientation: \"portrait\" }\n             };\n    		 html2pdf(element, opt);\n    		 setTimeout(function(){ window.close(); }, 1650);\n        }\n        });\n        \n        function hola(){\n            var element = document.getElementById(\"Invoices\");\n             \n             var opt = {\n                filename: \"\' . $factura[\"contrato\"] . \'.pdf\",\n                image: { type: \"jpeg\", quality: 0.98 },\n                html2canvas: { scale: 2, useCORS: true, letterRendering: true },\n                jsPDF: { unit: \"mm\", format: \"letter\", orientation: \"portrait\" }\n             };\n    		 html2pdf(element, opt);\n        }\n   </script>\n</body>\n</html>\';\n\necho $html;\ndie();\n\n\n?>','A'),(1011,'mod/app_ventas/index.php','2025-01-31 14:03:00','rafael',243,11303,'<?php\n\nfunction calcularTotalVenta($id, $returnArr = \"\") {\n    $venta = PCO_EjecutarSQL(\"\n        SELECT SUM(precio * cantidad) as total, SUM(precio * iva/100) iva\n        FROM app_ventas_detalle\n        WHERE id_venta = \'$id\' GROUP BY id_venta\n    \")->fetch();\n    $ventaMecanico = PCO_EjecutarSQL(\"\n        SELECT TRUNCATE(SUM(vd.precio * vd.cantidad * p.porcentaje_mecanico/100), 2)\n        FROM app_ventas_detalle vd, app_ventas v, app_productos p\n        WHERE vd.id_venta=v.id AND vd.id_producto=p.id AND  vd.id_venta = \'$id\' AND v.id_mecanico <> 0 GROUP BY vd.id_venta\n    \")->fetchColumn();\n    $total = $venta[\"total\"] ? $venta[\"total\"] : 0;\n    $iva = $venta[\"iva\"] ? $venta[\"iva\"] : 0;\n    PCO_EjecutarSQLUnaria(\"UPDATE app_ventas SET total = $total, iva = $iva, total_mecanico=\'$ventaMecanico\' WHERE id = $id \");\n    if($returnArr)\n        return $venta;\n    return \'\"total\": \' . $total . \', \"iva\": \' . $iva;\n}\n\nif($PCO_Accion == \"VENTA_ingresarRealizarVenta\") {\n    $ventaAbierta = PCO_EjecutarSQL(\"\n        SELECT id, id_cliente, total, iva, placa\n        FROM app_ventas\n        WHERE id=\'$PCO_Valor\'\n    \")->fetch();\n\n    $id_venta = $ventaAbierta[\"id\"] || \"\";\n    if($id_venta) {\n        $total = number_format($ventaAbierta[\"total\"], 2);\n        $iva = number_format($ventaAbierta[\"iva\"], 2);\n        $id_cliente = $ventaAbierta[\"id_cliente\"];\n    }\n\n    PCO_CargarFormulario(8, 1, \"id\", $id_venta);\n}\n\nif($PCO_Accion == \"VENTA_agregarProductoCrearOC\") {\n        //crear cliente en caso de que no llegue id_cliente\n        if(!$id_cliente) {\n            PCO_EjecutarSQLUnaria(\"INSERT INTO app_clientes (nombre_completo, numero_documento, telefono) VALUES (?,?,?) \",\n                \"$nombre_completo$_SeparadorCampos_$numero_documento$_SeparadorCampos_$telefono\"\n            );\n            // $id_cliente = PCO_ObtenerUltimoIDInsertado();\n            $id_cliente = PCO_EjecutarSQL(\"\n                SELECT id\n                FROM app_clientes\n                WHERE numero_documento=\'$numero_documento\' AND telefono=\'$telefono\' AND \'$nombre_completo\'\n            \")->fetchColumn();\n        }\n        $todayMysql = date(\"Y-m-d H:i:s\");\n        PCO_EjecutarSQLUnaria(\"INSERT INTO app_ventas (id_cliente, usuario, fecha, placa, id_mecanico, tipo_venta) VALUES (?,?,?,?,?,?) \", \"$id_cliente$_SeparadorCampos_$PCOSESS_LoginUsuario$_SeparadorCampos_$todayMysql$_SeparadorCampos_$placa$_SeparadorCampos_$id_mecanico$_SeparadorCampos_$tipo_venta\");\n        $id = PCO_EjecutarSQL(\"\n            SELECT id\n            FROM app_ventas\n            WHERE fecha=\'$todayMysql\' AND usuario=\'$PCOSESS_LoginUsuario\' AND id_cliente = \'$id_cliente\'\n        \")->fetchColumn();\n        // $id = PCO_ObtenerUltimoIDInsertado();\n\n    $producto = PCO_EjecutarSQL(\"\n        SELECT id, precio_venta, iva, inventario\n        FROM app_productos\n        WHERE id = \'$id_producto\'\n    \")->fetch();\n    if($producto[\"id\"]) {\n        $existe = PCO_EjecutarSQL(\"\n            SELECT count(id)\n            FROM app_ventas_detalle\n            WHERE id_venta = $id AND id_producto = \'$id_producto\'\n        \")->fetchColumn();\n        if($existe > 0) {\n            print_r(\'{\"success\": false, \"msg\": \"El producto ya se ha ingresado\"}\');\n            die();\n        }\n        /* if($producto[\"inventario\"] < $cantidad) {\n            print_r(\'{\"success\": false, \"msg\": \"La cantidad digitada supera la del invetario\"}\');\n            die();\n        } */\n        // $inventarioNew = $producto[\"inventario\"] - $cantidad;\n        // PCO_EjecutarSQLUnaria(\"UPDATE app_productos SET inventario = $inventarioNew WHERE id = \" . $producto[\"id\"]);\n        PCO_EjecutarSQLUnaria(\"INSERT INTO app_ventas_detalle (id_venta, id_producto, cantidad, precio, iva, hora_inicio, hora_fin, guaje) VALUES (?,?,?,?,?,?,?,?) \", \n            \"$id$_SeparadorCampos_$id_producto$_SeparadorCampos_$cantidad$_SeparadorCampos_$precio$_SeparadorCampos_\" . $producto[\"iva\"].\"$_SeparadorCampos_$hora_inicio$_SeparadorCampos_$hora_fin$_SeparadorCampos_$guaje\");\n        calcularTotalVenta($id);\n        \n        /* $total = number_format($result[\"total\"], 2);\n        $iva = number_format($result[\"iva\"], 2); */\n\n        echo \'<script type=\"text/javascript\">\n        	document.FRMBASEINFORME.PCO_Accion.value=\"PCO_CargarObjeto\";\n        	document.FRMBASEINFORME.PCO_Objeto.value=\"frm:8:1:id:\'.$id.\'\";\n        	document.FRMBASEINFORME.Precarga_EstilosBS.value=\"1\";\n        	document.FRMBASEINFORME.Presentar_FullScreen.value=\"0\";\n        	document.FRMBASEINFORME.target=\"_self\";\n        	document.FRMBASEINFORME.submit();\n    	 </script>\';\n    }\n}\n\nif($PCO_Accion == \"VENTA_agregarProducto\") {\n    $producto = PCO_EjecutarSQL(\"\n        SELECT id, precio_venta, iva\n        FROM app_productos\n        WHERE id = \'$id_producto\'\n    \")->fetch();\n    if($producto[\"id\"]) {\n        $existe = PCO_EjecutarSQL(\"\n            SELECT count(id)\n            FROM app_ventas_detalle\n            WHERE id_venta = $id AND id_producto = \'$id_producto\'\n        \")->fetchColumn();\n        if($existe > 0) {\n            print_r(\'{\"success\": false, \"msg\": \"El producto ya se ha ingresado\"}\');\n            die();\n        }\n        /* if($producto[\"inventario\"] < $cantidad) {\n            print_r(\'{\"success\": false, \"msg\": \"La cantidad digitada supera la del invetario\"}\');\n            die();\n        } */\n        // $inventarioNew = $producto[\"inventario\"] - $cantidad;\n        // PCO_EjecutarSQLUnaria(\"UPDATE app_productos SET inventario = $inventarioNew WHERE id = \" . $producto[\"id\"]);\n        PCO_EjecutarSQLUnaria(\"INSERT INTO app_ventas_detalle (id_venta, id_producto, cantidad, precio, iva, hora_inicio, hora_fin, guaje) VALUES (?,?,?,?,?,?,?,?) \", \n            \"$id$_SeparadorCampos_$id_producto$_SeparadorCampos_$cantidad$_SeparadorCampos_$precioVenta$_SeparadorCampos_\" . $producto[\"iva\"].\"$_SeparadorCampos$hora_inicio$_SeparadorCampos$hora_fin$_SeparadorCampos$guaje\");\n        $result = calcularTotalVenta($id);\n        print_r(\'{\"success\": true, \"id\": \' . $id . \', \' . $result . \'}\');\n        die();\n    }\n    print_r(\'{\"success\": false, \"msg\": \"No se ha encontrado el producto seleccionado\"}\');\n    die();\n}\n\nif($PCO_Accion == \"VENTA_consultarTotalVenta\") {\n    if($id) {\n        $result = calcularTotalVenta($id);\n        print_r(\'{\"success\": true, \"id\": \' . $id . \', \' . $result . \'}\');\n        die();\n    }\n    print_r(\'{\"success\": false, \"msg\": \"No se encontro la venta\"}\');\n    die();\n}\n\nif($PCO_Accion == \"VENTA_eliminarProducto\") {\n\n    if($id_venta_detalle && $id_venta) {\n        $producto = PCO_EjecutarSQL(\"\n            SELECT p.inventario, vd.cantidad, p.id\n            FROM app_ventas_detalle vd, app_productos p\n            WHERE vd.id_producto = p.id AND vd.id = \'$id_venta_detalle\'\n        \")->fetch();\n        //Restablecemos el inventario\n        $inventarioNew = $producto[\"inventario\"] + $producto[\"cantidad\"];\n        PCO_EjecutarSQLUnaria(\"UPDATE app_productos SET inventario = $inventarioNew WHERE id = \" . $producto[\"id\"]);\n        PCO_EjecutarSQLUnaria(\"DELETE FROM app_ventas_detalle WHERE id_venta = $id_venta AND id = $id_venta_detalle\");\n        $result = calcularTotalVenta($id_venta);\n        print_r(\'{\"success\": true, \"msg\": \"Se ha eliminado el producto exitosamente\", \' . $result . \'}\');\n        die();\n    }\n    print_r(\'{\"success\": false, \"msg\": \"No se pudo eliminar el producto\"}\');\n    die();\n}\n\nif($PCO_Accion == \"VENTA_actualizarProductoVenta\") {\n    if($id) {\n        PCO_EjecutarSQLUnaria(\"UPDATE app_ventas_detalle SET cantidad=\'$cantidad\', precio=\'$precio\' WHERE id = \'$id\'\");\n        echo 1;\n        die();\n    }\n    echo 0;\n    die();\n}\n\nif($PCO_Accion == \"VENTA_imprimirFactura\") {\n    if($PCO_Valor)\n        $id = $PCO_Valor;\n    if($id) {\n        include_once \"imprimirFactura.php\";\n    }\n}\n\nif($PCO_Accion == \"VENTA_generarLiquidacionMecanicos\") {\n    $ventas = PCO_EjecutarSQL(\"\n        SELECT v.id, v.id_mecanico, SUM(v.total_mecanico) as Total, m.seguridad_social\n        FROM app_mecanicos m,app_ventas v\n        WHERE m.id = v.id_mecanico AND v.fecha >= \'$fecha_inicio 00:00:00\' AND v.fecha <= \'$fecha_fin 23:59:59\' AND v.estado = 1 AND id_mecanico <> 0 AND id_liquidacion=0\n        GROUP BY v.id_mecanico\n    \")->fetchAll();\n    foreach ($ventas as $venta) {\n        $valor_novedad = PCO_EjecutarSQL(\"\n            SELECT  \n                SUM(case when tipo_novedad=\'Abonar\' then valor_novedad else 0 end) as abonar,\n                SUM(case when tipo_novedad=\'Debitar\' then valor_novedad else 0 end) as debitar\n            FROM app_novedades_mecanicos\n            WHERE fecha >= \'$fecha_inicio\' AND fecha <= \'$fecha_fin\'\n                AND id_mecanico=\'\".$venta[\'id_mecanico\'].\"\' AND id_liquidacion=0\n            GROUP BY id_mecanico\n        \")->fetch();\n\n        PCO_EjecutarSQLUnaria(\"INSERT INTO app_liquidacion_mecanicos_enc (id_mecanico, fecha_inicio, fecha_fin, fecha, valor_venta, valor_novedad_abonar, valor_novedad_debitar, seguridad_social, usuario) VALUES (?,?,?,?,?,?,?,?,?) \",\n            $venta[\"id_mecanico\"].\"$_SeparadorCampos_$fecha_inicio$_SeparadorCampos_$fecha_fin$_SeparadorCampos_$PCO_FechaOperacionGuiones$_SeparadorCampos_\".$venta[\"Total\"].\"$_SeparadorCampos_\".$valor_novedad[\'abonar\'].\"$_SeparadorCampos_\".$valor_novedad[\'debitar\'].\"$_SeparadorCampos_\".$venta[\"seguridad_social\"].\"$_SeparadorCampos_$PCOSESS_LoginUsuario\"\n        );\n        \n        PCO_EjecutarSQLUnaria(\"\n        UPDATE app_novedades_mecanicos \n        SET id_liquidacion=1\n        WHERE \n            fecha >= \'$fecha_inicio\' AND fecha <= \'$fecha_fin\' AND id_mecanico=\'\".$venta[\'id_mecanico\'].\"\' AND id_liquidacion=0\n        \");\n    }\n        // arq de estados\n        //actualiozar estados\n    PCO_EjecutarSQLUnaria(\"\n        UPDATE app_ventas \n        SET id_liquidacion=1\n        WHERE app_mecanicos.id = app_ventas.id_mecanico AND app_ventas.fecha >= \'$fecha_inicio 00:00:00\' AND app_ventas.fecha <= \'$fecha_fin 23:59:59\' AND app_ventas.estado = 1 AND id_mecanico <> 0 AND id_liquidacion=0\");\n    PCO_CargarFormulario(14);\n}\n\nif($PCO_Accion == \"VENTAS_verLiquidacion\") {\n    $liq = PCO_EjecutarSQL(\"\n        SELECT l.*, m.nombre_completo, m.cedula, m.telefono, m.direccion, m.correo,\n            CONCAT(\'$\',FORMAT((l.valor_venta + l.valor_novedad_abonar - l.valor_novedad_debitar - l.seguridad_social),2,\'de_DE\')) total\n        FROM app_liquidacion_mecanicos_enc l,app_mecanicos m \n        WHERE l.id_mecanico = m.id AND l.id=\'$PCO_Valor\'\n    \")->fetch();\n    \n    $ventas = PCO_EjecutarSQL(\"\n        SELECT v.id, v.id_mecanico, SUM(v.total_mecanico) as Total\n        FROM app_ventas v\n        WHERE v.fecha >= \'\".$liq[\'fecha_inicio\'].\" 00:00:00\' AND v.fecha <= \'\".$liq[\'fecha_fin\'].\"  23:59:59\' AND v.estado = 1 AND id_mecanico = \".$liq[\'id_mecanico\'].\" AND id_liquidacion=1\n    \")->fetchAll();\n    \n    $valor_novedad = PCO_EjecutarSQL(\"\n        SELECT  \n            SUM(case when tipo_novedad=\'Abonar\' then valor_novedad else 0 end) as abonar,\n            SUM(case when tipo_novedad=\'Debitar\' then valor_novedad else 0 end) as debitar\n        FROM app_novedades_mecanicos\n        WHERE fecha >= \'$fecha_inicio\' AND fecha <= \'$fecha_fin\'\n            AND id_mecanico=\'\".$venta[\'id_mecanico\'].\"\' AND id_liquidacion=0\n        GROUP BY id_mecanico\n    \")->fetchAll();\n    \n    include \'liquidacion_mecanicos.php\';\n}','A'),(1012,'mod/app_ventas/index.php','2025-01-31 14:04:00','rafael',240,11118,'<?php\n\nfunction calcularTotalVenta($id, $returnArr = \"\") {\n    $venta = PCO_EjecutarSQL(\"\n        SELECT SUM(precio * cantidad) as total, SUM(precio * iva/100) iva\n        FROM app_ventas_detalle\n        WHERE id_venta = \'$id\' GROUP BY id_venta\n    \")->fetch();\n    $ventaMecanico = PCO_EjecutarSQL(\"\n        SELECT TRUNCATE(SUM(vd.precio * vd.cantidad * p.porcentaje_mecanico/100), 2)\n        FROM app_ventas_detalle vd, app_ventas v, app_productos p\n        WHERE vd.id_venta=v.id AND vd.id_producto=p.id AND  vd.id_venta = \'$id\' AND v.id_mecanico <> 0 GROUP BY vd.id_venta\n    \")->fetchColumn();\n    $total = $venta[\"total\"] ? $venta[\"total\"] : 0;\n    $iva = $venta[\"iva\"] ? $venta[\"iva\"] : 0;\n    PCO_EjecutarSQLUnaria(\"UPDATE app_ventas SET total = $total, iva = $iva, total_mecanico=\'$ventaMecanico\' WHERE id = $id \");\n    if($returnArr)\n        return $venta;\n    return \'\"total\": \' . $total . \', \"iva\": \' . $iva;\n}\n\nif($PCO_Accion == \"VENTA_ingresarRealizarVenta\") {\n    $ventaAbierta = PCO_EjecutarSQL(\"\n        SELECT id, id_cliente, total, iva, placa\n        FROM app_ventas\n        WHERE id=\'$PCO_Valor\'\n    \")->fetch();\n\n    $id_venta = $ventaAbierta[\"id\"] || \"\";\n    if($id_venta) {\n        $total = number_format($ventaAbierta[\"total\"], 2);\n        $iva = number_format($ventaAbierta[\"iva\"], 2);\n        $id_cliente = $ventaAbierta[\"id_cliente\"];\n    }\n\n    PCO_CargarFormulario(8, 1, \"id\", $id_venta);\n}\n\nif($PCO_Accion == \"VENTA_agregarProductoCrearOC\") {\n        //crear cliente en caso de que no llegue id_cliente\n        if(!$id_cliente) {\n            PCO_EjecutarSQLUnaria(\"INSERT INTO app_clientes (nombre_completo, numero_documento, telefono) VALUES (?,?,?) \",\n                \"$nombre_completo$_SeparadorCampos_$numero_documento$_SeparadorCampos_$telefono\"\n            );\n            // $id_cliente = PCO_ObtenerUltimoIDInsertado();\n            $id_cliente = PCO_EjecutarSQL(\"\n                SELECT id\n                FROM app_clientes\n                WHERE numero_documento=\'$numero_documento\' AND telefono=\'$telefono\' AND \'$nombre_completo\'\n            \")->fetchColumn();\n        }\n        $todayMysql = date(\"Y-m-d H:i:s\");\n        PCO_EjecutarSQLUnaria(\"INSERT INTO app_ventas (id_cliente, usuario, fecha, placa, id_mecanico, tipo_venta) VALUES (?,?,?,?,?,?) \", \"$id_cliente$_SeparadorCampos_$PCOSESS_LoginUsuario$_SeparadorCampos_$todayMysql$_SeparadorCampos_$placa$_SeparadorCampos_$id_mecanico$_SeparadorCampos_$tipo_venta\");\n        $id = PCO_EjecutarSQL(\"\n            SELECT id\n            FROM app_ventas\n            WHERE fecha=\'$todayMysql\' AND usuario=\'$PCOSESS_LoginUsuario\' AND id_cliente = \'$id_cliente\'\n        \")->fetchColumn();\n        // $id = PCO_ObtenerUltimoIDInsertado();\n\n    $producto = PCO_EjecutarSQL(\"\n        SELECT id, precio_venta, iva, inventario\n        FROM app_productos\n        WHERE id = \'$id_producto\'\n    \")->fetch();\n    if($producto[\"id\"]) {\n        $existe = PCO_EjecutarSQL(\"\n            SELECT count(id)\n            FROM app_ventas_detalle\n            WHERE id_venta = $id AND id_producto = \'$id_producto\'\n        \")->fetchColumn();\n        if($existe > 0) {\n            print_r(\'{\"success\": false, \"msg\": \"El producto ya se ha ingresado\"}\');\n            die();\n        }\n        /* if($producto[\"inventario\"] < $cantidad) {\n            print_r(\'{\"success\": false, \"msg\": \"La cantidad digitada supera la del invetario\"}\');\n            die();\n        } */\n        // $inventarioNew = $producto[\"inventario\"] - $cantidad;\n        // PCO_EjecutarSQLUnaria(\"UPDATE app_productos SET inventario = $inventarioNew WHERE id = \" . $producto[\"id\"]);\n        PCO_EjecutarSQLUnaria(\"INSERT INTO app_ventas_detalle (id_venta, id_producto, cantidad, precio, iva, hora_inicio, hora_fin, guaje) VALUES (?,?,?,?,?,?,?,?) \", \n            \"$id$_SeparadorCampos_$id_producto$_SeparadorCampos_$cantidad$_SeparadorCampos_$precio$_SeparadorCampos_\" . $producto[\"iva\"].\"$_SeparadorCampos_$hora_inicio$_SeparadorCampos_$hora_fin$_SeparadorCampos_$guaje\");\n        calcularTotalVenta($id);\n        \n        /* $total = number_format($result[\"total\"], 2);\n        $iva = number_format($result[\"iva\"], 2); */\n\n        echo \'<script type=\"text/javascript\">\n        	document.FRMBASEINFORME.PCO_Accion.value=\"PCO_CargarObjeto\";\n        	document.FRMBASEINFORME.PCO_Objeto.value=\"frm:8:1:id:\'.$id.\'\";\n        	document.FRMBASEINFORME.Precarga_EstilosBS.value=\"1\";\n        	document.FRMBASEINFORME.Presentar_FullScreen.value=\"0\";\n        	document.FRMBASEINFORME.target=\"_self\";\n        	document.FRMBASEINFORME.submit();\n    	 </script>\';\n    }\n}\n\nif($PCO_Accion == \"VENTA_agregarProducto\") {\n    $producto = PCO_EjecutarSQL(\"\n        SELECT id, precio_venta, iva\n        FROM app_productos\n        WHERE id = \'$id_producto\'\n    \")->fetch();\n    if($producto[\"id\"]) {\n        $existe = PCO_EjecutarSQL(\"\n            SELECT count(id)\n            FROM app_ventas_detalle\n            WHERE id_venta = $id AND id_producto = \'$id_producto\'\n        \")->fetchColumn();\n        if($existe > 0) {\n            print_r(\'{\"success\": false, \"msg\": \"El producto ya se ha ingresado\"}\');\n            die();\n        }\n        /* if($producto[\"inventario\"] < $cantidad) {\n            print_r(\'{\"success\": false, \"msg\": \"La cantidad digitada supera la del invetario\"}\');\n            die();\n        } */\n        // $inventarioNew = $producto[\"inventario\"] - $cantidad;\n        // PCO_EjecutarSQLUnaria(\"UPDATE app_productos SET inventario = $inventarioNew WHERE id = \" . $producto[\"id\"]);\n        PCO_EjecutarSQLUnaria(\"INSERT INTO app_ventas_detalle (id_venta, id_producto, cantidad, precio, iva, hora_inicio, hora_fin, guaje) VALUES (?,?,?,?,?,?,?,?) \", \n            \"$id$_SeparadorCampos_$id_producto$_SeparadorCampos_$cantidad$_SeparadorCampos_$precioVenta$_SeparadorCampos_\" . $producto[\"iva\"].\"$_SeparadorCampos$hora_inicio$_SeparadorCampos$hora_fin$_SeparadorCampos$guaje\");\n        $result = calcularTotalVenta($id);\n        print_r(\'{\"success\": true, \"id\": \' . $id . \', \' . $result . \'}\');\n        die();\n    }\n    print_r(\'{\"success\": false, \"msg\": \"No se ha encontrado el producto seleccionado\"}\');\n    die();\n}\n\nif($PCO_Accion == \"VENTA_consultarTotalVenta\") {\n    if($id) {\n        $result = calcularTotalVenta($id);\n        print_r(\'{\"success\": true, \"id\": \' . $id . \', \' . $result . \'}\');\n        die();\n    }\n    print_r(\'{\"success\": false, \"msg\": \"No se encontro la venta\"}\');\n    die();\n}\n\nif($PCO_Accion == \"VENTA_eliminarProducto\") {\n\n    if($id_venta_detalle && $id_venta) {\n        $producto = PCO_EjecutarSQL(\"\n            SELECT p.inventario, vd.cantidad, p.id\n            FROM app_ventas_detalle vd, app_productos p\n            WHERE vd.id_producto = p.id AND vd.id = \'$id_venta_detalle\'\n        \")->fetch();\n        //Restablecemos el inventario\n        $inventarioNew = $producto[\"inventario\"] + $producto[\"cantidad\"];\n        PCO_EjecutarSQLUnaria(\"UPDATE app_productos SET inventario = $inventarioNew WHERE id = \" . $producto[\"id\"]);\n        PCO_EjecutarSQLUnaria(\"DELETE FROM app_ventas_detalle WHERE id_venta = $id_venta AND id = $id_venta_detalle\");\n        $result = calcularTotalVenta($id_venta);\n        print_r(\'{\"success\": true, \"msg\": \"Se ha eliminado el producto exitosamente\", \' . $result . \'}\');\n        die();\n    }\n    print_r(\'{\"success\": false, \"msg\": \"No se pudo eliminar el producto\"}\');\n    die();\n}\n\nif($PCO_Accion == \"VENTA_actualizarProductoVenta\") {\n    if($id) {\n        PCO_EjecutarSQLUnaria(\"UPDATE app_ventas_detalle SET cantidad=\'$cantidad\', precio=\'$precio\' WHERE id = \'$id\'\");\n        echo 1;\n        die();\n    }\n    echo 0;\n    die();\n}\n\nif($PCO_Accion == \"VENTA_imprimirFactura\") {\n    if($PCO_Valor)\n        $id = $PCO_Valor;\n    if($id) {\n        include_once \"imprimirFactura.php\";\n    }\n}\n\nif($PCO_Accion == \"VENTA_generarLiquidacionMecanicos\") {\n    $ventas = PCO_EjecutarSQL(\"\n        SELECT v.id, v.id_mecanico, SUM(v.total_mecanico) as Total, m.seguridad_social\n        FROM app_mecanicos m,app_ventas v\n        WHERE m.id = v.id_mecanico AND v.fecha >= \'$fecha_inicio 00:00:00\' AND v.fecha <= \'$fecha_fin 23:59:59\' AND v.estado = 1 AND id_mecanico <> 0 AND id_liquidacion=0\n        GROUP BY v.id_mecanico\n    \")->fetchAll();\n    foreach ($ventas as $venta) {\n        $valor_novedad = PCO_EjecutarSQL(\"\n            SELECT  \n                SUM(case when tipo_novedad=\'Abonar\' then valor_novedad else 0 end) as abonar,\n                SUM(case when tipo_novedad=\'Debitar\' then valor_novedad else 0 end) as debitar\n            FROM app_novedades_mecanicos\n            WHERE fecha >= \'$fecha_inicio\' AND fecha <= \'$fecha_fin\'\n                AND id_mecanico=\'\".$venta[\'id_mecanico\'].\"\' AND id_liquidacion=0\n            GROUP BY id_mecanico\n        \")->fetch();\n\n        PCO_EjecutarSQLUnaria(\"INSERT INTO app_liquidacion_mecanicos_enc (id_mecanico, fecha_inicio, fecha_fin, fecha, valor_venta, valor_novedad_abonar, valor_novedad_debitar, seguridad_social, usuario) VALUES (?,?,?,?,?,?,?,?,?) \",\n            $venta[\"id_mecanico\"].\"$_SeparadorCampos_$fecha_inicio$_SeparadorCampos_$fecha_fin$_SeparadorCampos_$PCO_FechaOperacionGuiones$_SeparadorCampos_\".$venta[\"Total\"].\"$_SeparadorCampos_\".$valor_novedad[\'abonar\'].\"$_SeparadorCampos_\".$valor_novedad[\'debitar\'].\"$_SeparadorCampos_\".$venta[\"seguridad_social\"].\"$_SeparadorCampos_$PCOSESS_LoginUsuario\"\n        );\n        \n        PCO_EjecutarSQLUnaria(\"\n        UPDATE app_novedades_mecanicos \n        SET id_liquidacion=1\n        WHERE \n            fecha >= \'$fecha_inicio\' AND fecha <= \'$fecha_fin\' AND id_mecanico=\'\".$venta[\'id_mecanico\'].\"\' AND id_liquidacion=0\n        \");\n    }\n        // arq de estados\n        //actualiozar estados\n    PCO_EjecutarSQLUnaria(\"\n        UPDATE app_ventas \n        SET id_liquidacion=1\n        WHERE app_mecanicos.id = app_ventas.id_mecanico AND app_ventas.fecha >= \'$fecha_inicio 00:00:00\' AND app_ventas.fecha <= \'$fecha_fin 23:59:59\' AND app_ventas.estado = 1 AND id_mecanico <> 0 AND id_liquidacion=0\");\n    PCO_CargarFormulario(14);\n}\n\nif($PCO_Accion == \"VENTAS_verLiquidacion\") {\n    $liq = PCO_EjecutarSQL(\"\n        SELECT l.*, m.nombre_completo, m.cedula, m.telefono, m.direccion, m.correo,\n            CONCAT(\'$\',FORMAT((l.valor_venta + l.valor_novedad_abonar - l.valor_novedad_debitar - l.seguridad_social),2,\'de_DE\')) total\n        FROM app_liquidacion_mecanicos_enc l,app_mecanicos m \n        WHERE l.id_mecanico = m.id AND l.id=\'$PCO_Valor\'\n    \")->fetch();\n    \n    /*$ventas = PCO_EjecutarSQL(\"\n        SELECT v.id, v.id_mecanico, SUM(v.total_mecanico) as Total\n        FROM app_ventas v\n        WHERE v.fecha >= \'\".$liq[\'fecha_inicio\'].\" 00:00:00\' AND v.fecha <= \'\".$liq[\'fecha_fin\'].\"  23:59:59\' AND v.estado = 1 AND id_mecanico = \".$liq[\'id_mecanico\'].\" AND id_liquidacion=1\n    \")->fetchAll();\n    \n    $valor_novedad = PCO_EjecutarSQL(\"\n        SELECT *\n        FROM app_novedades_mecanicos\n        WHERE fecha >= \'\".$liq[\'fecha_inicio\'].\"\' AND fecha <= \'\".$liq[\'fecha_fin\'].\"\'\n            AND id_mecanico=\'\".$liq[\'id_mecanico\'].\"\' AND id_liquidacion=1\n    \")->fetchAll(); */\n    \n    include \'liquidacion_mecanicos.php\';\n}','A'),(1013,'mod/app_ventas/index.php','2025-01-31 14:06:00','rafael',240,11134,'<?php\n\nfunction calcularTotalVenta($id, $returnArr = \"\") {\n    $venta = PCO_EjecutarSQL(\"\n        SELECT SUM(precio * cantidad) as total, SUM(precio * iva/100) iva\n        FROM app_ventas_detalle\n        WHERE id_venta = \'$id\' GROUP BY id_venta\n    \")->fetch();\n    $ventaMecanico = PCO_EjecutarSQL(\"\n        SELECT TRUNCATE(SUM(vd.precio * vd.cantidad * p.porcentaje_mecanico/100), 2)\n        FROM app_ventas_detalle vd, app_ventas v, app_productos p\n        WHERE vd.id_venta=v.id AND vd.id_producto=p.id AND  vd.id_venta = \'$id\' AND v.id_mecanico <> 0 GROUP BY vd.id_venta\n    \")->fetchColumn();\n    $total = $venta[\"total\"] ? $venta[\"total\"] : 0;\n    $iva = $venta[\"iva\"] ? $venta[\"iva\"] : 0;\n    PCO_EjecutarSQLUnaria(\"UPDATE app_ventas SET total = $total, iva = $iva, total_mecanico=\'$ventaMecanico\' WHERE id = $id \");\n    if($returnArr)\n        return $venta;\n    return \'\"total\": \' . $total . \', \"iva\": \' . $iva;\n}\n\nif($PCO_Accion == \"VENTA_ingresarRealizarVenta\") {\n    $ventaAbierta = PCO_EjecutarSQL(\"\n        SELECT id, id_cliente, total, iva, placa\n        FROM app_ventas\n        WHERE id=\'$PCO_Valor\'\n    \")->fetch();\n\n    $id_venta = $ventaAbierta[\"id\"] || \"\";\n    if($id_venta) {\n        $total = number_format($ventaAbierta[\"total\"], 2);\n        $iva = number_format($ventaAbierta[\"iva\"], 2);\n        $id_cliente = $ventaAbierta[\"id_cliente\"];\n    }\n\n    PCO_CargarFormulario(8, 1, \"id\", $id_venta);\n}\n\nif($PCO_Accion == \"VENTA_agregarProductoCrearOC\") {\n        //crear cliente en caso de que no llegue id_cliente\n        if(!$id_cliente) {\n            PCO_EjecutarSQLUnaria(\"INSERT INTO app_clientes (nombre_completo, numero_documento, telefono) VALUES (?,?,?) \",\n                \"$nombre_completo$_SeparadorCampos_$numero_documento$_SeparadorCampos_$telefono\"\n            );\n            // $id_cliente = PCO_ObtenerUltimoIDInsertado();\n            $id_cliente = PCO_EjecutarSQL(\"\n                SELECT id\n                FROM app_clientes\n                WHERE numero_documento=\'$numero_documento\' AND telefono=\'$telefono\' AND \'$nombre_completo\'\n            \")->fetchColumn();\n        }\n        $todayMysql = date(\"Y-m-d H:i:s\");\n        PCO_EjecutarSQLUnaria(\"INSERT INTO app_ventas (id_cliente, usuario, fecha, placa, id_mecanico, tipo_venta) VALUES (?,?,?,?,?,?) \", \"$id_cliente$_SeparadorCampos_$PCOSESS_LoginUsuario$_SeparadorCampos_$todayMysql$_SeparadorCampos_$placa$_SeparadorCampos_$id_mecanico$_SeparadorCampos_$tipo_venta\");\n        $id = PCO_EjecutarSQL(\"\n            SELECT id\n            FROM app_ventas\n            WHERE fecha=\'$todayMysql\' AND usuario=\'$PCOSESS_LoginUsuario\' AND id_cliente = \'$id_cliente\'\n        \")->fetchColumn();\n        // $id = PCO_ObtenerUltimoIDInsertado();\n\n    $producto = PCO_EjecutarSQL(\"\n        SELECT id, precio_venta, iva, inventario\n        FROM app_productos\n        WHERE id = \'$id_producto\'\n    \")->fetch();\n    if($producto[\"id\"]) {\n        $existe = PCO_EjecutarSQL(\"\n            SELECT count(id)\n            FROM app_ventas_detalle\n            WHERE id_venta = $id AND id_producto = \'$id_producto\'\n        \")->fetchColumn();\n        if($existe > 0) {\n            print_r(\'{\"success\": false, \"msg\": \"El producto ya se ha ingresado\"}\');\n            die();\n        }\n        /* if($producto[\"inventario\"] < $cantidad) {\n            print_r(\'{\"success\": false, \"msg\": \"La cantidad digitada supera la del invetario\"}\');\n            die();\n        } */\n        // $inventarioNew = $producto[\"inventario\"] - $cantidad;\n        // PCO_EjecutarSQLUnaria(\"UPDATE app_productos SET inventario = $inventarioNew WHERE id = \" . $producto[\"id\"]);\n        PCO_EjecutarSQLUnaria(\"INSERT INTO app_ventas_detalle (id_venta, id_producto, cantidad, precio, iva, hora_inicio, hora_fin, guaje) VALUES (?,?,?,?,?,?,?,?) \", \n            \"$id$_SeparadorCampos_$id_producto$_SeparadorCampos_$cantidad$_SeparadorCampos_$precio$_SeparadorCampos_\" . $producto[\"iva\"].\"$_SeparadorCampos_$hora_inicio$_SeparadorCampos_$hora_fin$_SeparadorCampos_$guaje\");\n        calcularTotalVenta($id);\n        \n        /* $total = number_format($result[\"total\"], 2);\n        $iva = number_format($result[\"iva\"], 2); */\n\n        echo \'<script type=\"text/javascript\">\n        	document.FRMBASEINFORME.PCO_Accion.value=\"PCO_CargarObjeto\";\n        	document.FRMBASEINFORME.PCO_Objeto.value=\"frm:8:1:id:\'.$id.\'\";\n        	document.FRMBASEINFORME.Precarga_EstilosBS.value=\"1\";\n        	document.FRMBASEINFORME.Presentar_FullScreen.value=\"0\";\n        	document.FRMBASEINFORME.target=\"_self\";\n        	document.FRMBASEINFORME.submit();\n    	 </script>\';\n    }\n}\n\nif($PCO_Accion == \"VENTA_agregarProducto\") {\n    $producto = PCO_EjecutarSQL(\"\n        SELECT id, precio_venta, iva\n        FROM app_productos\n        WHERE id = \'$id_producto\'\n    \")->fetch();\n    if($producto[\"id\"]) {\n        $existe = PCO_EjecutarSQL(\"\n            SELECT count(id)\n            FROM app_ventas_detalle\n            WHERE id_venta = $id AND id_producto = \'$id_producto\'\n        \")->fetchColumn();\n        if($existe > 0) {\n            print_r(\'{\"success\": false, \"msg\": \"El producto ya se ha ingresado\"}\');\n            die();\n        }\n        /* if($producto[\"inventario\"] < $cantidad) {\n            print_r(\'{\"success\": false, \"msg\": \"La cantidad digitada supera la del invetario\"}\');\n            die();\n        } */\n        // $inventarioNew = $producto[\"inventario\"] - $cantidad;\n        // PCO_EjecutarSQLUnaria(\"UPDATE app_productos SET inventario = $inventarioNew WHERE id = \" . $producto[\"id\"]);\n        PCO_EjecutarSQLUnaria(\"INSERT INTO app_ventas_detalle (id_venta, id_producto, cantidad, precio, iva, hora_inicio, hora_fin, guaje) VALUES (?,?,?,?,?,?,?,?) \", \n            \"$id$_SeparadorCampos_$id_producto$_SeparadorCampos_$cantidad$_SeparadorCampos_$precioVenta$_SeparadorCampos_\" . $producto[\"iva\"].\"$_SeparadorCampos$hora_inicio$_SeparadorCampos$hora_fin$_SeparadorCampos$guaje\");\n        $result = calcularTotalVenta($id);\n        print_r(\'{\"success\": true, \"id\": \' . $id . \', \' . $result . \'}\');\n        die();\n    }\n    print_r(\'{\"success\": false, \"msg\": \"No se ha encontrado el producto seleccionado\"}\');\n    die();\n}\n\nif($PCO_Accion == \"VENTA_consultarTotalVenta\") {\n    if($id) {\n        $result = calcularTotalVenta($id);\n        print_r(\'{\"success\": true, \"id\": \' . $id . \', \' . $result . \'}\');\n        die();\n    }\n    print_r(\'{\"success\": false, \"msg\": \"No se encontro la venta\"}\');\n    die();\n}\n\nif($PCO_Accion == \"VENTA_eliminarProducto\") {\n\n    if($id_venta_detalle && $id_venta) {\n        $producto = PCO_EjecutarSQL(\"\n            SELECT p.inventario, vd.cantidad, p.id\n            FROM app_ventas_detalle vd, app_productos p\n            WHERE vd.id_producto = p.id AND vd.id = \'$id_venta_detalle\'\n        \")->fetch();\n        //Restablecemos el inventario\n        $inventarioNew = $producto[\"inventario\"] + $producto[\"cantidad\"];\n        PCO_EjecutarSQLUnaria(\"UPDATE app_productos SET inventario = $inventarioNew WHERE id = \" . $producto[\"id\"]);\n        PCO_EjecutarSQLUnaria(\"DELETE FROM app_ventas_detalle WHERE id_venta = $id_venta AND id = $id_venta_detalle\");\n        $result = calcularTotalVenta($id_venta);\n        print_r(\'{\"success\": true, \"msg\": \"Se ha eliminado el producto exitosamente\", \' . $result . \'}\');\n        die();\n    }\n    print_r(\'{\"success\": false, \"msg\": \"No se pudo eliminar el producto\"}\');\n    die();\n}\n\nif($PCO_Accion == \"VENTA_actualizarProductoVenta\") {\n    if($id) {\n        PCO_EjecutarSQLUnaria(\"UPDATE app_ventas_detalle SET cantidad=\'$cantidad\', precio=\'$precio\' WHERE id = \'$id\'\");\n        echo 1;\n        die();\n    }\n    echo 0;\n    die();\n}\n\nif($PCO_Accion == \"VENTA_imprimirFactura\") {\n    if($PCO_Valor)\n        $id = $PCO_Valor;\n    if($id) {\n        include_once \"imprimirFactura.php\";\n    }\n}\n\nif($PCO_Accion == \"VENTA_generarLiquidacionMecanicos\") {\n    $ventas = PCO_EjecutarSQL(\"\n        SELECT v.id, v.id_mecanico, SUM(v.total_mecanico) as Total, m.seguridad_social\n        FROM app_mecanicos m,app_ventas v\n        WHERE m.id = v.id_mecanico AND v.fecha >= \'$fecha_inicio 00:00:00\' AND v.fecha <= \'$fecha_fin 23:59:59\' AND v.estado = 1 AND id_mecanico <> 0 AND id_liquidacion=0\n        GROUP BY v.id_mecanico\n    \")->fetchAll();\n    foreach ($ventas as $venta) {\n        $valor_novedad = PCO_EjecutarSQL(\"\n            SELECT  \n                SUM(case when tipo_novedad=\'Abonar\' then valor_novedad else 0 end) as abonar,\n                SUM(case when tipo_novedad=\'Debitar\' then valor_novedad else 0 end) as debitar\n            FROM app_novedades_mecanicos\n            WHERE fecha >= \'$fecha_inicio\' AND fecha <= \'$fecha_fin\'\n                AND id_mecanico=\'\".$venta[\'id_mecanico\'].\"\' AND id_liquidacion=0\n            GROUP BY id_mecanico\n        \")->fetch();\n\n        PCO_EjecutarSQLUnaria(\"INSERT INTO app_liquidacion_mecanicos_enc (id_mecanico, fecha_inicio, fecha_fin, fecha, valor_venta, valor_novedad_abonar, valor_novedad_debitar, seguridad_social, usuario) VALUES (?,?,?,?,?,?,?,?,?) \",\n            $venta[\"id_mecanico\"].\"$_SeparadorCampos_$fecha_inicio$_SeparadorCampos_$fecha_fin$_SeparadorCampos_$PCO_FechaOperacionGuiones$_SeparadorCampos_\".$venta[\"Total\"].\"$_SeparadorCampos_\".$valor_novedad[\'abonar\'].\"$_SeparadorCampos_\".$valor_novedad[\'debitar\'].\"$_SeparadorCampos_\".$venta[\"seguridad_social\"].\"$_SeparadorCampos_$PCOSESS_LoginUsuario\"\n        );\n        \n        PCO_EjecutarSQLUnaria(\"\n            UPDATE app_novedades_mecanicos \n            SET id_liquidacion=1\n            WHERE \n                fecha >= \'$fecha_inicio\' AND fecha <= \'$fecha_fin\' AND id_mecanico=\'\".$venta[\'id_mecanico\'].\"\' AND id_liquidacion=0\n        \");\n    }\n        // arq de estados\n        //actualiozar estados\n    PCO_EjecutarSQLUnaria(\"\n        UPDATE app_ventas \n        SET id_liquidacion=1\n        WHERE app_mecanicos.id = app_ventas.id_mecanico AND app_ventas.fecha >= \'$fecha_inicio 00:00:00\' AND app_ventas.fecha <= \'$fecha_fin 23:59:59\' AND app_ventas.estado = 1 AND id_mecanico <> 0 AND id_liquidacion=0\");\n    PCO_CargarFormulario(14);\n}\n\nif($PCO_Accion == \"VENTAS_verLiquidacion\") {\n    $liq = PCO_EjecutarSQL(\"\n        SELECT l.*, m.nombre_completo, m.cedula, m.telefono, m.direccion, m.correo,\n            CONCAT(\'$\',FORMAT((l.valor_venta + l.valor_novedad_abonar - l.valor_novedad_debitar - l.seguridad_social),2,\'de_DE\')) total\n        FROM app_liquidacion_mecanicos_enc l,app_mecanicos m \n        WHERE l.id_mecanico = m.id AND l.id=\'$PCO_Valor\'\n    \")->fetch();\n    \n    /*$ventas = PCO_EjecutarSQL(\"\n        SELECT v.id, v.id_mecanico, SUM(v.total_mecanico) as Total\n        FROM app_ventas v\n        WHERE v.fecha >= \'\".$liq[\'fecha_inicio\'].\" 00:00:00\' AND v.fecha <= \'\".$liq[\'fecha_fin\'].\"  23:59:59\' AND v.estado = 1 AND id_mecanico = \".$liq[\'id_mecanico\'].\" AND id_liquidacion=1\n    \")->fetchAll();\n    \n    $valor_novedad = PCO_EjecutarSQL(\"\n        SELECT *\n        FROM app_novedades_mecanicos\n        WHERE fecha >= \'\".$liq[\'fecha_inicio\'].\"\' AND fecha <= \'\".$liq[\'fecha_fin\'].\"\'\n            AND id_mecanico=\'\".$liq[\'id_mecanico\'].\"\' AND id_liquidacion=1\n    \")->fetchAll(); */\n    \n    include \'liquidacion_mecanicos.php\';\n}','A'),(1014,'mod/app_ventas/index.php','2025-01-31 14:15:00','rafael',248,11414,'<?php\n\nfunction calcularTotalVenta($id, $returnArr = \"\") {\n    $venta = PCO_EjecutarSQL(\"\n        SELECT SUM(precio * cantidad) as total, SUM(precio * iva/100) iva\n        FROM app_ventas_detalle\n        WHERE id_venta = \'$id\' GROUP BY id_venta\n    \")->fetch();\n    $ventaMecanico = PCO_EjecutarSQL(\"\n        SELECT TRUNCATE(SUM(vd.precio * vd.cantidad * p.porcentaje_mecanico/100), 2)\n        FROM app_ventas_detalle vd, app_ventas v, app_productos p\n        WHERE vd.id_venta=v.id AND vd.id_producto=p.id AND  vd.id_venta = \'$id\' AND v.id_mecanico <> 0 GROUP BY vd.id_venta\n    \")->fetchColumn();\n    $total = $venta[\"total\"] ? $venta[\"total\"] : 0;\n    $iva = $venta[\"iva\"] ? $venta[\"iva\"] : 0;\n    PCO_EjecutarSQLUnaria(\"UPDATE app_ventas SET total = $total, iva = $iva, total_mecanico=\'$ventaMecanico\' WHERE id = $id \");\n    if($returnArr)\n        return $venta;\n    return \'\"total\": \' . $total . \', \"iva\": \' . $iva;\n}\n\nif($PCO_Accion == \"VENTA_ingresarRealizarVenta\") {\n    $ventaAbierta = PCO_EjecutarSQL(\"\n        SELECT id, id_cliente, total, iva, placa\n        FROM app_ventas\n        WHERE id=\'$PCO_Valor\'\n    \")->fetch();\n\n    $id_venta = $ventaAbierta[\"id\"] || \"\";\n    if($id_venta) {\n        $total = number_format($ventaAbierta[\"total\"], 2);\n        $iva = number_format($ventaAbierta[\"iva\"], 2);\n        $id_cliente = $ventaAbierta[\"id_cliente\"];\n    }\n\n    PCO_CargarFormulario(8, 1, \"id\", $id_venta);\n}\n\nif($PCO_Accion == \"VENTA_agregarProductoCrearOC\") {\n        //crear cliente en caso de que no llegue id_cliente\n        if(!$id_cliente) {\n            PCO_EjecutarSQLUnaria(\"INSERT INTO app_clientes (nombre_completo, numero_documento, telefono) VALUES (?,?,?) \",\n                \"$nombre_completo$_SeparadorCampos_$numero_documento$_SeparadorCampos_$telefono\"\n            );\n            // $id_cliente = PCO_ObtenerUltimoIDInsertado();\n            $id_cliente = PCO_EjecutarSQL(\"\n                SELECT id\n                FROM app_clientes\n                WHERE numero_documento=\'$numero_documento\' AND telefono=\'$telefono\' AND \'$nombre_completo\'\n            \")->fetchColumn();\n        }\n        $todayMysql = date(\"Y-m-d H:i:s\");\n        PCO_EjecutarSQLUnaria(\"INSERT INTO app_ventas (id_cliente, usuario, fecha, placa, id_mecanico, tipo_venta) VALUES (?,?,?,?,?,?) \", \"$id_cliente$_SeparadorCampos_$PCOSESS_LoginUsuario$_SeparadorCampos_$todayMysql$_SeparadorCampos_$placa$_SeparadorCampos_$id_mecanico$_SeparadorCampos_$tipo_venta\");\n        $id = PCO_EjecutarSQL(\"\n            SELECT id\n            FROM app_ventas\n            WHERE fecha=\'$todayMysql\' AND usuario=\'$PCOSESS_LoginUsuario\' AND id_cliente = \'$id_cliente\'\n        \")->fetchColumn();\n        // $id = PCO_ObtenerUltimoIDInsertado();\n\n    $producto = PCO_EjecutarSQL(\"\n        SELECT id, precio_venta, iva, inventario\n        FROM app_productos\n        WHERE id = \'$id_producto\'\n    \")->fetch();\n    if($producto[\"id\"]) {\n        $existe = PCO_EjecutarSQL(\"\n            SELECT count(id)\n            FROM app_ventas_detalle\n            WHERE id_venta = $id AND id_producto = \'$id_producto\'\n        \")->fetchColumn();\n        if($existe > 0) {\n            print_r(\'{\"success\": false, \"msg\": \"El producto ya se ha ingresado\"}\');\n            die();\n        }\n        /* if($producto[\"inventario\"] < $cantidad) {\n            print_r(\'{\"success\": false, \"msg\": \"La cantidad digitada supera la del invetario\"}\');\n            die();\n        } */\n        // $inventarioNew = $producto[\"inventario\"] - $cantidad;\n        // PCO_EjecutarSQLUnaria(\"UPDATE app_productos SET inventario = $inventarioNew WHERE id = \" . $producto[\"id\"]);\n        PCO_EjecutarSQLUnaria(\"INSERT INTO app_ventas_detalle (id_venta, id_producto, cantidad, precio, iva, hora_inicio, hora_fin, guaje) VALUES (?,?,?,?,?,?,?,?) \", \n            \"$id$_SeparadorCampos_$id_producto$_SeparadorCampos_$cantidad$_SeparadorCampos_$precio$_SeparadorCampos_\" . $producto[\"iva\"].\"$_SeparadorCampos_$hora_inicio$_SeparadorCampos_$hora_fin$_SeparadorCampos_$guaje\");\n        calcularTotalVenta($id);\n        \n        /* $total = number_format($result[\"total\"], 2);\n        $iva = number_format($result[\"iva\"], 2); */\n\n        echo \'<script type=\"text/javascript\">\n        	document.FRMBASEINFORME.PCO_Accion.value=\"PCO_CargarObjeto\";\n        	document.FRMBASEINFORME.PCO_Objeto.value=\"frm:8:1:id:\'.$id.\'\";\n        	document.FRMBASEINFORME.Precarga_EstilosBS.value=\"1\";\n        	document.FRMBASEINFORME.Presentar_FullScreen.value=\"0\";\n        	document.FRMBASEINFORME.target=\"_self\";\n        	document.FRMBASEINFORME.submit();\n    	 </script>\';\n    }\n}\n\nif($PCO_Accion == \"VENTA_agregarProducto\") {\n    $producto = PCO_EjecutarSQL(\"\n        SELECT id, precio_venta, iva\n        FROM app_productos\n        WHERE id = \'$id_producto\'\n    \")->fetch();\n    if($producto[\"id\"]) {\n        $existe = PCO_EjecutarSQL(\"\n            SELECT count(id)\n            FROM app_ventas_detalle\n            WHERE id_venta = $id AND id_producto = \'$id_producto\'\n        \")->fetchColumn();\n        if($existe > 0) {\n            print_r(\'{\"success\": false, \"msg\": \"El producto ya se ha ingresado\"}\');\n            die();\n        }\n        /* if($producto[\"inventario\"] < $cantidad) {\n            print_r(\'{\"success\": false, \"msg\": \"La cantidad digitada supera la del invetario\"}\');\n            die();\n        } */\n        // $inventarioNew = $producto[\"inventario\"] - $cantidad;\n        // PCO_EjecutarSQLUnaria(\"UPDATE app_productos SET inventario = $inventarioNew WHERE id = \" . $producto[\"id\"]);\n        PCO_EjecutarSQLUnaria(\"INSERT INTO app_ventas_detalle (id_venta, id_producto, cantidad, precio, iva, hora_inicio, hora_fin, guaje) VALUES (?,?,?,?,?,?,?,?) \", \n            \"$id$_SeparadorCampos_$id_producto$_SeparadorCampos_$cantidad$_SeparadorCampos_$precioVenta$_SeparadorCampos_\" . $producto[\"iva\"].\"$_SeparadorCampos$hora_inicio$_SeparadorCampos$hora_fin$_SeparadorCampos$guaje\");\n        $result = calcularTotalVenta($id);\n        print_r(\'{\"success\": true, \"id\": \' . $id . \', \' . $result . \'}\');\n        die();\n    }\n    print_r(\'{\"success\": false, \"msg\": \"No se ha encontrado el producto seleccionado\"}\');\n    die();\n}\n\nif($PCO_Accion == \"VENTA_consultarTotalVenta\") {\n    if($id) {\n        $result = calcularTotalVenta($id);\n        print_r(\'{\"success\": true, \"id\": \' . $id . \', \' . $result . \'}\');\n        die();\n    }\n    print_r(\'{\"success\": false, \"msg\": \"No se encontro la venta\"}\');\n    die();\n}\n\nif($PCO_Accion == \"VENTA_eliminarProducto\") {\n\n    if($id_venta_detalle && $id_venta) {\n        $producto = PCO_EjecutarSQL(\"\n            SELECT p.inventario, vd.cantidad, p.id\n            FROM app_ventas_detalle vd, app_productos p\n            WHERE vd.id_producto = p.id AND vd.id = \'$id_venta_detalle\'\n        \")->fetch();\n        //Restablecemos el inventario\n        $inventarioNew = $producto[\"inventario\"] + $producto[\"cantidad\"];\n        PCO_EjecutarSQLUnaria(\"UPDATE app_productos SET inventario = $inventarioNew WHERE id = \" . $producto[\"id\"]);\n        PCO_EjecutarSQLUnaria(\"DELETE FROM app_ventas_detalle WHERE id_venta = $id_venta AND id = $id_venta_detalle\");\n        $result = calcularTotalVenta($id_venta);\n        print_r(\'{\"success\": true, \"msg\": \"Se ha eliminado el producto exitosamente\", \' . $result . \'}\');\n        die();\n    }\n    print_r(\'{\"success\": false, \"msg\": \"No se pudo eliminar el producto\"}\');\n    die();\n}\n\nif($PCO_Accion == \"VENTA_actualizarProductoVenta\") {\n    if($id) {\n        PCO_EjecutarSQLUnaria(\"UPDATE app_ventas_detalle SET cantidad=\'$cantidad\', precio=\'$precio\' WHERE id = \'$id\'\");\n        echo 1;\n        die();\n    }\n    echo 0;\n    die();\n}\n\nif($PCO_Accion == \"VENTA_imprimirFactura\") {\n    if($PCO_Valor)\n        $id = $PCO_Valor;\n    if($id) {\n        include_once \"imprimirFactura.php\";\n    }\n}\n\nif($PCO_Accion == \"VENTA_generarLiquidacionMecanicos\") {\n    $ventas = PCO_EjecutarSQL(\"\n        SELECT v.id, v.id_mecanico, SUM(v.total_mecanico) as Total, m.seguridad_social\n        FROM app_mecanicos m,app_ventas v\n        WHERE m.id = v.id_mecanico AND v.fecha >= \'$fecha_inicio 00:00:00\' AND v.fecha <= \'$fecha_fin 23:59:59\' AND v.estado = 1 AND id_mecanico <> 0 AND id_liquidacion=0\n        GROUP BY v.id_mecanico\n    \")->fetchAll();\n    foreach ($ventas as $venta) {\n        $valor_novedad = PCO_EjecutarSQL(\"\n            SELECT  \n                SUM(case when tipo_novedad=\'Abonar\' then valor_novedad else 0 end) as abonar,\n                SUM(case when tipo_novedad=\'Debitar\' then valor_novedad else 0 end) as debitar\n            FROM app_novedades_mecanicos\n            WHERE fecha >= \'$fecha_inicio\' AND fecha <= \'$fecha_fin\'\n                AND id_mecanico=\'\".$venta[\'id_mecanico\'].\"\' AND id_liquidacion=0\n            GROUP BY id_mecanico\n        \")->fetch();\n\n        PCO_EjecutarSQLUnaria(\"\n            INSERT INTO app_liquidacion_mecanicos_enc (id_mecanico, fecha_inicio, fecha_fin, fecha, valor_venta, valor_novedad_abonar, valor_novedad_debitar, seguridad_social, usuario) VALUES (?,?,?,?,?,?,?,?,?) \",\n            $venta[\"id_mecanico\"].\"$_SeparadorCampos_$fecha_inicio$_SeparadorCampos_$fecha_fin$_SeparadorCampos_$PCO_FechaOperacionGuiones$_SeparadorCampos_\".$venta[\"Total\"].\"$_SeparadorCampos_\".$valor_novedad[\'abonar\'].\"$_SeparadorCampos_\".$valor_novedad[\'debitar\'].\"$_SeparadorCampos_\".$venta[\"seguridad_social\"].\"$_SeparadorCampos_$PCOSESS_LoginUsuario\"\n        );\n        \n        $idLiq = PCO_EjecutarSQL(\"\n            SELECT id\n            FROM app_novedades_mecanicos\n            WHERE id_mecanico=\'\".$venta[\'id_mecanico\'].\"\' AND fecha=\'$PCO_FechaOperacionGuiones\'\n            ORDER BY id desc LIMIT 1\n        \")->fetchColumn();\n\n        PCO_EjecutarSQLUnaria(\"\n            UPDATE app_novedades_mecanicos \n            SET id_liquidacion=\'$idLiq\'\n            WHERE \n                fecha >= \'$fecha_inicio\' AND fecha <= \'$fecha_fin\' AND id_mecanico=\'\".$venta[\'id_mecanico\'].\"\' AND id_liquidacion=0\n        \");\n    }\n        // arq de estados\n        //actualiozar estados\n    PCO_EjecutarSQLUnaria(\"\n        UPDATE app_ventas \n        SET id_liquidacion=1\n        WHERE app_mecanicos.id = app_ventas.id_mecanico AND app_ventas.fecha >= \'$fecha_inicio 00:00:00\' AND app_ventas.fecha <= \'$fecha_fin 23:59:59\' AND app_ventas.estado = 1 AND id_mecanico <> 0 AND id_liquidacion=0\");\n    PCO_CargarFormulario(14);\n}\n\nif($PCO_Accion == \"VENTAS_verLiquidacion\") {\n    $liq = PCO_EjecutarSQL(\"\n        SELECT l.*, m.nombre_completo, m.cedula, m.telefono, m.direccion, m.correo,\n            CONCAT(\'$\',FORMAT((l.valor_venta + l.valor_novedad_abonar - l.valor_novedad_debitar - l.seguridad_social),2,\'de_DE\')) total\n        FROM app_liquidacion_mecanicos_enc l,app_mecanicos m \n        WHERE l.id_mecanico = m.id AND l.id=\'$PCO_Valor\'\n    \")->fetch();\n    \n    /*$ventas = PCO_EjecutarSQL(\"\n        SELECT v.id, v.id_mecanico, SUM(v.total_mecanico) as Total\n        FROM app_ventas v\n        WHERE v.fecha >= \'\".$liq[\'fecha_inicio\'].\" 00:00:00\' AND v.fecha <= \'\".$liq[\'fecha_fin\'].\"  23:59:59\' AND v.estado = 1 AND id_mecanico = \".$liq[\'id_mecanico\'].\" AND id_liquidacion=1\n    \")->fetchAll();\n    \n    $valor_novedad = PCO_EjecutarSQL(\"\n        SELECT *\n        FROM app_novedades_mecanicos\n        WHERE fecha >= \'\".$liq[\'fecha_inicio\'].\"\' AND fecha <= \'\".$liq[\'fecha_fin\'].\"\'\n            AND id_mecanico=\'\".$liq[\'id_mecanico\'].\"\' AND id_liquidacion=1\n    \")->fetchAll(); */\n    \n    include \'liquidacion_mecanicos.php\';\n}','A'),(1015,'mod/app_ventas/index.php','2025-01-31 14:17:00','rafael',248,11389,'<?php\n\nfunction calcularTotalVenta($id, $returnArr = \"\") {\n    $venta = PCO_EjecutarSQL(\"\n        SELECT SUM(precio * cantidad) as total, SUM(precio * iva/100) iva\n        FROM app_ventas_detalle\n        WHERE id_venta = \'$id\' GROUP BY id_venta\n    \")->fetch();\n    $ventaMecanico = PCO_EjecutarSQL(\"\n        SELECT TRUNCATE(SUM(vd.precio * vd.cantidad * p.porcentaje_mecanico/100), 2)\n        FROM app_ventas_detalle vd, app_ventas v, app_productos p\n        WHERE vd.id_venta=v.id AND vd.id_producto=p.id AND  vd.id_venta = \'$id\' AND v.id_mecanico <> 0 GROUP BY vd.id_venta\n    \")->fetchColumn();\n    $total = $venta[\"total\"] ? $venta[\"total\"] : 0;\n    $iva = $venta[\"iva\"] ? $venta[\"iva\"] : 0;\n    PCO_EjecutarSQLUnaria(\"UPDATE app_ventas SET total = $total, iva = $iva, total_mecanico=\'$ventaMecanico\' WHERE id = $id \");\n    if($returnArr)\n        return $venta;\n    return \'\"total\": \' . $total . \', \"iva\": \' . $iva;\n}\n\nif($PCO_Accion == \"VENTA_ingresarRealizarVenta\") {\n    $ventaAbierta = PCO_EjecutarSQL(\"\n        SELECT id, id_cliente, total, iva, placa\n        FROM app_ventas\n        WHERE id=\'$PCO_Valor\'\n    \")->fetch();\n\n    $id_venta = $ventaAbierta[\"id\"] || \"\";\n    if($id_venta) {\n        $total = number_format($ventaAbierta[\"total\"], 2);\n        $iva = number_format($ventaAbierta[\"iva\"], 2);\n        $id_cliente = $ventaAbierta[\"id_cliente\"];\n    }\n\n    PCO_CargarFormulario(8, 1, \"id\", $id_venta);\n}\n\nif($PCO_Accion == \"VENTA_agregarProductoCrearOC\") {\n        //crear cliente en caso de que no llegue id_cliente\n        if(!$id_cliente) {\n            PCO_EjecutarSQLUnaria(\"INSERT INTO app_clientes (nombre_completo, numero_documento, telefono) VALUES (?,?,?) \",\n                \"$nombre_completo$_SeparadorCampos_$numero_documento$_SeparadorCampos_$telefono\"\n            );\n            // $id_cliente = PCO_ObtenerUltimoIDInsertado();\n            $id_cliente = PCO_EjecutarSQL(\"\n                SELECT id\n                FROM app_clientes\n                WHERE numero_documento=\'$numero_documento\' AND telefono=\'$telefono\' AND \'$nombre_completo\'\n            \")->fetchColumn();\n        }\n        $todayMysql = date(\"Y-m-d H:i:s\");\n        PCO_EjecutarSQLUnaria(\"INSERT INTO app_ventas (id_cliente, usuario, fecha, placa, id_mecanico, tipo_venta) VALUES (?,?,?,?,?,?) \", \"$id_cliente$_SeparadorCampos_$PCOSESS_LoginUsuario$_SeparadorCampos_$todayMysql$_SeparadorCampos_$placa$_SeparadorCampos_$id_mecanico$_SeparadorCampos_$tipo_venta\");\n        $id = PCO_EjecutarSQL(\"\n            SELECT id\n            FROM app_ventas\n            WHERE fecha=\'$todayMysql\' AND usuario=\'$PCOSESS_LoginUsuario\' AND id_cliente = \'$id_cliente\'\n        \")->fetchColumn();\n        // $id = PCO_ObtenerUltimoIDInsertado();\n\n    $producto = PCO_EjecutarSQL(\"\n        SELECT id, precio_venta, iva, inventario\n        FROM app_productos\n        WHERE id = \'$id_producto\'\n    \")->fetch();\n    if($producto[\"id\"]) {\n        $existe = PCO_EjecutarSQL(\"\n            SELECT count(id)\n            FROM app_ventas_detalle\n            WHERE id_venta = $id AND id_producto = \'$id_producto\'\n        \")->fetchColumn();\n        if($existe > 0) {\n            print_r(\'{\"success\": false, \"msg\": \"El producto ya se ha ingresado\"}\');\n            die();\n        }\n        /* if($producto[\"inventario\"] < $cantidad) {\n            print_r(\'{\"success\": false, \"msg\": \"La cantidad digitada supera la del invetario\"}\');\n            die();\n        } */\n        // $inventarioNew = $producto[\"inventario\"] - $cantidad;\n        // PCO_EjecutarSQLUnaria(\"UPDATE app_productos SET inventario = $inventarioNew WHERE id = \" . $producto[\"id\"]);\n        PCO_EjecutarSQLUnaria(\"INSERT INTO app_ventas_detalle (id_venta, id_producto, cantidad, precio, iva, hora_inicio, hora_fin, guaje) VALUES (?,?,?,?,?,?,?,?) \", \n            \"$id$_SeparadorCampos_$id_producto$_SeparadorCampos_$cantidad$_SeparadorCampos_$precio$_SeparadorCampos_\" . $producto[\"iva\"].\"$_SeparadorCampos_$hora_inicio$_SeparadorCampos_$hora_fin$_SeparadorCampos_$guaje\");\n        calcularTotalVenta($id);\n        \n        /* $total = number_format($result[\"total\"], 2);\n        $iva = number_format($result[\"iva\"], 2); */\n\n        echo \'<script type=\"text/javascript\">\n        	document.FRMBASEINFORME.PCO_Accion.value=\"PCO_CargarObjeto\";\n        	document.FRMBASEINFORME.PCO_Objeto.value=\"frm:8:1:id:\'.$id.\'\";\n        	document.FRMBASEINFORME.Precarga_EstilosBS.value=\"1\";\n        	document.FRMBASEINFORME.Presentar_FullScreen.value=\"0\";\n        	document.FRMBASEINFORME.target=\"_self\";\n        	document.FRMBASEINFORME.submit();\n    	 </script>\';\n    }\n}\n\nif($PCO_Accion == \"VENTA_agregarProducto\") {\n    $producto = PCO_EjecutarSQL(\"\n        SELECT id, precio_venta, iva\n        FROM app_productos\n        WHERE id = \'$id_producto\'\n    \")->fetch();\n    if($producto[\"id\"]) {\n        $existe = PCO_EjecutarSQL(\"\n            SELECT count(id)\n            FROM app_ventas_detalle\n            WHERE id_venta = $id AND id_producto = \'$id_producto\'\n        \")->fetchColumn();\n        if($existe > 0) {\n            print_r(\'{\"success\": false, \"msg\": \"El producto ya se ha ingresado\"}\');\n            die();\n        }\n        /* if($producto[\"inventario\"] < $cantidad) {\n            print_r(\'{\"success\": false, \"msg\": \"La cantidad digitada supera la del invetario\"}\');\n            die();\n        } */\n        // $inventarioNew = $producto[\"inventario\"] - $cantidad;\n        // PCO_EjecutarSQLUnaria(\"UPDATE app_productos SET inventario = $inventarioNew WHERE id = \" . $producto[\"id\"]);\n        PCO_EjecutarSQLUnaria(\"INSERT INTO app_ventas_detalle (id_venta, id_producto, cantidad, precio, iva, hora_inicio, hora_fin, guaje) VALUES (?,?,?,?,?,?,?,?) \", \n            \"$id$_SeparadorCampos_$id_producto$_SeparadorCampos_$cantidad$_SeparadorCampos_$precioVenta$_SeparadorCampos_\" . $producto[\"iva\"].\"$_SeparadorCampos$hora_inicio$_SeparadorCampos$hora_fin$_SeparadorCampos$guaje\");\n        $result = calcularTotalVenta($id);\n        print_r(\'{\"success\": true, \"id\": \' . $id . \', \' . $result . \'}\');\n        die();\n    }\n    print_r(\'{\"success\": false, \"msg\": \"No se ha encontrado el producto seleccionado\"}\');\n    die();\n}\n\nif($PCO_Accion == \"VENTA_consultarTotalVenta\") {\n    if($id) {\n        $result = calcularTotalVenta($id);\n        print_r(\'{\"success\": true, \"id\": \' . $id . \', \' . $result . \'}\');\n        die();\n    }\n    print_r(\'{\"success\": false, \"msg\": \"No se encontro la venta\"}\');\n    die();\n}\n\nif($PCO_Accion == \"VENTA_eliminarProducto\") {\n\n    if($id_venta_detalle && $id_venta) {\n        $producto = PCO_EjecutarSQL(\"\n            SELECT p.inventario, vd.cantidad, p.id\n            FROM app_ventas_detalle vd, app_productos p\n            WHERE vd.id_producto = p.id AND vd.id = \'$id_venta_detalle\'\n        \")->fetch();\n        //Restablecemos el inventario\n        $inventarioNew = $producto[\"inventario\"] + $producto[\"cantidad\"];\n        PCO_EjecutarSQLUnaria(\"UPDATE app_productos SET inventario = $inventarioNew WHERE id = \" . $producto[\"id\"]);\n        PCO_EjecutarSQLUnaria(\"DELETE FROM app_ventas_detalle WHERE id_venta = $id_venta AND id = $id_venta_detalle\");\n        $result = calcularTotalVenta($id_venta);\n        print_r(\'{\"success\": true, \"msg\": \"Se ha eliminado el producto exitosamente\", \' . $result . \'}\');\n        die();\n    }\n    print_r(\'{\"success\": false, \"msg\": \"No se pudo eliminar el producto\"}\');\n    die();\n}\n\nif($PCO_Accion == \"VENTA_actualizarProductoVenta\") {\n    if($id) {\n        PCO_EjecutarSQLUnaria(\"UPDATE app_ventas_detalle SET cantidad=\'$cantidad\', precio=\'$precio\' WHERE id = \'$id\'\");\n        echo 1;\n        die();\n    }\n    echo 0;\n    die();\n}\n\nif($PCO_Accion == \"VENTA_imprimirFactura\") {\n    if($PCO_Valor)\n        $id = $PCO_Valor;\n    if($id) {\n        include_once \"imprimirFactura.php\";\n    }\n}\n\nif($PCO_Accion == \"VENTA_generarLiquidacionMecanicos\") {\n    $ventas = PCO_EjecutarSQL(\"\n        SELECT v.id, v.id_mecanico, SUM(v.total_mecanico) as Total, m.seguridad_social\n        FROM app_mecanicos m,app_ventas v\n        WHERE m.id = v.id_mecanico AND v.fecha >= \'$fecha_inicio 00:00:00\' AND v.fecha <= \'$fecha_fin 23:59:59\' AND v.estado = 1 AND id_mecanico <> 0 AND id_liquidacion=0\n        GROUP BY v.id_mecanico\n    \")->fetchAll();\n    foreach ($ventas as $venta) {\n        $valor_novedad = PCO_EjecutarSQL(\"\n            SELECT  \n                SUM(case when tipo_novedad=\'Abonar\' then valor_novedad else 0 end) as abonar,\n                SUM(case when tipo_novedad=\'Debitar\' then valor_novedad else 0 end) as debitar\n            FROM app_novedades_mecanicos\n            WHERE fecha >= \'$fecha_inicio\' AND fecha <= \'$fecha_fin\'\n                AND id_mecanico=\'\".$venta[\'id_mecanico\'].\"\' AND id_liquidacion=0\n            GROUP BY id_mecanico\n        \")->fetch();\n\n        PCO_EjecutarSQLUnaria(\"\n            INSERT INTO app_liquidacion_mecanicos_enc (id_mecanico, fecha_inicio, fecha_fin, fecha, valor_venta, valor_novedad_abonar, valor_novedad_debitar, seguridad_social, usuario) VALUES (?,?,?,?,?,?,?,?,?) \",\n            $venta[\"id_mecanico\"].\"$_SeparadorCampos_$fecha_inicio$_SeparadorCampos_$fecha_fin$_SeparadorCampos_$PCO_FechaOperacionGuiones$_SeparadorCampos_\".$venta[\"Total\"].\"$_SeparadorCampos_\".$valor_novedad[\'abonar\'].\"$_SeparadorCampos_\".$valor_novedad[\'debitar\'].\"$_SeparadorCampos_\".$venta[\"seguridad_social\"].\"$_SeparadorCampos_$PCOSESS_LoginUsuario\"\n        );\n        \n        $idLiq = PCO_EjecutarSQL(\"\n            SELECT id\n            FROM app_novedades_mecanicos\n            WHERE id_mecanico=\'\".$venta[\'id_mecanico\'].\"\' AND fecha=\'$PCO_FechaOperacionGuiones\'\n            ORDER BY id desc LIMIT 1\n        \")->fetchColumn();\n\n        PCO_EjecutarSQLUnaria(\"\n            UPDATE app_novedades_mecanicos \n            SET id_liquidacion=\'$idLiq\'\n            WHERE \n                fecha >= \'$fecha_inicio\' AND fecha <= \'$fecha_fin\' AND id_mecanico=\'\".$venta[\'id_mecanico\'].\"\' AND id_liquidacion=0\n        \");\n        \n        PCO_EjecutarSQLUnaria(\"\n            UPDATE app_ventas \n            SET id_liquidacion=\'$idLiq\'\n            WHERE app_ventas.fecha >= \'$fecha_inicio 00:00:00\' AND app_ventas.fecha <= \'$fecha_fin 23:59:59\' AND app_ventas.estado = 1 AND id_mecanico = id_mecanico=\'\".$venta[\'id_mecanico\'].\" AND id_liquidacion=0\n        \");\n    }\n    PCO_CargarFormulario(14);\n}\n\nif($PCO_Accion == \"VENTAS_verLiquidacion\") {\n    $liq = PCO_EjecutarSQL(\"\n        SELECT l.*, m.nombre_completo, m.cedula, m.telefono, m.direccion, m.correo,\n            CONCAT(\'$\',FORMAT((l.valor_venta + l.valor_novedad_abonar - l.valor_novedad_debitar - l.seguridad_social),2,\'de_DE\')) total\n        FROM app_liquidacion_mecanicos_enc l,app_mecanicos m \n        WHERE l.id_mecanico = m.id AND l.id=\'$PCO_Valor\'\n    \")->fetch();\n    \n    /*$ventas = PCO_EjecutarSQL(\"\n        SELECT v.id, v.id_mecanico, SUM(v.total_mecanico) as Total\n        FROM app_ventas v\n        WHERE v.fecha >= \'\".$liq[\'fecha_inicio\'].\" 00:00:00\' AND v.fecha <= \'\".$liq[\'fecha_fin\'].\"  23:59:59\' AND v.estado = 1 AND id_mecanico = \".$liq[\'id_mecanico\'].\" AND id_liquidacion=1\n    \")->fetchAll();\n    \n    $valor_novedad = PCO_EjecutarSQL(\"\n        SELECT *\n        FROM app_novedades_mecanicos\n        WHERE fecha >= \'\".$liq[\'fecha_inicio\'].\"\' AND fecha <= \'\".$liq[\'fecha_fin\'].\"\'\n            AND id_mecanico=\'\".$liq[\'id_mecanico\'].\"\' AND id_liquidacion=1\n    \")->fetchAll(); */\n    \n    include \'liquidacion_mecanicos.php\';\n}','A'),(1016,'mod/app_ventas/index.php','2025-01-31 14:19:00','rafael',248,11178,'<?php\n\nfunction calcularTotalVenta($id, $returnArr = \"\") {\n    $venta = PCO_EjecutarSQL(\"\n        SELECT SUM(precio * cantidad) as total, SUM(precio * iva/100) iva\n        FROM app_ventas_detalle\n        WHERE id_venta = \'$id\' GROUP BY id_venta\n    \")->fetch();\n    $ventaMecanico = PCO_EjecutarSQL(\"\n        SELECT TRUNCATE(SUM(vd.precio * vd.cantidad * p.porcentaje_mecanico/100), 2)\n        FROM app_ventas_detalle vd, app_ventas v, app_productos p\n        WHERE vd.id_venta=v.id AND vd.id_producto=p.id AND  vd.id_venta = \'$id\' AND v.id_mecanico <> 0 GROUP BY vd.id_venta\n    \")->fetchColumn();\n    $total = $venta[\"total\"] ? $venta[\"total\"] : 0;\n    $iva = $venta[\"iva\"] ? $venta[\"iva\"] : 0;\n    PCO_EjecutarSQLUnaria(\"UPDATE app_ventas SET total = $total, iva = $iva, total_mecanico=\'$ventaMecanico\' WHERE id = $id \");\n    if($returnArr)\n        return $venta;\n    return \'\"total\": \' . $total . \', \"iva\": \' . $iva;\n}\n\nif($PCO_Accion == \"VENTA_ingresarRealizarVenta\") {\n    $ventaAbierta = PCO_EjecutarSQL(\"\n        SELECT id, id_cliente, total, iva, placa\n        FROM app_ventas\n        WHERE id=\'$PCO_Valor\'\n    \")->fetch();\n\n    $id_venta = $ventaAbierta[\"id\"] || \"\";\n    if($id_venta) {\n        $total = number_format($ventaAbierta[\"total\"], 2);\n        $iva = number_format($ventaAbierta[\"iva\"], 2);\n        $id_cliente = $ventaAbierta[\"id_cliente\"];\n    }\n\n    PCO_CargarFormulario(8, 1, \"id\", $id_venta);\n}\n\nif($PCO_Accion == \"VENTA_agregarProductoCrearOC\") {\n        //crear cliente en caso de que no llegue id_cliente\n        if(!$id_cliente) {\n            PCO_EjecutarSQLUnaria(\"INSERT INTO app_clientes (nombre_completo, numero_documento, telefono) VALUES (?,?,?) \",\n                \"$nombre_completo$_SeparadorCampos_$numero_documento$_SeparadorCampos_$telefono\"\n            );\n            // $id_cliente = PCO_ObtenerUltimoIDInsertado();\n            $id_cliente = PCO_EjecutarSQL(\"\n                SELECT id\n                FROM app_clientes\n                WHERE numero_documento=\'$numero_documento\' AND telefono=\'$telefono\' AND \'$nombre_completo\'\n            \")->fetchColumn();\n        }\n        $todayMysql = date(\"Y-m-d H:i:s\");\n        PCO_EjecutarSQLUnaria(\"INSERT INTO app_ventas (id_cliente, usuario, fecha, placa, id_mecanico, tipo_venta) VALUES (?,?,?,?,?,?) \", \"$id_cliente$_SeparadorCampos_$PCOSESS_LoginUsuario$_SeparadorCampos_$todayMysql$_SeparadorCampos_$placa$_SeparadorCampos_$id_mecanico$_SeparadorCampos_$tipo_venta\");\n        $id = PCO_EjecutarSQL(\"\n            SELECT id\n            FROM app_ventas\n            WHERE fecha=\'$todayMysql\' AND usuario=\'$PCOSESS_LoginUsuario\' AND id_cliente = \'$id_cliente\'\n        \")->fetchColumn();\n        // $id = PCO_ObtenerUltimoIDInsertado();\n\n    $producto = PCO_EjecutarSQL(\"\n        SELECT id, precio_venta, iva, inventario\n        FROM app_productos\n        WHERE id = \'$id_producto\'\n    \")->fetch();\n    if($producto[\"id\"]) {\n        $existe = PCO_EjecutarSQL(\"\n            SELECT count(id)\n            FROM app_ventas_detalle\n            WHERE id_venta = $id AND id_producto = \'$id_producto\'\n        \")->fetchColumn();\n        if($existe > 0) {\n            print_r(\'{\"success\": false, \"msg\": \"El producto ya se ha ingresado\"}\');\n            die();\n        }\n        /* if($producto[\"inventario\"] < $cantidad) {\n            print_r(\'{\"success\": false, \"msg\": \"La cantidad digitada supera la del invetario\"}\');\n            die();\n        } */\n        // $inventarioNew = $producto[\"inventario\"] - $cantidad;\n        // PCO_EjecutarSQLUnaria(\"UPDATE app_productos SET inventario = $inventarioNew WHERE id = \" . $producto[\"id\"]);\n        PCO_EjecutarSQLUnaria(\"INSERT INTO app_ventas_detalle (id_venta, id_producto, cantidad, precio, iva, hora_inicio, hora_fin, guaje) VALUES (?,?,?,?,?,?,?,?) \", \n            \"$id$_SeparadorCampos_$id_producto$_SeparadorCampos_$cantidad$_SeparadorCampos_$precio$_SeparadorCampos_\" . $producto[\"iva\"].\"$_SeparadorCampos_$hora_inicio$_SeparadorCampos_$hora_fin$_SeparadorCampos_$guaje\");\n        calcularTotalVenta($id);\n        \n        /* $total = number_format($result[\"total\"], 2);\n        $iva = number_format($result[\"iva\"], 2); */\n\n        echo \'<script type=\"text/javascript\">\n        	document.FRMBASEINFORME.PCO_Accion.value=\"PCO_CargarObjeto\";\n        	document.FRMBASEINFORME.PCO_Objeto.value=\"frm:8:1:id:\'.$id.\'\";\n        	document.FRMBASEINFORME.Precarga_EstilosBS.value=\"1\";\n        	document.FRMBASEINFORME.Presentar_FullScreen.value=\"0\";\n        	document.FRMBASEINFORME.target=\"_self\";\n        	document.FRMBASEINFORME.submit();\n    	 </script>\';\n    }\n}\n\nif($PCO_Accion == \"VENTA_agregarProducto\") {\n    $producto = PCO_EjecutarSQL(\"\n        SELECT id, precio_venta, iva\n        FROM app_productos\n        WHERE id = \'$id_producto\'\n    \")->fetch();\n    if($producto[\"id\"]) {\n        $existe = PCO_EjecutarSQL(\"\n            SELECT count(id)\n            FROM app_ventas_detalle\n            WHERE id_venta = $id AND id_producto = \'$id_producto\'\n        \")->fetchColumn();\n        if($existe > 0) {\n            print_r(\'{\"success\": false, \"msg\": \"El producto ya se ha ingresado\"}\');\n            die();\n        }\n        /* if($producto[\"inventario\"] < $cantidad) {\n            print_r(\'{\"success\": false, \"msg\": \"La cantidad digitada supera la del invetario\"}\');\n            die();\n        } */\n        // $inventarioNew = $producto[\"inventario\"] - $cantidad;\n        // PCO_EjecutarSQLUnaria(\"UPDATE app_productos SET inventario = $inventarioNew WHERE id = \" . $producto[\"id\"]);\n        PCO_EjecutarSQLUnaria(\"INSERT INTO app_ventas_detalle (id_venta, id_producto, cantidad, precio, iva, hora_inicio, hora_fin, guaje) VALUES (?,?,?,?,?,?,?,?) \", \n            \"$id$_SeparadorCampos_$id_producto$_SeparadorCampos_$cantidad$_SeparadorCampos_$precioVenta$_SeparadorCampos_\" . $producto[\"iva\"].\"$_SeparadorCampos$hora_inicio$_SeparadorCampos$hora_fin$_SeparadorCampos$guaje\");\n        $result = calcularTotalVenta($id);\n        print_r(\'{\"success\": true, \"id\": \' . $id . \', \' . $result . \'}\');\n        die();\n    }\n    print_r(\'{\"success\": false, \"msg\": \"No se ha encontrado el producto seleccionado\"}\');\n    die();\n}\n\nif($PCO_Accion == \"VENTA_consultarTotalVenta\") {\n    if($id) {\n        $result = calcularTotalVenta($id);\n        print_r(\'{\"success\": true, \"id\": \' . $id . \', \' . $result . \'}\');\n        die();\n    }\n    print_r(\'{\"success\": false, \"msg\": \"No se encontro la venta\"}\');\n    die();\n}\n\nif($PCO_Accion == \"VENTA_eliminarProducto\") {\n\n    if($id_venta_detalle && $id_venta) {\n        $producto = PCO_EjecutarSQL(\"\n            SELECT p.inventario, vd.cantidad, p.id\n            FROM app_ventas_detalle vd, app_productos p\n            WHERE vd.id_producto = p.id AND vd.id = \'$id_venta_detalle\'\n        \")->fetch();\n        //Restablecemos el inventario\n        $inventarioNew = $producto[\"inventario\"] + $producto[\"cantidad\"];\n        PCO_EjecutarSQLUnaria(\"UPDATE app_productos SET inventario = $inventarioNew WHERE id = \" . $producto[\"id\"]);\n        PCO_EjecutarSQLUnaria(\"DELETE FROM app_ventas_detalle WHERE id_venta = $id_venta AND id = $id_venta_detalle\");\n        $result = calcularTotalVenta($id_venta);\n        print_r(\'{\"success\": true, \"msg\": \"Se ha eliminado el producto exitosamente\", \' . $result . \'}\');\n        die();\n    }\n    print_r(\'{\"success\": false, \"msg\": \"No se pudo eliminar el producto\"}\');\n    die();\n}\n\nif($PCO_Accion == \"VENTA_actualizarProductoVenta\") {\n    if($id) {\n        PCO_EjecutarSQLUnaria(\"UPDATE app_ventas_detalle SET cantidad=\'$cantidad\', precio=\'$precio\' WHERE id = \'$id\'\");\n        echo 1;\n        die();\n    }\n    echo 0;\n    die();\n}\n\nif($PCO_Accion == \"VENTA_imprimirFactura\") {\n    if($PCO_Valor)\n        $id = $PCO_Valor;\n    if($id) {\n        include_once \"imprimirFactura.php\";\n    }\n}\n\nif($PCO_Accion == \"VENTA_generarLiquidacionMecanicos\") {\n    $ventas = PCO_EjecutarSQL(\"\n        SELECT v.id, v.id_mecanico, SUM(v.total_mecanico) as Total, m.seguridad_social\n        FROM app_mecanicos m,app_ventas v\n        WHERE m.id = v.id_mecanico AND v.fecha >= \'$fecha_inicio 00:00:00\' AND v.fecha <= \'$fecha_fin 23:59:59\' AND v.estado = 1 AND id_mecanico <> 0 AND id_liquidacion=0\n        GROUP BY v.id_mecanico\n    \")->fetchAll();\n    foreach ($ventas as $venta) {\n        $valor_novedad = PCO_EjecutarSQL(\"\n            SELECT  \n                SUM(case when tipo_novedad=\'Abonar\' then valor_novedad else 0 end) as abonar,\n                SUM(case when tipo_novedad=\'Debitar\' then valor_novedad else 0 end) as debitar\n            FROM app_novedades_mecanicos\n            WHERE fecha >= \'$fecha_inicio\' AND fecha <= \'$fecha_fin\'\n                AND id_mecanico=\'\".$venta[\'id_mecanico\'].\"\' AND id_liquidacion=0\n            GROUP BY id_mecanico\n        \")->fetch();\n\n        PCO_EjecutarSQLUnaria(\"\n            INSERT INTO app_liquidacion_mecanicos_enc (id_mecanico, fecha_inicio, fecha_fin, fecha, valor_venta, valor_novedad_abonar, valor_novedad_debitar, seguridad_social, usuario) VALUES (?,?,?,?,?,?,?,?,?) \",\n            $venta[\"id_mecanico\"].\"$_SeparadorCampos_$fecha_inicio$_SeparadorCampos_$fecha_fin$_SeparadorCampos_$PCO_FechaOperacionGuiones$_SeparadorCampos_\".$venta[\"Total\"].\"$_SeparadorCampos_\".$valor_novedad[\'abonar\'].\"$_SeparadorCampos_\".$valor_novedad[\'debitar\'].\"$_SeparadorCampos_\".$venta[\"seguridad_social\"].\"$_SeparadorCampos_$PCOSESS_LoginUsuario\"\n        );\n        \n        $idLiq = PCO_EjecutarSQL(\"\n            SELECT id\n            FROM app_novedades_mecanicos\n            WHERE id_mecanico=\'\".$venta[\'id_mecanico\'].\"\' AND fecha=\'$PCO_FechaOperacionGuiones\'\n            ORDER BY id desc LIMIT 1\n        \")->fetchColumn();\n\n        PCO_EjecutarSQLUnaria(\"\n            UPDATE app_novedades_mecanicos \n            SET id_liquidacion=\'$idLiq\'\n            WHERE \n                fecha >= \'$fecha_inicio\' AND fecha <= \'$fecha_fin\' AND id_mecanico=\'\".$venta[\'id_mecanico\'].\"\' AND id_liquidacion=0\n        \");\n        \n        PCO_EjecutarSQLUnaria(\"\n            UPDATE app_ventas \n            SET id_liquidacion=\'$idLiq\'\n            WHERE app_ventas.fecha >= \'$fecha_inicio 00:00:00\' AND app_ventas.fecha <= \'$fecha_fin 23:59:59\' AND app_ventas.estado = 1 AND id_mecanico = id_mecanico=\'\".$venta[\'id_mecanico\'].\" AND id_liquidacion=0\n        \");\n    }\n    PCO_CargarFormulario(14);\n}\n\nif($PCO_Accion == \"VENTAS_verLiquidacion\") {\n    $liq = PCO_EjecutarSQL(\"\n        SELECT l.*, m.nombre_completo, m.cedula, m.telefono, m.direccion, m.correo,\n            CONCAT(\'$\',FORMAT((l.valor_venta + l.valor_novedad_abonar - l.valor_novedad_debitar - l.seguridad_social),2,\'de_DE\')) total\n        FROM app_liquidacion_mecanicos_enc l,app_mecanicos m \n        WHERE l.id_mecanico = m.id AND l.id=\'$PCO_Valor\'\n    \")->fetch();\n\n    $ventas = PCO_EjecutarSQL(\"\n        SELECT *\n        FROM app_ventas\n        WHERE id_liquidacion=\".$liq[\'id\'].\"\n    \")->fetchAll();\n\n    $valor_novedad = PCO_EjecutarSQL(\"\n        SELECT *\n        FROM app_novedades_mecanicos\n        WHERE fecha >= \'\".$liq[\'fecha_inicio\'].\"\' AND fecha <= \'\".$liq[\'fecha_fin\'].\"\'\n            AND id_mecanico=\'\".$liq[\'id_mecanico\'].\"\' AND id_liquidacion=1\n    \")->fetchAll();\n    \n    include \'liquidacion_mecanicos.php\';\n}','A'),(1017,'mod/app_ventas/index.php','2025-01-31 14:20:00','rafael',247,11056,'<?php\n\nfunction calcularTotalVenta($id, $returnArr = \"\") {\n    $venta = PCO_EjecutarSQL(\"\n        SELECT SUM(precio * cantidad) as total, SUM(precio * iva/100) iva\n        FROM app_ventas_detalle\n        WHERE id_venta = \'$id\' GROUP BY id_venta\n    \")->fetch();\n    $ventaMecanico = PCO_EjecutarSQL(\"\n        SELECT TRUNCATE(SUM(vd.precio * vd.cantidad * p.porcentaje_mecanico/100), 2)\n        FROM app_ventas_detalle vd, app_ventas v, app_productos p\n        WHERE vd.id_venta=v.id AND vd.id_producto=p.id AND  vd.id_venta = \'$id\' AND v.id_mecanico <> 0 GROUP BY vd.id_venta\n    \")->fetchColumn();\n    $total = $venta[\"total\"] ? $venta[\"total\"] : 0;\n    $iva = $venta[\"iva\"] ? $venta[\"iva\"] : 0;\n    PCO_EjecutarSQLUnaria(\"UPDATE app_ventas SET total = $total, iva = $iva, total_mecanico=\'$ventaMecanico\' WHERE id = $id \");\n    if($returnArr)\n        return $venta;\n    return \'\"total\": \' . $total . \', \"iva\": \' . $iva;\n}\n\nif($PCO_Accion == \"VENTA_ingresarRealizarVenta\") {\n    $ventaAbierta = PCO_EjecutarSQL(\"\n        SELECT id, id_cliente, total, iva, placa\n        FROM app_ventas\n        WHERE id=\'$PCO_Valor\'\n    \")->fetch();\n\n    $id_venta = $ventaAbierta[\"id\"] || \"\";\n    if($id_venta) {\n        $total = number_format($ventaAbierta[\"total\"], 2);\n        $iva = number_format($ventaAbierta[\"iva\"], 2);\n        $id_cliente = $ventaAbierta[\"id_cliente\"];\n    }\n\n    PCO_CargarFormulario(8, 1, \"id\", $id_venta);\n}\n\nif($PCO_Accion == \"VENTA_agregarProductoCrearOC\") {\n        //crear cliente en caso de que no llegue id_cliente\n        if(!$id_cliente) {\n            PCO_EjecutarSQLUnaria(\"INSERT INTO app_clientes (nombre_completo, numero_documento, telefono) VALUES (?,?,?) \",\n                \"$nombre_completo$_SeparadorCampos_$numero_documento$_SeparadorCampos_$telefono\"\n            );\n            // $id_cliente = PCO_ObtenerUltimoIDInsertado();\n            $id_cliente = PCO_EjecutarSQL(\"\n                SELECT id\n                FROM app_clientes\n                WHERE numero_documento=\'$numero_documento\' AND telefono=\'$telefono\' AND \'$nombre_completo\'\n            \")->fetchColumn();\n        }\n        $todayMysql = date(\"Y-m-d H:i:s\");\n        PCO_EjecutarSQLUnaria(\"INSERT INTO app_ventas (id_cliente, usuario, fecha, placa, id_mecanico, tipo_venta) VALUES (?,?,?,?,?,?) \", \"$id_cliente$_SeparadorCampos_$PCOSESS_LoginUsuario$_SeparadorCampos_$todayMysql$_SeparadorCampos_$placa$_SeparadorCampos_$id_mecanico$_SeparadorCampos_$tipo_venta\");\n        $id = PCO_EjecutarSQL(\"\n            SELECT id\n            FROM app_ventas\n            WHERE fecha=\'$todayMysql\' AND usuario=\'$PCOSESS_LoginUsuario\' AND id_cliente = \'$id_cliente\'\n        \")->fetchColumn();\n        // $id = PCO_ObtenerUltimoIDInsertado();\n\n    $producto = PCO_EjecutarSQL(\"\n        SELECT id, precio_venta, iva, inventario\n        FROM app_productos\n        WHERE id = \'$id_producto\'\n    \")->fetch();\n    if($producto[\"id\"]) {\n        $existe = PCO_EjecutarSQL(\"\n            SELECT count(id)\n            FROM app_ventas_detalle\n            WHERE id_venta = $id AND id_producto = \'$id_producto\'\n        \")->fetchColumn();\n        if($existe > 0) {\n            print_r(\'{\"success\": false, \"msg\": \"El producto ya se ha ingresado\"}\');\n            die();\n        }\n        /* if($producto[\"inventario\"] < $cantidad) {\n            print_r(\'{\"success\": false, \"msg\": \"La cantidad digitada supera la del invetario\"}\');\n            die();\n        } */\n        // $inventarioNew = $producto[\"inventario\"] - $cantidad;\n        // PCO_EjecutarSQLUnaria(\"UPDATE app_productos SET inventario = $inventarioNew WHERE id = \" . $producto[\"id\"]);\n        PCO_EjecutarSQLUnaria(\"INSERT INTO app_ventas_detalle (id_venta, id_producto, cantidad, precio, iva, hora_inicio, hora_fin, guaje) VALUES (?,?,?,?,?,?,?,?) \", \n            \"$id$_SeparadorCampos_$id_producto$_SeparadorCampos_$cantidad$_SeparadorCampos_$precio$_SeparadorCampos_\" . $producto[\"iva\"].\"$_SeparadorCampos_$hora_inicio$_SeparadorCampos_$hora_fin$_SeparadorCampos_$guaje\");\n        calcularTotalVenta($id);\n        \n        /* $total = number_format($result[\"total\"], 2);\n        $iva = number_format($result[\"iva\"], 2); */\n\n        echo \'<script type=\"text/javascript\">\n        	document.FRMBASEINFORME.PCO_Accion.value=\"PCO_CargarObjeto\";\n        	document.FRMBASEINFORME.PCO_Objeto.value=\"frm:8:1:id:\'.$id.\'\";\n        	document.FRMBASEINFORME.Precarga_EstilosBS.value=\"1\";\n        	document.FRMBASEINFORME.Presentar_FullScreen.value=\"0\";\n        	document.FRMBASEINFORME.target=\"_self\";\n        	document.FRMBASEINFORME.submit();\n    	 </script>\';\n    }\n}\n\nif($PCO_Accion == \"VENTA_agregarProducto\") {\n    $producto = PCO_EjecutarSQL(\"\n        SELECT id, precio_venta, iva\n        FROM app_productos\n        WHERE id = \'$id_producto\'\n    \")->fetch();\n    if($producto[\"id\"]) {\n        $existe = PCO_EjecutarSQL(\"\n            SELECT count(id)\n            FROM app_ventas_detalle\n            WHERE id_venta = $id AND id_producto = \'$id_producto\'\n        \")->fetchColumn();\n        if($existe > 0) {\n            print_r(\'{\"success\": false, \"msg\": \"El producto ya se ha ingresado\"}\');\n            die();\n        }\n        /* if($producto[\"inventario\"] < $cantidad) {\n            print_r(\'{\"success\": false, \"msg\": \"La cantidad digitada supera la del invetario\"}\');\n            die();\n        } */\n        // $inventarioNew = $producto[\"inventario\"] - $cantidad;\n        // PCO_EjecutarSQLUnaria(\"UPDATE app_productos SET inventario = $inventarioNew WHERE id = \" . $producto[\"id\"]);\n        PCO_EjecutarSQLUnaria(\"INSERT INTO app_ventas_detalle (id_venta, id_producto, cantidad, precio, iva, hora_inicio, hora_fin, guaje) VALUES (?,?,?,?,?,?,?,?) \", \n            \"$id$_SeparadorCampos_$id_producto$_SeparadorCampos_$cantidad$_SeparadorCampos_$precioVenta$_SeparadorCampos_\" . $producto[\"iva\"].\"$_SeparadorCampos$hora_inicio$_SeparadorCampos$hora_fin$_SeparadorCampos$guaje\");\n        $result = calcularTotalVenta($id);\n        print_r(\'{\"success\": true, \"id\": \' . $id . \', \' . $result . \'}\');\n        die();\n    }\n    print_r(\'{\"success\": false, \"msg\": \"No se ha encontrado el producto seleccionado\"}\');\n    die();\n}\n\nif($PCO_Accion == \"VENTA_consultarTotalVenta\") {\n    if($id) {\n        $result = calcularTotalVenta($id);\n        print_r(\'{\"success\": true, \"id\": \' . $id . \', \' . $result . \'}\');\n        die();\n    }\n    print_r(\'{\"success\": false, \"msg\": \"No se encontro la venta\"}\');\n    die();\n}\n\nif($PCO_Accion == \"VENTA_eliminarProducto\") {\n\n    if($id_venta_detalle && $id_venta) {\n        $producto = PCO_EjecutarSQL(\"\n            SELECT p.inventario, vd.cantidad, p.id\n            FROM app_ventas_detalle vd, app_productos p\n            WHERE vd.id_producto = p.id AND vd.id = \'$id_venta_detalle\'\n        \")->fetch();\n        //Restablecemos el inventario\n        $inventarioNew = $producto[\"inventario\"] + $producto[\"cantidad\"];\n        PCO_EjecutarSQLUnaria(\"UPDATE app_productos SET inventario = $inventarioNew WHERE id = \" . $producto[\"id\"]);\n        PCO_EjecutarSQLUnaria(\"DELETE FROM app_ventas_detalle WHERE id_venta = $id_venta AND id = $id_venta_detalle\");\n        $result = calcularTotalVenta($id_venta);\n        print_r(\'{\"success\": true, \"msg\": \"Se ha eliminado el producto exitosamente\", \' . $result . \'}\');\n        die();\n    }\n    print_r(\'{\"success\": false, \"msg\": \"No se pudo eliminar el producto\"}\');\n    die();\n}\n\nif($PCO_Accion == \"VENTA_actualizarProductoVenta\") {\n    if($id) {\n        PCO_EjecutarSQLUnaria(\"UPDATE app_ventas_detalle SET cantidad=\'$cantidad\', precio=\'$precio\' WHERE id = \'$id\'\");\n        echo 1;\n        die();\n    }\n    echo 0;\n    die();\n}\n\nif($PCO_Accion == \"VENTA_imprimirFactura\") {\n    if($PCO_Valor)\n        $id = $PCO_Valor;\n    if($id) {\n        include_once \"imprimirFactura.php\";\n    }\n}\n\nif($PCO_Accion == \"VENTA_generarLiquidacionMecanicos\") {\n    $ventas = PCO_EjecutarSQL(\"\n        SELECT v.id, v.id_mecanico, SUM(v.total_mecanico) as Total, m.seguridad_social\n        FROM app_mecanicos m,app_ventas v\n        WHERE m.id = v.id_mecanico AND v.fecha >= \'$fecha_inicio 00:00:00\' AND v.fecha <= \'$fecha_fin 23:59:59\' AND v.estado = 1 AND id_mecanico <> 0 AND id_liquidacion=0\n        GROUP BY v.id_mecanico\n    \")->fetchAll();\n    foreach ($ventas as $venta) {\n        $valor_novedad = PCO_EjecutarSQL(\"\n            SELECT  \n                SUM(case when tipo_novedad=\'Abonar\' then valor_novedad else 0 end) as abonar,\n                SUM(case when tipo_novedad=\'Debitar\' then valor_novedad else 0 end) as debitar\n            FROM app_novedades_mecanicos\n            WHERE fecha >= \'$fecha_inicio\' AND fecha <= \'$fecha_fin\'\n                AND id_mecanico=\'\".$venta[\'id_mecanico\'].\"\' AND id_liquidacion=0\n            GROUP BY id_mecanico\n        \")->fetch();\n\n        PCO_EjecutarSQLUnaria(\"\n            INSERT INTO app_liquidacion_mecanicos_enc (id_mecanico, fecha_inicio, fecha_fin, fecha, valor_venta, valor_novedad_abonar, valor_novedad_debitar, seguridad_social, usuario) VALUES (?,?,?,?,?,?,?,?,?) \",\n            $venta[\"id_mecanico\"].\"$_SeparadorCampos_$fecha_inicio$_SeparadorCampos_$fecha_fin$_SeparadorCampos_$PCO_FechaOperacionGuiones$_SeparadorCampos_\".$venta[\"Total\"].\"$_SeparadorCampos_\".$valor_novedad[\'abonar\'].\"$_SeparadorCampos_\".$valor_novedad[\'debitar\'].\"$_SeparadorCampos_\".$venta[\"seguridad_social\"].\"$_SeparadorCampos_$PCOSESS_LoginUsuario\"\n        );\n        \n        $idLiq = PCO_EjecutarSQL(\"\n            SELECT id\n            FROM app_novedades_mecanicos\n            WHERE id_mecanico=\'\".$venta[\'id_mecanico\'].\"\' AND fecha=\'$PCO_FechaOperacionGuiones\'\n            ORDER BY id desc LIMIT 1\n        \")->fetchColumn();\n\n        PCO_EjecutarSQLUnaria(\"\n            UPDATE app_novedades_mecanicos \n            SET id_liquidacion=\'$idLiq\'\n            WHERE \n                fecha >= \'$fecha_inicio\' AND fecha <= \'$fecha_fin\' AND id_mecanico=\'\".$venta[\'id_mecanico\'].\"\' AND id_liquidacion=0\n        \");\n        \n        PCO_EjecutarSQLUnaria(\"\n            UPDATE app_ventas \n            SET id_liquidacion=\'$idLiq\'\n            WHERE app_ventas.fecha >= \'$fecha_inicio 00:00:00\' AND app_ventas.fecha <= \'$fecha_fin 23:59:59\' AND app_ventas.estado = 1 AND id_mecanico = id_mecanico=\'\".$venta[\'id_mecanico\'].\" AND id_liquidacion=0\n        \");\n    }\n    PCO_CargarFormulario(14);\n}\n\nif($PCO_Accion == \"VENTAS_verLiquidacion\") {\n    $liq = PCO_EjecutarSQL(\"\n        SELECT l.*, m.nombre_completo, m.cedula, m.telefono, m.direccion, m.correo,\n            CONCAT(\'$\',FORMAT((l.valor_venta + l.valor_novedad_abonar - l.valor_novedad_debitar - l.seguridad_social),2,\'de_DE\')) total\n        FROM app_liquidacion_mecanicos_enc l,app_mecanicos m \n        WHERE l.id_mecanico = m.id AND l.id=\'$PCO_Valor\'\n    \")->fetch();\n\n    $ventas = PCO_EjecutarSQL(\"\n        SELECT *\n        FROM app_ventas\n        WHERE id_liquidacion=\".$liq[\'id\'].\"\n    \")->fetchAll();\n\n    $novedades = PCO_EjecutarSQL(\"\n        SELECT *\n        FROM app_novedades_mecanicos\n        WHERE id_liquidacion=\".$liq[\'id\'].\"\n    \")->fetchAll();\n    \n    include \'liquidacion_mecanicos.php\';\n}','A'),(1018,'mod/app_ventas/index.php','2025-01-31 14:20:00','rafael',247,11042,'<?php\n\nfunction calcularTotalVenta($id, $returnArr = \"\") {\n    $venta = PCO_EjecutarSQL(\"\n        SELECT SUM(precio * cantidad) as total, SUM(precio * iva/100) iva\n        FROM app_ventas_detalle\n        WHERE id_venta = \'$id\' GROUP BY id_venta\n    \")->fetch();\n    $ventaMecanico = PCO_EjecutarSQL(\"\n        SELECT TRUNCATE(SUM(vd.precio * vd.cantidad * p.porcentaje_mecanico/100), 2)\n        FROM app_ventas_detalle vd, app_ventas v, app_productos p\n        WHERE vd.id_venta=v.id AND vd.id_producto=p.id AND  vd.id_venta = \'$id\' AND v.id_mecanico <> 0 GROUP BY vd.id_venta\n    \")->fetchColumn();\n    $total = $venta[\"total\"] ? $venta[\"total\"] : 0;\n    $iva = $venta[\"iva\"] ? $venta[\"iva\"] : 0;\n    PCO_EjecutarSQLUnaria(\"UPDATE app_ventas SET total = $total, iva = $iva, total_mecanico=\'$ventaMecanico\' WHERE id = $id \");\n    if($returnArr)\n        return $venta;\n    return \'\"total\": \' . $total . \', \"iva\": \' . $iva;\n}\n\nif($PCO_Accion == \"VENTA_ingresarRealizarVenta\") {\n    $ventaAbierta = PCO_EjecutarSQL(\"\n        SELECT id, id_cliente, total, iva, placa\n        FROM app_ventas\n        WHERE id=\'$PCO_Valor\'\n    \")->fetch();\n\n    $id_venta = $ventaAbierta[\"id\"] || \"\";\n    if($id_venta) {\n        $total = number_format($ventaAbierta[\"total\"], 2);\n        $iva = number_format($ventaAbierta[\"iva\"], 2);\n        $id_cliente = $ventaAbierta[\"id_cliente\"];\n    }\n\n    PCO_CargarFormulario(8, 1, \"id\", $id_venta);\n}\n\nif($PCO_Accion == \"VENTA_agregarProductoCrearOC\") {\n        //crear cliente en caso de que no llegue id_cliente\n        if(!$id_cliente) {\n            PCO_EjecutarSQLUnaria(\"INSERT INTO app_clientes (nombre_completo, numero_documento, telefono) VALUES (?,?,?) \",\n                \"$nombre_completo$_SeparadorCampos_$numero_documento$_SeparadorCampos_$telefono\"\n            );\n            // $id_cliente = PCO_ObtenerUltimoIDInsertado();\n            $id_cliente = PCO_EjecutarSQL(\"\n                SELECT id\n                FROM app_clientes\n                WHERE numero_documento=\'$numero_documento\' AND telefono=\'$telefono\' AND \'$nombre_completo\'\n            \")->fetchColumn();\n        }\n        $todayMysql = date(\"Y-m-d H:i:s\");\n        PCO_EjecutarSQLUnaria(\"INSERT INTO app_ventas (id_cliente, usuario, fecha, placa, id_mecanico, tipo_venta) VALUES (?,?,?,?,?,?) \", \"$id_cliente$_SeparadorCampos_$PCOSESS_LoginUsuario$_SeparadorCampos_$todayMysql$_SeparadorCampos_$placa$_SeparadorCampos_$id_mecanico$_SeparadorCampos_$tipo_venta\");\n        $id = PCO_EjecutarSQL(\"\n            SELECT id\n            FROM app_ventas\n            WHERE fecha=\'$todayMysql\' AND usuario=\'$PCOSESS_LoginUsuario\' AND id_cliente = \'$id_cliente\'\n        \")->fetchColumn();\n        // $id = PCO_ObtenerUltimoIDInsertado();\n\n    $producto = PCO_EjecutarSQL(\"\n        SELECT id, precio_venta, iva, inventario\n        FROM app_productos\n        WHERE id = \'$id_producto\'\n    \")->fetch();\n    if($producto[\"id\"]) {\n        $existe = PCO_EjecutarSQL(\"\n            SELECT count(id)\n            FROM app_ventas_detalle\n            WHERE id_venta = $id AND id_producto = \'$id_producto\'\n        \")->fetchColumn();\n        if($existe > 0) {\n            print_r(\'{\"success\": false, \"msg\": \"El producto ya se ha ingresado\"}\');\n            die();\n        }\n        /* if($producto[\"inventario\"] < $cantidad) {\n            print_r(\'{\"success\": false, \"msg\": \"La cantidad digitada supera la del invetario\"}\');\n            die();\n        } */\n        // $inventarioNew = $producto[\"inventario\"] - $cantidad;\n        // PCO_EjecutarSQLUnaria(\"UPDATE app_productos SET inventario = $inventarioNew WHERE id = \" . $producto[\"id\"]);\n        PCO_EjecutarSQLUnaria(\"INSERT INTO app_ventas_detalle (id_venta, id_producto, cantidad, precio, iva, hora_inicio, hora_fin, guaje) VALUES (?,?,?,?,?,?,?,?) \", \n            \"$id$_SeparadorCampos_$id_producto$_SeparadorCampos_$cantidad$_SeparadorCampos_$precio$_SeparadorCampos_\" . $producto[\"iva\"].\"$_SeparadorCampos_$hora_inicio$_SeparadorCampos_$hora_fin$_SeparadorCampos_$guaje\");\n        calcularTotalVenta($id);\n        \n        /* $total = number_format($result[\"total\"], 2);\n        $iva = number_format($result[\"iva\"], 2); */\n\n        echo \'<script type=\"text/javascript\">\n        	document.FRMBASEINFORME.PCO_Accion.value=\"PCO_CargarObjeto\";\n        	document.FRMBASEINFORME.PCO_Objeto.value=\"frm:8:1:id:\'.$id.\'\";\n        	document.FRMBASEINFORME.Precarga_EstilosBS.value=\"1\";\n        	document.FRMBASEINFORME.Presentar_FullScreen.value=\"0\";\n        	document.FRMBASEINFORME.target=\"_self\";\n        	document.FRMBASEINFORME.submit();\n    	 </script>\';\n    }\n}\n\nif($PCO_Accion == \"VENTA_agregarProducto\") {\n    $producto = PCO_EjecutarSQL(\"\n        SELECT id, precio_venta, iva\n        FROM app_productos\n        WHERE id = \'$id_producto\'\n    \")->fetch();\n    if($producto[\"id\"]) {\n        $existe = PCO_EjecutarSQL(\"\n            SELECT count(id)\n            FROM app_ventas_detalle\n            WHERE id_venta = $id AND id_producto = \'$id_producto\'\n        \")->fetchColumn();\n        if($existe > 0) {\n            print_r(\'{\"success\": false, \"msg\": \"El producto ya se ha ingresado\"}\');\n            die();\n        }\n        /* if($producto[\"inventario\"] < $cantidad) {\n            print_r(\'{\"success\": false, \"msg\": \"La cantidad digitada supera la del invetario\"}\');\n            die();\n        } */\n        // $inventarioNew = $producto[\"inventario\"] - $cantidad;\n        // PCO_EjecutarSQLUnaria(\"UPDATE app_productos SET inventario = $inventarioNew WHERE id = \" . $producto[\"id\"]);\n        PCO_EjecutarSQLUnaria(\"INSERT INTO app_ventas_detalle (id_venta, id_producto, cantidad, precio, iva, hora_inicio, hora_fin, guaje) VALUES (?,?,?,?,?,?,?,?) \", \n            \"$id$_SeparadorCampos_$id_producto$_SeparadorCampos_$cantidad$_SeparadorCampos_$precioVenta$_SeparadorCampos_\" . $producto[\"iva\"].\"$_SeparadorCampos$hora_inicio$_SeparadorCampos$hora_fin$_SeparadorCampos$guaje\");\n        $result = calcularTotalVenta($id);\n        print_r(\'{\"success\": true, \"id\": \' . $id . \', \' . $result . \'}\');\n        die();\n    }\n    print_r(\'{\"success\": false, \"msg\": \"No se ha encontrado el producto seleccionado\"}\');\n    die();\n}\n\nif($PCO_Accion == \"VENTA_consultarTotalVenta\") {\n    if($id) {\n        $result = calcularTotalVenta($id);\n        print_r(\'{\"success\": true, \"id\": \' . $id . \', \' . $result . \'}\');\n        die();\n    }\n    print_r(\'{\"success\": false, \"msg\": \"No se encontro la venta\"}\');\n    die();\n}\n\nif($PCO_Accion == \"VENTA_eliminarProducto\") {\n\n    if($id_venta_detalle && $id_venta) {\n        $producto = PCO_EjecutarSQL(\"\n            SELECT p.inventario, vd.cantidad, p.id\n            FROM app_ventas_detalle vd, app_productos p\n            WHERE vd.id_producto = p.id AND vd.id = \'$id_venta_detalle\'\n        \")->fetch();\n        //Restablecemos el inventario\n        $inventarioNew = $producto[\"inventario\"] + $producto[\"cantidad\"];\n        PCO_EjecutarSQLUnaria(\"UPDATE app_productos SET inventario = $inventarioNew WHERE id = \" . $producto[\"id\"]);\n        PCO_EjecutarSQLUnaria(\"DELETE FROM app_ventas_detalle WHERE id_venta = $id_venta AND id = $id_venta_detalle\");\n        $result = calcularTotalVenta($id_venta);\n        print_r(\'{\"success\": true, \"msg\": \"Se ha eliminado el producto exitosamente\", \' . $result . \'}\');\n        die();\n    }\n    print_r(\'{\"success\": false, \"msg\": \"No se pudo eliminar el producto\"}\');\n    die();\n}\n\nif($PCO_Accion == \"VENTA_actualizarProductoVenta\") {\n    if($id) {\n        PCO_EjecutarSQLUnaria(\"UPDATE app_ventas_detalle SET cantidad=\'$cantidad\', precio=\'$precio\' WHERE id = \'$id\'\");\n        echo 1;\n        die();\n    }\n    echo 0;\n    die();\n}\n\nif($PCO_Accion == \"VENTA_imprimirFactura\") {\n    if($PCO_Valor)\n        $id = $PCO_Valor;\n    if($id) {\n        include_once \"imprimirFactura.php\";\n    }\n}\n\nif($PCO_Accion == \"VENTA_generarLiquidacionMecanicos\") {\n    $ventas = PCO_EjecutarSQL(\"\n        SELECT v.id, v.id_mecanico, SUM(v.total_mecanico) as Total, m.seguridad_social\n        FROM app_mecanicos m,app_ventas v\n        WHERE m.id = v.id_mecanico AND v.fecha >= \'$fecha_inicio 00:00:00\' AND v.fecha <= \'$fecha_fin 23:59:59\' AND v.estado = 1 AND id_mecanico <> 0 AND id_liquidacion=0\n        GROUP BY v.id_mecanico\n    \")->fetchAll();\n    foreach ($ventas as $venta) {\n        $valor_novedad = PCO_EjecutarSQL(\"\n            SELECT  \n                SUM(case when tipo_novedad=\'Abonar\' then valor_novedad else 0 end) as abonar,\n                SUM(case when tipo_novedad=\'Debitar\' then valor_novedad else 0 end) as debitar\n            FROM app_novedades_mecanicos\n            WHERE fecha >= \'$fecha_inicio\' AND fecha <= \'$fecha_fin\'\n                AND id_mecanico=\'\".$venta[\'id_mecanico\'].\"\' AND id_liquidacion=0\n            GROUP BY id_mecanico\n        \")->fetch();\n\n        PCO_EjecutarSQLUnaria(\"\n            INSERT INTO app_liquidacion_mecanicos_enc (id_mecanico, fecha_inicio, fecha_fin, fecha, valor_venta, valor_novedad_abonar, valor_novedad_debitar, seguridad_social, usuario) VALUES (?,?,?,?,?,?,?,?,?) \",\n            $venta[\"id_mecanico\"].\"$_SeparadorCampos_$fecha_inicio$_SeparadorCampos_$fecha_fin$_SeparadorCampos_$PCO_FechaOperacionGuiones$_SeparadorCampos_\".$venta[\"Total\"].\"$_SeparadorCampos_\".$valor_novedad[\'abonar\'].\"$_SeparadorCampos_\".$valor_novedad[\'debitar\'].\"$_SeparadorCampos_\".$venta[\"seguridad_social\"].\"$_SeparadorCampos_$PCOSESS_LoginUsuario\"\n        );\n        \n        $idLiq = PCO_EjecutarSQL(\"\n            SELECT id\n            FROM app_novedades_mecanicos\n            WHERE id_mecanico=\'\".$venta[\'id_mecanico\'].\"\' AND fecha=\'$PCO_FechaOperacionGuiones\'\n            ORDER BY id desc LIMIT 1\n        \")->fetchColumn();\n\n        PCO_EjecutarSQLUnaria(\"\n            UPDATE app_novedades_mecanicos \n            SET id_liquidacion=\'$idLiq\'\n            WHERE \n                fecha >= \'$fecha_inicio\' AND fecha <= \'$fecha_fin\' AND id_mecanico=\'\".$venta[\'id_mecanico\'].\"\' AND id_liquidacion=0\n        \");\n        \n        PCO_EjecutarSQLUnaria(\"\n            UPDATE app_ventas \n            SET id_liquidacion=\'$idLiq\'\n            WHERE app_ventas.fecha >= \'$fecha_inicio 00:00:00\' AND app_ventas.fecha <= \'$fecha_fin 23:59:59\' AND app_ventas.estado = 1 AND id_mecanico=\'\".$venta[\'id_mecanico\'].\" AND id_liquidacion=0\n        \");\n    }\n    PCO_CargarFormulario(14);\n}\n\nif($PCO_Accion == \"VENTAS_verLiquidacion\") {\n    $liq = PCO_EjecutarSQL(\"\n        SELECT l.*, m.nombre_completo, m.cedula, m.telefono, m.direccion, m.correo,\n            CONCAT(\'$\',FORMAT((l.valor_venta + l.valor_novedad_abonar - l.valor_novedad_debitar - l.seguridad_social),2,\'de_DE\')) total\n        FROM app_liquidacion_mecanicos_enc l,app_mecanicos m \n        WHERE l.id_mecanico = m.id AND l.id=\'$PCO_Valor\'\n    \")->fetch();\n\n    $ventas = PCO_EjecutarSQL(\"\n        SELECT *\n        FROM app_ventas\n        WHERE id_liquidacion=\".$liq[\'id\'].\"\n    \")->fetchAll();\n\n    $novedades = PCO_EjecutarSQL(\"\n        SELECT *\n        FROM app_novedades_mecanicos\n        WHERE id_liquidacion=\".$liq[\'id\'].\"\n    \")->fetchAll();\n    \n    include \'liquidacion_mecanicos.php\';\n}','A'),(1019,'mod/app_ventas/index.php','2025-01-31 14:21:00','rafael',247,11042,'<?php\n\nfunction calcularTotalVenta($id, $returnArr = \"\") {\n    $venta = PCO_EjecutarSQL(\"\n        SELECT SUM(precio * cantidad) as total, SUM(precio * iva/100) iva\n        FROM app_ventas_detalle\n        WHERE id_venta = \'$id\' GROUP BY id_venta\n    \")->fetch();\n    $ventaMecanico = PCO_EjecutarSQL(\"\n        SELECT TRUNCATE(SUM(vd.precio * vd.cantidad * p.porcentaje_mecanico/100), 2)\n        FROM app_ventas_detalle vd, app_ventas v, app_productos p\n        WHERE vd.id_venta=v.id AND vd.id_producto=p.id AND  vd.id_venta = \'$id\' AND v.id_mecanico <> 0 GROUP BY vd.id_venta\n    \")->fetchColumn();\n    $total = $venta[\"total\"] ? $venta[\"total\"] : 0;\n    $iva = $venta[\"iva\"] ? $venta[\"iva\"] : 0;\n    PCO_EjecutarSQLUnaria(\"UPDATE app_ventas SET total = $total, iva = $iva, total_mecanico=\'$ventaMecanico\' WHERE id = $id \");\n    if($returnArr)\n        return $venta;\n    return \'\"total\": \' . $total . \', \"iva\": \' . $iva;\n}\n\nif($PCO_Accion == \"VENTA_ingresarRealizarVenta\") {\n    $ventaAbierta = PCO_EjecutarSQL(\"\n        SELECT id, id_cliente, total, iva, placa\n        FROM app_ventas\n        WHERE id=\'$PCO_Valor\'\n    \")->fetch();\n\n    $id_venta = $ventaAbierta[\"id\"] || \"\";\n    if($id_venta) {\n        $total = number_format($ventaAbierta[\"total\"], 2);\n        $iva = number_format($ventaAbierta[\"iva\"], 2);\n        $id_cliente = $ventaAbierta[\"id_cliente\"];\n    }\n\n    PCO_CargarFormulario(8, 1, \"id\", $id_venta);\n}\n\nif($PCO_Accion == \"VENTA_agregarProductoCrearOC\") {\n        //crear cliente en caso de que no llegue id_cliente\n        if(!$id_cliente) {\n            PCO_EjecutarSQLUnaria(\"INSERT INTO app_clientes (nombre_completo, numero_documento, telefono) VALUES (?,?,?) \",\n                \"$nombre_completo$_SeparadorCampos_$numero_documento$_SeparadorCampos_$telefono\"\n            );\n            // $id_cliente = PCO_ObtenerUltimoIDInsertado();\n            $id_cliente = PCO_EjecutarSQL(\"\n                SELECT id\n                FROM app_clientes\n                WHERE numero_documento=\'$numero_documento\' AND telefono=\'$telefono\' AND \'$nombre_completo\'\n            \")->fetchColumn();\n        }\n        $todayMysql = date(\"Y-m-d H:i:s\");\n        PCO_EjecutarSQLUnaria(\"INSERT INTO app_ventas (id_cliente, usuario, fecha, placa, id_mecanico, tipo_venta) VALUES (?,?,?,?,?,?) \", \"$id_cliente$_SeparadorCampos_$PCOSESS_LoginUsuario$_SeparadorCampos_$todayMysql$_SeparadorCampos_$placa$_SeparadorCampos_$id_mecanico$_SeparadorCampos_$tipo_venta\");\n        $id = PCO_EjecutarSQL(\"\n            SELECT id\n            FROM app_ventas\n            WHERE fecha=\'$todayMysql\' AND usuario=\'$PCOSESS_LoginUsuario\' AND id_cliente = \'$id_cliente\'\n        \")->fetchColumn();\n        // $id = PCO_ObtenerUltimoIDInsertado();\n\n    $producto = PCO_EjecutarSQL(\"\n        SELECT id, precio_venta, iva, inventario\n        FROM app_productos\n        WHERE id = \'$id_producto\'\n    \")->fetch();\n    if($producto[\"id\"]) {\n        $existe = PCO_EjecutarSQL(\"\n            SELECT count(id)\n            FROM app_ventas_detalle\n            WHERE id_venta = $id AND id_producto = \'$id_producto\'\n        \")->fetchColumn();\n        if($existe > 0) {\n            print_r(\'{\"success\": false, \"msg\": \"El producto ya se ha ingresado\"}\');\n            die();\n        }\n        /* if($producto[\"inventario\"] < $cantidad) {\n            print_r(\'{\"success\": false, \"msg\": \"La cantidad digitada supera la del invetario\"}\');\n            die();\n        } */\n        // $inventarioNew = $producto[\"inventario\"] - $cantidad;\n        // PCO_EjecutarSQLUnaria(\"UPDATE app_productos SET inventario = $inventarioNew WHERE id = \" . $producto[\"id\"]);\n        PCO_EjecutarSQLUnaria(\"INSERT INTO app_ventas_detalle (id_venta, id_producto, cantidad, precio, iva, hora_inicio, hora_fin, guaje) VALUES (?,?,?,?,?,?,?,?) \", \n            \"$id$_SeparadorCampos_$id_producto$_SeparadorCampos_$cantidad$_SeparadorCampos_$precio$_SeparadorCampos_\" . $producto[\"iva\"].\"$_SeparadorCampos_$hora_inicio$_SeparadorCampos_$hora_fin$_SeparadorCampos_$guaje\");\n        calcularTotalVenta($id);\n        \n        /* $total = number_format($result[\"total\"], 2);\n        $iva = number_format($result[\"iva\"], 2); */\n\n        echo \'<script type=\"text/javascript\">\n        	document.FRMBASEINFORME.PCO_Accion.value=\"PCO_CargarObjeto\";\n        	document.FRMBASEINFORME.PCO_Objeto.value=\"frm:8:1:id:\'.$id.\'\";\n        	document.FRMBASEINFORME.Precarga_EstilosBS.value=\"1\";\n        	document.FRMBASEINFORME.Presentar_FullScreen.value=\"0\";\n        	document.FRMBASEINFORME.target=\"_self\";\n        	document.FRMBASEINFORME.submit();\n    	 </script>\';\n    }\n}\n\nif($PCO_Accion == \"VENTA_agregarProducto\") {\n    $producto = PCO_EjecutarSQL(\"\n        SELECT id, precio_venta, iva\n        FROM app_productos\n        WHERE id = \'$id_producto\'\n    \")->fetch();\n    if($producto[\"id\"]) {\n        $existe = PCO_EjecutarSQL(\"\n            SELECT count(id)\n            FROM app_ventas_detalle\n            WHERE id_venta = $id AND id_producto = \'$id_producto\'\n        \")->fetchColumn();\n        if($existe > 0) {\n            print_r(\'{\"success\": false, \"msg\": \"El producto ya se ha ingresado\"}\');\n            die();\n        }\n        /* if($producto[\"inventario\"] < $cantidad) {\n            print_r(\'{\"success\": false, \"msg\": \"La cantidad digitada supera la del invetario\"}\');\n            die();\n        } */\n        // $inventarioNew = $producto[\"inventario\"] - $cantidad;\n        // PCO_EjecutarSQLUnaria(\"UPDATE app_productos SET inventario = $inventarioNew WHERE id = \" . $producto[\"id\"]);\n        PCO_EjecutarSQLUnaria(\"INSERT INTO app_ventas_detalle (id_venta, id_producto, cantidad, precio, iva, hora_inicio, hora_fin, guaje) VALUES (?,?,?,?,?,?,?,?) \", \n            \"$id$_SeparadorCampos_$id_producto$_SeparadorCampos_$cantidad$_SeparadorCampos_$precioVenta$_SeparadorCampos_\" . $producto[\"iva\"].\"$_SeparadorCampos$hora_inicio$_SeparadorCampos$hora_fin$_SeparadorCampos$guaje\");\n        $result = calcularTotalVenta($id);\n        print_r(\'{\"success\": true, \"id\": \' . $id . \', \' . $result . \'}\');\n        die();\n    }\n    print_r(\'{\"success\": false, \"msg\": \"No se ha encontrado el producto seleccionado\"}\');\n    die();\n}\n\nif($PCO_Accion == \"VENTA_consultarTotalVenta\") {\n    if($id) {\n        $result = calcularTotalVenta($id);\n        print_r(\'{\"success\": true, \"id\": \' . $id . \', \' . $result . \'}\');\n        die();\n    }\n    print_r(\'{\"success\": false, \"msg\": \"No se encontro la venta\"}\');\n    die();\n}\n\nif($PCO_Accion == \"VENTA_eliminarProducto\") {\n\n    if($id_venta_detalle && $id_venta) {\n        $producto = PCO_EjecutarSQL(\"\n            SELECT p.inventario, vd.cantidad, p.id\n            FROM app_ventas_detalle vd, app_productos p\n            WHERE vd.id_producto = p.id AND vd.id = \'$id_venta_detalle\'\n        \")->fetch();\n        //Restablecemos el inventario\n        $inventarioNew = $producto[\"inventario\"] + $producto[\"cantidad\"];\n        PCO_EjecutarSQLUnaria(\"UPDATE app_productos SET inventario = $inventarioNew WHERE id = \" . $producto[\"id\"]);\n        PCO_EjecutarSQLUnaria(\"DELETE FROM app_ventas_detalle WHERE id_venta = $id_venta AND id = $id_venta_detalle\");\n        $result = calcularTotalVenta($id_venta);\n        print_r(\'{\"success\": true, \"msg\": \"Se ha eliminado el producto exitosamente\", \' . $result . \'}\');\n        die();\n    }\n    print_r(\'{\"success\": false, \"msg\": \"No se pudo eliminar el producto\"}\');\n    die();\n}\n\nif($PCO_Accion == \"VENTA_actualizarProductoVenta\") {\n    if($id) {\n        PCO_EjecutarSQLUnaria(\"UPDATE app_ventas_detalle SET cantidad=\'$cantidad\', precio=\'$precio\' WHERE id = \'$id\'\");\n        echo 1;\n        die();\n    }\n    echo 0;\n    die();\n}\n\nif($PCO_Accion == \"VENTA_imprimirFactura\") {\n    if($PCO_Valor)\n        $id = $PCO_Valor;\n    if($id) {\n        include_once \"imprimirFactura.php\";\n    }\n}\n\nif($PCO_Accion == \"VENTA_generarLiquidacionMecanicos\") {\n    $ventas = PCO_EjecutarSQL(\"\n        SELECT v.id, v.id_mecanico, SUM(v.total_mecanico) as Total, m.seguridad_social\n        FROM app_mecanicos m,app_ventas v\n        WHERE m.id = v.id_mecanico AND v.fecha >= \'$fecha_inicio 00:00:00\' AND v.fecha <= \'$fecha_fin 23:59:59\' AND v.estado = 1 AND id_mecanico <> 0 AND id_liquidacion=0\n        GROUP BY v.id_mecanico\n    \")->fetchAll();\n    foreach ($ventas as $venta) {\n        $valor_novedad = PCO_EjecutarSQL(\"\n            SELECT  \n                SUM(case when tipo_novedad=\'Abonar\' then valor_novedad else 0 end) as abonar,\n                SUM(case when tipo_novedad=\'Debitar\' then valor_novedad else 0 end) as debitar\n            FROM app_novedades_mecanicos\n            WHERE fecha >= \'$fecha_inicio\' AND fecha <= \'$fecha_fin\'\n                AND id_mecanico=\'\".$venta[\'id_mecanico\'].\"\' AND id_liquidacion=0\n            GROUP BY id_mecanico\n        \")->fetch();\n\n        PCO_EjecutarSQLUnaria(\"\n            INSERT INTO app_liquidacion_mecanicos_enc (id_mecanico, fecha_inicio, fecha_fin, fecha, valor_venta, valor_novedad_abonar, valor_novedad_debitar, seguridad_social, usuario) VALUES (?,?,?,?,?,?,?,?,?) \",\n            $venta[\"id_mecanico\"].\"$_SeparadorCampos_$fecha_inicio$_SeparadorCampos_$fecha_fin$_SeparadorCampos_$PCO_FechaOperacionGuiones$_SeparadorCampos_\".$venta[\"Total\"].\"$_SeparadorCampos_\".$valor_novedad[\'abonar\'].\"$_SeparadorCampos_\".$valor_novedad[\'debitar\'].\"$_SeparadorCampos_\".$venta[\"seguridad_social\"].\"$_SeparadorCampos_$PCOSESS_LoginUsuario\"\n        );\n        \n        $idLiq = PCO_EjecutarSQL(\"\n            SELECT id\n            FROM app_novedades_mecanicos\n            WHERE id_mecanico=\'\".$venta[\'id_mecanico\'].\"\' AND fecha=\'$PCO_FechaOperacionGuiones\'\n            ORDER BY id desc LIMIT 1\n        \")->fetchColumn();\n\n        PCO_EjecutarSQLUnaria(\"\n            UPDATE app_novedades_mecanicos \n            SET id_liquidacion=\'$idLiq\'\n            WHERE \n                fecha >= \'$fecha_inicio\' AND fecha <= \'$fecha_fin\' AND id_mecanico=\'\".$venta[\'id_mecanico\'].\"\' AND id_liquidacion=0\n        \");\n        \n        PCO_EjecutarSQLUnaria(\"\n            UPDATE app_ventas \n            SET id_liquidacion=\'$idLiq\'\n            WHERE app_ventas.fecha >= \'$fecha_inicio 00:00:00\' AND app_ventas.fecha <= \'$fecha_fin 23:59:59\' AND app_ventas.estado = 1 AND id_mecanico=\'\".$venta[\'id_mecanico\'].\" AND id_liquidacion=0\n        \");\n    }\n    PCO_CargarFormulario(14);\n}\n\nif($PCO_Accion == \"VENTAS_verLiquidacion\") {\n    $liq = PCO_EjecutarSQL(\"\n        SELECT l.*, m.nombre_completo, m.cedula, m.telefono, m.direccion, m.correo,\n            CONCAT(\'$\',FORMAT((l.valor_venta + l.valor_novedad_abonar - l.valor_novedad_debitar - l.seguridad_social),2,\'de_DE\')) total\n        FROM app_liquidacion_mecanicos_enc l,app_mecanicos m \n        WHERE l.id_mecanico = m.id AND l.id=\'$PCO_Valor\'\n    \")->fetch();\n\n    $ventas = PCO_EjecutarSQL(\"\n        SELECT *\n        FROM app_ventas\n        WHERE id_liquidacion=\".$liq[\'id\'].\"\n    \")->fetchAll();\n\n    $novedades = PCO_EjecutarSQL(\"\n        SELECT *\n        FROM app_novedades_mecanicos\n        WHERE id_liquidacion=\".$liq[\'id\'].\"\n    \")->fetchAll();\n    \n    include \'liquidacion_mecanicos.php\';\n}','A'),(1020,'mod/app_ventas/index.php','2025-01-31 14:27:00','rafael',247,11042,'<?php\n\nfunction calcularTotalVenta($id, $returnArr = \"\") {\n    $venta = PCO_EjecutarSQL(\"\n        SELECT SUM(precio * cantidad) as total, SUM(precio * iva/100) iva\n        FROM app_ventas_detalle\n        WHERE id_venta = \'$id\' GROUP BY id_venta\n    \")->fetch();\n    $ventaMecanico = PCO_EjecutarSQL(\"\n        SELECT TRUNCATE(SUM(vd.precio * vd.cantidad * p.porcentaje_mecanico/100), 2)\n        FROM app_ventas_detalle vd, app_ventas v, app_productos p\n        WHERE vd.id_venta=v.id AND vd.id_producto=p.id AND  vd.id_venta = \'$id\' AND v.id_mecanico <> 0 GROUP BY vd.id_venta\n    \")->fetchColumn();\n    $total = $venta[\"total\"] ? $venta[\"total\"] : 0;\n    $iva = $venta[\"iva\"] ? $venta[\"iva\"] : 0;\n    PCO_EjecutarSQLUnaria(\"UPDATE app_ventas SET total = $total, iva = $iva, total_mecanico=\'$ventaMecanico\' WHERE id = $id \");\n    if($returnArr)\n        return $venta;\n    return \'\"total\": \' . $total . \', \"iva\": \' . $iva;\n}\n\nif($PCO_Accion == \"VENTA_ingresarRealizarVenta\") {\n    $ventaAbierta = PCO_EjecutarSQL(\"\n        SELECT id, id_cliente, total, iva, placa\n        FROM app_ventas\n        WHERE id=\'$PCO_Valor\'\n    \")->fetch();\n\n    $id_venta = $ventaAbierta[\"id\"] || \"\";\n    if($id_venta) {\n        $total = number_format($ventaAbierta[\"total\"], 2);\n        $iva = number_format($ventaAbierta[\"iva\"], 2);\n        $id_cliente = $ventaAbierta[\"id_cliente\"];\n    }\n\n    PCO_CargarFormulario(8, 1, \"id\", $id_venta);\n}\n\nif($PCO_Accion == \"VENTA_agregarProductoCrearOC\") {\n        //crear cliente en caso de que no llegue id_cliente\n        if(!$id_cliente) {\n            PCO_EjecutarSQLUnaria(\"INSERT INTO app_clientes (nombre_completo, numero_documento, telefono) VALUES (?,?,?) \",\n                \"$nombre_completo$_SeparadorCampos_$numero_documento$_SeparadorCampos_$telefono\"\n            );\n            // $id_cliente = PCO_ObtenerUltimoIDInsertado();\n            $id_cliente = PCO_EjecutarSQL(\"\n                SELECT id\n                FROM app_clientes\n                WHERE numero_documento=\'$numero_documento\' AND telefono=\'$telefono\' AND \'$nombre_completo\'\n            \")->fetchColumn();\n        }\n        $todayMysql = date(\"Y-m-d H:i:s\");\n        PCO_EjecutarSQLUnaria(\"INSERT INTO app_ventas (id_cliente, usuario, fecha, placa, id_mecanico, tipo_venta) VALUES (?,?,?,?,?,?) \", \"$id_cliente$_SeparadorCampos_$PCOSESS_LoginUsuario$_SeparadorCampos_$todayMysql$_SeparadorCampos_$placa$_SeparadorCampos_$id_mecanico$_SeparadorCampos_$tipo_venta\");\n        $id = PCO_EjecutarSQL(\"\n            SELECT id\n            FROM app_ventas\n            WHERE fecha=\'$todayMysql\' AND usuario=\'$PCOSESS_LoginUsuario\' AND id_cliente = \'$id_cliente\'\n        \")->fetchColumn();\n        // $id = PCO_ObtenerUltimoIDInsertado();\n\n    $producto = PCO_EjecutarSQL(\"\n        SELECT id, precio_venta, iva, inventario\n        FROM app_productos\n        WHERE id = \'$id_producto\'\n    \")->fetch();\n    if($producto[\"id\"]) {\n        $existe = PCO_EjecutarSQL(\"\n            SELECT count(id)\n            FROM app_ventas_detalle\n            WHERE id_venta = $id AND id_producto = \'$id_producto\'\n        \")->fetchColumn();\n        if($existe > 0) {\n            print_r(\'{\"success\": false, \"msg\": \"El producto ya se ha ingresado\"}\');\n            die();\n        }\n        /* if($producto[\"inventario\"] < $cantidad) {\n            print_r(\'{\"success\": false, \"msg\": \"La cantidad digitada supera la del invetario\"}\');\n            die();\n        } */\n        // $inventarioNew = $producto[\"inventario\"] - $cantidad;\n        // PCO_EjecutarSQLUnaria(\"UPDATE app_productos SET inventario = $inventarioNew WHERE id = \" . $producto[\"id\"]);\n        PCO_EjecutarSQLUnaria(\"INSERT INTO app_ventas_detalle (id_venta, id_producto, cantidad, precio, iva, hora_inicio, hora_fin, guaje) VALUES (?,?,?,?,?,?,?,?) \", \n            \"$id$_SeparadorCampos_$id_producto$_SeparadorCampos_$cantidad$_SeparadorCampos_$precio$_SeparadorCampos_\" . $producto[\"iva\"].\"$_SeparadorCampos_$hora_inicio$_SeparadorCampos_$hora_fin$_SeparadorCampos_$guaje\");\n        calcularTotalVenta($id);\n        \n        /* $total = number_format($result[\"total\"], 2);\n        $iva = number_format($result[\"iva\"], 2); */\n\n        echo \'<script type=\"text/javascript\">\n        	document.FRMBASEINFORME.PCO_Accion.value=\"PCO_CargarObjeto\";\n        	document.FRMBASEINFORME.PCO_Objeto.value=\"frm:8:1:id:\'.$id.\'\";\n        	document.FRMBASEINFORME.Precarga_EstilosBS.value=\"1\";\n        	document.FRMBASEINFORME.Presentar_FullScreen.value=\"0\";\n        	document.FRMBASEINFORME.target=\"_self\";\n        	document.FRMBASEINFORME.submit();\n    	 </script>\';\n    }\n}\n\nif($PCO_Accion == \"VENTA_agregarProducto\") {\n    $producto = PCO_EjecutarSQL(\"\n        SELECT id, precio_venta, iva\n        FROM app_productos\n        WHERE id = \'$id_producto\'\n    \")->fetch();\n    if($producto[\"id\"]) {\n        $existe = PCO_EjecutarSQL(\"\n            SELECT count(id)\n            FROM app_ventas_detalle\n            WHERE id_venta = $id AND id_producto = \'$id_producto\'\n        \")->fetchColumn();\n        if($existe > 0) {\n            print_r(\'{\"success\": false, \"msg\": \"El producto ya se ha ingresado\"}\');\n            die();\n        }\n        /* if($producto[\"inventario\"] < $cantidad) {\n            print_r(\'{\"success\": false, \"msg\": \"La cantidad digitada supera la del invetario\"}\');\n            die();\n        } */\n        // $inventarioNew = $producto[\"inventario\"] - $cantidad;\n        // PCO_EjecutarSQLUnaria(\"UPDATE app_productos SET inventario = $inventarioNew WHERE id = \" . $producto[\"id\"]);\n        PCO_EjecutarSQLUnaria(\"INSERT INTO app_ventas_detalle (id_venta, id_producto, cantidad, precio, iva, hora_inicio, hora_fin, guaje) VALUES (?,?,?,?,?,?,?,?) \", \n            \"$id$_SeparadorCampos_$id_producto$_SeparadorCampos_$cantidad$_SeparadorCampos_$precioVenta$_SeparadorCampos_\" . $producto[\"iva\"].\"$_SeparadorCampos$hora_inicio$_SeparadorCampos$hora_fin$_SeparadorCampos$guaje\");\n        $result = calcularTotalVenta($id);\n        print_r(\'{\"success\": true, \"id\": \' . $id . \', \' . $result . \'}\');\n        die();\n    }\n    print_r(\'{\"success\": false, \"msg\": \"No se ha encontrado el producto seleccionado\"}\');\n    die();\n}\n\nif($PCO_Accion == \"VENTA_consultarTotalVenta\") {\n    if($id) {\n        $result = calcularTotalVenta($id);\n        print_r(\'{\"success\": true, \"id\": \' . $id . \', \' . $result . \'}\');\n        die();\n    }\n    print_r(\'{\"success\": false, \"msg\": \"No se encontro la venta\"}\');\n    die();\n}\n\nif($PCO_Accion == \"VENTA_eliminarProducto\") {\n\n    if($id_venta_detalle && $id_venta) {\n        $producto = PCO_EjecutarSQL(\"\n            SELECT p.inventario, vd.cantidad, p.id\n            FROM app_ventas_detalle vd, app_productos p\n            WHERE vd.id_producto = p.id AND vd.id = \'$id_venta_detalle\'\n        \")->fetch();\n        //Restablecemos el inventario\n        $inventarioNew = $producto[\"inventario\"] + $producto[\"cantidad\"];\n        PCO_EjecutarSQLUnaria(\"UPDATE app_productos SET inventario = $inventarioNew WHERE id = \" . $producto[\"id\"]);\n        PCO_EjecutarSQLUnaria(\"DELETE FROM app_ventas_detalle WHERE id_venta = $id_venta AND id = $id_venta_detalle\");\n        $result = calcularTotalVenta($id_venta);\n        print_r(\'{\"success\": true, \"msg\": \"Se ha eliminado el producto exitosamente\", \' . $result . \'}\');\n        die();\n    }\n    print_r(\'{\"success\": false, \"msg\": \"No se pudo eliminar el producto\"}\');\n    die();\n}\n\nif($PCO_Accion == \"VENTA_actualizarProductoVenta\") {\n    if($id) {\n        PCO_EjecutarSQLUnaria(\"UPDATE app_ventas_detalle SET cantidad=\'$cantidad\', precio=\'$precio\' WHERE id = \'$id\'\");\n        echo 1;\n        die();\n    }\n    echo 0;\n    die();\n}\n\nif($PCO_Accion == \"VENTA_imprimirFactura\") {\n    if($PCO_Valor)\n        $id = $PCO_Valor;\n    if($id) {\n        include_once \"imprimirFactura.php\";\n    }\n}\n\nif($PCO_Accion == \"VENTA_generarLiquidacionMecanicos\") {\n    $ventas = PCO_EjecutarSQL(\"\n        SELECT v.id, v.id_mecanico, SUM(v.total_mecanico) as Total, m.seguridad_social\n        FROM app_mecanicos m,app_ventas v\n        WHERE m.id = v.id_mecanico AND v.fecha >= \'$fecha_inicio 00:00:00\' AND v.fecha <= \'$fecha_fin 23:59:59\' AND v.estado = 1 AND id_mecanico <> 0 AND id_liquidacion=0\n        GROUP BY v.id_mecanico\n    \")->fetchAll();\n    foreach ($ventas as $venta) {\n        $valor_novedad = PCO_EjecutarSQL(\"\n            SELECT  \n                SUM(case when tipo_novedad=\'Abonar\' then valor_novedad else 0 end) as abonar,\n                SUM(case when tipo_novedad=\'Debitar\' then valor_novedad else 0 end) as debitar\n            FROM app_novedades_mecanicos\n            WHERE fecha >= \'$fecha_inicio\' AND fecha <= \'$fecha_fin\'\n                AND id_mecanico=\'\".$venta[\'id_mecanico\'].\"\' AND id_liquidacion=0\n            GROUP BY id_mecanico\n        \")->fetch();\n\n        PCO_EjecutarSQLUnaria(\"\n            INSERT INTO app_liquidacion_mecanicos_enc (id_mecanico, fecha_inicio, fecha_fin, fecha, valor_venta, valor_novedad_abonar, valor_novedad_debitar, seguridad_social, usuario) VALUES (?,?,?,?,?,?,?,?,?) \",\n            $venta[\"id_mecanico\"].\"$_SeparadorCampos_$fecha_inicio$_SeparadorCampos_$fecha_fin$_SeparadorCampos_$PCO_FechaOperacionGuiones$_SeparadorCampos_\".$venta[\"Total\"].\"$_SeparadorCampos_\".$valor_novedad[\'abonar\'].\"$_SeparadorCampos_\".$valor_novedad[\'debitar\'].\"$_SeparadorCampos_\".$venta[\"seguridad_social\"].\"$_SeparadorCampos_$PCOSESS_LoginUsuario\"\n        );\n        \n        $idLiq = PCO_EjecutarSQL(\"\n            SELECT id\n            FROM app_novedades_mecanicos\n            WHERE id_mecanico=\'\".$venta[\'id_mecanico\'].\"\' AND fecha=\'$PCO_FechaOperacionGuiones\'\n            ORDER BY id desc LIMIT 1\n        \")->fetchColumn();\n\n        PCO_EjecutarSQLUnaria(\"\n            UPDATE app_novedades_mecanicos \n            SET id_liquidacion=\'$idLiq\'\n            WHERE \n                fecha >= \'$fecha_inicio\' AND fecha <= \'$fecha_fin\' AND id_mecanico=\'\".$venta[\'id_mecanico\'].\"\' AND id_liquidacion=0\n        \");\n        \n        PCO_EjecutarSQLUnaria(\"\n            UPDATE app_ventas \n            SET id_liquidacion=\'$idLiq\'\n            WHERE app_ventas.fecha >= \'$fecha_inicio 00:00:00\' AND app_ventas.fecha <= \'$fecha_fin 23:59:59\' AND app_ventas.estado = 1 AND id_mecanico=\'\".$venta[\'id_mecanico\'].\" AND id_liquidacion=0\n        \");\n    }\n    PCO_CargarFormulario(14);\n}\n\nif($PCO_Accion == \"VENTAS_verLiquidacion\") {\n    $liq = PCO_EjecutarSQL(\"\n        SELECT l.*, m.nombre_completo, m.cedula, m.telefono, m.direccion, m.correo,\n            CONCAT(\'$\',FORMAT((l.valor_venta + l.valor_novedad_abonar - l.valor_novedad_debitar - l.seguridad_social),2,\'de_DE\')) total\n        FROM app_liquidacion_mecanicos_enc l,app_mecanicos m \n        WHERE l.id_mecanico = m.id AND l.id=\'$PCO_Valor\'\n    \")->fetch();\n\n    $ventas = PCO_EjecutarSQL(\"\n        SELECT *\n        FROM app_ventas\n        WHERE id_liquidacion=\".$liq[\'id\'].\"\n    \")->fetchAll();\n\n    $novedades = PCO_EjecutarSQL(\"\n        SELECT *\n        FROM app_novedades_mecanicos\n        WHERE id_liquidacion=\".$liq[\'id\'].\"\n    \")->fetchAll();\n    \n    include \'liquidacion_mecanicos.php\';\n}','A'),(1021,'core_formulario[14].javascript','2025-01-31 17:30:00','rafael',112,4499,'const { \n    fecha_inicio, fecha_fin, fecha_inicio_liq, fecha_fin_liq\n} = document.datos;\n\nfunction FrmAutoRun()\n    {\n        //Aqui sus instrucciones\n    }\n\nfunction Aplicar_data_table(inf)\n{\n    //$(\'#PCO_Modal_MensajeCuerpo\').html(informe_listado_asistentes_de_actividad);\n    table=$(\'#TablaInforme_\'+inf).dataTable({\n        aLengthMenu: [[5, 10, 25, 50, -1], [5, 10, 25, 50, \"All\"]],\n        scrollX: true,\n        scrollY: true,\n        scrollCollapse: true,\n        bAutoWidth: true,\n        processing: true,\n        colReorder: true,\n        fnInitComplete: function() {\n            this.fnAdjustColumnSizing(true);\n        },\n        language: {\n            lengthMenu: \"Mostrando _MENU_ resultados por página\",\n            zeroRecords: \"Nothing found - sorry\",\n            info: \"Viendo página _PAGE_ de _PAGES_\",\n            infoEmpty: \"No hay registros disponibles\",\n            infoFiltered: \"(Filtrado de _MAX_ registros en total)\",\n            oPaginate: { sFirst:\"Primero\",sLast:\"Ultimo\",sNext:\"Siguiente\",sPrevious:\"Previo\" },\n            sEmptyTable:\"No hay datos en la tabla\",\n            sSearch:\"Buscar:\",\n            sLoadingRecords:\"Cargando...\",\n            sProcessing:\"Procesando...\",\n            sZeroRecords:\"No hay registros que coincidan con el criterio de búsqueda\"\n        }\n    });\n    $(\'#container\').css( \'display\', \'block\' );\n    table.columns.adjust().draw();\n    table.fnAdjustColumnSizing();\n}\n\nfunction generarInformePrevisualizar() {\n    const fechaMaxima = moment(fecha_fin.value, \'YYYY-MM-DD\')\n    .endOf(\'day\')\n    .toISOString();\n    if(fecha_inicio.value && fecha_fin.value)\n        $(\'#informePrevisualizar\').html(\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:21:0&fechaInicio=\'+fecha_inicio.value+\'&fechaFin=\' + fechaMaxima) +\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:31:0&fechaInicio=\'+fecha_inicio.value+\'&fechaFin=\' + fechaMaxima)\n        );\n}\n\nfunction getLiquidacion() {\n    /* const fechaMaxima = moment(fecha_fin_liq.value, \'YYYY-MM-DD\')\n    .endOf(\'day\')\n    .toISOString(); */\n    console.log(fecha_inicio_liq.value, fecha_fin_liq.value);\n    if(fecha_inicio_liq.value && fecha_fin_liq.value)\n        $(\'#informeLiquidaciones\').html(\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:35:0&fechaInicio=\'+fecha_inicio_liq.value+\'&fechaFin=\' + fecha_fin_liq.value)\n        );\n}\n\nfunction mostrarMensajePopUp(TituloPopUp, Mensaje) {\n    $(\'#modalMensajeTitulo\').html(TituloPopUp);\n	$(\'#modalMensajeCuerpo\').html(Mensaje);\n\n    //Retira cualquier clase preexistente o remanente de cualquier personalizacion previa y agrega las clases base\n    $(\"#modalMensaje\").removeClass();\n    $( \"#modalMensaje\" ).addClass( \"modal\" );\n    $( \"#modalMensaje\" ).addClass( \"fade\" );\n    $( \"#modalMensaje\" ).addClass( \"oculto_impresion\" );\n\n    //Agrega las clases personalizadas por el usuario\n    /* if (ClasesAdicionales!=\"\")\n        $( \"#modalMensaje\" ).addClass( ClasesAdicionales ); */\n\n	// Se muestra el cuadro modal\n	$(\'#modalMensaje\').modal(\'show\');\n\n	//Hacer que la ventana este siempre por encima\n	$(\"#modalMensaje\").css(\"z-index\", \"1500\");\n	Aplicar_data_table(35);\n}\n\nfunction detallVentMecanic() {\n    const idMecanico = document.FRMBASEINFORME.PCO_Valor.value;\n    const fechaMaxima = moment(fecha_fin.value, \'YYYY-MM-DD\')\n        .endOf(\'day\')\n        .toISOString();\n    const condiciones = \" AND app_ventas.id_mecanico=\"+idMecanico+\" AND app_ventas.fecha>=\'\"+fecha_inicio.value+\"\' AND app_ventas.fecha<=\'\"+fechaMaxima+\"\'\";\n\n    mostrarMensajePopUp(\'Detalle ventas mecánico\', PCO_ObtenerContenidoAjax(0, \'index.php\', \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:23:1\'+\n        \'&condiciones=\'+condiciones\n    ));\n}\n\nfunction generarLiquidacion() {\n    if(!fecha_fin.value || !fecha_inicio.value) {\n        PCOJS_MostrarMensaje(\"Aviso del sistema\", \"Debes seleccionar un rango de fecha para generar la liquidación\");\n        return;\n    }\n    document.datos.PCO_Accion.value = \'VENTA_generarLiquidacionMecanicos\';\n    document.datos.Precarga_EstilosBS.value = 1;\n    document.datos.Presentar_FullScreen.value = 0;\n    document.datos.target = \'_self\';\n	document.datos.submit();\n}','B'),(1022,'core_formulario[14].javascript','2025-01-31 17:30:00','rafael',112,4499,'const { \n    fecha_inicio, fecha_fin, fecha_inicio_liq, fecha_fin_liq\n} = document.datos;\n\nfunction FrmAutoRun()\n    {\n        //Aqui sus instrucciones\n    }\n\nfunction Aplicar_data_table(inf)\n{\n    //$(\'#PCO_Modal_MensajeCuerpo\').html(informe_listado_asistentes_de_actividad);\n    table=$(\'#TablaInforme_\'+inf).dataTable({\n        aLengthMenu: [[5, 10, 25, 50, -1], [5, 10, 25, 50, \"All\"]],\n        scrollX: true,\n        scrollY: true,\n        scrollCollapse: true,\n        bAutoWidth: true,\n        processing: true,\n        colReorder: true,\n        fnInitComplete: function() {\n            this.fnAdjustColumnSizing(true);\n        },\n        language: {\n            lengthMenu: \"Mostrando _MENU_ resultados por página\",\n            zeroRecords: \"Nothing found - sorry\",\n            info: \"Viendo página _PAGE_ de _PAGES_\",\n            infoEmpty: \"No hay registros disponibles\",\n            infoFiltered: \"(Filtrado de _MAX_ registros en total)\",\n            oPaginate: { sFirst:\"Primero\",sLast:\"Ultimo\",sNext:\"Siguiente\",sPrevious:\"Previo\" },\n            sEmptyTable:\"No hay datos en la tabla\",\n            sSearch:\"Buscar:\",\n            sLoadingRecords:\"Cargando...\",\n            sProcessing:\"Procesando...\",\n            sZeroRecords:\"No hay registros que coincidan con el criterio de búsqueda\"\n        }\n    });\n    $(\'#container\').css( \'display\', \'block\' );\n    table.columns.adjust().draw();\n    table.fnAdjustColumnSizing();\n}\n\nfunction generarInformePrevisualizar() {\n    const fechaMaxima = moment(fecha_fin.value, \'YYYY-MM-DD\')\n    .endOf(\'day\')\n    .toISOString();\n    if(fecha_inicio.value && fecha_fin.value)\n        $(\'#informePrevisualizar\').html(\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:21:0&fechaInicio=\'+fecha_inicio.value+\'&fechaFin=\' + fechaMaxima) +\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:31:0&fechaInicio=\'+fecha_inicio.value+\'&fechaFin=\' + fechaMaxima)\n        );\n}\n\nfunction getLiquidacion() {\n    /* const fechaMaxima = moment(fecha_fin_liq.value, \'YYYY-MM-DD\')\n    .endOf(\'day\')\n    .toISOString(); */\n    console.log(fecha_inicio_liq.value, fecha_fin_liq.value);\n    if(fecha_inicio_liq.value && fecha_fin_liq.value)\n        $(\'#informeLiquidaciones\').html(\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:35:0&fechaInicio=\'+fecha_inicio_liq.value+\'&fechaFin=\' + fecha_fin_liq.value)\n        );\n}\n\nfunction mostrarMensajePopUp(TituloPopUp, Mensaje) {\n    $(\'#modalMensajeTitulo\').html(TituloPopUp);\n	$(\'#modalMensajeCuerpo\').html(Mensaje);\n\n    //Retira cualquier clase preexistente o remanente de cualquier personalizacion previa y agrega las clases base\n    $(\"#modalMensaje\").removeClass();\n    $( \"#modalMensaje\" ).addClass( \"modal\" );\n    $( \"#modalMensaje\" ).addClass( \"fade\" );\n    $( \"#modalMensaje\" ).addClass( \"oculto_impresion\" );\n\n    //Agrega las clases personalizadas por el usuario\n    /* if (ClasesAdicionales!=\"\")\n        $( \"#modalMensaje\" ).addClass( ClasesAdicionales ); */\n\n	// Se muestra el cuadro modal\n	$(\'#modalMensaje\').modal(\'show\');\n\n	//Hacer que la ventana este siempre por encima\n	$(\"#modalMensaje\").css(\"z-index\", \"1500\");\n	Aplicar_data_table(23);\n}\n\nfunction detallVentMecanic() {\n    const idMecanico = document.FRMBASEINFORME.PCO_Valor.value;\n    const fechaMaxima = moment(fecha_fin.value, \'YYYY-MM-DD\')\n        .endOf(\'day\')\n        .toISOString();\n    const condiciones = \" AND app_ventas.id_mecanico=\"+idMecanico+\" AND app_ventas.fecha>=\'\"+fecha_inicio.value+\"\' AND app_ventas.fecha<=\'\"+fechaMaxima+\"\'\";\n\n    mostrarMensajePopUp(\'Detalle ventas mecánico\', PCO_ObtenerContenidoAjax(0, \'index.php\', \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:23:1\'+\n        \'&condiciones=\'+condiciones\n    ));\n}\n\nfunction generarLiquidacion() {\n    if(!fecha_fin.value || !fecha_inicio.value) {\n        PCOJS_MostrarMensaje(\"Aviso del sistema\", \"Debes seleccionar un rango de fecha para generar la liquidación\");\n        return;\n    }\n    document.datos.PCO_Accion.value = \'VENTA_generarLiquidacionMecanicos\';\n    document.datos.Precarga_EstilosBS.value = 1;\n    document.datos.Presentar_FullScreen.value = 0;\n    document.datos.target = \'_self\';\n	document.datos.submit();\n}','B'),(1023,'core_formulario[14].javascript','2025-01-31 17:33:00','rafael',113,4544,'const { \n    fecha_inicio, fecha_fin, fecha_inicio_liq, fecha_fin_liq\n} = document.datos;\n\nfunction FrmAutoRun()\n    {\n        //Aqui sus instrucciones\n    }\n\nfunction Aplicar_data_table(inf)\n{\n    //$(\'#PCO_Modal_MensajeCuerpo\').html(informe_listado_asistentes_de_actividad);\n    table=$(\'#TablaInforme_\'+inf).dataTable({\n        aLengthMenu: [[5, 10, 25, 50, -1], [5, 10, 25, 50, \"All\"]],\n        scrollX: true,\n        scrollY: true,\n        scrollCollapse: true,\n        bAutoWidth: true,\n        processing: true,\n        colReorder: true,\n        fnInitComplete: function() {\n            this.fnAdjustColumnSizing(true);\n        },\n        language: {\n            lengthMenu: \"Mostrando _MENU_ resultados por página\",\n            zeroRecords: \"Nothing found - sorry\",\n            info: \"Viendo página _PAGE_ de _PAGES_\",\n            infoEmpty: \"No hay registros disponibles\",\n            infoFiltered: \"(Filtrado de _MAX_ registros en total)\",\n            oPaginate: { sFirst:\"Primero\",sLast:\"Ultimo\",sNext:\"Siguiente\",sPrevious:\"Previo\" },\n            sEmptyTable:\"No hay datos en la tabla\",\n            sSearch:\"Buscar:\",\n            sLoadingRecords:\"Cargando...\",\n            sProcessing:\"Procesando...\",\n            sZeroRecords:\"No hay registros que coincidan con el criterio de búsqueda\"\n        }\n    });\n    $(\'#container\').css( \'display\', \'block\' );\n    table.columns.adjust().draw();\n    table.fnAdjustColumnSizing();\n}\n\nfunction generarInformePrevisualizar() {\n    const fechaMaxima = moment(fecha_fin.value, \'YYYY-MM-DD\')\n    .endOf(\'day\')\n    .toISOString();\n    if(fecha_inicio.value && fecha_fin.value)\n        $(\'#informePrevisualizar\').html(\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:21:0&fechaInicio=\'+fecha_inicio.value+\'&fechaFin=\' + fechaMaxima) +\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:31:0&fechaInicio=\'+fecha_inicio.value+\'&fechaFin=\' + fechaMaxima)\n        );\n}\n\nfunction getLiquidacion() {\n    /* const fechaMaxima = moment(fecha_fin_liq.value, \'YYYY-MM-DD\')\n    .endOf(\'day\')\n    .toISOString(); */\n    console.log(fecha_inicio_liq.value, fecha_fin_liq.value);\n    if(fecha_inicio_liq.value && fecha_fin_liq.value)\n        $(\'#informeLiquidaciones\').html(\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:35:0&fechaInicio=\'+fecha_inicio_liq.value+\'&fechaFin=\' + fecha_fin_liq.value)\n        );\n}\n\nfunction mostrarMensajePopUp(TituloPopUp, Mensaje) {\n    $(\'#modalMensajeTitulo\').html(TituloPopUp);\n	$(\'#modalMensajeCuerpo\').html(Mensaje);\n\n    //Retira cualquier clase preexistente o remanente de cualquier personalizacion previa y agrega las clases base\n    $(\"#modalMensaje\").removeClass();\n    $( \"#modalMensaje\" ).addClass( \"modal\" );\n    $( \"#modalMensaje\" ).addClass( \"fade\" );\n    $( \"#modalMensaje\" ).addClass( \"oculto_impresion\" );\n\n    //Agrega las clases personalizadas por el usuario\n    /* if (ClasesAdicionales!=\"\")\n        $( \"#modalMensaje\" ).addClass( ClasesAdicionales ); */\n\n	// Se muestra el cuadro modal\n	$(\'#modalMensaje\').modal(\'show\');\n\n	//Hacer que la ventana este siempre por encima\n	$(\"#modalMensaje\").css(\"z-index\", \"1500\");\n	Aplicar_data_table(23);\n	$(\'#PCOContenedor_BotonEscritorio\').hide();\n}\n\nfunction detallVentMecanic() {\n    const idMecanico = document.FRMBASEINFORME.PCO_Valor.value;\n    const fechaMaxima = moment(fecha_fin.value, \'YYYY-MM-DD\')\n        .endOf(\'day\')\n        .toISOString();\n    const condiciones = \" AND app_ventas.id_mecanico=\"+idMecanico+\" AND app_ventas.fecha>=\'\"+fecha_inicio.value+\"\' AND app_ventas.fecha<=\'\"+fechaMaxima+\"\'\";\n\n    mostrarMensajePopUp(\'Detalle ventas mecánico\', PCO_ObtenerContenidoAjax(0, \'index.php\', \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:23:1\'+\n        \'&condiciones=\'+condiciones\n    ));\n}\n\nfunction generarLiquidacion() {\n    if(!fecha_fin.value || !fecha_inicio.value) {\n        PCOJS_MostrarMensaje(\"Aviso del sistema\", \"Debes seleccionar un rango de fecha para generar la liquidación\");\n        return;\n    }\n    document.datos.PCO_Accion.value = \'VENTA_generarLiquidacionMecanicos\';\n    document.datos.Precarga_EstilosBS.value = 1;\n    document.datos.Presentar_FullScreen.value = 0;\n    document.datos.target = \'_self\';\n	document.datos.submit();\n}','B'),(1024,'core_formulario[14].javascript','2025-01-31 17:36:00','rafael',113,4566,'const { \n    fecha_inicio, fecha_fin, fecha_inicio_liq, fecha_fin_liq\n} = document.datos;\n\nfunction FrmAutoRun()\n    {\n        //Aqui sus instrucciones\n    }\n\nfunction Aplicar_data_table(inf)\n{\n    //$(\'#PCO_Modal_MensajeCuerpo\').html(informe_listado_asistentes_de_actividad);\n    table=$(\'#TablaInforme_\'+inf).dataTable({\n        aLengthMenu: [[5, 10, 25, 50, -1], [5, 10, 25, 50, \"All\"]],\n        scrollX: true,\n        scrollY: true,\n        scrollCollapse: true,\n        bAutoWidth: true,\n        processing: true,\n        colReorder: true,\n        fnInitComplete: function() {\n            this.fnAdjustColumnSizing(true);\n        },\n        language: {\n            lengthMenu: \"Mostrando _MENU_ resultados por página\",\n            zeroRecords: \"Nothing found - sorry\",\n            info: \"Viendo página _PAGE_ de _PAGES_\",\n            infoEmpty: \"No hay registros disponibles\",\n            infoFiltered: \"(Filtrado de _MAX_ registros en total)\",\n            oPaginate: { sFirst:\"Primero\",sLast:\"Ultimo\",sNext:\"Siguiente\",sPrevious:\"Previo\" },\n            sEmptyTable:\"No hay datos en la tabla\",\n            sSearch:\"Buscar:\",\n            sLoadingRecords:\"Cargando...\",\n            sProcessing:\"Procesando...\",\n            sZeroRecords:\"No hay registros que coincidan con el criterio de búsqueda\"\n        }\n    });\n    $(\'#container\').css( \'display\', \'block\' );\n    table.columns.adjust().draw();\n    table.fnAdjustColumnSizing();\n}\n\nfunction generarInformePrevisualizar() {\n    const fechaMaxima = moment(fecha_fin.value, \'YYYY-MM-DD\')\n    .endOf(\'day\')\n    .toISOString();\n    if(fecha_inicio.value && fecha_fin.value)\n        $(\'#informePrevisualizar\').html(\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:21:0&fechaInicio=\'+fecha_inicio.value+\'&fechaFin=\' + fechaMaxima) +\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:31:0&fechaInicio=\'+fecha_inicio.value+\'&fechaFin=\' + fechaMaxima)\n        );\n}\n\nfunction getLiquidacion() {\n    /* const fechaMaxima = moment(fecha_fin_liq.value, \'YYYY-MM-DD\')\n    .endOf(\'day\')\n    .toISOString(); */\n    console.log(fecha_inicio_liq.value, fecha_fin_liq.value);\n    if(fecha_inicio_liq.value && fecha_fin_liq.value)\n        $(\'#informeLiquidaciones\').html(\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:35:0&fechaInicio=\'+fecha_inicio_liq.value+\'&fechaFin=\' + fecha_fin_liq.value)\n        );\n}\n\nfunction mostrarMensajePopUp(TituloPopUp, Mensaje) {\n    $(\'#modalMensajeTitulo\').html(TituloPopUp);\n	$(\'#modalMensajeCuerpo\').html(Mensaje);\n\n    //Retira cualquier clase preexistente o remanente de cualquier personalizacion previa y agrega las clases base\n    $(\"#modalMensaje\").removeClass();\n    $( \"#modalMensaje\" ).addClass( \"modal fade modal-wide in\" );\n    // $( \"#modalMensaje\" ).addClass( \"fade\" );\n    $( \"#modalMensaje\" ).addClass( \"oculto_impresion\" );\n\n    //Agrega las clases personalizadas por el usuario\n    /* if (ClasesAdicionales!=\"\")\n        $( \"#modalMensaje\" ).addClass( ClasesAdicionales ); */\n\n	// Se muestra el cuadro modal\n	$(\'#modalMensaje\').modal(\'show\');\n\n	//Hacer que la ventana este siempre por encima\n	$(\"#modalMensaje\").css(\"z-index\", \"1500\");\n	Aplicar_data_table(23);\n	$(\'#PCOContenedor_BotonEscritorio\').hide();\n}\n\nfunction detallVentMecanic() {\n    const idMecanico = document.FRMBASEINFORME.PCO_Valor.value;\n    const fechaMaxima = moment(fecha_fin.value, \'YYYY-MM-DD\')\n        .endOf(\'day\')\n        .toISOString();\n    const condiciones = \" AND app_ventas.id_mecanico=\"+idMecanico+\" AND app_ventas.fecha>=\'\"+fecha_inicio.value+\"\' AND app_ventas.fecha<=\'\"+fechaMaxima+\"\'\";\n\n    mostrarMensajePopUp(\'Detalle ventas mecánico\', PCO_ObtenerContenidoAjax(0, \'index.php\', \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:23:1\'+\n        \'&condiciones=\'+condiciones\n    ));\n}\n\nfunction generarLiquidacion() {\n    if(!fecha_fin.value || !fecha_inicio.value) {\n        PCOJS_MostrarMensaje(\"Aviso del sistema\", \"Debes seleccionar un rango de fecha para generar la liquidación\");\n        return;\n    }\n    document.datos.PCO_Accion.value = \'VENTA_generarLiquidacionMecanicos\';\n    document.datos.Precarga_EstilosBS.value = 1;\n    document.datos.Presentar_FullScreen.value = 0;\n    document.datos.target = \'_self\';\n	document.datos.submit();\n}','B'),(1025,'core_formulario[14].javascript','2025-01-31 17:36:00','rafael',114,4615,'const { \n    fecha_inicio, fecha_fin, fecha_inicio_liq, fecha_fin_liq\n} = document.datos;\n\nfunction FrmAutoRun()\n    {\n        //Aqui sus instrucciones\n    }\n\nfunction Aplicar_data_table(inf)\n{\n    //$(\'#PCO_Modal_MensajeCuerpo\').html(informe_listado_asistentes_de_actividad);\n    table=$(\'#TablaInforme_\'+inf).dataTable({\n        aLengthMenu: [[5, 10, 25, 50, -1], [5, 10, 25, 50, \"All\"]],\n        scrollX: true,\n        scrollY: true,\n        scrollCollapse: true,\n        bAutoWidth: true,\n        processing: true,\n        colReorder: true,\n        fnInitComplete: function() {\n            this.fnAdjustColumnSizing(true);\n        },\n        language: {\n            lengthMenu: \"Mostrando _MENU_ resultados por página\",\n            zeroRecords: \"Nothing found - sorry\",\n            info: \"Viendo página _PAGE_ de _PAGES_\",\n            infoEmpty: \"No hay registros disponibles\",\n            infoFiltered: \"(Filtrado de _MAX_ registros en total)\",\n            oPaginate: { sFirst:\"Primero\",sLast:\"Ultimo\",sNext:\"Siguiente\",sPrevious:\"Previo\" },\n            sEmptyTable:\"No hay datos en la tabla\",\n            sSearch:\"Buscar:\",\n            sLoadingRecords:\"Cargando...\",\n            sProcessing:\"Procesando...\",\n            sZeroRecords:\"No hay registros que coincidan con el criterio de búsqueda\"\n        }\n    });\n    $(\'#container\').css( \'display\', \'block\' );\n    table.columns.adjust().draw();\n    table.fnAdjustColumnSizing();\n}\n\nfunction generarInformePrevisualizar() {\n    const fechaMaxima = moment(fecha_fin.value, \'YYYY-MM-DD\')\n    .endOf(\'day\')\n    .toISOString();\n    if(fecha_inicio.value && fecha_fin.value)\n        $(\'#informePrevisualizar\').html(\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:21:0&fechaInicio=\'+fecha_inicio.value+\'&fechaFin=\' + fechaMaxima) +\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:31:0&fechaInicio=\'+fecha_inicio.value+\'&fechaFin=\' + fechaMaxima)\n        );\n}\n\nfunction getLiquidacion() {\n    /* const fechaMaxima = moment(fecha_fin_liq.value, \'YYYY-MM-DD\')\n    .endOf(\'day\')\n    .toISOString(); */\n    console.log(fecha_inicio_liq.value, fecha_fin_liq.value);\n    if(fecha_inicio_liq.value && fecha_fin_liq.value)\n        $(\'#informeLiquidaciones\').html(\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:35:0&fechaInicio=\'+fecha_inicio_liq.value+\'&fechaFin=\' + fecha_fin_liq.value)\n        );\n}\n\nfunction mostrarMensajePopUp(TituloPopUp, Mensaje) {\n    $(\'#modalMensajeTitulo\').html(TituloPopUp);\n	$(\'#modalMensajeCuerpo\').html(Mensaje);\n\n    //Retira cualquier clase preexistente o remanente de cualquier personalizacion previa y agrega las clases base\n    $(\"#modalMensaje\").removeClass();\n    $( \"#modalMensaje\" ).addClass( \"modal fade modal-wide in\" );\n    // $( \"#modalMensaje\" ).addClass( \"modal\" );\n    // $( \"#modalMensaje\" ).addClass( \"fade\" );\n    $( \"#modalMensaje\" ).addClass( \"oculto_impresion\" );\n\n    //Agrega las clases personalizadas por el usuario\n    /* if (ClasesAdicionales!=\"\")\n        $( \"#modalMensaje\" ).addClass( ClasesAdicionales ); */\n\n	// Se muestra el cuadro modal\n	$(\'#modalMensaje\').modal(\'show\');\n\n	//Hacer que la ventana este siempre por encima\n	$(\"#modalMensaje\").css(\"z-index\", \"1500\");\n	Aplicar_data_table(23);\n	$(\'#PCOContenedor_BotonEscritorio\').hide();\n}\n\nfunction detallVentMecanic() {\n    const idMecanico = document.FRMBASEINFORME.PCO_Valor.value;\n    const fechaMaxima = moment(fecha_fin.value, \'YYYY-MM-DD\')\n        .endOf(\'day\')\n        .toISOString();\n    const condiciones = \" AND app_ventas.id_mecanico=\"+idMecanico+\" AND app_ventas.fecha>=\'\"+fecha_inicio.value+\"\' AND app_ventas.fecha<=\'\"+fechaMaxima+\"\'\";\n\n    mostrarMensajePopUp(\'Detalle ventas mecánico\', PCO_ObtenerContenidoAjax(0, \'index.php\', \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:23:1\'+\n        \'&condiciones=\'+condiciones\n    ));\n}\n\nfunction generarLiquidacion() {\n    if(!fecha_fin.value || !fecha_inicio.value) {\n        PCOJS_MostrarMensaje(\"Aviso del sistema\", \"Debes seleccionar un rango de fecha para generar la liquidación\");\n        return;\n    }\n    document.datos.PCO_Accion.value = \'VENTA_generarLiquidacionMecanicos\';\n    document.datos.Precarga_EstilosBS.value = 1;\n    document.datos.Presentar_FullScreen.value = 0;\n    document.datos.target = \'_self\';\n	document.datos.submit();\n}','B'),(1026,'core_formulario[14].javascript','2025-01-31 17:42:00','rafael',113,4546,'const { \n    fecha_inicio, fecha_fin, fecha_inicio_liq, fecha_fin_liq\n} = document.datos;\n\nfunction FrmAutoRun()\n    {\n        //Aqui sus instrucciones\n    }\n\nfunction Aplicar_data_table(inf)\n{\n    //$(\'#PCO_Modal_MensajeCuerpo\').html(informe_listado_asistentes_de_actividad);\n    table=$(\'#TablaInforme_\'+inf).dataTable({\n        aLengthMenu: [[5, 10, 25, 50, -1], [5, 10, 25, 50, \"All\"]],\n        scrollX: true,\n        scrollY: true,\n        scrollCollapse: true,\n        bAutoWidth: true,\n        processing: true,\n        colReorder: true,\n        fnInitComplete: function() {\n            this.fnAdjustColumnSizing(true);\n        },\n        language: {\n            lengthMenu: \"Mostrando _MENU_ resultados por página\",\n            zeroRecords: \"Nothing found - sorry\",\n            info: \"Viendo página _PAGE_ de _PAGES_\",\n            infoEmpty: \"No hay registros disponibles\",\n            infoFiltered: \"(Filtrado de _MAX_ registros en total)\",\n            oPaginate: { sFirst:\"Primero\",sLast:\"Ultimo\",sNext:\"Siguiente\",sPrevious:\"Previo\" },\n            sEmptyTable:\"No hay datos en la tabla\",\n            sSearch:\"Buscar:\",\n            sLoadingRecords:\"Cargando...\",\n            sProcessing:\"Procesando...\",\n            sZeroRecords:\"No hay registros que coincidan con el criterio de búsqueda\"\n        }\n    });\n    $(\'#container\').css( \'display\', \'block\' );\n    table.columns.adjust();\n    table.fnAdjustColumnSizing();\n}\n\nfunction generarInformePrevisualizar() {\n    const fechaMaxima = moment(fecha_fin.value, \'YYYY-MM-DD\')\n    .endOf(\'day\')\n    .toISOString();\n    if(fecha_inicio.value && fecha_fin.value)\n        $(\'#informePrevisualizar\').html(\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:21:0&fechaInicio=\'+fecha_inicio.value+\'&fechaFin=\' + fechaMaxima) +\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:31:0&fechaInicio=\'+fecha_inicio.value+\'&fechaFin=\' + fechaMaxima)\n        );\n}\n\nfunction getLiquidacion() {\n    /* const fechaMaxima = moment(fecha_fin_liq.value, \'YYYY-MM-DD\')\n    .endOf(\'day\')\n    .toISOString(); */\n    if(fecha_inicio_liq.value && fecha_fin_liq.value)\n        $(\'#informeLiquidaciones\').html(\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:35:0&fechaInicio=\'+fecha_inicio_liq.value+\'&fechaFin=\' + fecha_fin_liq.value)\n        );\n}\n\nfunction mostrarMensajePopUp(TituloPopUp, Mensaje) {\n    $(\'#modalMensajeTitulo\').html(TituloPopUp);\n	$(\'#modalMensajeCuerpo\').html(Mensaje);\n\n    //Retira cualquier clase preexistente o remanente de cualquier personalizacion previa y agrega las clases base\n    $(\"#modalMensaje\").removeClass();\n    $( \"#modalMensaje\" ).addClass( \"modal fade modal-wide in\" );\n    // $( \"#modalMensaje\" ).addClass( \"modal\" );\n    // $( \"#modalMensaje\" ).addClass( \"fade\" );\n    $( \"#modalMensaje\" ).addClass( \"oculto_impresion\" );\n\n    //Agrega las clases personalizadas por el usuario\n    /* if (ClasesAdicionales!=\"\")\n        $( \"#modalMensaje\" ).addClass( ClasesAdicionales ); */\n\n	// Se muestra el cuadro modal\n	$(\'#modalMensaje\').modal(\'show\');\n\n	//Hacer que la ventana este siempre por encima\n	$(\"#modalMensaje\").css(\"z-index\", \"1500\");\n	Aplicar_data_table(23);\n	$(\'#PCOContenedor_BotonEscritorio\').hide();\n}\n\nfunction detallVentMecanic() {\n    const idMecanico = document.FRMBASEINFORME.PCO_Valor.value;\n    const fechaMaxima = moment(fecha_fin.value, \'YYYY-MM-DD\')\n        .endOf(\'day\')\n        .toISOString();\n    const condiciones = \" AND app_ventas.id_mecanico=\"+idMecanico+\" AND app_ventas.fecha>=\'\"+fecha_inicio.value+\"\' AND app_ventas.fecha<=\'\"+fechaMaxima+\"\'\";\n\n    mostrarMensajePopUp(\'Detalle ventas mecánico\', PCO_ObtenerContenidoAjax(0, \'index.php\', \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:23:1\'+\n        \'&condiciones=\'+condiciones\n    ));\n}\n\nfunction generarLiquidacion() {\n    if(!fecha_fin.value || !fecha_inicio.value) {\n        PCOJS_MostrarMensaje(\"Aviso del sistema\", \"Debes seleccionar un rango de fecha para generar la liquidación\");\n        return;\n    }\n    document.datos.PCO_Accion.value = \'VENTA_generarLiquidacionMecanicos\';\n    document.datos.Precarga_EstilosBS.value = 1;\n    document.datos.Presentar_FullScreen.value = 0;\n    document.datos.target = \'_self\';\n	document.datos.submit();\n}','B'),(1027,'core_formulario[14].javascript','2025-01-31 17:44:00','rafael',117,4727,'const { \n    fecha_inicio, fecha_fin, fecha_inicio_liq, fecha_fin_liq\n} = document.datos;\n\nfunction FrmAutoRun()\n    {\n        //Aqui sus instrucciones\n    }\n\nfunction Aplicar_data_table(inf)\n{\n    //$(\'#PCO_Modal_MensajeCuerpo\').html(informe_listado_asistentes_de_actividad);\n    table=$(\'#TablaInforme_\'+inf).dataTable({\n        aLengthMenu: [[5, 10, 25, 50, -1], [5, 10, 25, 50, \"All\"]],\n        scrollX: true,\n        scrollY: true,\n        scrollCollapse: true,\n        bAutoWidth: true,\n        processing: true,\n        colReorder: true,\n        fnInitComplete: function() {\n            this.fnAdjustColumnSizing(true);\n        },\n        language: {\n            lengthMenu: \"Mostrando _MENU_ resultados por página\",\n            zeroRecords: \"Nothing found - sorry\",\n            info: \"Viendo página _PAGE_ de _PAGES_\",\n            infoEmpty: \"No hay registros disponibles\",\n            infoFiltered: \"(Filtrado de _MAX_ registros en total)\",\n            oPaginate: { sFirst:\"Primero\",sLast:\"Ultimo\",sNext:\"Siguiente\",sPrevious:\"Previo\" },\n            sEmptyTable:\"No hay datos en la tabla\",\n            sSearch:\"Buscar:\",\n            sLoadingRecords:\"Cargando...\",\n            sProcessing:\"Procesando...\",\n            sZeroRecords:\"No hay registros que coincidan con el criterio de búsqueda\"\n        }\n    });\n    $(\'#container\').css( \'display\', \'block\' );\n    table.columns.adjust().draw();\n    table.fnAdjustColumnSizing();\n            $(\'#TablaInforme_\'+inf).on(\'init.dt\', function(e){\n               $($.fn.dataTable.tables(true)).DataTable()\n                  .columns.adjust();\n            });\n}\n\nfunction generarInformePrevisualizar() {\n    const fechaMaxima = moment(fecha_fin.value, \'YYYY-MM-DD\')\n    .endOf(\'day\')\n    .toISOString();\n    if(fecha_inicio.value && fecha_fin.value)\n        $(\'#informePrevisualizar\').html(\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:21:0&fechaInicio=\'+fecha_inicio.value+\'&fechaFin=\' + fechaMaxima) +\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:31:0&fechaInicio=\'+fecha_inicio.value+\'&fechaFin=\' + fechaMaxima)\n        );\n}\n\nfunction getLiquidacion() {\n    /* const fechaMaxima = moment(fecha_fin_liq.value, \'YYYY-MM-DD\')\n    .endOf(\'day\')\n    .toISOString(); */\n    if(fecha_inicio_liq.value && fecha_fin_liq.value)\n        $(\'#informeLiquidaciones\').html(\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:35:0&fechaInicio=\'+fecha_inicio_liq.value+\'&fechaFin=\' + fecha_fin_liq.value)\n        );\n}\n\nfunction mostrarMensajePopUp(TituloPopUp, Mensaje) {\n    $(\'#modalMensajeTitulo\').html(TituloPopUp);\n	$(\'#modalMensajeCuerpo\').html(Mensaje);\n\n    //Retira cualquier clase preexistente o remanente de cualquier personalizacion previa y agrega las clases base\n    $(\"#modalMensaje\").removeClass();\n    $( \"#modalMensaje\" ).addClass( \"modal fade modal-wide in\" );\n    // $( \"#modalMensaje\" ).addClass( \"modal\" );\n    // $( \"#modalMensaje\" ).addClass( \"fade\" );\n    $( \"#modalMensaje\" ).addClass( \"oculto_impresion\" );\n\n    //Agrega las clases personalizadas por el usuario\n    /* if (ClasesAdicionales!=\"\")\n        $( \"#modalMensaje\" ).addClass( ClasesAdicionales ); */\n\n	// Se muestra el cuadro modal\n	$(\'#modalMensaje\').modal(\'show\');\n\n	//Hacer que la ventana este siempre por encima\n	$(\"#modalMensaje\").css(\"z-index\", \"1500\");\n	Aplicar_data_table(23);\n	$(\'#PCOContenedor_BotonEscritorio\').hide();\n}\n\nfunction detallVentMecanic() {\n    const idMecanico = document.FRMBASEINFORME.PCO_Valor.value;\n    const fechaMaxima = moment(fecha_fin.value, \'YYYY-MM-DD\')\n        .endOf(\'day\')\n        .toISOString();\n    const condiciones = \" AND app_ventas.id_mecanico=\"+idMecanico+\" AND app_ventas.fecha>=\'\"+fecha_inicio.value+\"\' AND app_ventas.fecha<=\'\"+fechaMaxima+\"\'\";\n\n    mostrarMensajePopUp(\'Detalle ventas mecánico\', PCO_ObtenerContenidoAjax(0, \'index.php\', \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:23:1\'+\n        \'&condiciones=\'+condiciones\n    ));\n}\n\nfunction generarLiquidacion() {\n    if(!fecha_fin.value || !fecha_inicio.value) {\n        PCOJS_MostrarMensaje(\"Aviso del sistema\", \"Debes seleccionar un rango de fecha para generar la liquidación\");\n        return;\n    }\n    document.datos.PCO_Accion.value = \'VENTA_generarLiquidacionMecanicos\';\n    document.datos.Precarga_EstilosBS.value = 1;\n    document.datos.Presentar_FullScreen.value = 0;\n    document.datos.target = \'_self\';\n	document.datos.submit();\n}','B'),(1028,'core_formulario[14].javascript','2025-01-31 17:45:00','rafael',117,4730,'const { \n    fecha_inicio, fecha_fin, fecha_inicio_liq, fecha_fin_liq\n} = document.datos;\n\nfunction FrmAutoRun()\n    {\n        //Aqui sus instrucciones\n    }\n\nfunction Aplicar_data_table(inf)\n{\n    //$(\'#PCO_Modal_MensajeCuerpo\').html(informe_listado_asistentes_de_actividad);\n    table=$(\'#TablaInforme_\'+inf).dataTable({\n        aLengthMenu: [[5, 10, 25, 50, -1], [5, 10, 25, 50, \"All\"]],\n        scrollX: true,\n        scrollY: true,\n        scrollCollapse: true,\n        bAutoWidth: true,\n        processing: true,\n        colReorder: true,\n        fnInitComplete: function() {\n            this.fnAdjustColumnSizing(true);\n        },\n        language: {\n            lengthMenu: \"Mostrando _MENU_ resultados por página\",\n            zeroRecords: \"Nothing found - sorry\",\n            info: \"Viendo página _PAGE_ de _PAGES_\",\n            infoEmpty: \"No hay registros disponibles\",\n            infoFiltered: \"(Filtrado de _MAX_ registros en total)\",\n            oPaginate: { sFirst:\"Primero\",sLast:\"Ultimo\",sNext:\"Siguiente\",sPrevious:\"Previo\" },\n            sEmptyTable:\"No hay datos en la tabla\",\n            sSearch:\"Buscar:\",\n            sLoadingRecords:\"Cargando...\",\n            sProcessing:\"Procesando...\",\n            sZeroRecords:\"No hay registros que coincidan con el criterio de búsqueda\"\n        }\n    });\n    $(\'#container\').css( \'display\', \'block\' );\n    // table.columns.adjust().draw();\n    table.fnAdjustColumnSizing();\n            $(\'#TablaInforme_\'+inf).on(\'init.dt\', function(e){\n               $($.fn.dataTable.tables(true)).DataTable()\n                  .columns.adjust();\n            });\n}\n\nfunction generarInformePrevisualizar() {\n    const fechaMaxima = moment(fecha_fin.value, \'YYYY-MM-DD\')\n    .endOf(\'day\')\n    .toISOString();\n    if(fecha_inicio.value && fecha_fin.value)\n        $(\'#informePrevisualizar\').html(\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:21:0&fechaInicio=\'+fecha_inicio.value+\'&fechaFin=\' + fechaMaxima) +\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:31:0&fechaInicio=\'+fecha_inicio.value+\'&fechaFin=\' + fechaMaxima)\n        );\n}\n\nfunction getLiquidacion() {\n    /* const fechaMaxima = moment(fecha_fin_liq.value, \'YYYY-MM-DD\')\n    .endOf(\'day\')\n    .toISOString(); */\n    if(fecha_inicio_liq.value && fecha_fin_liq.value)\n        $(\'#informeLiquidaciones\').html(\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:35:0&fechaInicio=\'+fecha_inicio_liq.value+\'&fechaFin=\' + fecha_fin_liq.value)\n        );\n}\n\nfunction mostrarMensajePopUp(TituloPopUp, Mensaje) {\n    $(\'#modalMensajeTitulo\').html(TituloPopUp);\n	$(\'#modalMensajeCuerpo\').html(Mensaje);\n\n    //Retira cualquier clase preexistente o remanente de cualquier personalizacion previa y agrega las clases base\n    $(\"#modalMensaje\").removeClass();\n    $( \"#modalMensaje\" ).addClass( \"modal fade modal-wide in\" );\n    // $( \"#modalMensaje\" ).addClass( \"modal\" );\n    // $( \"#modalMensaje\" ).addClass( \"fade\" );\n    $( \"#modalMensaje\" ).addClass( \"oculto_impresion\" );\n\n    //Agrega las clases personalizadas por el usuario\n    /* if (ClasesAdicionales!=\"\")\n        $( \"#modalMensaje\" ).addClass( ClasesAdicionales ); */\n\n	// Se muestra el cuadro modal\n	$(\'#modalMensaje\').modal(\'show\');\n\n	//Hacer que la ventana este siempre por encima\n	$(\"#modalMensaje\").css(\"z-index\", \"1500\");\n	Aplicar_data_table(23);\n	$(\'#PCOContenedor_BotonEscritorio\').hide();\n}\n\nfunction detallVentMecanic() {\n    const idMecanico = document.FRMBASEINFORME.PCO_Valor.value;\n    const fechaMaxima = moment(fecha_fin.value, \'YYYY-MM-DD\')\n        .endOf(\'day\')\n        .toISOString();\n    const condiciones = \" AND app_ventas.id_mecanico=\"+idMecanico+\" AND app_ventas.fecha>=\'\"+fecha_inicio.value+\"\' AND app_ventas.fecha<=\'\"+fechaMaxima+\"\'\";\n\n    mostrarMensajePopUp(\'Detalle ventas mecánico\', PCO_ObtenerContenidoAjax(0, \'index.php\', \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:23:1\'+\n        \'&condiciones=\'+condiciones\n    ));\n}\n\nfunction generarLiquidacion() {\n    if(!fecha_fin.value || !fecha_inicio.value) {\n        PCOJS_MostrarMensaje(\"Aviso del sistema\", \"Debes seleccionar un rango de fecha para generar la liquidación\");\n        return;\n    }\n    document.datos.PCO_Accion.value = \'VENTA_generarLiquidacionMecanicos\';\n    document.datos.Precarga_EstilosBS.value = 1;\n    document.datos.Presentar_FullScreen.value = 0;\n    document.datos.target = \'_self\';\n	document.datos.submit();\n}','B'),(1029,'core_formulario[14].javascript','2025-01-31 17:46:00','rafael',117,4736,'const { \n    fecha_inicio, fecha_fin, fecha_inicio_liq, fecha_fin_liq\n} = document.datos;\n\nfunction FrmAutoRun()\n    {\n        //Aqui sus instrucciones\n    }\n\nfunction Aplicar_data_table(inf)\n{\n    //$(\'#PCO_Modal_MensajeCuerpo\').html(informe_listado_asistentes_de_actividad);\n    const table=$(\'#TablaInforme_\'+inf).dataTable({\n        aLengthMenu: [[5, 10, 25, 50, -1], [5, 10, 25, 50, \"All\"]],\n        scrollX: true,\n        scrollY: true,\n        scrollCollapse: true,\n        bAutoWidth: true,\n        processing: true,\n        colReorder: true,\n        fnInitComplete: function() {\n            this.fnAdjustColumnSizing(true);\n        },\n        language: {\n            lengthMenu: \"Mostrando _MENU_ resultados por página\",\n            zeroRecords: \"Nothing found - sorry\",\n            info: \"Viendo página _PAGE_ de _PAGES_\",\n            infoEmpty: \"No hay registros disponibles\",\n            infoFiltered: \"(Filtrado de _MAX_ registros en total)\",\n            oPaginate: { sFirst:\"Primero\",sLast:\"Ultimo\",sNext:\"Siguiente\",sPrevious:\"Previo\" },\n            sEmptyTable:\"No hay datos en la tabla\",\n            sSearch:\"Buscar:\",\n            sLoadingRecords:\"Cargando...\",\n            sProcessing:\"Procesando...\",\n            sZeroRecords:\"No hay registros que coincidan con el criterio de búsqueda\"\n        }\n    });\n    $(\'#container\').css( \'display\', \'block\' );\n    // table.columns.adjust().draw();\n    table.fnAdjustColumnSizing();\n            $(\'#TablaInforme_\'+inf).on(\'init.dt\', function(e){\n               $($.fn.dataTable.tables(true)).DataTable()\n                  .columns.adjust();\n            });\n}\n\nfunction generarInformePrevisualizar() {\n    const fechaMaxima = moment(fecha_fin.value, \'YYYY-MM-DD\')\n    .endOf(\'day\')\n    .toISOString();\n    if(fecha_inicio.value && fecha_fin.value)\n        $(\'#informePrevisualizar\').html(\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:21:0&fechaInicio=\'+fecha_inicio.value+\'&fechaFin=\' + fechaMaxima) +\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:31:0&fechaInicio=\'+fecha_inicio.value+\'&fechaFin=\' + fechaMaxima)\n        );\n}\n\nfunction getLiquidacion() {\n    /* const fechaMaxima = moment(fecha_fin_liq.value, \'YYYY-MM-DD\')\n    .endOf(\'day\')\n    .toISOString(); */\n    if(fecha_inicio_liq.value && fecha_fin_liq.value)\n        $(\'#informeLiquidaciones\').html(\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:35:0&fechaInicio=\'+fecha_inicio_liq.value+\'&fechaFin=\' + fecha_fin_liq.value)\n        );\n}\n\nfunction mostrarMensajePopUp(TituloPopUp, Mensaje) {\n    $(\'#modalMensajeTitulo\').html(TituloPopUp);\n	$(\'#modalMensajeCuerpo\').html(Mensaje);\n\n    //Retira cualquier clase preexistente o remanente de cualquier personalizacion previa y agrega las clases base\n    $(\"#modalMensaje\").removeClass();\n    $( \"#modalMensaje\" ).addClass( \"modal fade modal-wide in\" );\n    // $( \"#modalMensaje\" ).addClass( \"modal\" );\n    // $( \"#modalMensaje\" ).addClass( \"fade\" );\n    $( \"#modalMensaje\" ).addClass( \"oculto_impresion\" );\n\n    //Agrega las clases personalizadas por el usuario\n    /* if (ClasesAdicionales!=\"\")\n        $( \"#modalMensaje\" ).addClass( ClasesAdicionales ); */\n\n	// Se muestra el cuadro modal\n	$(\'#modalMensaje\').modal(\'show\');\n\n	//Hacer que la ventana este siempre por encima\n	$(\"#modalMensaje\").css(\"z-index\", \"1500\");\n	Aplicar_data_table(23);\n	$(\'#PCOContenedor_BotonEscritorio\').hide();\n}\n\nfunction detallVentMecanic() {\n    const idMecanico = document.FRMBASEINFORME.PCO_Valor.value;\n    const fechaMaxima = moment(fecha_fin.value, \'YYYY-MM-DD\')\n        .endOf(\'day\')\n        .toISOString();\n    const condiciones = \" AND app_ventas.id_mecanico=\"+idMecanico+\" AND app_ventas.fecha>=\'\"+fecha_inicio.value+\"\' AND app_ventas.fecha<=\'\"+fechaMaxima+\"\'\";\n\n    mostrarMensajePopUp(\'Detalle ventas mecánico\', PCO_ObtenerContenidoAjax(0, \'index.php\', \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:23:1\'+\n        \'&condiciones=\'+condiciones\n    ));\n}\n\nfunction generarLiquidacion() {\n    if(!fecha_fin.value || !fecha_inicio.value) {\n        PCOJS_MostrarMensaje(\"Aviso del sistema\", \"Debes seleccionar un rango de fecha para generar la liquidación\");\n        return;\n    }\n    document.datos.PCO_Accion.value = \'VENTA_generarLiquidacionMecanicos\';\n    document.datos.Precarga_EstilosBS.value = 1;\n    document.datos.Presentar_FullScreen.value = 0;\n    document.datos.target = \'_self\';\n	document.datos.submit();\n}','B'),(1030,'core_formulario[14].javascript','2025-01-31 17:46:00','rafael',117,4738,'const { \n    fecha_inicio, fecha_fin, fecha_inicio_liq, fecha_fin_liq\n} = document.datos;\n\nfunction FrmAutoRun()\n    {\n        //Aqui sus instrucciones\n    }\n\nfunction Aplicar_data_table(inf)\n{\n    //$(\'#PCO_Modal_MensajeCuerpo\').html(informe_listado_asistentes_de_actividad);\n    const table = $(\'#TablaInforme_\'+inf).dataTable({\n        aLengthMenu: [[5, 10, 25, 50, -1], [5, 10, 25, 50, \"All\"]],\n        scrollX: true,\n        scrollY: true,\n        scrollCollapse: true,\n        bAutoWidth: true,\n        processing: true,\n        colReorder: true,\n        fnInitComplete: function() {\n            this.fnAdjustColumnSizing(true);\n        },\n        language: {\n            lengthMenu: \"Mostrando _MENU_ resultados por página\",\n            zeroRecords: \"Nothing found - sorry\",\n            info: \"Viendo página _PAGE_ de _PAGES_\",\n            infoEmpty: \"No hay registros disponibles\",\n            infoFiltered: \"(Filtrado de _MAX_ registros en total)\",\n            oPaginate: { sFirst:\"Primero\",sLast:\"Ultimo\",sNext:\"Siguiente\",sPrevious:\"Previo\" },\n            sEmptyTable:\"No hay datos en la tabla\",\n            sSearch:\"Buscar:\",\n            sLoadingRecords:\"Cargando...\",\n            sProcessing:\"Procesando...\",\n            sZeroRecords:\"No hay registros que coincidan con el criterio de búsqueda\"\n        }\n    });\n    $(\'#container\').css( \'display\', \'block\' );\n    // table.columns.adjust().draw();\n    table.fnAdjustColumnSizing();\n            $(\'#TablaInforme_\'+inf).on(\'init.dt\', function(e){\n               $($.fn.dataTable.tables(true)).DataTable()\n                  .columns.adjust();\n            });\n}\n\nfunction generarInformePrevisualizar() {\n    const fechaMaxima = moment(fecha_fin.value, \'YYYY-MM-DD\')\n    .endOf(\'day\')\n    .toISOString();\n    if(fecha_inicio.value && fecha_fin.value)\n        $(\'#informePrevisualizar\').html(\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:21:0&fechaInicio=\'+fecha_inicio.value+\'&fechaFin=\' + fechaMaxima) +\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:31:0&fechaInicio=\'+fecha_inicio.value+\'&fechaFin=\' + fechaMaxima)\n        );\n}\n\nfunction getLiquidacion() {\n    /* const fechaMaxima = moment(fecha_fin_liq.value, \'YYYY-MM-DD\')\n    .endOf(\'day\')\n    .toISOString(); */\n    if(fecha_inicio_liq.value && fecha_fin_liq.value)\n        $(\'#informeLiquidaciones\').html(\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:35:0&fechaInicio=\'+fecha_inicio_liq.value+\'&fechaFin=\' + fecha_fin_liq.value)\n        );\n}\n\nfunction mostrarMensajePopUp(TituloPopUp, Mensaje) {\n    $(\'#modalMensajeTitulo\').html(TituloPopUp);\n	$(\'#modalMensajeCuerpo\').html(Mensaje);\n\n    //Retira cualquier clase preexistente o remanente de cualquier personalizacion previa y agrega las clases base\n    $(\"#modalMensaje\").removeClass();\n    $( \"#modalMensaje\" ).addClass( \"modal fade modal-wide in\" );\n    // $( \"#modalMensaje\" ).addClass( \"modal\" );\n    // $( \"#modalMensaje\" ).addClass( \"fade\" );\n    $( \"#modalMensaje\" ).addClass( \"oculto_impresion\" );\n\n    //Agrega las clases personalizadas por el usuario\n    /* if (ClasesAdicionales!=\"\")\n        $( \"#modalMensaje\" ).addClass( ClasesAdicionales ); */\n\n	// Se muestra el cuadro modal\n	$(\'#modalMensaje\').modal(\'show\');\n\n	//Hacer que la ventana este siempre por encima\n	$(\"#modalMensaje\").css(\"z-index\", \"1500\");\n	Aplicar_data_table(23);\n	$(\'#PCOContenedor_BotonEscritorio\').hide();\n}\n\nfunction detallVentMecanic() {\n    const idMecanico = document.FRMBASEINFORME.PCO_Valor.value;\n    const fechaMaxima = moment(fecha_fin.value, \'YYYY-MM-DD\')\n        .endOf(\'day\')\n        .toISOString();\n    const condiciones = \" AND app_ventas.id_mecanico=\"+idMecanico+\" AND app_ventas.fecha>=\'\"+fecha_inicio.value+\"\' AND app_ventas.fecha<=\'\"+fechaMaxima+\"\'\";\n\n    mostrarMensajePopUp(\'Detalle ventas mecánico\', PCO_ObtenerContenidoAjax(0, \'index.php\', \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:23:1\'+\n        \'&condiciones=\'+condiciones\n    ));\n}\n\nfunction generarLiquidacion() {\n    if(!fecha_fin.value || !fecha_inicio.value) {\n        PCOJS_MostrarMensaje(\"Aviso del sistema\", \"Debes seleccionar un rango de fecha para generar la liquidación\");\n        return;\n    }\n    document.datos.PCO_Accion.value = \'VENTA_generarLiquidacionMecanicos\';\n    document.datos.Precarga_EstilosBS.value = 1;\n    document.datos.Presentar_FullScreen.value = 0;\n    document.datos.target = \'_self\';\n	document.datos.submit();\n}','B'),(1031,'core_formulario[14].javascript','2025-01-31 17:46:00','rafael',117,4741,'const { \n    fecha_inicio, fecha_fin, fecha_inicio_liq, fecha_fin_liq\n} = document.datos;\n\nfunction FrmAutoRun()\n    {\n        //Aqui sus instrucciones\n    }\n\nfunction Aplicar_data_table(inf)\n{\n    //$(\'#PCO_Modal_MensajeCuerpo\').html(informe_listado_asistentes_de_actividad);\n    const table = $(\'#TablaInforme_\'+inf).dataTable({\n        aLengthMenu: [[5, 10, 25, 50, -1], [5, 10, 25, 50, \"All\"]],\n        scrollX: true,\n        scrollY: true,\n        scrollCollapse: true,\n        bAutoWidth: true,\n        processing: true,\n        colReorder: true,\n        fnInitComplete: function() {\n            this.fnAdjustColumnSizing(true);\n        },\n        language: {\n            lengthMenu: \"Mostrando _MENU_ resultados por página\",\n            zeroRecords: \"Nothing found - sorry\",\n            info: \"Viendo página _PAGE_ de _PAGES_\",\n            infoEmpty: \"No hay registros disponibles\",\n            infoFiltered: \"(Filtrado de _MAX_ registros en total)\",\n            oPaginate: { sFirst:\"Primero\",sLast:\"Ultimo\",sNext:\"Siguiente\",sPrevious:\"Previo\" },\n            sEmptyTable:\"No hay datos en la tabla\",\n            sSearch:\"Buscar:\",\n            sLoadingRecords:\"Cargando...\",\n            sProcessing:\"Procesando...\",\n            sZeroRecords:\"No hay registros que coincidan con el criterio de búsqueda\"\n        }\n    });\n    $(\'#container\').css( \'display\', \'block\' );\n    // table.columns.adjust().draw();\n    // table.fnAdjustColumnSizing();\n            $(\'#TablaInforme_\'+inf).on(\'init.dt\', function(e){\n               $($.fn.dataTable.tables(true)).DataTable()\n                  .columns.adjust();\n            });\n}\n\nfunction generarInformePrevisualizar() {\n    const fechaMaxima = moment(fecha_fin.value, \'YYYY-MM-DD\')\n    .endOf(\'day\')\n    .toISOString();\n    if(fecha_inicio.value && fecha_fin.value)\n        $(\'#informePrevisualizar\').html(\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:21:0&fechaInicio=\'+fecha_inicio.value+\'&fechaFin=\' + fechaMaxima) +\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:31:0&fechaInicio=\'+fecha_inicio.value+\'&fechaFin=\' + fechaMaxima)\n        );\n}\n\nfunction getLiquidacion() {\n    /* const fechaMaxima = moment(fecha_fin_liq.value, \'YYYY-MM-DD\')\n    .endOf(\'day\')\n    .toISOString(); */\n    if(fecha_inicio_liq.value && fecha_fin_liq.value)\n        $(\'#informeLiquidaciones\').html(\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:35:0&fechaInicio=\'+fecha_inicio_liq.value+\'&fechaFin=\' + fecha_fin_liq.value)\n        );\n}\n\nfunction mostrarMensajePopUp(TituloPopUp, Mensaje) {\n    $(\'#modalMensajeTitulo\').html(TituloPopUp);\n	$(\'#modalMensajeCuerpo\').html(Mensaje);\n\n    //Retira cualquier clase preexistente o remanente de cualquier personalizacion previa y agrega las clases base\n    $(\"#modalMensaje\").removeClass();\n    $( \"#modalMensaje\" ).addClass( \"modal fade modal-wide in\" );\n    // $( \"#modalMensaje\" ).addClass( \"modal\" );\n    // $( \"#modalMensaje\" ).addClass( \"fade\" );\n    $( \"#modalMensaje\" ).addClass( \"oculto_impresion\" );\n\n    //Agrega las clases personalizadas por el usuario\n    /* if (ClasesAdicionales!=\"\")\n        $( \"#modalMensaje\" ).addClass( ClasesAdicionales ); */\n\n	// Se muestra el cuadro modal\n	$(\'#modalMensaje\').modal(\'show\');\n\n	//Hacer que la ventana este siempre por encima\n	$(\"#modalMensaje\").css(\"z-index\", \"1500\");\n	Aplicar_data_table(23);\n	$(\'#PCOContenedor_BotonEscritorio\').hide();\n}\n\nfunction detallVentMecanic() {\n    const idMecanico = document.FRMBASEINFORME.PCO_Valor.value;\n    const fechaMaxima = moment(fecha_fin.value, \'YYYY-MM-DD\')\n        .endOf(\'day\')\n        .toISOString();\n    const condiciones = \" AND app_ventas.id_mecanico=\"+idMecanico+\" AND app_ventas.fecha>=\'\"+fecha_inicio.value+\"\' AND app_ventas.fecha<=\'\"+fechaMaxima+\"\'\";\n\n    mostrarMensajePopUp(\'Detalle ventas mecánico\', PCO_ObtenerContenidoAjax(0, \'index.php\', \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:23:1\'+\n        \'&condiciones=\'+condiciones\n    ));\n}\n\nfunction generarLiquidacion() {\n    if(!fecha_fin.value || !fecha_inicio.value) {\n        PCOJS_MostrarMensaje(\"Aviso del sistema\", \"Debes seleccionar un rango de fecha para generar la liquidación\");\n        return;\n    }\n    document.datos.PCO_Accion.value = \'VENTA_generarLiquidacionMecanicos\';\n    document.datos.Precarga_EstilosBS.value = 1;\n    document.datos.Presentar_FullScreen.value = 0;\n    document.datos.target = \'_self\';\n	document.datos.submit();\n}','B'),(1032,'core_formulario[14].javascript','2025-01-31 17:46:00','rafael',117,4741,'const { \n    fecha_inicio, fecha_fin, fecha_inicio_liq, fecha_fin_liq\n} = document.datos;\n\nfunction FrmAutoRun()\n    {\n        //Aqui sus instrucciones\n    }\n\nfunction Aplicar_data_table(inf)\n{\n    //$(\'#PCO_Modal_MensajeCuerpo\').html(informe_listado_asistentes_de_actividad);\n    const table = $(\'#TablaInforme_\'+inf).dataTable({\n        aLengthMenu: [[5, 10, 25, 50, -1], [5, 10, 25, 50, \"All\"]],\n        scrollX: true,\n        scrollY: true,\n        scrollCollapse: true,\n        bAutoWidth: true,\n        processing: true,\n        colReorder: true,\n        fnInitComplete: function() {\n            this.fnAdjustColumnSizing(true);\n        },\n        language: {\n            lengthMenu: \"Mostrando _MENU_ resultados por página\",\n            zeroRecords: \"Nothing found - sorry\",\n            info: \"Viendo página _PAGE_ de _PAGES_\",\n            infoEmpty: \"No hay registros disponibles\",\n            infoFiltered: \"(Filtrado de _MAX_ registros en total)\",\n            oPaginate: { sFirst:\"Primero\",sLast:\"Ultimo\",sNext:\"Siguiente\",sPrevious:\"Previo\" },\n            sEmptyTable:\"No hay datos en la tabla\",\n            sSearch:\"Buscar:\",\n            sLoadingRecords:\"Cargando...\",\n            sProcessing:\"Procesando...\",\n            sZeroRecords:\"No hay registros que coincidan con el criterio de búsqueda\"\n        }\n    });\n    $(\'#container\').css( \'display\', \'block\' );\n    // table.columns.adjust().draw();\n    // table.fnAdjustColumnSizing();\n            $(\'#TablaInforme_\'+inf).on(\'init.dt\', function(e){\n               $($.fn.dataTable.tables(true)).DataTable()\n                  .columns.adjust();\n            });\n}\n\nfunction generarInformePrevisualizar() {\n    const fechaMaxima = moment(fecha_fin.value, \'YYYY-MM-DD\')\n    .endOf(\'day\')\n    .toISOString();\n    if(fecha_inicio.value && fecha_fin.value)\n        $(\'#informePrevisualizar\').html(\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:21:0&fechaInicio=\'+fecha_inicio.value+\'&fechaFin=\' + fechaMaxima) +\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:31:0&fechaInicio=\'+fecha_inicio.value+\'&fechaFin=\' + fechaMaxima)\n        );\n}\n\nfunction getLiquidacion() {\n    /* const fechaMaxima = moment(fecha_fin_liq.value, \'YYYY-MM-DD\')\n    .endOf(\'day\')\n    .toISOString(); */\n    if(fecha_inicio_liq.value && fecha_fin_liq.value)\n        $(\'#informeLiquidaciones\').html(\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:35:0&fechaInicio=\'+fecha_inicio_liq.value+\'&fechaFin=\' + fecha_fin_liq.value)\n        );\n}\n\nfunction mostrarMensajePopUp(TituloPopUp, Mensaje) {\n    $(\'#modalMensajeTitulo\').html(TituloPopUp);\n	$(\'#modalMensajeCuerpo\').html(Mensaje);\n\n    //Retira cualquier clase preexistente o remanente de cualquier personalizacion previa y agrega las clases base\n    $(\"#modalMensaje\").removeClass();\n    $( \"#modalMensaje\" ).addClass( \"modal fade modal-wide in\" );\n    // $( \"#modalMensaje\" ).addClass( \"modal\" );\n    // $( \"#modalMensaje\" ).addClass( \"fade\" );\n    $( \"#modalMensaje\" ).addClass( \"oculto_impresion\" );\n\n    //Agrega las clases personalizadas por el usuario\n    /* if (ClasesAdicionales!=\"\")\n        $( \"#modalMensaje\" ).addClass( ClasesAdicionales ); */\n\n	// Se muestra el cuadro modal\n	$(\'#modalMensaje\').modal(\'show\');\n\n	//Hacer que la ventana este siempre por encima\n	$(\"#modalMensaje\").css(\"z-index\", \"1500\");\n	Aplicar_data_table(23);\n	$(\'#PCOContenedor_BotonEscritorio\').hide();\n}\n\nfunction detallVentMecanic() {\n    const idMecanico = document.FRMBASEINFORME.PCO_Valor.value;\n    const fechaMaxima = moment(fecha_fin.value, \'YYYY-MM-DD\')\n        .endOf(\'day\')\n        .toISOString();\n    const condiciones = \" AND app_ventas.id_mecanico=\"+idMecanico+\" AND app_ventas.fecha>=\'\"+fecha_inicio.value+\"\' AND app_ventas.fecha<=\'\"+fechaMaxima+\"\'\";\n\n    mostrarMensajePopUp(\'Detalle ventas mecánico\', PCO_ObtenerContenidoAjax(0, \'index.php\', \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:23:1\'+\n        \'&condiciones=\'+condiciones\n    ));\n}\n\nfunction generarLiquidacion() {\n    if(!fecha_fin.value || !fecha_inicio.value) {\n        PCOJS_MostrarMensaje(\"Aviso del sistema\", \"Debes seleccionar un rango de fecha para generar la liquidación\");\n        return;\n    }\n    document.datos.PCO_Accion.value = \'VENTA_generarLiquidacionMecanicos\';\n    document.datos.Precarga_EstilosBS.value = 1;\n    document.datos.Presentar_FullScreen.value = 0;\n    document.datos.target = \'_self\';\n	document.datos.submit();\n}','B'),(1033,'core_formulario[14].javascript','2025-02-01 08:25:00','rafael',117,4745,'const { \n    fecha_inicio, fecha_fin, fecha_inicio_liq, fecha_fin_liq\n} = document.datos;\n\nfunction FrmAutoRun()\n    {\n        //Aqui sus instrucciones\n    }\n\nfunction Aplicar_data_table(inf)\n{\n                $(\'#TablaInforme_\'+inf).on(\'init.dt\', function(e){\n               $($.fn.dataTable.tables(true)).DataTable()\n                  .columns.adjust();\n            });\n    //$(\'#PCO_Modal_MensajeCuerpo\').html(informe_listado_asistentes_de_actividad);\n    const table = $(\'#TablaInforme_\'+inf).dataTable({\n        aLengthMenu: [[5, 10, 25, 50, -1], [5, 10, 25, 50, \"All\"]],\n        scrollX: true,\n        scrollY: true,\n        scrollCollapse: true,\n        bAutoWidth: true,\n        processing: true,\n        colReorder: true,\n        fnInitComplete: function() {\n            this.fnAdjustColumnSizing(true);\n        },\n        language: {\n            lengthMenu: \"Mostrando _MENU_ resultados por página\",\n            zeroRecords: \"Nothing found - sorry\",\n            info: \"Viendo página _PAGE_ de _PAGES_\",\n            infoEmpty: \"No hay registros disponibles\",\n            infoFiltered: \"(Filtrado de _MAX_ registros en total)\",\n            oPaginate: { sFirst:\"Primero\",sLast:\"Ultimo\",sNext:\"Siguiente\",sPrevious:\"Previo\" },\n            sEmptyTable:\"No hay datos en la tabla\",\n            sSearch:\"Buscar:\",\n            sLoadingRecords:\"Cargando...\",\n            sProcessing:\"Procesando...\",\n            sZeroRecords:\"No hay registros que coincidan con el criterio de búsqueda\"\n        }\n    });\n    $(\'#container\').css( \'display\', \'block\' );\n    // table.columns.adjust().draw();\n    // table.fnAdjustColumnSizing();\n}\n\nfunction generarInformePrevisualizar() {\n    const fechaMaxima = moment(fecha_fin.value, \'YYYY-MM-DD\')\n    .endOf(\'day\')\n    .toISOString();\n    if(fecha_inicio.value && fecha_fin.value)\n        $(\'#informePrevisualizar\').html(\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:21:0&fechaInicio=\'+fecha_inicio.value+\'&fechaFin=\' + fechaMaxima) +\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:31:0&fechaInicio=\'+fecha_inicio.value+\'&fechaFin=\' + fechaMaxima)\n        );\n}\n\nfunction getLiquidacion() {\n    /* const fechaMaxima = moment(fecha_fin_liq.value, \'YYYY-MM-DD\')\n    .endOf(\'day\')\n    .toISOString(); */\n    if(fecha_inicio_liq.value && fecha_fin_liq.value)\n        $(\'#informeLiquidaciones\').html(\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:35:0&fechaInicio=\'+fecha_inicio_liq.value+\'&fechaFin=\' + fecha_fin_liq.value)\n        );\n}\n\nfunction mostrarMensajePopUp(TituloPopUp, Mensaje) {\n    $(\'#modalMensajeTitulo\').html(TituloPopUp);\n	$(\'#modalMensajeCuerpo\').html(Mensaje);\n\n    //Retira cualquier clase preexistente o remanente de cualquier personalizacion previa y agrega las clases base\n    $(\"#modalMensaje\").removeClass();\n    $( \"#modalMensaje\" ).addClass( \"modal fade modal-wide in\" );\n    // $( \"#modalMensaje\" ).addClass( \"modal\" );\n    // $( \"#modalMensaje\" ).addClass( \"fade\" );\n    $( \"#modalMensaje\" ).addClass( \"oculto_impresion\" );\n\n    //Agrega las clases personalizadas por el usuario\n    /* if (ClasesAdicionales!=\"\")\n        $( \"#modalMensaje\" ).addClass( ClasesAdicionales ); */\n\n	// Se muestra el cuadro modal\n	$(\'#modalMensaje\').modal(\'show\');\n\n	//Hacer que la ventana este siempre por encima\n	$(\"#modalMensaje\").css(\"z-index\", \"1500\");\n	Aplicar_data_table(23);\n	$(\'#PCOContenedor_BotonEscritorio\').hide();\n}\n\nfunction detallVentMecanic() {\n    const idMecanico = document.FRMBASEINFORME.PCO_Valor.value;\n    const fechaMaxima = moment(fecha_fin.value, \'YYYY-MM-DD\')\n        .endOf(\'day\')\n        .toISOString();\n    const condiciones = \" AND app_ventas.id_mecanico=\"+idMecanico+\" AND app_ventas.fecha>=\'\"+fecha_inicio.value+\"\' AND app_ventas.fecha<=\'\"+fechaMaxima+\"\'\";\n\n    mostrarMensajePopUp(\'Detalle ventas mecánico\', PCO_ObtenerContenidoAjax(0, \'index.php\', \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:23:1\'+\n        \'&condiciones=\'+condiciones\n    ));\n}\n\nfunction generarLiquidacion() {\n    if(!fecha_fin.value || !fecha_inicio.value) {\n        PCOJS_MostrarMensaje(\"Aviso del sistema\", \"Debes seleccionar un rango de fecha para generar la liquidación\");\n        return;\n    }\n    document.datos.PCO_Accion.value = \'VENTA_generarLiquidacionMecanicos\';\n    document.datos.Precarga_EstilosBS.value = 1;\n    document.datos.Presentar_FullScreen.value = 0;\n    document.datos.target = \'_self\';\n	document.datos.submit();\n}','B'),(1034,'core_formulario[14].javascript','2025-02-01 09:32:00','rafael',116,4658,'const { \n    fecha_inicio, fecha_fin, fecha_inicio_liq, fecha_fin_liq\n} = document.datos;\n\nfunction FrmAutoRun()\n    {\n        //Aqui sus instrucciones\n    }\n\nfunction Aplicar_data_table(inf)\n{\n                $(\'#TablaInforme_\'+inf).on(\'init.dt\', function(e){\n               $($.fn.dataTable.tables(true)).DataTable()\n                  .columns.adjust();\n            });\n    const table = $(\'#TablaInforme_\'+inf).dataTable({\n        aLengthMenu: [[5, 10, 25, 50, -1], [5, 10, 25, 50, \"All\"]],\n        scrollX: true,\n        scrollY: true,\n        scrollCollapse: true,\n        bAutoWidth: true,\n        processing: true,\n        colReorder: true,\n        fnInitComplete: function() {\n            this.fnAdjustColumnSizing(true);\n        },\n        language: {\n            lengthMenu: \"Mostrando _MENU_ resultados por página\",\n            zeroRecords: \"Nothing found - sorry\",\n            info: \"Viendo página _PAGE_ de _PAGES_\",\n            infoEmpty: \"No hay registros disponibles\",\n            infoFiltered: \"(Filtrado de _MAX_ registros en total)\",\n            oPaginate: { sFirst:\"Primero\",sLast:\"Ultimo\",sNext:\"Siguiente\",sPrevious:\"Previo\" },\n            sEmptyTable:\"No hay datos en la tabla\",\n            sSearch:\"Buscar:\",\n            sLoadingRecords:\"Cargando...\",\n            sProcessing:\"Procesando...\",\n            sZeroRecords:\"No hay registros que coincidan con el criterio de búsqueda\"\n        }\n    });\n    $(\'#container\').css( \'display\', \'block\' );\n    // table.columns.adjust().draw();\n    // table.fnAdjustColumnSizing();\n}\n\nfunction generarInformePrevisualizar() {\n    const fechaMaxima = moment(fecha_fin.value, \'YYYY-MM-DD\')\n    .endOf(\'day\')\n    .toISOString();\n    if(fecha_inicio.value && fecha_fin.value)\n        $(\'#informePrevisualizar\').html(\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:21:0&fechaInicio=\'+fecha_inicio.value+\'&fechaFin=\' + fechaMaxima) +\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:31:0&fechaInicio=\'+fecha_inicio.value+\'&fechaFin=\' + fechaMaxima)\n        );\n}\n\nfunction getLiquidacion() {\n    /* const fechaMaxima = moment(fecha_fin_liq.value, \'YYYY-MM-DD\')\n    .endOf(\'day\')\n    .toISOString(); */\n    if(fecha_inicio_liq.value && fecha_fin_liq.value)\n        $(\'#informeLiquidaciones\').html(\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:35:0&fechaInicio=\'+fecha_inicio_liq.value+\'&fechaFin=\' + fecha_fin_liq.value)\n        );\n}\n\nfunction mostrarMensajePopUp(TituloPopUp, Mensaje) {\n    $(\'#modalMensajeTitulo\').html(TituloPopUp);\n	$(\'#modalMensajeCuerpo\').html(Mensaje);\n\n    //Retira cualquier clase preexistente o remanente de cualquier personalizacion previa y agrega las clases base\n    $(\"#modalMensaje\").removeClass();\n    $(\"#modalMensaje\").addClass( \"modal fade modal-wide in\" );\n    // $( \"#modalMensaje\" ).addClass( \"modal\" );\n    // $( \"#modalMensaje\" ).addClass( \"fade\" );\n    $(\"#modalMensaje\").addClass( \"oculto_impresion\" );\n\n    //Agrega las clases personalizadas por el usuario\n    /* if (ClasesAdicionales!=\"\")\n        $( \"#modalMensaje\" ).addClass( ClasesAdicionales ); */\n\n	// Se muestra el cuadro modal\n	$(\'#modalMensaje\').modal(\'show\');\n\n	//Hacer que la ventana este siempre por encima\n	$(\"#modalMensaje\").css(\"z-index\", \"1500\");\n	Aplicar_data_table(23);\n	$(\'#PCOContenedor_BotonEscritorio\').hide();\n}\n\nfunction detallVentMecanic() {\n    const idMecanico = document.FRMBASEINFORME.PCO_Valor.value;\n    const fechaMaxima = moment(fecha_fin.value, \'YYYY-MM-DD\')\n        .endOf(\'day\')\n        .toISOString();\n    const condiciones = \" AND app_ventas.id_mecanico=\"+idMecanico+\" AND app_ventas.fecha>=\'\"+fecha_inicio.value+\"\' AND app_ventas.fecha<=\'\"+fechaMaxima+\"\'\";\n\n    mostrarMensajePopUp(\'Detalle ventas mecánico\', PCO_ObtenerContenidoAjax(0, \'index.php\', \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:23:1\'+\n        \'&condiciones=\'+condiciones\n    ));\n}\n\nfunction generarLiquidacion() {\n    if(!fecha_fin.value || !fecha_inicio.value) {\n        PCOJS_MostrarMensaje(\"Aviso del sistema\", \"Debes seleccionar un rango de fecha para generar la liquidación\");\n        return;\n    }\n    document.datos.PCO_Accion.value = \'VENTA_generarLiquidacionMecanicos\';\n    document.datos.Precarga_EstilosBS.value = 1;\n    document.datos.Presentar_FullScreen.value = 0;\n    document.datos.target = \'_self\';\n	document.datos.submit();\n}','B'),(1035,'core_formulario[14].javascript','2025-02-01 09:32:00','rafael',116,4656,'const { \n    fecha_inicio, fecha_fin, fecha_inicio_liq, fecha_fin_liq\n} = document.datos;\n\nfunction FrmAutoRun()\n    {\n        //Aqui sus instrucciones\n    }\n\nfunction Aplicar_data_table(inf)\n{\n                $(\'#TablaInforme_\'+inf).on(\'init.dt\', function(e){\n               $($.fn.dataTable.tables(true)).DataTable()\n                  .columns.adjust();\n            });\n    const table = $(\'#TablaInforme_\'+inf).dataTable({\n        aLengthMenu: [[5, 10, 25, 50, -1], [5, 10, 25, 50, \"All\"]],\n        scrollX: true,\n        scrollY: true,\n        scrollCollapse: true,\n        bAutoWidth: true,\n        processing: true,\n        colReorder: true,\n        fnInitComplete: function() {\n            this.fnAdjustColumnSizing(true);\n        },\n        language: {\n            lengthMenu: \"Mostrando _MENU_ resultados por página\",\n            zeroRecords: \"Nothing found - sorry\",\n            info: \"Viendo página _PAGE_ de _PAGES_\",\n            infoEmpty: \"No hay registros disponibles\",\n            infoFiltered: \"(Filtrado de _MAX_ registros en total)\",\n            oPaginate: { sFirst:\"Primero\",sLast:\"Ultimo\",sNext:\"Siguiente\",sPrevious:\"Previo\" },\n            sEmptyTable:\"No hay datos en la tabla\",\n            sSearch:\"Buscar:\",\n            sLoadingRecords:\"Cargando...\",\n            sProcessing:\"Procesando...\",\n            sZeroRecords:\"No hay registros que coincidan con el criterio de búsqueda\"\n        }\n    });\n    $(\'#container\').css( \'display\', \'block\' );\n    // table.columns.adjust().draw();\n    // table.fnAdjustColumnSizing();\n}\n\nfunction generarInformePrevisualizar() {\n    const fechaMaxima = moment(fecha_fin.value, \'YYYY-MM-DD\')\n    .endOf(\'day\')\n    .toISOString();\n    if(fecha_inicio.value && fecha_fin.value)\n        $(\'#informePrevisualizar\').html(\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:21:0&fechaInicio=\'+fecha_inicio.value+\'&fechaFin=\' + fechaMaxima) +\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:31:0&fechaInicio=\'+fecha_inicio.value+\'&fechaFin=\' + fechaMaxima)\n        );\n}\n\nfunction getLiquidacion() {\n    /* const fechaMaxima = moment(fecha_fin_liq.value, \'YYYY-MM-DD\')\n    .endOf(\'day\')\n    .toISOString(); */\n    if(fecha_inicio_liq.value && fecha_fin_liq.value)\n        $(\'#informeLiquidaciones\').html(\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:35:0&fechaInicio=\'+fecha_inicio_liq.value+\'&fechaFin=\' + fecha_fin_liq.value)\n        );\n}\n\nfunction mostrarMensajePopUp(TituloPopUp, Mensaje) {\n    $(\'#modalMensajeTitulo\').html(TituloPopUp);\n	$(\'#modalMensajeCuerpo\').html(Mensaje);\n\n    //Retira cualquier clase preexistente o remanente de cualquier personalizacion previa y agrega las clases base\n    $(\"#modalMensaje\").removeClass();\n    $(\"#modalMensaje\").addClass(\"modal fade modal-wide in\");\n    // $( \"#modalMensaje\" ).addClass( \"modal\" );\n    // $( \"#modalMensaje\" ).addClass( \"fade\" );\n    $(\"#modalMensaje\").addClass( \"oculto_impresion\" );\n\n    //Agrega las clases personalizadas por el usuario\n    /* if (ClasesAdicionales!=\"\")\n        $( \"#modalMensaje\" ).addClass( ClasesAdicionales ); */\n\n	// Se muestra el cuadro modal\n	$(\'#modalMensaje\').modal(\'show\');\n\n	//Hacer que la ventana este siempre por encima\n	$(\"#modalMensaje\").css(\"z-index\", \"1500\");\n	Aplicar_data_table(23);\n	$(\'#PCOContenedor_BotonEscritorio\').hide();\n}\n\nfunction detallVentMecanic() {\n    const idMecanico = document.FRMBASEINFORME.PCO_Valor.value;\n    const fechaMaxima = moment(fecha_fin.value, \'YYYY-MM-DD\')\n        .endOf(\'day\')\n        .toISOString();\n    const condiciones = \" AND app_ventas.id_mecanico=\"+idMecanico+\" AND app_ventas.fecha>=\'\"+fecha_inicio.value+\"\' AND app_ventas.fecha<=\'\"+fechaMaxima+\"\'\";\n\n    mostrarMensajePopUp(\'Detalle ventas mecánico\', PCO_ObtenerContenidoAjax(0, \'index.php\', \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:23:1\'+\n        \'&condiciones=\'+condiciones\n    ));\n}\n\nfunction generarLiquidacion() {\n    if(!fecha_fin.value || !fecha_inicio.value) {\n        PCOJS_MostrarMensaje(\"Aviso del sistema\", \"Debes seleccionar un rango de fecha para generar la liquidación\");\n        return;\n    }\n    document.datos.PCO_Accion.value = \'VENTA_generarLiquidacionMecanicos\';\n    document.datos.Precarga_EstilosBS.value = 1;\n    document.datos.Presentar_FullScreen.value = 0;\n    document.datos.target = \'_self\';\n	document.datos.submit();\n}','B'),(1036,'core_formulario[14].javascript','2025-02-01 09:36:00','rafael',116,4662,'const { \n    fecha_inicio, fecha_fin, fecha_inicio_liq, fecha_fin_liq\n} = document.datos;\n\nfunction FrmAutoRun()\n    {\n        //Aqui sus instrucciones\n    }\n\nfunction Aplicar_data_table(inf)\n{\n                $(\'#TablaInforme_23_wrapper\').on(\'init.dt\', function(e){\n               $($.fn.dataTable.tables(true)).DataTable()\n                  .columns.adjust();\n            });\n    const table = $(\'#TablaInforme_\'+inf).dataTable({\n        aLengthMenu: [[5, 10, 25, 50, -1], [5, 10, 25, 50, \"All\"]],\n        scrollX: true,\n        scrollY: true,\n        scrollCollapse: true,\n        bAutoWidth: true,\n        processing: true,\n        colReorder: true,\n        fnInitComplete: function() {\n            this.fnAdjustColumnSizing(true);\n        },\n        language: {\n            lengthMenu: \"Mostrando _MENU_ resultados por página\",\n            zeroRecords: \"Nothing found - sorry\",\n            info: \"Viendo página _PAGE_ de _PAGES_\",\n            infoEmpty: \"No hay registros disponibles\",\n            infoFiltered: \"(Filtrado de _MAX_ registros en total)\",\n            oPaginate: { sFirst:\"Primero\",sLast:\"Ultimo\",sNext:\"Siguiente\",sPrevious:\"Previo\" },\n            sEmptyTable:\"No hay datos en la tabla\",\n            sSearch:\"Buscar:\",\n            sLoadingRecords:\"Cargando...\",\n            sProcessing:\"Procesando...\",\n            sZeroRecords:\"No hay registros que coincidan con el criterio de búsqueda\"\n        }\n    });\n    $(\'#container\').css( \'display\', \'block\' );\n    // table.columns.adjust().draw();\n    // table.fnAdjustColumnSizing();\n}\n\nfunction generarInformePrevisualizar() {\n    const fechaMaxima = moment(fecha_fin.value, \'YYYY-MM-DD\')\n    .endOf(\'day\')\n    .toISOString();\n    if(fecha_inicio.value && fecha_fin.value)\n        $(\'#informePrevisualizar\').html(\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:21:0&fechaInicio=\'+fecha_inicio.value+\'&fechaFin=\' + fechaMaxima) +\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:31:0&fechaInicio=\'+fecha_inicio.value+\'&fechaFin=\' + fechaMaxima)\n        );\n}\n\nfunction getLiquidacion() {\n    /* const fechaMaxima = moment(fecha_fin_liq.value, \'YYYY-MM-DD\')\n    .endOf(\'day\')\n    .toISOString(); */\n    if(fecha_inicio_liq.value && fecha_fin_liq.value)\n        $(\'#informeLiquidaciones\').html(\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:35:0&fechaInicio=\'+fecha_inicio_liq.value+\'&fechaFin=\' + fecha_fin_liq.value)\n        );\n}\n\nfunction mostrarMensajePopUp(TituloPopUp, Mensaje) {\n    $(\'#modalMensajeTitulo\').html(TituloPopUp);\n	$(\'#modalMensajeCuerpo\').html(Mensaje);\n\n    //Retira cualquier clase preexistente o remanente de cualquier personalizacion previa y agrega las clases base\n    $(\"#modalMensaje\").removeClass();\n    $(\"#modalMensaje\").addClass(\"modal fade modal-wide in\");\n    // $( \"#modalMensaje\" ).addClass( \"modal\" );\n    // $( \"#modalMensaje\" ).addClass( \"fade\" );\n    $(\"#modalMensaje\").addClass( \"oculto_impresion\" );\n\n    //Agrega las clases personalizadas por el usuario\n    /* if (ClasesAdicionales!=\"\")\n        $( \"#modalMensaje\" ).addClass( ClasesAdicionales ); */\n\n	// Se muestra el cuadro modal\n	$(\'#modalMensaje\').modal(\'show\');\n\n	//Hacer que la ventana este siempre por encima\n	$(\"#modalMensaje\").css(\"z-index\", \"1500\");\n	Aplicar_data_table(23);\n	$(\'#PCOContenedor_BotonEscritorio\').hide();\n}\n\nfunction detallVentMecanic() {\n    const idMecanico = document.FRMBASEINFORME.PCO_Valor.value;\n    const fechaMaxima = moment(fecha_fin.value, \'YYYY-MM-DD\')\n        .endOf(\'day\')\n        .toISOString();\n    const condiciones = \" AND app_ventas.id_mecanico=\"+idMecanico+\" AND app_ventas.fecha>=\'\"+fecha_inicio.value+\"\' AND app_ventas.fecha<=\'\"+fechaMaxima+\"\'\";\n\n    mostrarMensajePopUp(\'Detalle ventas mecánico\', PCO_ObtenerContenidoAjax(0, \'index.php\', \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:23:1\'+\n        \'&condiciones=\'+condiciones\n    ));\n}\n\nfunction generarLiquidacion() {\n    if(!fecha_fin.value || !fecha_inicio.value) {\n        PCOJS_MostrarMensaje(\"Aviso del sistema\", \"Debes seleccionar un rango de fecha para generar la liquidación\");\n        return;\n    }\n    document.datos.PCO_Accion.value = \'VENTA_generarLiquidacionMecanicos\';\n    document.datos.Precarga_EstilosBS.value = 1;\n    document.datos.Presentar_FullScreen.value = 0;\n    document.datos.target = \'_self\';\n	document.datos.submit();\n}','B'),(1037,'core_formulario[14].javascript','2025-02-01 09:38:00','rafael',117,4720,'const { \n    fecha_inicio, fecha_fin, fecha_inicio_liq, fecha_fin_liq\n} = document.datos;\n\nfunction FrmAutoRun()\n    {\n        //Aqui sus instrucciones\n    }\n\nfunction Aplicar_data_table(inf)\n{\n                $(\'#TablaInforme_23_wrapper\').on(\'init.dt\', function(e){\n               $($.fn.dataTable.tables(true)).DataTable()\n                  .columns.adjust();\n            });\n    const table = $(\'#TablaInforme_\'+inf).dataTable({\n        aLengthMenu: [[5, 10, 25, 50, -1], [5, 10, 25, 50, \"All\"]],\n        scrollX: true,\n        scrollY: true,\n        scrollCollapse: true,\n        bAutoWidth: true,\n        processing: true,\n        colReorder: true,\n        fnInitComplete: function() {\n            this.fnAdjustColumnSizing(true);\n        },\n        language: {\n            lengthMenu: \"Mostrando _MENU_ resultados por página\",\n            zeroRecords: \"Nothing found - sorry\",\n            info: \"Viendo página _PAGE_ de _PAGES_\",\n            infoEmpty: \"No hay registros disponibles\",\n            infoFiltered: \"(Filtrado de _MAX_ registros en total)\",\n            oPaginate: { sFirst:\"Primero\",sLast:\"Ultimo\",sNext:\"Siguiente\",sPrevious:\"Previo\" },\n            sEmptyTable:\"No hay datos en la tabla\",\n            sSearch:\"Buscar:\",\n            sLoadingRecords:\"Cargando...\",\n            sProcessing:\"Procesando...\",\n            sZeroRecords:\"No hay registros que coincidan con el criterio de búsqueda\"\n        }\n    });\n    $(\'#TablaInforme_\'+inf).DataTable().columns.adjust();\n    $(\'#container\').css( \'display\', \'block\' );\n    // table.columns.adjust().draw();\n    // table.fnAdjustColumnSizing();\n}\n\nfunction generarInformePrevisualizar() {\n    const fechaMaxima = moment(fecha_fin.value, \'YYYY-MM-DD\')\n    .endOf(\'day\')\n    .toISOString();\n    if(fecha_inicio.value && fecha_fin.value)\n        $(\'#informePrevisualizar\').html(\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:21:0&fechaInicio=\'+fecha_inicio.value+\'&fechaFin=\' + fechaMaxima) +\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:31:0&fechaInicio=\'+fecha_inicio.value+\'&fechaFin=\' + fechaMaxima)\n        );\n}\n\nfunction getLiquidacion() {\n    /* const fechaMaxima = moment(fecha_fin_liq.value, \'YYYY-MM-DD\')\n    .endOf(\'day\')\n    .toISOString(); */\n    if(fecha_inicio_liq.value && fecha_fin_liq.value)\n        $(\'#informeLiquidaciones\').html(\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:35:0&fechaInicio=\'+fecha_inicio_liq.value+\'&fechaFin=\' + fecha_fin_liq.value)\n        );\n}\n\nfunction mostrarMensajePopUp(TituloPopUp, Mensaje) {\n    $(\'#modalMensajeTitulo\').html(TituloPopUp);\n	$(\'#modalMensajeCuerpo\').html(Mensaje);\n\n    //Retira cualquier clase preexistente o remanente de cualquier personalizacion previa y agrega las clases base\n    $(\"#modalMensaje\").removeClass();\n    $(\"#modalMensaje\").addClass(\"modal fade modal-wide in\");\n    // $( \"#modalMensaje\" ).addClass( \"modal\" );\n    // $( \"#modalMensaje\" ).addClass( \"fade\" );\n    $(\"#modalMensaje\").addClass( \"oculto_impresion\" );\n\n    //Agrega las clases personalizadas por el usuario\n    /* if (ClasesAdicionales!=\"\")\n        $( \"#modalMensaje\" ).addClass( ClasesAdicionales ); */\n\n	// Se muestra el cuadro modal\n	$(\'#modalMensaje\').modal(\'show\');\n\n	//Hacer que la ventana este siempre por encima\n	$(\"#modalMensaje\").css(\"z-index\", \"1500\");\n	Aplicar_data_table(23);\n	$(\'#PCOContenedor_BotonEscritorio\').hide();\n}\n\nfunction detallVentMecanic() {\n    const idMecanico = document.FRMBASEINFORME.PCO_Valor.value;\n    const fechaMaxima = moment(fecha_fin.value, \'YYYY-MM-DD\')\n        .endOf(\'day\')\n        .toISOString();\n    const condiciones = \" AND app_ventas.id_mecanico=\"+idMecanico+\" AND app_ventas.fecha>=\'\"+fecha_inicio.value+\"\' AND app_ventas.fecha<=\'\"+fechaMaxima+\"\'\";\n\n    mostrarMensajePopUp(\'Detalle ventas mecánico\', PCO_ObtenerContenidoAjax(0, \'index.php\', \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:23:1\'+\n        \'&condiciones=\'+condiciones\n    ));\n}\n\nfunction generarLiquidacion() {\n    if(!fecha_fin.value || !fecha_inicio.value) {\n        PCOJS_MostrarMensaje(\"Aviso del sistema\", \"Debes seleccionar un rango de fecha para generar la liquidación\");\n        return;\n    }\n    document.datos.PCO_Accion.value = \'VENTA_generarLiquidacionMecanicos\';\n    document.datos.Precarga_EstilosBS.value = 1;\n    document.datos.Presentar_FullScreen.value = 0;\n    document.datos.target = \'_self\';\n	document.datos.submit();\n}','B'),(1038,'core_formulario[14].javascript','2025-02-01 09:38:00','rafael',117,4720,'const { \n    fecha_inicio, fecha_fin, fecha_inicio_liq, fecha_fin_liq\n} = document.datos;\n\nfunction FrmAutoRun()\n    {\n        //Aqui sus instrucciones\n    }\n\nfunction Aplicar_data_table(inf)\n{\n                $(\'#TablaInforme_23_wrapper\').on(\'init.dt\', function(e){\n               $($.fn.dataTable.tables(true)).DataTable()\n                  .columns.adjust();\n            });\n    const table = $(\'#TablaInforme_\'+inf).dataTable({\n        aLengthMenu: [[5, 10, 25, 50, -1], [5, 10, 25, 50, \"All\"]],\n        scrollX: true,\n        scrollY: true,\n        scrollCollapse: true,\n        bAutoWidth: true,\n        processing: true,\n        colReorder: true,\n        fnInitComplete: function() {\n            this.fnAdjustColumnSizing(true);\n        },\n        language: {\n            lengthMenu: \"Mostrando _MENU_ resultados por página\",\n            zeroRecords: \"Nothing found - sorry\",\n            info: \"Viendo página _PAGE_ de _PAGES_\",\n            infoEmpty: \"No hay registros disponibles\",\n            infoFiltered: \"(Filtrado de _MAX_ registros en total)\",\n            oPaginate: { sFirst:\"Primero\",sLast:\"Ultimo\",sNext:\"Siguiente\",sPrevious:\"Previo\" },\n            sEmptyTable:\"No hay datos en la tabla\",\n            sSearch:\"Buscar:\",\n            sLoadingRecords:\"Cargando...\",\n            sProcessing:\"Procesando...\",\n            sZeroRecords:\"No hay registros que coincidan con el criterio de búsqueda\"\n        }\n    });\n    $(\'#container\').css( \'display\', \'block\' );\n    $(\'#TablaInforme_\'+inf).DataTable().columns.adjust();\n    // table.columns.adjust().draw();\n    // table.fnAdjustColumnSizing();\n}\n\nfunction generarInformePrevisualizar() {\n    const fechaMaxima = moment(fecha_fin.value, \'YYYY-MM-DD\')\n    .endOf(\'day\')\n    .toISOString();\n    if(fecha_inicio.value && fecha_fin.value)\n        $(\'#informePrevisualizar\').html(\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:21:0&fechaInicio=\'+fecha_inicio.value+\'&fechaFin=\' + fechaMaxima) +\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:31:0&fechaInicio=\'+fecha_inicio.value+\'&fechaFin=\' + fechaMaxima)\n        );\n}\n\nfunction getLiquidacion() {\n    /* const fechaMaxima = moment(fecha_fin_liq.value, \'YYYY-MM-DD\')\n    .endOf(\'day\')\n    .toISOString(); */\n    if(fecha_inicio_liq.value && fecha_fin_liq.value)\n        $(\'#informeLiquidaciones\').html(\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:35:0&fechaInicio=\'+fecha_inicio_liq.value+\'&fechaFin=\' + fecha_fin_liq.value)\n        );\n}\n\nfunction mostrarMensajePopUp(TituloPopUp, Mensaje) {\n    $(\'#modalMensajeTitulo\').html(TituloPopUp);\n	$(\'#modalMensajeCuerpo\').html(Mensaje);\n\n    //Retira cualquier clase preexistente o remanente de cualquier personalizacion previa y agrega las clases base\n    $(\"#modalMensaje\").removeClass();\n    $(\"#modalMensaje\").addClass(\"modal fade modal-wide in\");\n    // $( \"#modalMensaje\" ).addClass( \"modal\" );\n    // $( \"#modalMensaje\" ).addClass( \"fade\" );\n    $(\"#modalMensaje\").addClass( \"oculto_impresion\" );\n\n    //Agrega las clases personalizadas por el usuario\n    /* if (ClasesAdicionales!=\"\")\n        $( \"#modalMensaje\" ).addClass( ClasesAdicionales ); */\n\n	// Se muestra el cuadro modal\n	$(\'#modalMensaje\').modal(\'show\');\n\n	//Hacer que la ventana este siempre por encima\n	$(\"#modalMensaje\").css(\"z-index\", \"1500\");\n	Aplicar_data_table(23);\n	$(\'#PCOContenedor_BotonEscritorio\').hide();\n}\n\nfunction detallVentMecanic() {\n    const idMecanico = document.FRMBASEINFORME.PCO_Valor.value;\n    const fechaMaxima = moment(fecha_fin.value, \'YYYY-MM-DD\')\n        .endOf(\'day\')\n        .toISOString();\n    const condiciones = \" AND app_ventas.id_mecanico=\"+idMecanico+\" AND app_ventas.fecha>=\'\"+fecha_inicio.value+\"\' AND app_ventas.fecha<=\'\"+fechaMaxima+\"\'\";\n\n    mostrarMensajePopUp(\'Detalle ventas mecánico\', PCO_ObtenerContenidoAjax(0, \'index.php\', \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:23:1\'+\n        \'&condiciones=\'+condiciones\n    ));\n}\n\nfunction generarLiquidacion() {\n    if(!fecha_fin.value || !fecha_inicio.value) {\n        PCOJS_MostrarMensaje(\"Aviso del sistema\", \"Debes seleccionar un rango de fecha para generar la liquidación\");\n        return;\n    }\n    document.datos.PCO_Accion.value = \'VENTA_generarLiquidacionMecanicos\';\n    document.datos.Precarga_EstilosBS.value = 1;\n    document.datos.Presentar_FullScreen.value = 0;\n    document.datos.target = \'_self\';\n	document.datos.submit();\n}','B'),(1039,'core_formulario[14].javascript','2025-02-01 09:39:00','rafael',117,4727,'const { \n    fecha_inicio, fecha_fin, fecha_inicio_liq, fecha_fin_liq\n} = document.datos;\n\nfunction FrmAutoRun()\n    {\n        //Aqui sus instrucciones\n    }\n\nfunction Aplicar_data_table(inf)\n{\n                $(\'#TablaInforme_23_wrapper\').on(\'init.dt\', function(e){\n               $($.fn.dataTable.tables(true)).DataTable()\n                  .columns.adjust();\n            });\n    const table = $(\'#TablaInforme_\'+inf).dataTable({\n        aLengthMenu: [[5, 10, 25, 50, -1], [5, 10, 25, 50, \"All\"]],\n        scrollX: true,\n        scrollY: true,\n        scrollCollapse: true,\n        bAutoWidth: true,\n        processing: true,\n        colReorder: true,\n        fnInitComplete: function() {\n            this.fnAdjustColumnSizing(true);\n        },\n        language: {\n            lengthMenu: \"Mostrando _MENU_ resultados por página\",\n            zeroRecords: \"Nothing found - sorry\",\n            info: \"Viendo página _PAGE_ de _PAGES_\",\n            infoEmpty: \"No hay registros disponibles\",\n            infoFiltered: \"(Filtrado de _MAX_ registros en total)\",\n            oPaginate: { sFirst:\"Primero\",sLast:\"Ultimo\",sNext:\"Siguiente\",sPrevious:\"Previo\" },\n            sEmptyTable:\"No hay datos en la tabla\",\n            sSearch:\"Buscar:\",\n            sLoadingRecords:\"Cargando...\",\n            sProcessing:\"Procesando...\",\n            sZeroRecords:\"No hay registros que coincidan con el criterio de búsqueda\"\n        }\n    });\n    $(\'#container\').css( \'display\', \'block\' );\n    $(\'#TablaInforme_\'+inf).DataTable().columns.adjust().draw();\n    // table.columns.adjust().draw();\n    // table.fnAdjustColumnSizing();\n}\n\nfunction generarInformePrevisualizar() {\n    const fechaMaxima = moment(fecha_fin.value, \'YYYY-MM-DD\')\n    .endOf(\'day\')\n    .toISOString();\n    if(fecha_inicio.value && fecha_fin.value)\n        $(\'#informePrevisualizar\').html(\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:21:0&fechaInicio=\'+fecha_inicio.value+\'&fechaFin=\' + fechaMaxima) +\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:31:0&fechaInicio=\'+fecha_inicio.value+\'&fechaFin=\' + fechaMaxima)\n        );\n}\n\nfunction getLiquidacion() {\n    /* const fechaMaxima = moment(fecha_fin_liq.value, \'YYYY-MM-DD\')\n    .endOf(\'day\')\n    .toISOString(); */\n    if(fecha_inicio_liq.value && fecha_fin_liq.value)\n        $(\'#informeLiquidaciones\').html(\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:35:0&fechaInicio=\'+fecha_inicio_liq.value+\'&fechaFin=\' + fecha_fin_liq.value)\n        );\n}\n\nfunction mostrarMensajePopUp(TituloPopUp, Mensaje) {\n    $(\'#modalMensajeTitulo\').html(TituloPopUp);\n	$(\'#modalMensajeCuerpo\').html(Mensaje);\n\n    //Retira cualquier clase preexistente o remanente de cualquier personalizacion previa y agrega las clases base\n    $(\"#modalMensaje\").removeClass();\n    $(\"#modalMensaje\").addClass(\"modal fade modal-wide in\");\n    // $( \"#modalMensaje\" ).addClass( \"modal\" );\n    // $( \"#modalMensaje\" ).addClass( \"fade\" );\n    $(\"#modalMensaje\").addClass( \"oculto_impresion\" );\n\n    //Agrega las clases personalizadas por el usuario\n    /* if (ClasesAdicionales!=\"\")\n        $( \"#modalMensaje\" ).addClass( ClasesAdicionales ); */\n\n	// Se muestra el cuadro modal\n	$(\'#modalMensaje\').modal(\'show\');\n\n	//Hacer que la ventana este siempre por encima\n	$(\"#modalMensaje\").css(\"z-index\", \"1500\");\n	Aplicar_data_table(23);\n	$(\'#PCOContenedor_BotonEscritorio\').hide();\n}\n\nfunction detallVentMecanic() {\n    const idMecanico = document.FRMBASEINFORME.PCO_Valor.value;\n    const fechaMaxima = moment(fecha_fin.value, \'YYYY-MM-DD\')\n        .endOf(\'day\')\n        .toISOString();\n    const condiciones = \" AND app_ventas.id_mecanico=\"+idMecanico+\" AND app_ventas.fecha>=\'\"+fecha_inicio.value+\"\' AND app_ventas.fecha<=\'\"+fechaMaxima+\"\'\";\n\n    mostrarMensajePopUp(\'Detalle ventas mecánico\', PCO_ObtenerContenidoAjax(0, \'index.php\', \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:23:1\'+\n        \'&condiciones=\'+condiciones\n    ));\n}\n\nfunction generarLiquidacion() {\n    if(!fecha_fin.value || !fecha_inicio.value) {\n        PCOJS_MostrarMensaje(\"Aviso del sistema\", \"Debes seleccionar un rango de fecha para generar la liquidación\");\n        return;\n    }\n    document.datos.PCO_Accion.value = \'VENTA_generarLiquidacionMecanicos\';\n    document.datos.Precarga_EstilosBS.value = 1;\n    document.datos.Presentar_FullScreen.value = 0;\n    document.datos.target = \'_self\';\n	document.datos.submit();\n}','B'),(1040,'core_formulario[14].javascript','2025-02-01 09:40:00','rafael',117,4715,'const { \n    fecha_inicio, fecha_fin, fecha_inicio_liq, fecha_fin_liq\n} = document.datos;\n\nfunction FrmAutoRun()\n    {\n        //Aqui sus instrucciones\n    }\n\nfunction Aplicar_data_table(inf)\n{\n                $(\'#TablaInforme_23_wrapper\').on(\'init.dt\', function(e){\n               $($.fn.dataTable.tables(true)).DataTable()\n                  .columns.adjust();\n            });\n    const table = $(\'#TablaInforme_\'+inf).dataTable({\n        aLengthMenu: [[5, 10, 25, 50, -1], [5, 10, 25, 50, \"All\"]],\n        scrollX: true,\n        scrollY: true,\n        scrollCollapse: true,\n        bAutoWidth: true,\n        processing: true,\n        colReorder: true,\n        fnInitComplete: function() {\n            this.fnAdjustColumnSizing(true);\n        },\n        language: {\n            lengthMenu: \"Mostrando _MENU_ resultados por página\",\n            zeroRecords: \"Nothing found - sorry\",\n            info: \"Viendo página _PAGE_ de _PAGES_\",\n            infoEmpty: \"No hay registros disponibles\",\n            infoFiltered: \"(Filtrado de _MAX_ registros en total)\",\n            oPaginate: { sFirst:\"Primero\",sLast:\"Ultimo\",sNext:\"Siguiente\",sPrevious:\"Previo\" },\n            sEmptyTable:\"No hay datos en la tabla\",\n            sSearch:\"Buscar:\",\n            sLoadingRecords:\"Cargando...\",\n            sProcessing:\"Procesando...\",\n            sZeroRecords:\"No hay registros que coincidan con el criterio de búsqueda\"\n        }\n    });\n    $(\'#container\').css( \'display\', \'block\' );\n    $(\'#TablaInforme_\'+inf).columns.adjust().draw();\n    // table.columns.adjust().draw();\n    // table.fnAdjustColumnSizing();\n}\n\nfunction generarInformePrevisualizar() {\n    const fechaMaxima = moment(fecha_fin.value, \'YYYY-MM-DD\')\n    .endOf(\'day\')\n    .toISOString();\n    if(fecha_inicio.value && fecha_fin.value)\n        $(\'#informePrevisualizar\').html(\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:21:0&fechaInicio=\'+fecha_inicio.value+\'&fechaFin=\' + fechaMaxima) +\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:31:0&fechaInicio=\'+fecha_inicio.value+\'&fechaFin=\' + fechaMaxima)\n        );\n}\n\nfunction getLiquidacion() {\n    /* const fechaMaxima = moment(fecha_fin_liq.value, \'YYYY-MM-DD\')\n    .endOf(\'day\')\n    .toISOString(); */\n    if(fecha_inicio_liq.value && fecha_fin_liq.value)\n        $(\'#informeLiquidaciones\').html(\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:35:0&fechaInicio=\'+fecha_inicio_liq.value+\'&fechaFin=\' + fecha_fin_liq.value)\n        );\n}\n\nfunction mostrarMensajePopUp(TituloPopUp, Mensaje) {\n    $(\'#modalMensajeTitulo\').html(TituloPopUp);\n	$(\'#modalMensajeCuerpo\').html(Mensaje);\n\n    //Retira cualquier clase preexistente o remanente de cualquier personalizacion previa y agrega las clases base\n    $(\"#modalMensaje\").removeClass();\n    $(\"#modalMensaje\").addClass(\"modal fade modal-wide in\");\n    // $( \"#modalMensaje\" ).addClass( \"modal\" );\n    // $( \"#modalMensaje\" ).addClass( \"fade\" );\n    $(\"#modalMensaje\").addClass( \"oculto_impresion\" );\n\n    //Agrega las clases personalizadas por el usuario\n    /* if (ClasesAdicionales!=\"\")\n        $( \"#modalMensaje\" ).addClass( ClasesAdicionales ); */\n\n	// Se muestra el cuadro modal\n	$(\'#modalMensaje\').modal(\'show\');\n\n	//Hacer que la ventana este siempre por encima\n	$(\"#modalMensaje\").css(\"z-index\", \"1500\");\n	Aplicar_data_table(23);\n	$(\'#PCOContenedor_BotonEscritorio\').hide();\n}\n\nfunction detallVentMecanic() {\n    const idMecanico = document.FRMBASEINFORME.PCO_Valor.value;\n    const fechaMaxima = moment(fecha_fin.value, \'YYYY-MM-DD\')\n        .endOf(\'day\')\n        .toISOString();\n    const condiciones = \" AND app_ventas.id_mecanico=\"+idMecanico+\" AND app_ventas.fecha>=\'\"+fecha_inicio.value+\"\' AND app_ventas.fecha<=\'\"+fechaMaxima+\"\'\";\n\n    mostrarMensajePopUp(\'Detalle ventas mecánico\', PCO_ObtenerContenidoAjax(0, \'index.php\', \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:23:1\'+\n        \'&condiciones=\'+condiciones\n    ));\n}\n\nfunction generarLiquidacion() {\n    if(!fecha_fin.value || !fecha_inicio.value) {\n        PCOJS_MostrarMensaje(\"Aviso del sistema\", \"Debes seleccionar un rango de fecha para generar la liquidación\");\n        return;\n    }\n    document.datos.PCO_Accion.value = \'VENTA_generarLiquidacionMecanicos\';\n    document.datos.Precarga_EstilosBS.value = 1;\n    document.datos.Presentar_FullScreen.value = 0;\n    document.datos.target = \'_self\';\n	document.datos.submit();\n}','B'),(1041,'core_formulario[14].javascript','2025-02-01 09:41:00','rafael',118,4752,'const { \n    fecha_inicio, fecha_fin, fecha_inicio_liq, fecha_fin_liq\n} = document.datos;\n\nfunction FrmAutoRun()\n    {\n        //Aqui sus instrucciones\n    }\n\nfunction Aplicar_data_table(inf)\n{\n                $(\'#TablaInforme_23_wrapper\').on(\'init.dt\', function(e){\n               $($.fn.dataTable.tables(true)).DataTable()\n                  .columns.adjust();\n            });\n    const table = $(\'#TablaInforme_\'+inf).dataTable({\n        aLengthMenu: [[5, 10, 25, 50, -1], [5, 10, 25, 50, \"All\"]],\n        scrollX: true,\n        scrollY: true,\n        scrollCollapse: true,\n        bAutoWidth: true,\n        processing: true,\n        colReorder: true,\n        fnInitComplete: function() {\n            this.fnAdjustColumnSizing(true);\n        },\n        language: {\n            lengthMenu: \"Mostrando _MENU_ resultados por página\",\n            zeroRecords: \"Nothing found - sorry\",\n            info: \"Viendo página _PAGE_ de _PAGES_\",\n            infoEmpty: \"No hay registros disponibles\",\n            infoFiltered: \"(Filtrado de _MAX_ registros en total)\",\n            oPaginate: { sFirst:\"Primero\",sLast:\"Ultimo\",sNext:\"Siguiente\",sPrevious:\"Previo\" },\n            sEmptyTable:\"No hay datos en la tabla\",\n            sSearch:\"Buscar:\",\n            sLoadingRecords:\"Cargando...\",\n            sProcessing:\"Procesando...\",\n            sZeroRecords:\"No hay registros que coincidan con el criterio de búsqueda\"\n        }\n    });\n    $(\'#container\').css( \'display\', \'block\' );\n    $(\'#TablaInforme_\'+inf).columns.adjust().draw();\n    // table.columns.adjust().draw();\n    // table.fnAdjustColumnSizing();\n}\n\nfunction generarInformePrevisualizar() {\n    const fechaMaxima = moment(fecha_fin.value, \'YYYY-MM-DD\')\n    .endOf(\'day\')\n    .toISOString();\n    if(fecha_inicio.value && fecha_fin.value)\n        $(\'#informePrevisualizar\').html(\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:21:0&fechaInicio=\'+fecha_inicio.value+\'&fechaFin=\' + fechaMaxima) +\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:31:0&fechaInicio=\'+fecha_inicio.value+\'&fechaFin=\' + fechaMaxima)\n        );\n}\n\nfunction getLiquidacion() {\n    /* const fechaMaxima = moment(fecha_fin_liq.value, \'YYYY-MM-DD\')\n    .endOf(\'day\')\n    .toISOString(); */\n    if(fecha_inicio_liq.value && fecha_fin_liq.value)\n        $(\'#informeLiquidaciones\').html(\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:35:0&fechaInicio=\'+fecha_inicio_liq.value+\'&fechaFin=\' + fecha_fin_liq.value)\n        );\n}\n\nfunction mostrarMensajePopUp(TituloPopUp, Mensaje) {\n    $(\'#modalMensajeTitulo\').html(TituloPopUp);\n	$(\'#modalMensajeCuerpo\').html(Mensaje);\n\n    //Retira cualquier clase preexistente o remanente de cualquier personalizacion previa y agrega las clases base\n    $(\"#modalMensaje\").removeClass();\n    $(\"#modalMensaje\").addClass(\"modal fade modal-wide in\");\n    // $( \"#modalMensaje\" ).addClass( \"modal\" );\n    // $( \"#modalMensaje\" ).addClass( \"fade\" );\n    $(\"#modalMensaje\").addClass( \"oculto_impresion\" );\n\n    //Agrega las clases personalizadas por el usuario\n    /* if (ClasesAdicionales!=\"\")\n        $( \"#modalMensaje\" ).addClass( ClasesAdicionales ); */\n\n	// Se muestra el cuadro modal\n	$(\'#modalMensaje\').modal(\'show\');\n\n	//Hacer que la ventana este siempre por encima\n	$(\"#modalMensaje\").css(\"z-index\", \"1500\");\n	\n	const myTimeout = setTimeout(Aplicar_data_table(23), 500);\n	$(\'#PCOContenedor_BotonEscritorio\').hide();\n}\n\nfunction detallVentMecanic() {\n    const idMecanico = document.FRMBASEINFORME.PCO_Valor.value;\n    const fechaMaxima = moment(fecha_fin.value, \'YYYY-MM-DD\')\n        .endOf(\'day\')\n        .toISOString();\n    const condiciones = \" AND app_ventas.id_mecanico=\"+idMecanico+\" AND app_ventas.fecha>=\'\"+fecha_inicio.value+\"\' AND app_ventas.fecha<=\'\"+fechaMaxima+\"\'\";\n\n    mostrarMensajePopUp(\'Detalle ventas mecánico\', PCO_ObtenerContenidoAjax(0, \'index.php\', \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:23:1\'+\n        \'&condiciones=\'+condiciones\n    ));\n}\n\nfunction generarLiquidacion() {\n    if(!fecha_fin.value || !fecha_inicio.value) {\n        PCOJS_MostrarMensaje(\"Aviso del sistema\", \"Debes seleccionar un rango de fecha para generar la liquidación\");\n        return;\n    }\n    document.datos.PCO_Accion.value = \'VENTA_generarLiquidacionMecanicos\';\n    document.datos.Precarga_EstilosBS.value = 1;\n    document.datos.Presentar_FullScreen.value = 0;\n    document.datos.target = \'_self\';\n	document.datos.submit();\n}','B'),(1042,'core_formulario[14].javascript','2025-02-01 09:43:00','rafael',118,4753,'const { \n    fecha_inicio, fecha_fin, fecha_inicio_liq, fecha_fin_liq\n} = document.datos;\n\nfunction FrmAutoRun()\n    {\n        //Aqui sus instrucciones\n    }\n\nfunction Aplicar_data_table(inf)\n{\n                $(\'#TablaInforme_23_wrapper\').on(\'init.dt\', function(e){\n               $($.fn.dataTable.tables(true)).DataTable()\n                  .columns.adjust();\n            });\n    const table = $(\'#TablaInforme_\'+inf).dataTable({\n        aLengthMenu: [[5, 10, 25, 50, -1], [5, 10, 25, 50, \"All\"]],\n        scrollX: true,\n        scrollY: true,\n        scrollCollapse: true,\n        bAutoWidth: true,\n        processing: true,\n        colReorder: true,\n        fnInitComplete: function() {\n            this.fnAdjustColumnSizing(true);\n        },\n        language: {\n            lengthMenu: \"Mostrando _MENU_ resultados por página\",\n            zeroRecords: \"Nothing found - sorry\",\n            info: \"Viendo página _PAGE_ de _PAGES_\",\n            infoEmpty: \"No hay registros disponibles\",\n            infoFiltered: \"(Filtrado de _MAX_ registros en total)\",\n            oPaginate: { sFirst:\"Primero\",sLast:\"Ultimo\",sNext:\"Siguiente\",sPrevious:\"Previo\" },\n            sEmptyTable:\"No hay datos en la tabla\",\n            sSearch:\"Buscar:\",\n            sLoadingRecords:\"Cargando...\",\n            sProcessing:\"Procesando...\",\n            sZeroRecords:\"No hay registros que coincidan con el criterio de búsqueda\"\n        }\n    });\n    $(\'#container\').css( \'display\', \'block\' );\n    $(\'#TablaInforme_\'+inf).columns.adjust().draw();\n    // table.columns.adjust().draw();\n    // table.fnAdjustColumnSizing();\n}\n\nfunction generarInformePrevisualizar() {\n    const fechaMaxima = moment(fecha_fin.value, \'YYYY-MM-DD\')\n    .endOf(\'day\')\n    .toISOString();\n    if(fecha_inicio.value && fecha_fin.value)\n        $(\'#informePrevisualizar\').html(\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:21:0&fechaInicio=\'+fecha_inicio.value+\'&fechaFin=\' + fechaMaxima) +\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:31:0&fechaInicio=\'+fecha_inicio.value+\'&fechaFin=\' + fechaMaxima)\n        );\n}\n\nfunction getLiquidacion() {\n    /* const fechaMaxima = moment(fecha_fin_liq.value, \'YYYY-MM-DD\')\n    .endOf(\'day\')\n    .toISOString(); */\n    if(fecha_inicio_liq.value && fecha_fin_liq.value)\n        $(\'#informeLiquidaciones\').html(\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:35:0&fechaInicio=\'+fecha_inicio_liq.value+\'&fechaFin=\' + fecha_fin_liq.value)\n        );\n}\n\nfunction mostrarMensajePopUp(TituloPopUp, Mensaje) {\n    $(\'#modalMensajeTitulo\').html(TituloPopUp);\n	$(\'#modalMensajeCuerpo\').html(Mensaje);\n\n    //Retira cualquier clase preexistente o remanente de cualquier personalizacion previa y agrega las clases base\n    $(\"#modalMensaje\").removeClass();\n    $(\"#modalMensaje\").addClass(\"modal fade modal-wide in\");\n    // $( \"#modalMensaje\" ).addClass( \"modal\" );\n    // $( \"#modalMensaje\" ).addClass( \"fade\" );\n    $(\"#modalMensaje\").addClass( \"oculto_impresion\" );\n\n    //Agrega las clases personalizadas por el usuario\n    /* if (ClasesAdicionales!=\"\")\n        $( \"#modalMensaje\" ).addClass( ClasesAdicionales ); */\n\n	// Se muestra el cuadro modal\n	$(\'#modalMensaje\').modal(\'show\');\n\n	//Hacer que la ventana este siempre por encima\n	$(\"#modalMensaje\").css(\"z-index\", \"1500\");\n	\n	const myTimeout = setTimeout(Aplicar_data_table(23), 1000);\n	$(\'#PCOContenedor_BotonEscritorio\').hide();\n}\n\nfunction detallVentMecanic() {\n    const idMecanico = document.FRMBASEINFORME.PCO_Valor.value;\n    const fechaMaxima = moment(fecha_fin.value, \'YYYY-MM-DD\')\n        .endOf(\'day\')\n        .toISOString();\n    const condiciones = \" AND app_ventas.id_mecanico=\"+idMecanico+\" AND app_ventas.fecha>=\'\"+fecha_inicio.value+\"\' AND app_ventas.fecha<=\'\"+fechaMaxima+\"\'\";\n\n    mostrarMensajePopUp(\'Detalle ventas mecánico\', PCO_ObtenerContenidoAjax(0, \'index.php\', \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:23:1\'+\n        \'&condiciones=\'+condiciones\n    ));\n}\n\nfunction generarLiquidacion() {\n    if(!fecha_fin.value || !fecha_inicio.value) {\n        PCOJS_MostrarMensaje(\"Aviso del sistema\", \"Debes seleccionar un rango de fecha para generar la liquidación\");\n        return;\n    }\n    document.datos.PCO_Accion.value = \'VENTA_generarLiquidacionMecanicos\';\n    document.datos.Precarga_EstilosBS.value = 1;\n    document.datos.Presentar_FullScreen.value = 0;\n    document.datos.target = \'_self\';\n	document.datos.submit();\n}','B'),(1043,'core_formulario[14].javascript','2025-02-01 09:45:00','rafael',119,4759,'const { \n    fecha_inicio, fecha_fin, fecha_inicio_liq, fecha_fin_liq\n} = document.datos;\n\nfunction FrmAutoRun()\n    {\n        //Aqui sus instrucciones\n    }\n\nfunction Aplicar_data_table(inf)\n{\n                $(\'#TablaInforme_23_wrapper\').on(\'init.dt\', function(e){\n               $($.fn.dataTable.tables(true)).DataTable()\n                  .columns.adjust();\n            });\n    const table = $(\'#TablaInforme_\'+inf).dataTable({\n        aLengthMenu: [[5, 10, 25, 50, -1], [5, 10, 25, 50, \"All\"]],\n        scrollX: true,\n        scrollY: true,\n        scrollCollapse: true,\n        bAutoWidth: true,\n        processing: true,\n        colReorder: true,\n        fnInitComplete: function() {\n            this.fnAdjustColumnSizing(true);\n        },\n        language: {\n            lengthMenu: \"Mostrando _MENU_ resultados por página\",\n            zeroRecords: \"Nothing found - sorry\",\n            info: \"Viendo página _PAGE_ de _PAGES_\",\n            infoEmpty: \"No hay registros disponibles\",\n            infoFiltered: \"(Filtrado de _MAX_ registros en total)\",\n            oPaginate: { sFirst:\"Primero\",sLast:\"Ultimo\",sNext:\"Siguiente\",sPrevious:\"Previo\" },\n            sEmptyTable:\"No hay datos en la tabla\",\n            sSearch:\"Buscar:\",\n            sLoadingRecords:\"Cargando...\",\n            sProcessing:\"Procesando...\",\n            sZeroRecords:\"No hay registros que coincidan con el criterio de búsqueda\"\n        }\n    });\n    $(\'#container\').css( \'display\', \'block\' );\n    setTimeout(table.columns.adjust().draw(), 1000);\n    \n    // table.columns.adjust().draw();\n    // table.fnAdjustColumnSizing();\n}\n\nfunction generarInformePrevisualizar() {\n    const fechaMaxima = moment(fecha_fin.value, \'YYYY-MM-DD\')\n    .endOf(\'day\')\n    .toISOString();\n    if(fecha_inicio.value && fecha_fin.value)\n        $(\'#informePrevisualizar\').html(\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:21:0&fechaInicio=\'+fecha_inicio.value+\'&fechaFin=\' + fechaMaxima) +\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:31:0&fechaInicio=\'+fecha_inicio.value+\'&fechaFin=\' + fechaMaxima)\n        );\n}\n\nfunction getLiquidacion() {\n    /* const fechaMaxima = moment(fecha_fin_liq.value, \'YYYY-MM-DD\')\n    .endOf(\'day\')\n    .toISOString(); */\n    if(fecha_inicio_liq.value && fecha_fin_liq.value)\n        $(\'#informeLiquidaciones\').html(\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:35:0&fechaInicio=\'+fecha_inicio_liq.value+\'&fechaFin=\' + fecha_fin_liq.value)\n        );\n}\n\nfunction mostrarMensajePopUp(TituloPopUp, Mensaje) {\n    $(\'#modalMensajeTitulo\').html(TituloPopUp);\n	$(\'#modalMensajeCuerpo\').html(Mensaje);\n\n    //Retira cualquier clase preexistente o remanente de cualquier personalizacion previa y agrega las clases base\n    $(\"#modalMensaje\").removeClass();\n    $(\"#modalMensaje\").addClass(\"modal fade modal-wide in\");\n    // $( \"#modalMensaje\" ).addClass( \"modal\" );\n    // $( \"#modalMensaje\" ).addClass( \"fade\" );\n    $(\"#modalMensaje\").addClass( \"oculto_impresion\" );\n\n    //Agrega las clases personalizadas por el usuario\n    /* if (ClasesAdicionales!=\"\")\n        $( \"#modalMensaje\" ).addClass( ClasesAdicionales ); */\n\n	// Se muestra el cuadro modal\n	$(\'#modalMensaje\').modal(\'show\');\n\n	//Hacer que la ventana este siempre por encima\n	$(\"#modalMensaje\").css(\"z-index\", \"1500\");\n	\n	const myTimeout = setTimeout(Aplicar_data_table(23), 1000);\n	$(\'#PCOContenedor_BotonEscritorio\').hide();\n}\n\nfunction detallVentMecanic() {\n    const idMecanico = document.FRMBASEINFORME.PCO_Valor.value;\n    const fechaMaxima = moment(fecha_fin.value, \'YYYY-MM-DD\')\n        .endOf(\'day\')\n        .toISOString();\n    const condiciones = \" AND app_ventas.id_mecanico=\"+idMecanico+\" AND app_ventas.fecha>=\'\"+fecha_inicio.value+\"\' AND app_ventas.fecha<=\'\"+fechaMaxima+\"\'\";\n\n    mostrarMensajePopUp(\'Detalle ventas mecánico\', PCO_ObtenerContenidoAjax(0, \'index.php\', \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:23:1\'+\n        \'&condiciones=\'+condiciones\n    ));\n}\n\nfunction generarLiquidacion() {\n    if(!fecha_fin.value || !fecha_inicio.value) {\n        PCOJS_MostrarMensaje(\"Aviso del sistema\", \"Debes seleccionar un rango de fecha para generar la liquidación\");\n        return;\n    }\n    document.datos.PCO_Accion.value = \'VENTA_generarLiquidacionMecanicos\';\n    document.datos.Precarga_EstilosBS.value = 1;\n    document.datos.Presentar_FullScreen.value = 0;\n    document.datos.target = \'_self\';\n	document.datos.submit();\n}','B'),(1044,'core_formulario[14].javascript','2025-02-01 09:49:00','rafael',120,4796,'const { \n    fecha_inicio, fecha_fin, fecha_inicio_liq, fecha_fin_liq\n} = document.datos;\n\nfunction FrmAutoRun()\n    {\n        //Aqui sus instrucciones\n    }\n\nfunction Aplicar_data_table(inf)\n{\n                $(\'#TablaInforme_23_wrapper\').on(\'init.dt\', function(e){\n               $($.fn.dataTable.tables(true)).DataTable()\n                  .columns.adjust();\n            });\n    const table = $(\'#TablaInforme_\'+inf).dataTable({\n        aLengthMenu: [[5, 10, 25, 50, -1], [5, 10, 25, 50, \"All\"]],\n        scrollX: true,\n        scrollY: true,\n        scrollCollapse: true,\n        bAutoWidth: true,\n        processing: true,\n        colReorder: true,\n        fnInitComplete: function() {\n            this.fnAdjustColumnSizing(true);\n            this.columns.adjust();\n        },\n        language: {\n            lengthMenu: \"Mostrando _MENU_ resultados por página\",\n            zeroRecords: \"Nothing found - sorry\",\n            info: \"Viendo página _PAGE_ de _PAGES_\",\n            infoEmpty: \"No hay registros disponibles\",\n            infoFiltered: \"(Filtrado de _MAX_ registros en total)\",\n            oPaginate: { sFirst:\"Primero\",sLast:\"Ultimo\",sNext:\"Siguiente\",sPrevious:\"Previo\" },\n            sEmptyTable:\"No hay datos en la tabla\",\n            sSearch:\"Buscar:\",\n            sLoadingRecords:\"Cargando...\",\n            sProcessing:\"Procesando...\",\n            sZeroRecords:\"No hay registros que coincidan con el criterio de búsqueda\"\n        }\n    });\n    $(\'#container\').css( \'display\', \'block\' );\n    // setTimeout(table.columns.adjust().draw(), 1000);\n    \n    // table.columns.adjust().draw();\n    // table.fnAdjustColumnSizing();\n}\n\nfunction generarInformePrevisualizar() {\n    const fechaMaxima = moment(fecha_fin.value, \'YYYY-MM-DD\')\n    .endOf(\'day\')\n    .toISOString();\n    if(fecha_inicio.value && fecha_fin.value)\n        $(\'#informePrevisualizar\').html(\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:21:0&fechaInicio=\'+fecha_inicio.value+\'&fechaFin=\' + fechaMaxima) +\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:31:0&fechaInicio=\'+fecha_inicio.value+\'&fechaFin=\' + fechaMaxima)\n        );\n}\n\nfunction getLiquidacion() {\n    /* const fechaMaxima = moment(fecha_fin_liq.value, \'YYYY-MM-DD\')\n    .endOf(\'day\')\n    .toISOString(); */\n    if(fecha_inicio_liq.value && fecha_fin_liq.value)\n        $(\'#informeLiquidaciones\').html(\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:35:0&fechaInicio=\'+fecha_inicio_liq.value+\'&fechaFin=\' + fecha_fin_liq.value)\n        );\n}\n\nfunction mostrarMensajePopUp(TituloPopUp, Mensaje) {\n    $(\'#modalMensajeTitulo\').html(TituloPopUp);\n	$(\'#modalMensajeCuerpo\').html(Mensaje);\n\n    //Retira cualquier clase preexistente o remanente de cualquier personalizacion previa y agrega las clases base\n    $(\"#modalMensaje\").removeClass();\n    $(\"#modalMensaje\").addClass(\"modal fade modal-wide in\");\n    // $( \"#modalMensaje\" ).addClass( \"modal\" );\n    // $( \"#modalMensaje\" ).addClass( \"fade\" );\n    $(\"#modalMensaje\").addClass( \"oculto_impresion\" );\n\n    //Agrega las clases personalizadas por el usuario\n    /* if (ClasesAdicionales!=\"\")\n        $( \"#modalMensaje\" ).addClass( ClasesAdicionales ); */\n\n	// Se muestra el cuadro modal\n	$(\'#modalMensaje\').modal(\'show\');\n\n	//Hacer que la ventana este siempre por encima\n	$(\"#modalMensaje\").css(\"z-index\", \"1500\");\n	\n	const myTimeout = setTimeout(Aplicar_data_table(23), 1000);\n	$(\'#PCOContenedor_BotonEscritorio\').hide();\n}\n\nfunction detallVentMecanic() {\n    const idMecanico = document.FRMBASEINFORME.PCO_Valor.value;\n    const fechaMaxima = moment(fecha_fin.value, \'YYYY-MM-DD\')\n        .endOf(\'day\')\n        .toISOString();\n    const condiciones = \" AND app_ventas.id_mecanico=\"+idMecanico+\" AND app_ventas.fecha>=\'\"+fecha_inicio.value+\"\' AND app_ventas.fecha<=\'\"+fechaMaxima+\"\'\";\n\n    mostrarMensajePopUp(\'Detalle ventas mecánico\', PCO_ObtenerContenidoAjax(0, \'index.php\', \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:23:1\'+\n        \'&condiciones=\'+condiciones\n    ));\n}\n\nfunction generarLiquidacion() {\n    if(!fecha_fin.value || !fecha_inicio.value) {\n        PCOJS_MostrarMensaje(\"Aviso del sistema\", \"Debes seleccionar un rango de fecha para generar la liquidación\");\n        return;\n    }\n    document.datos.PCO_Accion.value = \'VENTA_generarLiquidacionMecanicos\';\n    document.datos.Precarga_EstilosBS.value = 1;\n    document.datos.Presentar_FullScreen.value = 0;\n    document.datos.target = \'_self\';\n	document.datos.submit();\n}','B'),(1045,'core_formulario[14].javascript','2025-02-01 09:52:00','rafael',120,4794,'const { \n    fecha_inicio, fecha_fin, fecha_inicio_liq, fecha_fin_liq\n} = document.datos;\n\nfunction FrmAutoRun()\n    {\n        //Aqui sus instrucciones\n    }\n\nfunction Aplicar_data_table(inf)\n{\n                $(\'#TablaInforme_23_wrapper\').on(\'init.dt\', function(e){\n               $($.fn.dataTable.tables(true)).DataTable()\n                  .columns.adjust();\n            });\n    const table = $(\'#TablaInforme_\'+inf).dataTable({\n        aLengthMenu: [[5, 10, 25, 50, -1], [5, 10, 25, 50, \"All\"]],\n        scrollX: true,\n        scrollY: true,\n        scrollCollapse: true,\n        bAutoWidth: true,\n        processing: true,\n        colReorder: true,\n        fnInitComplete: function() {\n            this.fnAdjustColumnSizing();\n            // this.columns.adjust();\n        },\n        language: {\n            lengthMenu: \"Mostrando _MENU_ resultados por página\",\n            zeroRecords: \"Nothing found - sorry\",\n            info: \"Viendo página _PAGE_ de _PAGES_\",\n            infoEmpty: \"No hay registros disponibles\",\n            infoFiltered: \"(Filtrado de _MAX_ registros en total)\",\n            oPaginate: { sFirst:\"Primero\",sLast:\"Ultimo\",sNext:\"Siguiente\",sPrevious:\"Previo\" },\n            sEmptyTable:\"No hay datos en la tabla\",\n            sSearch:\"Buscar:\",\n            sLoadingRecords:\"Cargando...\",\n            sProcessing:\"Procesando...\",\n            sZeroRecords:\"No hay registros que coincidan con el criterio de búsqueda\"\n        }\n    });\n    $(\'#container\').css( \'display\', \'block\' );\n    // setTimeout(table.columns.adjust().draw(), 1000);\n    \n    // table.columns.adjust().draw();\n    // table.fnAdjustColumnSizing();\n}\n\nfunction generarInformePrevisualizar() {\n    const fechaMaxima = moment(fecha_fin.value, \'YYYY-MM-DD\')\n    .endOf(\'day\')\n    .toISOString();\n    if(fecha_inicio.value && fecha_fin.value)\n        $(\'#informePrevisualizar\').html(\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:21:0&fechaInicio=\'+fecha_inicio.value+\'&fechaFin=\' + fechaMaxima) +\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:31:0&fechaInicio=\'+fecha_inicio.value+\'&fechaFin=\' + fechaMaxima)\n        );\n}\n\nfunction getLiquidacion() {\n    /* const fechaMaxima = moment(fecha_fin_liq.value, \'YYYY-MM-DD\')\n    .endOf(\'day\')\n    .toISOString(); */\n    if(fecha_inicio_liq.value && fecha_fin_liq.value)\n        $(\'#informeLiquidaciones\').html(\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:35:0&fechaInicio=\'+fecha_inicio_liq.value+\'&fechaFin=\' + fecha_fin_liq.value)\n        );\n}\n\nfunction mostrarMensajePopUp(TituloPopUp, Mensaje) {\n    $(\'#modalMensajeTitulo\').html(TituloPopUp);\n	$(\'#modalMensajeCuerpo\').html(Mensaje);\n\n    //Retira cualquier clase preexistente o remanente de cualquier personalizacion previa y agrega las clases base\n    $(\"#modalMensaje\").removeClass();\n    $(\"#modalMensaje\").addClass(\"modal fade modal-wide in\");\n    // $( \"#modalMensaje\" ).addClass( \"modal\" );\n    // $( \"#modalMensaje\" ).addClass( \"fade\" );\n    $(\"#modalMensaje\").addClass( \"oculto_impresion\" );\n\n    //Agrega las clases personalizadas por el usuario\n    /* if (ClasesAdicionales!=\"\")\n        $( \"#modalMensaje\" ).addClass( ClasesAdicionales ); */\n\n	// Se muestra el cuadro modal\n	$(\'#modalMensaje\').modal(\'show\');\n\n	//Hacer que la ventana este siempre por encima\n	$(\"#modalMensaje\").css(\"z-index\", \"1500\");\n	\n	const myTimeout = setTimeout(Aplicar_data_table(23), 1000);\n	$(\'#PCOContenedor_BotonEscritorio\').hide();\n}\n\nfunction detallVentMecanic() {\n    const idMecanico = document.FRMBASEINFORME.PCO_Valor.value;\n    const fechaMaxima = moment(fecha_fin.value, \'YYYY-MM-DD\')\n        .endOf(\'day\')\n        .toISOString();\n    const condiciones = \" AND app_ventas.id_mecanico=\"+idMecanico+\" AND app_ventas.fecha>=\'\"+fecha_inicio.value+\"\' AND app_ventas.fecha<=\'\"+fechaMaxima+\"\'\";\n\n    mostrarMensajePopUp(\'Detalle ventas mecánico\', PCO_ObtenerContenidoAjax(0, \'index.php\', \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:23:1\'+\n        \'&condiciones=\'+condiciones\n    ));\n}\n\nfunction generarLiquidacion() {\n    if(!fecha_fin.value || !fecha_inicio.value) {\n        PCOJS_MostrarMensaje(\"Aviso del sistema\", \"Debes seleccionar un rango de fecha para generar la liquidación\");\n        return;\n    }\n    document.datos.PCO_Accion.value = \'VENTA_generarLiquidacionMecanicos\';\n    document.datos.Precarga_EstilosBS.value = 1;\n    document.datos.Presentar_FullScreen.value = 0;\n    document.datos.target = \'_self\';\n	document.datos.submit();\n}','B'),(1046,'core_formulario[14].javascript','2025-02-01 09:53:00','rafael',120,4794,'const { \n    fecha_inicio, fecha_fin, fecha_inicio_liq, fecha_fin_liq\n} = document.datos;\n\nfunction FrmAutoRun()\n    {\n        //Aqui sus instrucciones\n    }\n\nfunction Aplicar_data_table(inf)\n{\n                $(\'#TablaInforme_23_wrapper\').on(\'init.dt\', function(e){\n               $($.fn.dataTable.tables(true)).DataTable()\n                  .columns.adjust();\n            });\n    const table = $(\'#TablaInforme_\'+inf).dataTable({\n        aLengthMenu: [[5, 10, 25, 50, -1], [5, 10, 25, 50, \"All\"]],\n        scrollX: true,\n        scrollY: true,\n        scrollCollapse: true,\n        bAutoWidth: true,\n        processing: true,\n        colReorder: true,\n        fnInitComplete: function() {\n            this.fnAdjustColumnSizing();\n            this.columns().adjust();\n        },\n        language: {\n            lengthMenu: \"Mostrando _MENU_ resultados por página\",\n            zeroRecords: \"Nothing found - sorry\",\n            info: \"Viendo página _PAGE_ de _PAGES_\",\n            infoEmpty: \"No hay registros disponibles\",\n            infoFiltered: \"(Filtrado de _MAX_ registros en total)\",\n            oPaginate: { sFirst:\"Primero\",sLast:\"Ultimo\",sNext:\"Siguiente\",sPrevious:\"Previo\" },\n            sEmptyTable:\"No hay datos en la tabla\",\n            sSearch:\"Buscar:\",\n            sLoadingRecords:\"Cargando...\",\n            sProcessing:\"Procesando...\",\n            sZeroRecords:\"No hay registros que coincidan con el criterio de búsqueda\"\n        }\n    });\n    $(\'#container\').css( \'display\', \'block\' );\n    // setTimeout(table.columns.adjust().draw(), 1000);\n    \n    // table.columns.adjust().draw();\n    // table.fnAdjustColumnSizing();\n}\n\nfunction generarInformePrevisualizar() {\n    const fechaMaxima = moment(fecha_fin.value, \'YYYY-MM-DD\')\n    .endOf(\'day\')\n    .toISOString();\n    if(fecha_inicio.value && fecha_fin.value)\n        $(\'#informePrevisualizar\').html(\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:21:0&fechaInicio=\'+fecha_inicio.value+\'&fechaFin=\' + fechaMaxima) +\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:31:0&fechaInicio=\'+fecha_inicio.value+\'&fechaFin=\' + fechaMaxima)\n        );\n}\n\nfunction getLiquidacion() {\n    /* const fechaMaxima = moment(fecha_fin_liq.value, \'YYYY-MM-DD\')\n    .endOf(\'day\')\n    .toISOString(); */\n    if(fecha_inicio_liq.value && fecha_fin_liq.value)\n        $(\'#informeLiquidaciones\').html(\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:35:0&fechaInicio=\'+fecha_inicio_liq.value+\'&fechaFin=\' + fecha_fin_liq.value)\n        );\n}\n\nfunction mostrarMensajePopUp(TituloPopUp, Mensaje) {\n    $(\'#modalMensajeTitulo\').html(TituloPopUp);\n	$(\'#modalMensajeCuerpo\').html(Mensaje);\n\n    //Retira cualquier clase preexistente o remanente de cualquier personalizacion previa y agrega las clases base\n    $(\"#modalMensaje\").removeClass();\n    $(\"#modalMensaje\").addClass(\"modal fade modal-wide in\");\n    // $( \"#modalMensaje\" ).addClass( \"modal\" );\n    // $( \"#modalMensaje\" ).addClass( \"fade\" );\n    $(\"#modalMensaje\").addClass( \"oculto_impresion\" );\n\n    //Agrega las clases personalizadas por el usuario\n    /* if (ClasesAdicionales!=\"\")\n        $( \"#modalMensaje\" ).addClass( ClasesAdicionales ); */\n\n	// Se muestra el cuadro modal\n	$(\'#modalMensaje\').modal(\'show\');\n\n	//Hacer que la ventana este siempre por encima\n	$(\"#modalMensaje\").css(\"z-index\", \"1500\");\n	\n	const myTimeout = setTimeout(Aplicar_data_table(23), 1000);\n	$(\'#PCOContenedor_BotonEscritorio\').hide();\n}\n\nfunction detallVentMecanic() {\n    const idMecanico = document.FRMBASEINFORME.PCO_Valor.value;\n    const fechaMaxima = moment(fecha_fin.value, \'YYYY-MM-DD\')\n        .endOf(\'day\')\n        .toISOString();\n    const condiciones = \" AND app_ventas.id_mecanico=\"+idMecanico+\" AND app_ventas.fecha>=\'\"+fecha_inicio.value+\"\' AND app_ventas.fecha<=\'\"+fechaMaxima+\"\'\";\n\n    mostrarMensajePopUp(\'Detalle ventas mecánico\', PCO_ObtenerContenidoAjax(0, \'index.php\', \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:23:1\'+\n        \'&condiciones=\'+condiciones\n    ));\n}\n\nfunction generarLiquidacion() {\n    if(!fecha_fin.value || !fecha_inicio.value) {\n        PCOJS_MostrarMensaje(\"Aviso del sistema\", \"Debes seleccionar un rango de fecha para generar la liquidación\");\n        return;\n    }\n    document.datos.PCO_Accion.value = \'VENTA_generarLiquidacionMecanicos\';\n    document.datos.Precarga_EstilosBS.value = 1;\n    document.datos.Presentar_FullScreen.value = 0;\n    document.datos.target = \'_self\';\n	document.datos.submit();\n}','B'),(1047,'core_formulario[14].javascript','2025-02-01 09:54:00','rafael',120,4792,'const { \n    fecha_inicio, fecha_fin, fecha_inicio_liq, fecha_fin_liq\n} = document.datos;\n\nfunction FrmAutoRun()\n    {\n        //Aqui sus instrucciones\n    }\n\nfunction Aplicar_data_table(inf)\n{\n                $(\'#TablaInforme_23_wrapper\').on(\'init.dt\', function(e){\n               $($.fn.dataTable.tables(true)).DataTable()\n                  .columns.adjust();\n            });\n    const table = $(\'#TablaInforme_\'+inf).dataTable({\n        aLengthMenu: [[5, 10, 25, 50, -1], [5, 10, 25, 50, \"All\"]],\n        scrollX: true,\n        scrollY: true,\n        scrollCollapse: true,\n        bAutoWidth: true,\n        processing: true,\n        colReorder: true,\n        fnInitComplete: function() {\n            this.fnAdjustColumnSizing();\n            // this.columns().adjust();\n        },\n        language: {\n            lengthMenu: \"Mostrando _MENU_ resultados por página\",\n            zeroRecords: \"Nothing found - sorry\",\n            info: \"Viendo página _PAGE_ de _PAGES_\",\n            infoEmpty: \"No hay registros disponibles\",\n            infoFiltered: \"(Filtrado de _MAX_ registros en total)\",\n            oPaginate: { sFirst:\"Primero\",sLast:\"Ultimo\",sNext:\"Siguiente\",sPrevious:\"Previo\" },\n            sEmptyTable:\"No hay datos en la tabla\",\n            sSearch:\"Buscar:\",\n            sLoadingRecords:\"Cargando...\",\n            sProcessing:\"Procesando...\",\n            sZeroRecords:\"No hay registros que coincidan con el criterio de búsqueda\"\n        }\n    });\n    $(\'#container\').css( \'display\', \'block\' );\n    setTimeout(table.fnAdjustColumnSizing(), 1000);\n    \n    // table.columns.adjust().draw();\n    // table.fnAdjustColumnSizing();\n}\n\nfunction generarInformePrevisualizar() {\n    const fechaMaxima = moment(fecha_fin.value, \'YYYY-MM-DD\')\n    .endOf(\'day\')\n    .toISOString();\n    if(fecha_inicio.value && fecha_fin.value)\n        $(\'#informePrevisualizar\').html(\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:21:0&fechaInicio=\'+fecha_inicio.value+\'&fechaFin=\' + fechaMaxima) +\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:31:0&fechaInicio=\'+fecha_inicio.value+\'&fechaFin=\' + fechaMaxima)\n        );\n}\n\nfunction getLiquidacion() {\n    /* const fechaMaxima = moment(fecha_fin_liq.value, \'YYYY-MM-DD\')\n    .endOf(\'day\')\n    .toISOString(); */\n    if(fecha_inicio_liq.value && fecha_fin_liq.value)\n        $(\'#informeLiquidaciones\').html(\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:35:0&fechaInicio=\'+fecha_inicio_liq.value+\'&fechaFin=\' + fecha_fin_liq.value)\n        );\n}\n\nfunction mostrarMensajePopUp(TituloPopUp, Mensaje) {\n    $(\'#modalMensajeTitulo\').html(TituloPopUp);\n	$(\'#modalMensajeCuerpo\').html(Mensaje);\n\n    //Retira cualquier clase preexistente o remanente de cualquier personalizacion previa y agrega las clases base\n    $(\"#modalMensaje\").removeClass();\n    $(\"#modalMensaje\").addClass(\"modal fade modal-wide in\");\n    // $( \"#modalMensaje\" ).addClass( \"modal\" );\n    // $( \"#modalMensaje\" ).addClass( \"fade\" );\n    $(\"#modalMensaje\").addClass( \"oculto_impresion\" );\n\n    //Agrega las clases personalizadas por el usuario\n    /* if (ClasesAdicionales!=\"\")\n        $( \"#modalMensaje\" ).addClass( ClasesAdicionales ); */\n\n	// Se muestra el cuadro modal\n	$(\'#modalMensaje\').modal(\'show\');\n\n	//Hacer que la ventana este siempre por encima\n	$(\"#modalMensaje\").css(\"z-index\", \"1500\");\n	\n	const myTimeout = setTimeout(Aplicar_data_table(23), 1000);\n	$(\'#PCOContenedor_BotonEscritorio\').hide();\n}\n\nfunction detallVentMecanic() {\n    const idMecanico = document.FRMBASEINFORME.PCO_Valor.value;\n    const fechaMaxima = moment(fecha_fin.value, \'YYYY-MM-DD\')\n        .endOf(\'day\')\n        .toISOString();\n    const condiciones = \" AND app_ventas.id_mecanico=\"+idMecanico+\" AND app_ventas.fecha>=\'\"+fecha_inicio.value+\"\' AND app_ventas.fecha<=\'\"+fechaMaxima+\"\'\";\n\n    mostrarMensajePopUp(\'Detalle ventas mecánico\', PCO_ObtenerContenidoAjax(0, \'index.php\', \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:23:1\'+\n        \'&condiciones=\'+condiciones\n    ));\n}\n\nfunction generarLiquidacion() {\n    if(!fecha_fin.value || !fecha_inicio.value) {\n        PCOJS_MostrarMensaje(\"Aviso del sistema\", \"Debes seleccionar un rango de fecha para generar la liquidación\");\n        return;\n    }\n    document.datos.PCO_Accion.value = \'VENTA_generarLiquidacionMecanicos\';\n    document.datos.Precarga_EstilosBS.value = 1;\n    document.datos.Presentar_FullScreen.value = 0;\n    document.datos.target = \'_self\';\n	document.datos.submit();\n}','B'),(1048,'core_formulario[14].javascript','2025-02-01 09:55:00','rafael',120,4808,'const { \n    fecha_inicio, fecha_fin, fecha_inicio_liq, fecha_fin_liq\n} = document.datos;\n\nfunction FrmAutoRun()\n    {\n        //Aqui sus instrucciones\n    }\n\nfunction Aplicar_data_table(inf)\n{\n                $(\'#TablaInforme_23_wrapper\').on(\'init.dt\', function(e){\n               $($.fn.dataTable.tables(true)).DataTable()\n                  .columns.adjust();\n            });\n    const table = $(\'#TablaInforme_\'+inf).dataTable({\n        aLengthMenu: [[5, 10, 25, 50, -1], [5, 10, 25, 50, \"All\"]],\n        scrollX: true,\n        scrollY: true,\n        scrollCollapse: true,\n        bAutoWidth: true,\n        processing: true,\n        colReorder: true,\n        fnInitComplete: function() {\n            this.fnAdjustColumnSizing();\n            // this.columns.adjust();\n        },\n        language: {\n            lengthMenu: \"Mostrando _MENU_ resultados por página\",\n            zeroRecords: \"Nothing found - sorry\",\n            info: \"Viendo página _PAGE_ de _PAGES_\",\n            infoEmpty: \"No hay registros disponibles\",\n            infoFiltered: \"(Filtrado de _MAX_ registros en total)\",\n            oPaginate: { sFirst:\"Primero\",sLast:\"Ultimo\",sNext:\"Siguiente\",sPrevious:\"Previo\" },\n            sEmptyTable:\"No hay datos en la tabla\",\n            sSearch:\"Buscar:\",\n            sLoadingRecords:\"Cargando...\",\n            sProcessing:\"Procesando...\",\n            sZeroRecords:\"No hay registros que coincidan con el criterio de búsqueda\"\n        }\n    }).columns.adjust();\n    $(\'#container\').css( \'display\', \'block\' );\n    setTimeout(table.fnAdjustColumnSizing(), 1000);\n    \n    // table.columns.adjust().draw();\n    // table.fnAdjustColumnSizing();\n}\n\nfunction generarInformePrevisualizar() {\n    const fechaMaxima = moment(fecha_fin.value, \'YYYY-MM-DD\')\n    .endOf(\'day\')\n    .toISOString();\n    if(fecha_inicio.value && fecha_fin.value)\n        $(\'#informePrevisualizar\').html(\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:21:0&fechaInicio=\'+fecha_inicio.value+\'&fechaFin=\' + fechaMaxima) +\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:31:0&fechaInicio=\'+fecha_inicio.value+\'&fechaFin=\' + fechaMaxima)\n        );\n}\n\nfunction getLiquidacion() {\n    /* const fechaMaxima = moment(fecha_fin_liq.value, \'YYYY-MM-DD\')\n    .endOf(\'day\')\n    .toISOString(); */\n    if(fecha_inicio_liq.value && fecha_fin_liq.value)\n        $(\'#informeLiquidaciones\').html(\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:35:0&fechaInicio=\'+fecha_inicio_liq.value+\'&fechaFin=\' + fecha_fin_liq.value)\n        );\n}\n\nfunction mostrarMensajePopUp(TituloPopUp, Mensaje) {\n    $(\'#modalMensajeTitulo\').html(TituloPopUp);\n	$(\'#modalMensajeCuerpo\').html(Mensaje);\n\n    //Retira cualquier clase preexistente o remanente de cualquier personalizacion previa y agrega las clases base\n    $(\"#modalMensaje\").removeClass();\n    $(\"#modalMensaje\").addClass(\"modal fade modal-wide in\");\n    // $( \"#modalMensaje\" ).addClass( \"modal\" );\n    // $( \"#modalMensaje\" ).addClass( \"fade\" );\n    $(\"#modalMensaje\").addClass( \"oculto_impresion\" );\n\n    //Agrega las clases personalizadas por el usuario\n    /* if (ClasesAdicionales!=\"\")\n        $( \"#modalMensaje\" ).addClass( ClasesAdicionales ); */\n\n	// Se muestra el cuadro modal\n	$(\'#modalMensaje\').modal(\'show\');\n\n	//Hacer que la ventana este siempre por encima\n	$(\"#modalMensaje\").css(\"z-index\", \"1500\");\n	\n	const myTimeout = setTimeout(Aplicar_data_table(23), 1000);\n	$(\'#PCOContenedor_BotonEscritorio\').hide();\n}\n\nfunction detallVentMecanic() {\n    const idMecanico = document.FRMBASEINFORME.PCO_Valor.value;\n    const fechaMaxima = moment(fecha_fin.value, \'YYYY-MM-DD\')\n        .endOf(\'day\')\n        .toISOString();\n    const condiciones = \" AND app_ventas.id_mecanico=\"+idMecanico+\" AND app_ventas.fecha>=\'\"+fecha_inicio.value+\"\' AND app_ventas.fecha<=\'\"+fechaMaxima+\"\'\";\n\n    mostrarMensajePopUp(\'Detalle ventas mecánico\', PCO_ObtenerContenidoAjax(0, \'index.php\', \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:23:1\'+\n        \'&condiciones=\'+condiciones\n    ));\n}\n\nfunction generarLiquidacion() {\n    if(!fecha_fin.value || !fecha_inicio.value) {\n        PCOJS_MostrarMensaje(\"Aviso del sistema\", \"Debes seleccionar un rango de fecha para generar la liquidación\");\n        return;\n    }\n    document.datos.PCO_Accion.value = \'VENTA_generarLiquidacionMecanicos\';\n    document.datos.Precarga_EstilosBS.value = 1;\n    document.datos.Presentar_FullScreen.value = 0;\n    document.datos.target = \'_self\';\n	document.datos.submit();\n}','B'),(1049,'core_formulario[14].javascript','2025-02-01 09:59:00','rafael',125,4975,'const { \n    fecha_inicio, fecha_fin, fecha_inicio_liq, fecha_fin_liq\n} = document.datos;\n\nfunction FrmAutoRun()\n    {\n        //Aqui sus instrucciones\n    }\n\nfunction Aplicar_data_table(inf)\n{\n               /* $(\'#TablaInforme_23_wrapper\').on(\'init.dt\', function(e){\n               $($.fn.dataTable.tables(true)).DataTable()\n                  .columns.adjust();\n            });*/\n    const table = $(\'#TablaInforme_\'+inf).dataTable({\n        aLengthMenu: [[5, 10, 25, 50, -1], [5, 10, 25, 50, \"All\"]],\n        scrollX: true,\n        scrollY: true,\n        scrollCollapse: true,\n        bAutoWidth: true,\n        processing: true,\n        colReorder: true,\n        fnInitComplete: function() {\n            this.fnAdjustColumnSizing();\n            // this.columns.adjust();\n        },\n        language: {\n            lengthMenu: \"Mostrando _MENU_ resultados por página\",\n            zeroRecords: \"Nothing found - sorry\",\n            info: \"Viendo página _PAGE_ de _PAGES_\",\n            infoEmpty: \"No hay registros disponibles\",\n            infoFiltered: \"(Filtrado de _MAX_ registros en total)\",\n            oPaginate: { sFirst:\"Primero\",sLast:\"Ultimo\",sNext:\"Siguiente\",sPrevious:\"Previo\" },\n            sEmptyTable:\"No hay datos en la tabla\",\n            sSearch:\"Buscar:\",\n            sLoadingRecords:\"Cargando...\",\n            sProcessing:\"Procesando...\",\n            sZeroRecords:\"No hay registros que coincidan con el criterio de búsqueda\"\n        }\n    }).columns.adjust();\n    $(\'#container\').css( \'display\', \'block\' );\n    setTimeout(table.fnAdjustColumnSizing(), 1000);\n    \n    // table.columns.adjust().draw();\n    // table.fnAdjustColumnSizing();\n}\n\n$(\"#TablaInforme_23\").on(\'init.dt\', function () {\n  $(\"#TablaInforme_23-container\").addClass(\"d-flex\");\n  $(\'#TablaInforme_23\').DataTable().columns.adjust();\n});\n\nfunction generarInformePrevisualizar() {\n    const fechaMaxima = moment(fecha_fin.value, \'YYYY-MM-DD\')\n    .endOf(\'day\')\n    .toISOString();\n    if(fecha_inicio.value && fecha_fin.value)\n        $(\'#informePrevisualizar\').html(\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:21:0&fechaInicio=\'+fecha_inicio.value+\'&fechaFin=\' + fechaMaxima) +\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:31:0&fechaInicio=\'+fecha_inicio.value+\'&fechaFin=\' + fechaMaxima)\n        );\n}\n\nfunction getLiquidacion() {\n    /* const fechaMaxima = moment(fecha_fin_liq.value, \'YYYY-MM-DD\')\n    .endOf(\'day\')\n    .toISOString(); */\n    if(fecha_inicio_liq.value && fecha_fin_liq.value)\n        $(\'#informeLiquidaciones\').html(\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:35:0&fechaInicio=\'+fecha_inicio_liq.value+\'&fechaFin=\' + fecha_fin_liq.value)\n        );\n}\n\nfunction mostrarMensajePopUp(TituloPopUp, Mensaje) {\n    $(\'#modalMensajeTitulo\').html(TituloPopUp);\n	$(\'#modalMensajeCuerpo\').html(Mensaje);\n\n    //Retira cualquier clase preexistente o remanente de cualquier personalizacion previa y agrega las clases base\n    $(\"#modalMensaje\").removeClass();\n    $(\"#modalMensaje\").addClass(\"modal fade modal-wide in\");\n    // $( \"#modalMensaje\" ).addClass( \"modal\" );\n    // $( \"#modalMensaje\" ).addClass( \"fade\" );\n    $(\"#modalMensaje\").addClass( \"oculto_impresion\" );\n\n    //Agrega las clases personalizadas por el usuario\n    /* if (ClasesAdicionales!=\"\")\n        $( \"#modalMensaje\" ).addClass( ClasesAdicionales ); */\n\n	// Se muestra el cuadro modal\n	$(\'#modalMensaje\').modal(\'show\');\n\n	//Hacer que la ventana este siempre por encima\n	$(\"#modalMensaje\").css(\"z-index\", \"1500\");\n	\n	const myTimeout = setTimeout(Aplicar_data_table(23), 1000);\n	$(\'#PCOContenedor_BotonEscritorio\').hide();\n}\n\nfunction detallVentMecanic() {\n    const idMecanico = document.FRMBASEINFORME.PCO_Valor.value;\n    const fechaMaxima = moment(fecha_fin.value, \'YYYY-MM-DD\')\n        .endOf(\'day\')\n        .toISOString();\n    const condiciones = \" AND app_ventas.id_mecanico=\"+idMecanico+\" AND app_ventas.fecha>=\'\"+fecha_inicio.value+\"\' AND app_ventas.fecha<=\'\"+fechaMaxima+\"\'\";\n\n    mostrarMensajePopUp(\'Detalle ventas mecánico\', PCO_ObtenerContenidoAjax(0, \'index.php\', \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:23:1\'+\n        \'&condiciones=\'+condiciones\n    ));\n}\n\nfunction generarLiquidacion() {\n    if(!fecha_fin.value || !fecha_inicio.value) {\n        PCOJS_MostrarMensaje(\"Aviso del sistema\", \"Debes seleccionar un rango de fecha para generar la liquidación\");\n        return;\n    }\n    document.datos.PCO_Accion.value = \'VENTA_generarLiquidacionMecanicos\';\n    document.datos.Precarga_EstilosBS.value = 1;\n    document.datos.Presentar_FullScreen.value = 0;\n    document.datos.target = \'_self\';\n	document.datos.submit();\n}','B'),(1050,'core_formulario[14].javascript','2025-02-01 10:00:00','rafael',125,4958,'const { \n    fecha_inicio, fecha_fin, fecha_inicio_liq, fecha_fin_liq\n} = document.datos;\n\nfunction FrmAutoRun()\n    {\n        //Aqui sus instrucciones\n    }\n\nfunction Aplicar_data_table(inf)\n{\n               /* $(\'#TablaInforme_23_wrapper\').on(\'init.dt\', function(e){\n               $($.fn.dataTable.tables(true)).DataTable()\n                  .columns.adjust();\n            });*/\n    const table = $(\'#TablaInforme_\'+inf).dataTable({\n        aLengthMenu: [[5, 10, 25, 50, -1], [5, 10, 25, 50, \"All\"]],\n        scrollX: true,\n        scrollY: true,\n        scrollCollapse: true,\n        bAutoWidth: true,\n        processing: true,\n        colReorder: true,\n        fnInitComplete: function() {\n            this.fnAdjustColumnSizing();\n            // this.columns.adjust();\n        },\n        language: {\n            lengthMenu: \"Mostrando _MENU_ resultados por página\",\n            zeroRecords: \"Nothing found - sorry\",\n            info: \"Viendo página _PAGE_ de _PAGES_\",\n            infoEmpty: \"No hay registros disponibles\",\n            infoFiltered: \"(Filtrado de _MAX_ registros en total)\",\n            oPaginate: { sFirst:\"Primero\",sLast:\"Ultimo\",sNext:\"Siguiente\",sPrevious:\"Previo\" },\n            sEmptyTable:\"No hay datos en la tabla\",\n            sSearch:\"Buscar:\",\n            sLoadingRecords:\"Cargando...\",\n            sProcessing:\"Procesando...\",\n            sZeroRecords:\"No hay registros que coincidan con el criterio de búsqueda\"\n        }\n    });\n    $(\'#container\').css( \'display\', \'block\' );\n    setTimeout(table.fnAdjustColumnSizing(), 1000);\n    \n    // table.columns.adjust().draw();\n    // table.fnAdjustColumnSizing();\n}\n\n$(\"#TablaInforme_23\").on(\'init.dt\', function () {\n  $(\"#TablaInforme_23-container\").addClass(\"d-flex\");\n  $(\'#TablaInforme_23\').DataTable().columns.adjust();\n});\n\nfunction generarInformePrevisualizar() {\n    const fechaMaxima = moment(fecha_fin.value, \'YYYY-MM-DD\')\n    .endOf(\'day\')\n    .toISOString();\n    if(fecha_inicio.value && fecha_fin.value)\n        $(\'#informePrevisualizar\').html(\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:21:0&fechaInicio=\'+fecha_inicio.value+\'&fechaFin=\' + fechaMaxima) +\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:31:0&fechaInicio=\'+fecha_inicio.value+\'&fechaFin=\' + fechaMaxima)\n        );\n}\n\nfunction getLiquidacion() {\n    /* const fechaMaxima = moment(fecha_fin_liq.value, \'YYYY-MM-DD\')\n    .endOf(\'day\')\n    .toISOString(); */\n    if(fecha_inicio_liq.value && fecha_fin_liq.value)\n        $(\'#informeLiquidaciones\').html(\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:35:0&fechaInicio=\'+fecha_inicio_liq.value+\'&fechaFin=\' + fecha_fin_liq.value)\n        );\n}\n\nfunction mostrarMensajePopUp(TituloPopUp, Mensaje) {\n    $(\'#modalMensajeTitulo\').html(TituloPopUp);\n	$(\'#modalMensajeCuerpo\').html(Mensaje);\n\n    //Retira cualquier clase preexistente o remanente de cualquier personalizacion previa y agrega las clases base\n    $(\"#modalMensaje\").removeClass();\n    $(\"#modalMensaje\").addClass(\"modal fade modal-wide in\");\n    // $( \"#modalMensaje\" ).addClass( \"modal\" );\n    // $( \"#modalMensaje\" ).addClass( \"fade\" );\n    $(\"#modalMensaje\").addClass( \"oculto_impresion\" );\n\n    //Agrega las clases personalizadas por el usuario\n    /* if (ClasesAdicionales!=\"\")\n        $( \"#modalMensaje\" ).addClass( ClasesAdicionales ); */\n\n	// Se muestra el cuadro modal\n	$(\'#modalMensaje\').modal(\'show\');\n\n	//Hacer que la ventana este siempre por encima\n	$(\"#modalMensaje\").css(\"z-index\", \"1500\");\n	\n	const myTimeout = setTimeout(Aplicar_data_table(23), 1000);\n	$(\'#PCOContenedor_BotonEscritorio\').hide();\n}\n\nfunction detallVentMecanic() {\n    const idMecanico = document.FRMBASEINFORME.PCO_Valor.value;\n    const fechaMaxima = moment(fecha_fin.value, \'YYYY-MM-DD\')\n        .endOf(\'day\')\n        .toISOString();\n    const condiciones = \" AND app_ventas.id_mecanico=\"+idMecanico+\" AND app_ventas.fecha>=\'\"+fecha_inicio.value+\"\' AND app_ventas.fecha<=\'\"+fechaMaxima+\"\'\";\n\n    mostrarMensajePopUp(\'Detalle ventas mecánico\', PCO_ObtenerContenidoAjax(0, \'index.php\', \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:23:1\'+\n        \'&condiciones=\'+condiciones\n    ));\n}\n\nfunction generarLiquidacion() {\n    if(!fecha_fin.value || !fecha_inicio.value) {\n        PCOJS_MostrarMensaje(\"Aviso del sistema\", \"Debes seleccionar un rango de fecha para generar la liquidación\");\n        return;\n    }\n    document.datos.PCO_Accion.value = \'VENTA_generarLiquidacionMecanicos\';\n    document.datos.Precarga_EstilosBS.value = 1;\n    document.datos.Presentar_FullScreen.value = 0;\n    document.datos.target = \'_self\';\n	document.datos.submit();\n}','B'),(1051,'core_formulario[14].javascript','2025-02-01 10:00:00','rafael',126,5002,'const { \n    fecha_inicio, fecha_fin, fecha_inicio_liq, fecha_fin_liq\n} = document.datos;\n\nfunction FrmAutoRun()\n    {\n        //Aqui sus instrucciones\n    }\n\nfunction Aplicar_data_table(inf)\n{\n               /* $(\'#TablaInforme_23_wrapper\').on(\'init.dt\', function(e){\n               $($.fn.dataTable.tables(true)).DataTable()\n                  .columns.adjust();\n            });*/\n    const table = $(\'#TablaInforme_\'+inf).dataTable({\n        aLengthMenu: [[5, 10, 25, 50, -1], [5, 10, 25, 50, \"All\"]],\n        scrollX: true,\n        scrollY: true,\n        scrollCollapse: true,\n        bAutoWidth: true,\n        processing: true,\n        colReorder: true,\n        fnInitComplete: function() {\n            this.fnAdjustColumnSizing();\n            console.log(\"thisisisis\", this)\n            // this.columns.adjust();\n        },\n        language: {\n            lengthMenu: \"Mostrando _MENU_ resultados por página\",\n            zeroRecords: \"Nothing found - sorry\",\n            info: \"Viendo página _PAGE_ de _PAGES_\",\n            infoEmpty: \"No hay registros disponibles\",\n            infoFiltered: \"(Filtrado de _MAX_ registros en total)\",\n            oPaginate: { sFirst:\"Primero\",sLast:\"Ultimo\",sNext:\"Siguiente\",sPrevious:\"Previo\" },\n            sEmptyTable:\"No hay datos en la tabla\",\n            sSearch:\"Buscar:\",\n            sLoadingRecords:\"Cargando...\",\n            sProcessing:\"Procesando...\",\n            sZeroRecords:\"No hay registros que coincidan con el criterio de búsqueda\"\n        }\n    });\n    $(\'#container\').css( \'display\', \'block\' );\n    setTimeout(table.fnAdjustColumnSizing(), 1000);\n    \n    // table.columns.adjust().draw();\n    // table.fnAdjustColumnSizing();\n}\n\n$(\"#TablaInforme_23\").on(\'init.dt\', function () {\n  $(\"#TablaInforme_23-container\").addClass(\"d-flex\");\n  $(\'#TablaInforme_23\').DataTable().columns.adjust();\n});\n\nfunction generarInformePrevisualizar() {\n    const fechaMaxima = moment(fecha_fin.value, \'YYYY-MM-DD\')\n    .endOf(\'day\')\n    .toISOString();\n    if(fecha_inicio.value && fecha_fin.value)\n        $(\'#informePrevisualizar\').html(\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:21:0&fechaInicio=\'+fecha_inicio.value+\'&fechaFin=\' + fechaMaxima) +\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:31:0&fechaInicio=\'+fecha_inicio.value+\'&fechaFin=\' + fechaMaxima)\n        );\n}\n\nfunction getLiquidacion() {\n    /* const fechaMaxima = moment(fecha_fin_liq.value, \'YYYY-MM-DD\')\n    .endOf(\'day\')\n    .toISOString(); */\n    if(fecha_inicio_liq.value && fecha_fin_liq.value)\n        $(\'#informeLiquidaciones\').html(\n            PCO_ObtenerContenidoAjax(0, \'index.php\',\n            \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:35:0&fechaInicio=\'+fecha_inicio_liq.value+\'&fechaFin=\' + fecha_fin_liq.value)\n        );\n}\n\nfunction mostrarMensajePopUp(TituloPopUp, Mensaje) {\n    $(\'#modalMensajeTitulo\').html(TituloPopUp);\n	$(\'#modalMensajeCuerpo\').html(Mensaje);\n\n    //Retira cualquier clase preexistente o remanente de cualquier personalizacion previa y agrega las clases base\n    $(\"#modalMensaje\").removeClass();\n    $(\"#modalMensaje\").addClass(\"modal fade modal-wide in\");\n    // $( \"#modalMensaje\" ).addClass( \"modal\" );\n    // $( \"#modalMensaje\" ).addClass( \"fade\" );\n    $(\"#modalMensaje\").addClass( \"oculto_impresion\" );\n\n    //Agrega las clases personalizadas por el usuario\n    /* if (ClasesAdicionales!=\"\")\n        $( \"#modalMensaje\" ).addClass( ClasesAdicionales ); */\n\n	// Se muestra el cuadro modal\n	$(\'#modalMensaje\').modal(\'show\');\n\n	//Hacer que la ventana este siempre por encima\n	$(\"#modalMensaje\").css(\"z-index\", \"1500\");\n	\n	const myTimeout = setTimeout(Aplicar_data_table(23), 1000);\n	$(\'#PCOContenedor_BotonEscritorio\').hide();\n}\n\nfunction detallVentMecanic() {\n    const idMecanico = document.FRMBASEINFORME.PCO_Valor.value;\n    const fechaMaxima = moment(fecha_fin.value, \'YYYY-MM-DD\')\n        .endOf(\'day\')\n        .toISOString();\n    const condiciones = \" AND app_ventas.id_mecanico=\"+idMecanico+\" AND app_ventas.fecha>=\'\"+fecha_inicio.value+\"\' AND app_ventas.fecha<=\'\"+fechaMaxima+\"\'\";\n\n    mostrarMensajePopUp(\'Detalle ventas mecánico\', PCO_ObtenerContenidoAjax(0, \'index.php\', \'Presentar_FullScreen=1&Precarga_EstilosBS=0&PCO_Accion=PCO_CargarObjeto&PCO_Objeto=inf:23:1\'+\n        \'&condiciones=\'+condiciones\n    ));\n}\n\nfunction generarLiquidacion() {\n    if(!fecha_fin.value || !fecha_inicio.value) {\n        PCOJS_MostrarMensaje(\"Aviso del sistema\", \"Debes seleccionar un rango de fecha para generar la liquidación\");\n        return;\n    }\n    document.datos.PCO_Accion.value = \'VENTA_generarLiquidacionMecanicos\';\n    document.datos.Precarga_EstilosBS.value = 1;\n    document.datos.Presentar_FullScreen.value = 0;\n    document.datos.target = \'_self\';\n	document.datos.submit();\n}','B'),