saaim3-sync 2.0.0 → 2.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,36 +1,52 @@
1
- # saaim3batch
1
+ # SaaiM3 Sync
2
2
 
3
- Batch que procesa los archivos **M/A/E** que genera la aduana (SAAI M3) para los pedimentos y los
4
- carga a Oracle. Antes vivía suelto como proyecto Eclipse/Ant; ahora es un módulo **Maven, Java 25**,
5
- que se distribuye como **fat jar**.
3
+ App de escritorio (residente en la **bandeja del sistema**) que procesa los archivos **M/A/E** que
4
+ genera la aduana (SAAI M3) y carga los pedimentos a **Oracle**. Módulo Maven **Java 25**, distribuido
5
+ por **jDeploy** (paquete npm `saaim3-sync`, instaladores nativos con Java embebido y auto-update).
6
6
 
7
- ## Build
7
+ ## Instalación (usuario final, Windows)
8
8
 
9
- ```bash
10
- mvn -DskipTests package
11
- # genera target.tmp/saaim3batch-1.0.0.jar (fat jar autocontenido)
12
- ```
9
+ Descarga el instalador desde **https://www.jdeploy.com/~saaim3-sync** (elige Windows) y ejecútalo.
10
+ Trae el runtime de Java incluido y crea el acceso directo **"SaaiM3 Sync"** con su ícono. Se
11
+ autoactualiza solo (jDeploy) cuando se publica una versión nueva.
13
12
 
14
- ## Ejecución
13
+ > Equipos de aduana (Windows + Bitdefender): el launcher de jDeploy necesita las mismas exclusiones
14
+ > de AV que InteliAduana (`%LOCALAPPDATA%\.jdeploy`, `client4j-*` en `%TEMP%`, y la carpeta de la app).
15
+ > Como InteliAduana ya corre ahí, el entorno normalmente ya está listo.
15
16
 
16
- ```bash
17
- java -jar target.tmp/saaim3batch-1.0.0.jar <directorio> [oficina] [debug]
18
- ```
17
+ ## Uso
19
18
 
20
- - `<directorio>`: carpeta con los archivos `m*/a*/e*`. Los procesados se mueven a `Procesados/`
21
- y los que fallan a `Errores/` (subcarpetas del mismo directorio).
22
- - `[oficina]`: p.ej. `sice_qa_mata` (o `qa_mata`). Si se omite, usa la `oficina.actual`.
23
- - `[debug]`: sube el nivel de log a DEBUG.
19
+ La app vive en la bandeja (junto al reloj). Clic derecho = menú (Ejecutar ahora / Abrir / Pausar /
20
+ Salir); doble clic = abrir la ventana. En **Configuración**:
24
21
 
25
- ### Credenciales (broker, sin exposición)
22
+ - **Carpeta** de los archivos M/A/E (selector nativo).
23
+ - **Oficina** (la conexión a la BD se resuelve por **broker**; al cambiarla avisa para no mezclar
24
+ pedimentos de otra oficina). Si el equipo no tiene InteliAduana, pide una vez el **API key**.
25
+ - **Ejecución**: al detectar archivos nuevos (watch, por defecto), cada N minutos, o manual.
26
+ - **Iniciar con Windows** (opcional).
26
27
 
27
- Las credenciales de Oracle **ya no se pasan por línea de comandos**. Se obtienen del **credential
28
- broker** de InteliAduana: el batch lee el API key de la oficina en `~/.inteliaduana/broker.properties`
29
- (que la instalación de InteliAduana del mismo equipo ya gestiona) y pide al broker el host/sid/usuario/
30
- contraseña. Rotar la contraseña = editar el secreto del broker, sin recompilar.
28
+ Botón **"Ejecutar ahora"** para procesar bajo demanda. La **consola** muestra los mensajes (también en
29
+ `%USERPROFILE%\log\saaim3batch.log`). Los archivos se mueven a `Procesados/` o `Errores/`; si uno
30
+ falla, llega un aviso por correo. La versión (del pom) se muestra en la ventana, la bandeja y los
31
+ avisos, para identificar por screenshot qué versión corre cada equipo.
31
32
 
32
- ## Logging
33
+ ## Credenciales
33
34
 
34
- SLF4J + Logback (`src/main/resources/logback.xml`): consola + archivo rotativo diario en
35
- `~/log/saaim3batch.log` (30 días de historia), con timestamp, nivel, hilo, clase y stack traces
36
- completos en los errores.
35
+ Oracle **por broker** de InteliAduana (nada de credenciales en el equipo). El broker vive aparte
36
+ (`~/git/inteliaduana-broker`); solo se comparte `~/.inteliaduana/broker.properties`.
37
+
38
+ ## Desarrollo / build
39
+
40
+ ```bash
41
+ mvn -DskipTests package # genera target.tmp/saaim3batch.jar (fat jar, mainClass AppBandeja)
42
+ java -jar target.tmp/saaim3batch.jar # corre la app (macOS/Windows) para probar
43
+ ```
44
+
45
+ ## Publicar una versión
46
+
47
+ Sube `<version>` en `pom.xml` y `package.json` (deben coincidir), luego:
48
+
49
+ ```bash
50
+ ./deploy-jdeploy.sh # mvn package + jdeploy publish (npm 'saaim3-sync')
51
+ DRY_RUN=1 ./deploy-jdeploy.sh # solo empaqueta, sin publicar
52
+ ```
@@ -3,7 +3,7 @@
3
3
  var path = require('path');
4
4
  var os = require('os');
5
5
  var jdeployHomeDir = process.env.JDEPLOY_HOME || path.join(os.homedir(), '.jdeploy');
6
- var jarName = "saaim3batch-2.0.0.jar";
6
+ var jarName = "saaim3batch.jar";
7
7
  var mainClass = "{{MAIN_CLASS}}";
8
8
  var classPath = "{{CLASSPATH}}";
9
9
  var port = "0";
package/package.json CHANGED
@@ -1 +1 @@
1
- {"license":"UNLICENSED","author":"Englobar","name":"saaim3-sync","description":"SaaiM3 Sync","files":["jdeploy-bundle"],"version":"2.0.0","jdeploy":{"jdk":false,"checksums":{"icon.png":"491aaf3020865e0e89b74609f93a9f0e"},"mainClass":"com.englobar.saaim3batch.AppBandeja","javaVersion":"25","winAppDir":"AppData\\Local\\Programs","jar":"target.tmp/saaim3batch-2.0.0.jar","javafx":false,"title":"SaaiM3 Sync"}}
1
+ {"license":"UNLICENSED","author":"Englobar","name":"saaim3-sync","description":"SaaiM3 Sync","files":["jdeploy-bundle"],"version":"2.0.2","jdeploy":{"jdk":false,"checksums":{"icon.png":"491aaf3020865e0e89b74609f93a9f0e"},"mainClass":"com.englobar.saaim3batch.AppBandeja","javaVersion":"25","winAppDir":"AppData\\Local\\Programs","jar":"target.tmp/saaim3batch.jar","javafx":false,"title":"SaaiM3 Sync"}}