Giter Club home page Giter Club logo

Comments (24)

EliuTimana avatar EliuTimana commented on September 25, 2024 2

Claro, he estado revisando el código y ya he identificado mas o menos los cambios, tengo pensado implementarlo. 👍

from lycet.

giansalex avatar giansalex commented on September 25, 2024 1

Hola @EliuTimana , algo simple podria ser llevar las credenciales a un archivo (json, yaml), y en la carpeta data almacenar el certificado y el logo teniendo como nombre el ruc del emisor.

from lycet.

JhonnySA avatar JhonnySA commented on September 25, 2024 1

podrias pasar RUC como parámetro a getSee($ruc), luego en esta linea puedes enviar el ruc como $see = $this->getSee($document->getCompany()->getRuc());,
Acerca del logo solo necesitas el file_get_contents()

Excelente @giansalex , funciona, voy a intentar implementarlo ahora con una tabla

from lycet.

giansalex avatar giansalex commented on September 25, 2024 1

Intentaré hacer una prueba, aparentemente el problema es al obtener los valores de .env

from lycet.

giansalex avatar giansalex commented on September 25, 2024 1

Hola @JhonnySA, acerca del problema que tenias al obtener las variables con getenv, el problema ocurrio desde que se actualizo a symfony v4.3.
Ha sido corregido en 4edb26a

from lycet.

giansalex avatar giansalex commented on September 25, 2024

@EliuTimana si fuera posible que contribuyeras con eso, también podría ayudarte. 😃

from lycet.

crey93 avatar crey93 commented on September 25, 2024

Muy pronto trataré de hacer un cambio similar en este proyecto. Para manejo multiempresas.
Slds.

from lycet.

giansalex avatar giansalex commented on September 25, 2024

Hola @carlosttrr, seria de gran aporte.

from lycet.

OD-n avatar OD-n commented on September 25, 2024

@giansalex que tan difícil sería para la configuración multiempresa alojar el logo y certificado dentro de data ( en una carpeta con su RUC)
Antes:
|--data/
| |--logo.png
| |--cert.pem

Lo que quisiera hacer:
|--data/
| |--100000000001/
| |--logo.png
| |--cert.pem
| |--200000000002/
| |--logo.png
| |--cert.pem
| |--200000000003/
| |--logo.png
| |--cert.pem

y los cambios que se tendría que hacer estaría en:
` public function get($key)
{
if (!isset($this->keys[$key])) {
return '';
}
$path = $this->directory.DIRECTORY_SEPARATOR.(RUC).DIRECTORY_SEPARATOR.$this->keys[$key];

    if (file_exists($path)) {
        return file_get_contents($path);
    }

    return '';
}

`

Espero puedas ayudarme con ello, y si es factible hacerlo de esa manera o que otros cambios tendría que hacer

from lycet.

JhonnySA avatar JhonnySA commented on September 25, 2024

Hola @EliuTimana , algo simple podria ser llevar las credenciales a un archivo (json, yaml), y en la carpeta data almacenar el certificado y el logo teniendo como nombre el ruc del emisor.

Estimado @giansalex antes de nada agradecer por esta herramienta muy importante. Estoy implementado la sugerencia que propusiste lineas arriba, sin embargo no tengo una idea clara de que archivos modificar o si tengo que agregar algun archivo de configuracion.

Agradezco tu respuesta ya que sera de gran ayuda

from lycet.

giansalex avatar giansalex commented on September 25, 2024

Hola @OD-n , @JhonnySA se puede crear un archivo config.json

{
  "empresas": [
    {
      "ruc": "20000000001",
      "usuario": "20000000001MODDATOS",
      "clave": "moddatos",
      "certificado": "cert1.pem",
      "logo": "logo1.png"
    },
    {
      "ruc": "20000000002",
      "usuario": "20000000002TEST",
      "clave": "test",
      "certificado": "cert2.pem",
      "logo": "logo2.png"
    }
  ]
}

los certificados y logos serian los nombres dentro de la carpeta data, la obtencion de la informacion puede realizarse en el metodo getSee()

from lycet.

JhonnySA avatar JhonnySA commented on September 25, 2024

Hola @OD-n , @JhonnySA se puede crear un archivo config.json

{
  "empresas": [
    {
      "ruc": "20000000001",
      "usuario": "20000000001MODDATOS",
      "clave": "moddatos",
      "certificado": "cert1.pem",
      "logo": "logo1.png"
    },
    {
      "ruc": "20000000002",
      "usuario": "20000000002TEST",
      "clave": "test",
      "certificado": "cert2.pem",
      "logo": "logo2.png"
    }
  ]
}

los certificados y logos serian los nombres dentro de la carpeta data, la obtencion de la informacion puede realizarse en el metodo getSee()

