$PAGELEVEL = FACTURA; $AUTH_redirectTo = $NOAU; pageClearence($PAGELEVEL, $AUTH_redirectTo); $path = "../"; $data = ""; $facturaController = new FacturaController($path); $folioController = new FolioController($path); $sucursalController = new SucursalController($path); $empresaController = new EmpresaController($path); $row_empr = $empresaController->execute('all', null); require_once 'pagn.php'; $nm = "facturas"; $colname_idempresa = base64_decode($_SESSION['idempresa']); $data = $_GET; $data['idempresa'] = $colname_idempresa; $folio = $folioController->execute('soloSerie', $data); $maxRows_facturas = 20; $pageNum_facturas = 0; if (isset($_GET['pageNum_facturas'])) { $pageNum_facturas = $_GET['pageNum_facturas']; } $startRow_facturas = $pageNum_facturas * $maxRows_facturas; $data['maxLimit'] = $maxRows_facturas; $data['minLimit'] = $startRow_facturas; $factura = $facturaController->execute('presentarFactura', $data); if ($factura['cantidad'] === 1) { $tmp = $factura['respuesta']; $factura['respuesta'] = ""; $factura['respuesta'][0] = $tmp; } $idsLote = "";
<?php $PAGELEVEL = FOLIOS_ADD; $AUTH_redirectTo = $NOAU; pageClearence($PAGELEVEL, $AUTH_redirectTo); $path = '../'; $folioController = new FolioController($path); $colname_idempresa = base64_decode($_SESSION['idempresa']); $editFormAction = $_SERVER['PHP_SELF']; if (isset($_SERVER['QUERY_STRING'])) { $editFormAction .= "?" . htmlentities($_SERVER['QUERY_STRING']); } if (isset($_POST["MM_insert"]) && $_POST["MM_insert"] == "form1") { $data = $_POST; $folioController->execute('newFolio', $data); $insertGoTo = "contenido.php?pr=flio"; header(sprintf("Location: %s", $insertGoTo)); } ?> <script> $(document).ready(function(){ $("#form1").validate(); }); </script> <div id="barr"> <div class="bari"><a href="contenido.php">Menú principal</a> :: <a href="contenido.php?pr=flio">Folios</a> :: Agregar folios</div> </div> <div id="cont"> <span class="titt">Folios</span> <!-- Inicia columna izquierda -->
function getFolio($idempresa, $serie) { $ROUTETOINCLUDE = '../../../../'; $folioController = new FolioController($ROUTETOINCLUDE); $folioRow = $folioController->execute("maxFolio", array("idempresa" => $idempresa, "serie" => $serie)); if ($folioRow < 1) { return 1; } else { return $folioRow['respuesta']['maxFolio'] + 1; } }
<?php $PAGELEVEL = FOLIOS_EDIT; $AUTH_redirectTo = $NOAU; pageClearence($PAGELEVEL, $AUTH_redirectTo); $colname_idempresa = base64_decode($_SESSION['idempresa']); $path = '../'; $folioController = new FolioController($path, $path); $editFormAction = $_SERVER['PHP_SELF']; if (isset($_SERVER['QUERY_STRING'])) { $editFormAction .= "?" . htmlentities($_SERVER['QUERY_STRING']); } if (isset($_POST["MM_update"]) && $_POST["MM_update"] == "form1") { $data = $_POST; $folioController->execute('updateFolio', $data); $updateGoTo = "contenido.php?pr=flio"; header(sprintf("Location: %s", $updateGoTo)); } $colname_folio = "0"; if (isset($_GET['fl'])) { $colname_folio = $_GET['fl']; } $data['idfolio'] = $colname_folio; $folio = $folioController->execute('idFolio', $data); $row_folio = $folio['respuesta']; ?> <script> <!-- $(document).ready(function(){ $("#form1").validate();
$path = '../'; $CRITERIO = ""; $folioController = new FolioController($path); $colname_idempresa = base64_decode($_SESSION['idempresa']); $data = $_GET; $data['idempresa'] = $colname_idempresa; $maxRows_folios = 20; $pageNum_folios = 0; if (isset($_GET['pageNum_folios'])) { $pageNum_folios = $_GET['pageNum_folios']; } $data['maxRows_folios'] = $maxRows_folios; $data['pageNum_folios'] = $pageNum_folios; $startRow_folios = $data['pageNum_folios'] * $data['maxRows_folios']; $data['startRow_folios'] = $startRow_folios; $row_folio = $folioController->execute('allIdEmpr', $data); if (isset($_GET['totalRows_folios'])) { $totalRows_folios = $_GET['totalRows_folios']; } else { $folioPorEmpresa = $folioController->execute('soloSerie', $data); $totalRows_folios = $folioPorEmpresa['cantidad']; } $totalPages_folios = ceil($totalRows_folios / $maxRows_folios) - 1; //$queryString_folios = "as"; if (!empty($_SERVER['QUERY_STRING'])) { $params = explode("&", $_SERVER['QUERY_STRING']); $newParams = array(); foreach ($params as $param) { if (stristr($param, "pageNum_folios") == false && stristr($param, "totalRows_folios") == false) { array_push($newParams, $param); }
function procesaObjeto($objFact) { require_once dirname(dirname(__FILE__)) . '/Controller/FacturaController.php'; require_once dirname(dirname(__FILE__)) . '/Controller/FolioController.php'; try { //crea el objeto factura. $path = '../'; $data = ""; $data['serie'] = $objFact->encabezado->serie; $data['folio'] = $objFact->encabezado->folio; $data['idempresa'] = $objFact->emisor['idempresa']; $data['sucursal'] = $objFact->sucursal['sucursal']; //POSIBLEMNTE CORECCION A SEMILLA 20131202 $facturaController = new FacturaController($path); $emiteDocumento = sprintf("<br>emite documento %s%d", $data['serie'], $data['folio']); echo $emiteDocumento; log_action($emiteDocumento); //1.- VALIDA DATOS STANDAR DEL CFD (función de class.face.php) $resultado = validaObjetoCFD($objFact); if ($resultado == "OK") { $res = null; $cfd = null; $VERSIONCFD = $objFact->emisor['versioncfd']; if ($VERSIONCFD == "3.2") { //CHS - 20131112 Calcula el folio y establece una conexion viva, para generar transaccionalidad entre folio, facturas y sus tablas relacionales if ($objFact->encabezado->folio === 0) { $folioController = new FolioController($path); $folio = $folioController->execute('idempresaSerie', $data); $data['folio'] = $folio['respuesta']['actual']; $objFact->encabezado->folio = $data['folio']; } $res = procesaXmlV32($objFact, $cfd); //coref5 if ($res === "-1") { throw new Exception($res); } } else { $msg = "La version del Certificado es incorrecta"; log_action("procesaObjeto.php: {$msg}"); throw new Exception($msg); } $errorMsg = ""; if (isset($cfd['error'])) { $errorMsg = trim($cfd['error']); } if ($res != 0 || $errorMsg != "") { log_action($errorMsg); throw new Exception($errorMsg); } else { log_action("XML Creado."); $objFact->cfdi = $cfd; if ($objFact->emisor['versioncfd'] == "3.2") { //CFDI: ENVIA PARA TIMBRADO AL PAC. log_action("peticion de timbrado"); log_action("serie" . $objFact->encabezado->serie . " " . "folio" . $objFact->encabezado->folio); log_action(print_r($cfd['xmlutf8'], TRUE)); $respuesta_PAC = SOAP_client($objFact->emisor['rfc'], base64_encode($cfd['xmlutf8'])); log_action(print_r($respuesta_PAC, TRUE)); //Checar si respuesta es el certificado timbrado o es un error. if (stristr($respuesta_PAC, 'UUID')) { log_action("timbrado exitoso"); $objFact->cfdi['respuestaPac'] = $respuesta_PAC; $factura = $facturaController->execute('facturaTimbrada', $objFact); $msgcfdi = 'CFDI Salvado con exito!'; if (!empty($objFact->encabezado->mailEntrega) && $objFact->encabezado->mailEntrega != "") { $objFact->mail = TRUE; } else { $objFact->mail = FALSE; } log_action($msgcfdi); return $factura['respuesta']; } else { if (stristr($respuesta_PAC, 'xml')) { //Viene del PAC. $xmlerror_array = xml2array($respuesta_PAC); $err_codigo = $xmlerror_array['Error_attr']['codigo']; $err_msg = $xmlerror_array['Error_attr']['mensaje']; $msgcfdi = 'en el timbrado: ' . 'Codigo de error: ' . $err_codigo . ' Mensaje: ' . $err_msg; log_action($msgcfdi); throw new Exception($msgcfdi); } else { //Excepci�n generada aqu�, no se pudo conectar al PAC. $msgcfdi = 'Al tratar de enviar comprobante, no se pudo contactar al PAC.'; log_action($msgcfdi); throw new Exception($msgcfdi); } } } //fin valida version } //fin del else que valida xml } else { throw new Exception("Estructura Invalida {$resultado}"); } //fin if($resultado=="OK") throw new Exception("validacion del Objeto factura " . $resultado); } catch (Exception $e) { log_action("procesaObjeto :" . $e->getMessage()); return "Error: " . $e->getMessage(); } }