thegreenter / demo

Ejemplos utilizando Greenter (UBL 2.1, SOAP, Firma digital, PDF, QR)
https://greenter-sample.herokuapp.com
MIT License
60 stars 51 forks source link

help me #9

Closed abelnexus closed 6 years ago

abelnexus commented 6 years ago

captura

abelnexus commented 6 years ago

amigo tengo esas 2 tablas ventas y detalle-ventas en detalle_ventas estan los items de cada venta, como meteria esos items en: captura

abelnexus commented 6 years ago

alguna sugerencia ?

giansalex commented 6 years ago

si usas pdo puedes hacerlo de esta forma.

$invoice = new Invoice();

$items = [];
$result = $con->query("SELECT...");

while($row = $result->fetch(PDO::FETCH_ASSOC)) {
  $detail = new SaleDetail();
  $detail->setDescripcion($row["producto"])
         ->setCantidad($row["cantidad"]);
  // llenar los demas campos
   $items[] = $detail;
}
$invoice->setDetails($items);
abelnexus commented 6 years ago

lo estoy tratando de implementar, pero tengo un grave error :'( mi arquitectura es mvc Y poo y no puedo incluirle la carpeta "vendor/autoload.php" captura

giansalex commented 6 years ago

si factu es la carpeta raiz de tu projecto seria algo asi.

include __DIR__.'/../../vendor/autoload.php';
abelnexus commented 6 years ago

si ya lo intente y no me deja, solo puedo incluirlo en las vistas

giansalex commented 6 years ago

el error indica que no puede abrir el autoload.php, tiene que ser problema de la ruta. Puedes colocar la ruta absoluta para verificar que si lo toma.

abelnexus commented 6 years ago

es un poco dificil de explicar pero estoy seguro que concoes esta arquitectura captura

abelnexus commented 6 years ago

este es el controlador captura

abelnexus commented 6 years ago

lo que intento hacer es pasarle tus librerias aca al controlador de ventas para ahi mismo crear la factura xml

abelnexus commented 6 years ago

pero cuando lo coloco este controlador deja de funcionar

giansalex commented 6 years ago

usas algún framework, parece codeigniter, si es ese puedes guiarte aqui https://serprogramador.es/integrar-composer-a-codeigniter/

abelnexus commented 6 years ago

desgraciadamente no es codeigniter :( es un framework reciclado

abelnexus commented 6 years ago

ya logre incluirlo :D

abelnexus commented 6 years ago

ahora me surge un problemilla mas :'v captura

abelnexus commented 6 years ago

cuando uso un evento para abrir esa pagina y ahi le meto el codigo del reporte de factura sale eso D:

giansalex commented 6 years ago

eso con que lo generas.

abelnexus commented 6 years ago
ITEM CANT. MEDIDA PRODUCTO PRECIO IMPORTE
VACIAR CARRITO

TOTAL A PAGAR

IMPORTE RECIBIDO

0.00

CAMBIO

SUB TOTAL 0.00
I.G.V (%) 0.00
TOTAL 0.00
abelnexus commented 6 years ago

todo ese formulario al momentor de darle submit utilizo este script para llamar a otra funcion captura

abelnexus commented 6 years ago

y esa funcion es imprimir ticket captura

abelnexus commented 6 years ago

lo que hace eso es abrirme esta pagina captura

abelnexus commented 6 years ago

y en esa pagina pongo el codigo del reporte captura

abelnexus commented 6 years ago

enviandole el codigo de ultima venta registrada de hecho todo ocurre al recibir por mensaje la confirmacion que se ingreso correctamente en la bd y me captura el codigo de ultima venta y eso lo envia al print_ticket.php para sacar los datos desde ese codigo captura

abelnexus commented 6 years ago

para hacer este sistema estoy reciclando otros 2 sistemas de uno su framework y del otro sus stylos te enviare a tu correo ese sistema

giansalex commented 6 years ago

tal vez no has colocado los headers adecuados, por ejemplo si es pdf.

header("Content-type: application/pdf");
header("Content-Disposition: inline;filename='downloaded.pdf'");

echo $contentPdf;
abelnexus commented 6 years ago

ya te envie a tu correo

abelnexus commented 6 years ago

captura

abelnexus commented 6 years ago

te volvi a enviar

giansalex commented 6 years ago

lo siento, no me llego ningun adjunto. image

abelnexus commented 6 years ago

ahora se pudo ?

abelnexus commented 6 years ago

amigo estas ?

giansalex commented 6 years ago

he podido abrir el archivo, pero son varias configuraciones que se tiene que realizar para poderlo probar, ahora mismo no cuento con el tiempo. Primero debes probar generando el pdf y guardandolo en el servidor, luego fijate en el content-type envias, parece que mostraras 2 resultados (la respuesta de sunat y el pdf) en una mismo request.

abelnexus commented 6 years ago

no puedo lograrlo :( puedo generar los archivos y guardarlos(xml y cdr) pero no se como mostrar el mensaje de que se envio y recibio

abelnexus commented 6 years ago

de alguna manera ya me salio pero no como deseo: public function generar_factura($data) { $see = Util::getSee(SunatEndpoints::FE_BETA); $res = $see->send($data); Util::writeXml($data, $see->getFactory()->getLastXml()); if ($res->isSuccess()) { $cdr = $res->getCdrResponse(); Util::writeCdr($data, $res->getCdrZip()); $this->sms = 'aceptado por sunat'; Util::getResponseFromCdr($cdr);

        } else {
           var_dump($res->getError());
      } 
    return $this->sms;
}
abelnexus commented 6 years ago

solo recibo ese mensaje de "aceptado por sunat" :'''v pero yo quiero que me diga la "La Factura numero F001-123, ha sido aceptada"

giansalex commented 6 years ago

puedes obtenerlo del cdr,

//...
$cdr = $res->getCdrResponse();
Util::writeCdr($data, $res->getCdrZip());
$this->sms = $cdr->getDescription(); // La Factura ... ha sido aceptada.
abelnexus commented 6 years ago

ya lo consegui muchas gracias :D