Gracias @giansalex por tu respuesta, estoy tratando de encontrar el lugar donde recoger el parametro, en este caso seria el RUC, el cual se tendria que enviar por URL para buscar en mi json de Empresas, me podrias brindar alguna sugerencia de donde poder hacerlo, estoy empezando con Symfony. Espero puedas ayudarme

from lycet.

giansalex avatar giansalex commented on September 25, 2024

Para el caso de los comprobantes el ruc ya esta en el campo $company->getRuc(), solo seria necesario el ruc en el endpoint /status

from lycet.

JhonnySA avatar JhonnySA commented on September 25, 2024

Para el caso de los comprobantes el ruc ya esta en el campo $company->getRuc(), solo seria necesario el ruc en el endpoint /status

Gracias @giansalex por tu respuesta, tratare de entender y hacer lo que recomiendas

from lycet.

JhonnySA avatar JhonnySA commented on September 25, 2024

Para el caso de los comprobantes el ruc ya esta en el campo $company->getRuc(), solo seria necesario el ruc en el endpoint /status

Hola @OD-n , @JhonnySA se puede crear un archivo config.json

{
  "empresas": [
    {
      "ruc": "20000000001",
      "usuario": "20000000001MODDATOS",
      "clave": "moddatos",
      "certificado": "cert1.pem",
      "logo": "logo1.png"
    },
    {
      "ruc": "20000000002",
      "usuario": "20000000002TEST",
      "clave": "test",
      "certificado": "cert2.pem",
      "logo": "logo2.png"
    }
  ]
}

los certificados y logos serian los nombres dentro de la carpeta data, la obtencion de la informacion puede realizarse en el metodo getSee()

Gracias @giansalex por tu respuesta, estoy tratando de encontrar el lugar donde recoger el parametro, en este caso seria el RUC, el cual se tendria que enviar por URL para buscar en mi json de Empresas, me podrias brindar alguna sugerencia de donde poder hacerlo, estoy empezando con Symfony. Espero puedas ayudarme

Estimado @giansalex esto es lo que estoy modificado en el metodo getSee(), talvez no sea la mejor forma de obtener el RUC de la empresa que esta haciendo la peticion, sin embargo como sugeriste $company->getRuc() no encuentro forma de llamarlo para obtenerlo de una forma mas limpia.
image
Para obtener el logo lo tengo de forma similar
image
Asi seria la estructura de mis archivos en data
image

Espero puedas darme tu punto de vista sobre cuan eficiente seria, Gracias de antemano

from lycet.

giansalex avatar giansalex commented on September 25, 2024

podrias pasar RUC como parámetro a getSee($ruc), luego en esta linea puedes enviar el ruc como $see = $this->getSee($document->getCompany()->getRuc());,
Acerca del logo solo necesitas el file_get_contents()

from lycet.

JhonnySA avatar JhonnySA commented on September 25, 2024

@giansalex tengo una consulta, sobre una instalacion limpia de Lycet, configure mi archivo .env a urls de produccion y la respuesta que obtengo son las de prueba, lo se porque estoy intentando enviar 2 veces el mismo comprobante que ya ha sido informado anteriormente a Sunat, y la respuesta es que ha sido sido aceptado correctamente; ¿Los cambios que tengo que realizar solo serian en el archivo .env o existe algun otro archivo que se este usando?

from lycet.

giansalex avatar giansalex commented on September 25, 2024

Para estar seguro de eso, puedes revisar el xml del CDR, alli debería estar la firma de Sunat o indicar que es Beta.
En esta linea deberia setear prod, tambien eliminar cualquier otro archivo .env.xx

from lycet.

JhonnySA avatar JhonnySA commented on September 25, 2024

Lo tengo configurado asi:
image

Y esta saliendo como Beta
image

from lycet.

giansalex avatar giansalex commented on September 25, 2024

Verifica que en esta linea este retornando la url correcta, tambien puedes intentar borrar la carpeta /var

from lycet.

JhonnySA avatar JhonnySA commented on September 25, 2024

Hay varios lugares donde he intentado imprimir valores para guiarme de donde puedo hacer cambios, sin embargo en varios de ellos la respuesta es algo vacio
image

image

from lycet.

JhonnySA avatar JhonnySA commented on September 25, 2024

Probe de esta forma
image

y obtuve esto
image

from lycet.

JhonnySA avatar JhonnySA commented on September 25, 2024

Gracias @giansalex por tu tiempo y tu respuesta, logre hacerlo tomando una copia anterior de Lycet, con el cual no tuve inconvenientes, vi que lograron agregarlo con una configuracion de un archivo JSON, me preguntaba como podria hacer para incluir mis cambios al proyecto, lo termine con una conexion a una base de datos y agrege codigo para subir los archivos de cada empresa en el path de configuration

from lycet.

giansalex avatar giansalex commented on September 25, 2024

Hola @JhonnySA, si quieres incluir tus cambios tendrías que hacer un fork al repositorio, luego pasar los cambios subirlos a ese repositorio, y de allí tendrías la opción de enviar un pull request

from lycet.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.