����JFIF��H�H����Exif��MM�*���� ��3����V�����3������3�(��������������������3�����
Server IP : 74.208.127.88 / Your IP : 3.144.88.107 Web Server : Apache/2.4.41 (Ubuntu) System : Linux ubuntu 5.4.0-163-generic #180-Ubuntu SMP Tue Sep 5 13:21:23 UTC 2023 x86_64 User : www-data ( 33) PHP Version : 7.4.3-4ubuntu2.29 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare, MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /var/www/html/app6/report/ |
Upload File : |
<?php include "../core/autoload.php"; include "../core/app/model/ProductData.php"; include "../core/app/model/OperationData.php"; include "../core/app/model/OperationTypeData.php"; include "../core/app/model/StockData.php"; include "../core/app/model/ConfigurationData.php"; include "../core/app/model/SellData.php"; include "../core/app/model/PersonData.php"; require_once '../core/controller/PhpWord/Autoloader.php'; // Se desactivan los mensajes de debug error_reporting(~(E_WARNING|E_NOTICE)); //error_reporting(E_ALL); // Se especifica la zona horaria date_default_timezone_set('America/Mexico_City'); //date_default_timezone_set("America/Cancun"); //date_default_timezone_set("America/Mazatlan"); // Se incluye el SDK require_once '../../../sdk2/sdk2.php'; //datos de la venta $sale1= $_GET['sale_id']; // Se especifica la version de CFDi 3.3 $datos['version_cfdi'] = '3.3'; // Ruta del XML Timbrado $datos['cfdi']='../timbrados/cfdi_factura_'.$sale1.'.xml'; // Ruta del XML de Debug $datos['xml_debug']='../timbrados/sin_timbrar_factura_'.$sale1.'.xml'; $users_s= ConfigurationData::UserDemo(); $pass_s= ConfigurationData::PassDemo(); $userMulti = $users_s->val; $passMulti = $pass_s->val; $CerDemo = ConfigurationData::ArchCerDemo(); $KeyDemo = ConfigurationData::ArchKeyDemo(); $passDemoMultis = ConfigurationData::PassDemoMulti(); $ArchCerDemo = $CerDemo->val; $ArchKeyDemo = $KeyDemo->val; $PassDemoMulti = $passDemoMultis->val; $RegimenDemos = ConfigurationData::RegimenfiscalDemo(); $RegimenDemo = $RegimenDemos->val; //valores de la venta totales $sell = SellData::getByFactura($_GET['id']); //obtenemos los datos de configuracion $settingsRFC = ConfigurationData::getByIdRFC(); $settings2 = ConfigurationData::getById1(); $settingsEmisor = ConfigurationData::getByIdEmisor(); $settingsCalle = ConfigurationData::getByIdCalle(); $settingsInt = ConfigurationData::getByIdInt(); $settingsExt = ConfigurationData::getByIdExt(); $settingsColonia = ConfigurationData::getByIdColonia(); $settingsCity = ConfigurationData::getByIdCity(); $settingsCP = ConfigurationData::getByIdCp(); $settingsCodigoSat = ConfigurationData::getByIdClaveSat(); $settingsUnidadSat = ConfigurationData::getByIdUnidadSat(); $settingsRegimenSat = ConfigurationData::getByIdRegimenSat(); // Credenciales de Timbrado $datos['PAC']['usuario'] = ''.$userMulti.''; $datos['PAC']['pass'] = ''.$passMulti.''; $datos['PAC']['produccion'] = 'NO'; // Rutas y clave de los CSD $datos['conf']['cer'] = '../../../sdk2/certificados/'.$ArchCerDemo.''; $datos['conf']['key'] = '../../../sdk2/certificados/'.$ArchKeyDemo.''; $datos['conf']['pass'] = ''.$PassDemoMulti.''; if(isset($sale1)) { //total de la venta $datos['factura']['condicionesDePago'] = 'CONDICIONES'; $datos['factura']['descuento'] = '0.00'; $datos['factura']['fecha_expedicion'] = date('Y-m-d\TH:i:s', time() - 120); $datos['factura']['folio'] = $_GET['sale_id']; $datos['factura']['forma_pago'] = '01'; $datos['factura']['LugarExpedicion'] = $settingsCP->val; $datos['factura']['metodo_pago'] = 'PUE'; $datos['factura']['moneda'] = 'MXN'; $datos['factura']['serie'] = 'A'; $datos['factura']['subtotal'] = $sell->total; $datos['factura']['tipocambio'] = 1; $datos['factura']['tipocomprobante'] = 'I'; $datos['factura']['total'] = $sell->total*1.160000; $datos['factura']['RegimenFiscal'] = ''.$RegimenDemo.''; // Datos del Emisor $RFC_demo_Emisor = "XIA190128J61"; $datos['emisor']['rfc'] = ''.$RFC_demo_Emisor.''; //RFC DE PRUEBA $datos['emisor']['nombre'] = 'ACCEM SERVICIOS EMPRESARIALES SC'; // EMPRESA DE PRUEBA //busqueda en la base de datos del cliente $client=PersonData::getById($sell->person_id); // Datos del Receptor $datos['receptor']['rfc'] = $client->rfc; $datos['receptor']['nombre'] = $client->name; $datos['receptor']['UsoCFDI'] = "G03"; $nombreCliente= $client->name; //******** Se agregan los conceptos $operations = OperationData::getByc($sale1); //buscamos los productos de la venta $i=0; foreach($operations as $operation){ $datos['conceptos'][$i]['cantidad'] = $operation->qty; $datos['conceptos'][$i]['unidad'] = 'NA'; $datos['conceptos'][$i]['ID'] = $operation->id_item; $datos['conceptos'][$i]['descripcion'] = $operation->item_name; $datos['conceptos'][$i]['valorunitario'] = $operation->price; $datos['conceptos'][$i]['importe'] = $operation->price*$operation->qty; $datos['conceptos'][$i]['ClaveProdServ'] = $settingsCodigoSat->val; $datos['conceptos'][$i]['ClaveUnidad'] = $settingsUnidadSat->val; $datos['conceptos'][$i]['Impuestos']['Traslados'][0]['Base'] = $operation->price*$operation->qty; $datos['conceptos'][$i]['Impuestos']['Traslados'][0]['Impuesto'] = '002'; $datos['conceptos'][$i]['Impuestos']['Traslados'][0]['TipoFactor'] = 'Tasa'; $datos['conceptos'][$i]['Impuestos']['Traslados'][0]['TasaOCuota'] = '0.160000'; $valor1 = number_format(($operation->price*$operation->qty)*0.160000,2); $datos['conceptos'][$i]['Impuestos']['Traslados'][0]['Importe'] = $valor1; $impuesto = $impuesto + $valor1; echo "-------------------------------"; echo $valor1; $i=$i+1; } //******** Se agregan los conceptos // Se agregan los Impuestos $datos['impuestos']['translados'][0]['impuesto'] = '002'; $datos['impuestos']['translados'][0]['tasa'] = '0.160000'; $datos['impuestos']['translados'][0]['importe'] = $impuesto; $datos['impuestos']['translados'][0]['TipoFactor'] = 'Tasa'; $datos['impuestos']['TotalImpuestosTrasladados'] = $impuesto; echo "<pre>"; print_r($datos); echo "</pre>"; // Se ejecuta el SDK $res = mf_genera_cfdi($datos); $codigo= $res['codigo_mf_numero']; $name_codigo= $res['codigo_mf_texto']; $uuid= $res['uuid']; $id=$_GET['id']; echo $codigo; /////////// MOSTRAR RESULTADOS DEL ARRAY $res /////////// echo "<h1>Respuesta Generar XML y Timbrado</h1>"; foreach ($res AS $variable => $valor) { $valor = htmlentities($valor); $valor = str_replace('<br/>', '<br/>', $valor); echo "<b>[$variable]=</b>$valor<hr>"; print_r($res); echo $res['uuid']; } //************************************************************************************************************************************+ //generar el pdf $datosHTML['RESPUESTA_UTF8'] = "SI"; $datosHTML['PAC']['usuario'] = ''.$userMulti.''; $datosHTML['PAC']['pass'] = ''.$passMulti.''; $datosHTML['PAC']['produccion'] = "NO"; //MODULO MULTIFACTURAS : CONVIERTE UN XML CFDI A HTML $datosHTML['modulo']="cfdi2html"; //NOMBRE MODULO $datosHTML['rutaxml']=$datos['cfdi']; //RUTA DEL XML CFDI $MombreEmisor= $settingsEmisor->val; $datosHTML['titulo']=''.$MombreEmisor.''; //TITULO DE FACTURA $datosHTML['tipo']="FACTURA"; //TIPO DE FACTURA VENTA,NOMINA,ARRENDAMIENTO, ETC $datosHTML['path_logo']="../timbrados/logo.png"; //RUTA DE LOGOTIPO DE FACTURA $datosHTML['notas']="Pago en una sola exhibicion"; //NOTA IMPRESA EN FACTURA $datosHTML['color_marco']="#013ADF"; //COLOR DEL MARCO DE LA FACTURA $datosHTML['color_marco_texto']="#FFFFFF"; //COLOR DEL TEXTO DEL MARCO DE LA FACTURA $datosHTML['color_texto']="#0174DF"; //COLOR DEL TEXTO EN GENERAL $datosHTML['fuente_texto']="monospace"; //FUENTE DEL TEXTO EN GENERAL $res = mf_ejecuta_modulo($datosHTML); //FUNCION QUE CARGA EL MODULO cfdi2html $HTML=$res['html']; //HTML DEL XML //RESPUESTA DE LA FUNCION CARGAR MODULO ////////////////////////////////////////////////////////////////////////////// //CONVERTIR EL HTML DEL XML CFDI A PDF $datosPDF['PAC']['usuario'] = ''.$userMulti.''; $datosPDF['PAC']['pass'] = ''.$passMulti.''; $datosPDF['PAC']['produccion'] = "NO"; $datosPDF['modulo']="html2pdf"; //NOMBRE MODULO $datosPDF['html']="$HTML"; // HTML DE XML CFDI A CONVERTIR A PDF $datosPDF['archivo_html']=""; // OPCION SI SE TIENE UN ARCHIVO .HTML $datosPDF['archivo_pdf']="../timbrados/cfdi_factura_".$sale1.".pdf"; //$datosPDF['archivo_pdf']="RUTA DONDE SE CREARA EL PDF/nombrearhivo.pdf"; //RUTA DONDE SE GUARDARA EL PDF $res = mf_ejecuta_modulo($datosPDF); //RESPUESTA DE LA FUNCION CARGAR MODULO //$res = ___html2pdf($datosPDF); //RESPUESTA DE LA FUNCION CARGAR MODULO /* echo "<pre>"; print_r($res); echo "</pre>"; */ //*************************************************************************************************************************************** $name =$client->name; $rfc = $client->rfc; if( $codigo == 0) { print_r($res); print "<script>window.location='http://localhost/pos36/pos11/?view=addFact&uuid=$uuid&id=$id&rfc=$rfc&name=$nombreCliente';</script>"; }else { print "<script>window.location='http://localhost/pos36/pos11/?view=errFact&uuid=$codigo&name_codigo=$name_codigo&id=$id';</script>"; echo $codigo; } }