Class: Verifactu::Generators::InstallGenerator
- Inherits:
-
Rails::Generators::Base
- Object
- Rails::Generators::Base
- Verifactu::Generators::InstallGenerator
- Includes:
- ActiveRecord::Generators::Migration
- Defined in:
- lib/generators/verifactu/install/install_generator.rb
Overview
rails g verifactu:install
Deja dos ficheros y nada más: la migración del libro registro y un initializer con la identificación del SIF.
Lo que este generador NO hace, y es deliberado:
- No abre ninguna cadena. El NumeroInstalacion no se autogenera en
ninguna parte de esta gema (ver Cadena.abrir!): un contenedor que se
recrea en cada despliegue acabaría con una instalación por despliegue,
y eso vacía de sentido el encadenamiento.
- No toca el certificado ni escribe dónde vive. Certificado recibe los
bytes ya cargados y no sabe leer ficheros ni ENV a propósito: la
política de almacenamiento de la credencial es de quien despliega.
Instance Method Summary collapse
Instance Method Details
#crear_initializer ⇒ Object
29 30 31 |
# File 'lib/generators/verifactu/install/install_generator.rb', line 29 def crear_initializer template 'verifactu.rb.tt', 'config/initializers/verifactu.rb' end |
#crear_migracion ⇒ Object
33 34 35 36 |
# File 'lib/generators/verifactu/install/install_generator.rb', line 33 def crear_migracion migration_template 'instalar_verifactu.rb.tt', 'db/migrate/instalar_verifactu.rb' end |
#siguientes_pasos ⇒ Object
38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 |
# File 'lib/generators/verifactu/install/install_generator.rb', line 38 def siguientes_pasos say <<~TXT Instalado. Quedan dos cosas, y ninguna se puede hacer por ti: 1. Edita config/initializers/verifactu.rb. Los valores que trae son inválidos a propósito, para que falle pronto y no mande a la AEAT una identificación de SIF inventada. 2. rails db:migrate Después, abre una cadena por cada fuente de facturación (una por tienda, TPV o sede: son SIF virtuales distintos). En un seed, en una tarea rake o en la consola, NO en el initializer: una cadena es un dato, se abre una vez y a conciencia. VerifactuRails::Libro::Cadena.abrir!( numero_instalacion: 'TIENDA-VALENCIA-20260810120000', nif_obligado: '...', nombre_obligado: '...') TXT end |