From d4120bb486e77c1aa5780f98bf4573d25bc13591 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jaime=20Jim=C3=A9nez?= Date: Mon, 22 Dec 2025 20:41:21 +0100 Subject: [PATCH] haciendo pagos pendientes --- logs/erp.log | 933 ++++++++++++------ pom.xml | 2 +- .../imprimelibros/erp/cart/CartService.java | 218 +--- .../erp/payments/PaymentService.java | 104 +- .../erp/payments/repo/PaymentRepository.java | 3 + .../repo/PaymentTransactionRepository.java | 4 + .../erp/pedidos/PedidoLinea.java | 15 +- .../erp/pedidos/PedidoService.java | 359 ++++++- .../erp/pedidos/PedidosController.java | 9 +- .../erp/redsys/RedsysController.java | 116 ++- ...019-add-estados-pago-to-pedidos-lineas.yml | 32 + ...0-add-estados-pago-to-pedidos-lineas-2.yml | 35 + src/main/resources/db/changelog/master.yml | 6 +- src/main/resources/i18n/app_es.properties | 1 + src/main/resources/i18n/pedidos_es.properties | 3 + .../imprimelibros/pedidos/pedidos-common.js | 38 + .../erp/cart/envioCarroTest.java | 2 +- .../erp/presupuesto/savePresupuestosTest.java | 4 +- 18 files changed, 1312 insertions(+), 572 deletions(-) create mode 100644 src/main/resources/db/changelog/changesets/0019-add-estados-pago-to-pedidos-lineas.yml create mode 100644 src/main/resources/db/changelog/changesets/0020-add-estados-pago-to-pedidos-lineas-2.yml diff --git a/logs/erp.log b/logs/erp.log index 54c2e53..a4e023f 100644 --- a/logs/erp.log +++ b/logs/erp.log @@ -1,23 +1,42 @@ -2025-12-12 13:15:28 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Starting ErpApplication using Java 21.0.9 with PID 234757 (/home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros/target/classes started by jjimenez in /home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros) -2025-12-12 13:15:28 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - The following 1 profile is active: "dev" -2025-12-12 13:15:32 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Starting... -2025-12-12 13:15:33 INFO [restartedMain] com.zaxxer.hikari.pool.HikariPool - HikariPool-1 - Added connection com.mysql.cj.jdbc.ConnectionImpl@657269ca -2025-12-12 13:15:33 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Start completed. -2025-12-12 13:15:34 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG -2025-12-12 13:15:34 INFO [restartedMain] liquibase.ui - Database is up to date, no changesets to execute -2025-12-12 13:15:34 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG -2025-12-12 13:15:34 INFO [restartedMain] liquibase.util - UPDATE SUMMARY -2025-12-12 13:15:34 INFO [restartedMain] liquibase.util - Run: 0 -2025-12-12 13:15:34 INFO [restartedMain] liquibase.util - Previously run: 57 -2025-12-12 13:15:34 INFO [restartedMain] liquibase.util - Filtered out: 0 -2025-12-12 13:15:34 INFO [restartedMain] liquibase.util - ------------------------------- -2025-12-12 13:15:34 INFO [restartedMain] liquibase.util - Total change sets: 57 -2025-12-12 13:15:34 INFO [restartedMain] liquibase.util - Update summary generated -2025-12-12 13:15:34 INFO [restartedMain] liquibase.command - Command execution complete -2025-12-12 13:15:35 INFO [restartedMain] o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] -2025-12-12 13:15:35 INFO [restartedMain] org.hibernate.Version - HHH000412: Hibernate ORM core version 6.6.36.Final -2025-12-12 13:15:35 INFO [restartedMain] o.h.c.i.RegionFactoryInitiator - HHH000026: Second-level cache disabled -2025-12-12 13:15:35 INFO [restartedMain] o.hibernate.orm.connections.pooling - HHH10001005: Database info: +2025-12-22 12:05:33 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Starting ErpApplication using Java 21.0.9 with PID 59088 (/home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros/target/classes started by jjimenez in /home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros) +2025-12-22 12:05:33 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - The following 1 profile is active: "dev" +2025-12-22 12:05:36 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Starting... +2025-12-22 12:05:36 INFO [restartedMain] com.zaxxer.hikari.pool.HikariPool - HikariPool-1 - Added connection com.mysql.cj.jdbc.ConnectionImpl@4e9e9a60 +2025-12-22 12:05:36 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Start completed. +2025-12-22 12:05:37 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG +2025-12-22 12:05:38 WARN [restartedMain] liquibase.changelog - Due to mysql SQL limitations, modifyDataType will lose primary key/autoincrement/not null/comment settings explicitly redefined in the change. Use or to re-specify all configuration if this is the case +2025-12-22 12:05:38 WARN [restartedMain] liquibase.changelog - Due to mysql SQL limitations, modifyDataType will lose primary key/autoincrement/not null/comment settings explicitly redefined in the change. Use or to re-specify all configuration if this is the case +2025-12-22 12:05:38 INFO [restartedMain] liquibase.lockservice - Successfully acquired change log lock +2025-12-22 12:05:38 INFO [restartedMain] liquibase.command - Using deploymentId: 6401538395 +2025-12-22 12:05:38 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG +2025-12-22 12:05:38 INFO [restartedMain] liquibase.ui - Running Changeset: db/changelog/changesets/0019-add-estados-pago-to-pedidos-lineas.yml::0019-add-estados-pago-to-pedidos-lineas::jjo +2025-12-22 12:05:38 INFO [restartedMain] liquibase.changelog - pedidos_lineas.estado datatype was changed to enum( + 'pendiente_pago', + 'procesando_pago', + 'aprobado', + 'maquetacion', + 'haciendo_ferro', + 'produccion', + 'terminado', + 'cancelado' +) + +2025-12-22 12:05:38 INFO [restartedMain] liquibase.changelog - ChangeSet db/changelog/changesets/0019-add-estados-pago-to-pedidos-lineas.yml::0019-add-estados-pago-to-pedidos-lineas::jjo ran successfully in 216ms +2025-12-22 12:05:38 INFO [restartedMain] liquibase.util - UPDATE SUMMARY +2025-12-22 12:05:38 INFO [restartedMain] liquibase.util - Run: 1 +2025-12-22 12:05:38 INFO [restartedMain] liquibase.util - Previously run: 58 +2025-12-22 12:05:38 INFO [restartedMain] liquibase.util - Filtered out: 0 +2025-12-22 12:05:38 INFO [restartedMain] liquibase.util - ------------------------------- +2025-12-22 12:05:38 INFO [restartedMain] liquibase.util - Total change sets: 59 +2025-12-22 12:05:38 INFO [restartedMain] liquibase.util - Update summary generated +2025-12-22 12:05:38 INFO [restartedMain] liquibase.command - Update command completed successfully. +2025-12-22 12:05:38 INFO [restartedMain] liquibase.ui - Liquibase: Update has been successful. Rows affected: 30 +2025-12-22 12:05:38 INFO [restartedMain] liquibase.lockservice - Successfully released change log lock +2025-12-22 12:05:38 INFO [restartedMain] liquibase.command - Command execution complete +2025-12-22 12:05:38 INFO [restartedMain] o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-12-22 12:05:38 INFO [restartedMain] org.hibernate.Version - HHH000412: Hibernate ORM core version 6.6.39.Final +2025-12-22 12:05:38 INFO [restartedMain] o.h.c.i.RegionFactoryInitiator - HHH000026: Second-level cache disabled +2025-12-22 12:05:39 INFO [restartedMain] o.hibernate.orm.connections.pooling - HHH10001005: Database info: Database JDBC URL [Connecting through datasource 'HikariDataSource (HikariPool-1)'] Database driver: undefined/unknown Database version: 8.0.43 @@ -25,29 +44,29 @@ Isolation level: undefined/unknown Minimum pool size: undefined/unknown Maximum pool size: undefined/unknown -2025-12-12 13:15:38 INFO [restartedMain] o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000489: No JTA platform available (set 'hibernate.transaction.jta.platform' to enable JTA platform integration) -2025-12-12 13:15:43 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Started ErpApplication in 15.848 seconds (process running for 17.896) -2025-12-12 13:19:37 INFO [Thread-5] com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Shutdown initiated... -2025-12-12 13:19:37 INFO [Thread-5] com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Shutdown completed. -2025-12-12 13:19:37 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Starting ErpApplication using Java 21.0.9 with PID 234757 (/home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros/target/classes started by jjimenez in /home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros) -2025-12-12 13:19:37 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - The following 1 profile is active: "dev" -2025-12-12 13:19:38 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-2 - Starting... -2025-12-12 13:19:38 INFO [restartedMain] com.zaxxer.hikari.pool.HikariPool - HikariPool-2 - Added connection com.mysql.cj.jdbc.ConnectionImpl@ea17993 -2025-12-12 13:19:38 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-2 - Start completed. -2025-12-12 13:19:39 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG -2025-12-12 13:19:39 INFO [restartedMain] liquibase.ui - Database is up to date, no changesets to execute -2025-12-12 13:19:39 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG -2025-12-12 13:19:39 INFO [restartedMain] liquibase.util - UPDATE SUMMARY -2025-12-12 13:19:39 INFO [restartedMain] liquibase.util - Run: 0 -2025-12-12 13:19:39 INFO [restartedMain] liquibase.util - Previously run: 57 -2025-12-12 13:19:39 INFO [restartedMain] liquibase.util - Filtered out: 0 -2025-12-12 13:19:39 INFO [restartedMain] liquibase.util - ------------------------------- -2025-12-12 13:19:39 INFO [restartedMain] liquibase.util - Total change sets: 57 -2025-12-12 13:19:39 INFO [restartedMain] liquibase.util - Update summary generated -2025-12-12 13:19:39 INFO [restartedMain] liquibase.command - Command execution complete -2025-12-12 13:19:39 INFO [restartedMain] o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] -2025-12-12 13:19:39 INFO [restartedMain] o.h.c.i.RegionFactoryInitiator - HHH000026: Second-level cache disabled -2025-12-12 13:19:39 INFO [restartedMain] o.hibernate.orm.connections.pooling - HHH10001005: Database info: +2025-12-22 12:05:41 INFO [restartedMain] o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000489: No JTA platform available (set 'hibernate.transaction.jta.platform' to enable JTA platform integration) +2025-12-22 12:05:46 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Started ErpApplication in 13.627 seconds (process running for 15.141) +2025-12-22 12:17:26 INFO [Thread-5] com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Shutdown initiated... +2025-12-22 12:17:26 INFO [Thread-5] com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Shutdown completed. +2025-12-22 12:17:26 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Starting ErpApplication using Java 21.0.9 with PID 59088 (/home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros/target/classes started by jjimenez in /home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros) +2025-12-22 12:17:26 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - The following 1 profile is active: "dev" +2025-12-22 12:17:27 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-2 - Starting... +2025-12-22 12:17:27 INFO [restartedMain] com.zaxxer.hikari.pool.HikariPool - HikariPool-2 - Added connection com.mysql.cj.jdbc.ConnectionImpl@480e8d53 +2025-12-22 12:17:27 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-2 - Start completed. +2025-12-22 12:17:28 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG +2025-12-22 12:17:28 INFO [restartedMain] liquibase.ui - Database is up to date, no changesets to execute +2025-12-22 12:17:28 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG +2025-12-22 12:17:28 INFO [restartedMain] liquibase.util - UPDATE SUMMARY +2025-12-22 12:17:28 INFO [restartedMain] liquibase.util - Run: 0 +2025-12-22 12:17:28 INFO [restartedMain] liquibase.util - Previously run: 59 +2025-12-22 12:17:28 INFO [restartedMain] liquibase.util - Filtered out: 0 +2025-12-22 12:17:28 INFO [restartedMain] liquibase.util - ------------------------------- +2025-12-22 12:17:28 INFO [restartedMain] liquibase.util - Total change sets: 59 +2025-12-22 12:17:28 INFO [restartedMain] liquibase.util - Update summary generated +2025-12-22 12:17:28 INFO [restartedMain] liquibase.command - Command execution complete +2025-12-22 12:17:28 INFO [restartedMain] o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-12-22 12:17:28 INFO [restartedMain] o.h.c.i.RegionFactoryInitiator - HHH000026: Second-level cache disabled +2025-12-22 12:17:28 INFO [restartedMain] o.hibernate.orm.connections.pooling - HHH10001005: Database info: Database JDBC URL [Connecting through datasource 'HikariDataSource (HikariPool-2)'] Database driver: undefined/unknown Database version: 8.0.43 @@ -55,29 +74,29 @@ Isolation level: undefined/unknown Minimum pool size: undefined/unknown Maximum pool size: undefined/unknown -2025-12-12 13:19:40 INFO [restartedMain] o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000489: No JTA platform available (set 'hibernate.transaction.jta.platform' to enable JTA platform integration) -2025-12-12 13:19:42 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Started ErpApplication in 4.77 seconds (process running for 256.489) -2025-12-12 13:19:45 INFO [Thread-7] com.zaxxer.hikari.HikariDataSource - HikariPool-2 - Shutdown initiated... -2025-12-12 13:19:45 INFO [Thread-7] com.zaxxer.hikari.HikariDataSource - HikariPool-2 - Shutdown completed. -2025-12-12 13:19:45 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Starting ErpApplication using Java 21.0.9 with PID 234757 (/home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros/target/classes started by jjimenez in /home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros) -2025-12-12 13:19:45 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - The following 1 profile is active: "dev" -2025-12-12 13:19:46 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-3 - Starting... -2025-12-12 13:19:46 INFO [restartedMain] com.zaxxer.hikari.pool.HikariPool - HikariPool-3 - Added connection com.mysql.cj.jdbc.ConnectionImpl@2e5e3135 -2025-12-12 13:19:46 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-3 - Start completed. -2025-12-12 13:19:47 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG -2025-12-12 13:19:47 INFO [restartedMain] liquibase.ui - Database is up to date, no changesets to execute -2025-12-12 13:19:47 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG -2025-12-12 13:19:47 INFO [restartedMain] liquibase.util - UPDATE SUMMARY -2025-12-12 13:19:47 INFO [restartedMain] liquibase.util - Run: 0 -2025-12-12 13:19:47 INFO [restartedMain] liquibase.util - Previously run: 57 -2025-12-12 13:19:47 INFO [restartedMain] liquibase.util - Filtered out: 0 -2025-12-12 13:19:47 INFO [restartedMain] liquibase.util - ------------------------------- -2025-12-12 13:19:47 INFO [restartedMain] liquibase.util - Total change sets: 57 -2025-12-12 13:19:47 INFO [restartedMain] liquibase.util - Update summary generated -2025-12-12 13:19:47 INFO [restartedMain] liquibase.command - Command execution complete -2025-12-12 13:19:47 INFO [restartedMain] o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] -2025-12-12 13:19:47 INFO [restartedMain] o.h.c.i.RegionFactoryInitiator - HHH000026: Second-level cache disabled -2025-12-12 13:19:47 INFO [restartedMain] o.hibernate.orm.connections.pooling - HHH10001005: Database info: +2025-12-22 12:17:29 INFO [restartedMain] o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000489: No JTA platform available (set 'hibernate.transaction.jta.platform' to enable JTA platform integration) +2025-12-22 12:17:31 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Started ErpApplication in 4.179 seconds (process running for 720.157) +2025-12-22 12:19:06 INFO [Thread-7] com.zaxxer.hikari.HikariDataSource - HikariPool-2 - Shutdown initiated... +2025-12-22 12:19:06 INFO [Thread-7] com.zaxxer.hikari.HikariDataSource - HikariPool-2 - Shutdown completed. +2025-12-22 12:19:07 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Starting ErpApplication using Java 21.0.9 with PID 59088 (/home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros/target/classes started by jjimenez in /home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros) +2025-12-22 12:19:07 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - The following 1 profile is active: "dev" +2025-12-22 12:19:07 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-3 - Starting... +2025-12-22 12:19:07 INFO [restartedMain] com.zaxxer.hikari.pool.HikariPool - HikariPool-3 - Added connection com.mysql.cj.jdbc.ConnectionImpl@5ff66702 +2025-12-22 12:19:07 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-3 - Start completed. +2025-12-22 12:19:08 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG +2025-12-22 12:19:08 INFO [restartedMain] liquibase.ui - Database is up to date, no changesets to execute +2025-12-22 12:19:08 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG +2025-12-22 12:19:08 INFO [restartedMain] liquibase.util - UPDATE SUMMARY +2025-12-22 12:19:08 INFO [restartedMain] liquibase.util - Run: 0 +2025-12-22 12:19:08 INFO [restartedMain] liquibase.util - Previously run: 59 +2025-12-22 12:19:08 INFO [restartedMain] liquibase.util - Filtered out: 0 +2025-12-22 12:19:08 INFO [restartedMain] liquibase.util - ------------------------------- +2025-12-22 12:19:08 INFO [restartedMain] liquibase.util - Total change sets: 59 +2025-12-22 12:19:08 INFO [restartedMain] liquibase.util - Update summary generated +2025-12-22 12:19:08 INFO [restartedMain] liquibase.command - Command execution complete +2025-12-22 12:19:08 INFO [restartedMain] o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-12-22 12:19:08 INFO [restartedMain] o.h.c.i.RegionFactoryInitiator - HHH000026: Second-level cache disabled +2025-12-22 12:19:08 INFO [restartedMain] o.hibernate.orm.connections.pooling - HHH10001005: Database info: Database JDBC URL [Connecting through datasource 'HikariDataSource (HikariPool-3)'] Database driver: undefined/unknown Database version: 8.0.43 @@ -85,29 +104,29 @@ Isolation level: undefined/unknown Minimum pool size: undefined/unknown Maximum pool size: undefined/unknown -2025-12-12 13:19:48 INFO [restartedMain] o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000489: No JTA platform available (set 'hibernate.transaction.jta.platform' to enable JTA platform integration) -2025-12-12 13:19:49 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Started ErpApplication in 3.958 seconds (process running for 263.819) -2025-12-12 14:14:16 INFO [Thread-11] com.zaxxer.hikari.HikariDataSource - HikariPool-3 - Shutdown initiated... -2025-12-12 14:14:16 INFO [Thread-11] com.zaxxer.hikari.HikariDataSource - HikariPool-3 - Shutdown completed. -2025-12-12 14:14:16 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Starting ErpApplication using Java 21.0.9 with PID 234757 (/home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros/target/classes started by jjimenez in /home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros) -2025-12-12 14:14:16 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - The following 1 profile is active: "dev" -2025-12-12 14:14:18 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-4 - Starting... -2025-12-12 14:14:18 INFO [restartedMain] com.zaxxer.hikari.pool.HikariPool - HikariPool-4 - Added connection com.mysql.cj.jdbc.ConnectionImpl@538c67d3 -2025-12-12 14:14:18 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-4 - Start completed. -2025-12-12 14:14:18 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG -2025-12-12 14:14:18 INFO [restartedMain] liquibase.ui - Database is up to date, no changesets to execute -2025-12-12 14:14:18 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG -2025-12-12 14:14:18 INFO [restartedMain] liquibase.util - UPDATE SUMMARY -2025-12-12 14:14:18 INFO [restartedMain] liquibase.util - Run: 0 -2025-12-12 14:14:18 INFO [restartedMain] liquibase.util - Previously run: 57 -2025-12-12 14:14:18 INFO [restartedMain] liquibase.util - Filtered out: 0 -2025-12-12 14:14:18 INFO [restartedMain] liquibase.util - ------------------------------- -2025-12-12 14:14:18 INFO [restartedMain] liquibase.util - Total change sets: 57 -2025-12-12 14:14:18 INFO [restartedMain] liquibase.util - Update summary generated -2025-12-12 14:14:18 INFO [restartedMain] liquibase.command - Command execution complete -2025-12-12 14:14:18 INFO [restartedMain] o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] -2025-12-12 14:14:18 INFO [restartedMain] o.h.c.i.RegionFactoryInitiator - HHH000026: Second-level cache disabled -2025-12-12 14:14:18 INFO [restartedMain] o.hibernate.orm.connections.pooling - HHH10001005: Database info: +2025-12-22 12:19:08 INFO [restartedMain] o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000489: No JTA platform available (set 'hibernate.transaction.jta.platform' to enable JTA platform integration) +2025-12-22 12:19:10 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Started ErpApplication in 2.933 seconds (process running for 819.159) +2025-12-22 16:30:52 INFO [Thread-11] com.zaxxer.hikari.HikariDataSource - HikariPool-3 - Shutdown initiated... +2025-12-22 16:30:52 INFO [Thread-11] com.zaxxer.hikari.HikariDataSource - HikariPool-3 - Shutdown completed. +2025-12-22 16:30:52 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Starting ErpApplication using Java 21.0.9 with PID 59088 (/home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros/target/classes started by jjimenez in /home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros) +2025-12-22 16:30:52 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - The following 1 profile is active: "dev" +2025-12-22 16:30:54 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-4 - Starting... +2025-12-22 16:30:54 INFO [restartedMain] com.zaxxer.hikari.pool.HikariPool - HikariPool-4 - Added connection com.mysql.cj.jdbc.ConnectionImpl@21190718 +2025-12-22 16:30:54 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-4 - Start completed. +2025-12-22 16:30:54 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG +2025-12-22 16:30:54 INFO [restartedMain] liquibase.ui - Database is up to date, no changesets to execute +2025-12-22 16:30:54 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG +2025-12-22 16:30:54 INFO [restartedMain] liquibase.util - UPDATE SUMMARY +2025-12-22 16:30:54 INFO [restartedMain] liquibase.util - Run: 0 +2025-12-22 16:30:54 INFO [restartedMain] liquibase.util - Previously run: 59 +2025-12-22 16:30:54 INFO [restartedMain] liquibase.util - Filtered out: 0 +2025-12-22 16:30:54 INFO [restartedMain] liquibase.util - ------------------------------- +2025-12-22 16:30:54 INFO [restartedMain] liquibase.util - Total change sets: 59 +2025-12-22 16:30:54 INFO [restartedMain] liquibase.util - Update summary generated +2025-12-22 16:30:54 INFO [restartedMain] liquibase.command - Command execution complete +2025-12-22 16:30:54 INFO [restartedMain] o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-12-22 16:30:54 INFO [restartedMain] o.h.c.i.RegionFactoryInitiator - HHH000026: Second-level cache disabled +2025-12-22 16:30:54 INFO [restartedMain] o.hibernate.orm.connections.pooling - HHH10001005: Database info: Database JDBC URL [Connecting through datasource 'HikariDataSource (HikariPool-4)'] Database driver: undefined/unknown Database version: 8.0.43 @@ -115,29 +134,29 @@ Isolation level: undefined/unknown Minimum pool size: undefined/unknown Maximum pool size: undefined/unknown -2025-12-12 14:14:20 INFO [restartedMain] o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000489: No JTA platform available (set 'hibernate.transaction.jta.platform' to enable JTA platform integration) -2025-12-12 14:14:22 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Started ErpApplication in 5.852 seconds (process running for 3536.397) -2025-12-12 14:14:47 INFO [Thread-15] com.zaxxer.hikari.HikariDataSource - HikariPool-4 - Shutdown initiated... -2025-12-12 14:14:47 INFO [Thread-15] com.zaxxer.hikari.HikariDataSource - HikariPool-4 - Shutdown completed. -2025-12-12 14:14:47 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Starting ErpApplication using Java 21.0.9 with PID 234757 (/home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros/target/classes started by jjimenez in /home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros) -2025-12-12 14:14:47 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - The following 1 profile is active: "dev" -2025-12-12 14:14:48 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-5 - Starting... -2025-12-12 14:14:48 INFO [restartedMain] com.zaxxer.hikari.pool.HikariPool - HikariPool-5 - Added connection com.mysql.cj.jdbc.ConnectionImpl@f24e303 -2025-12-12 14:14:48 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-5 - Start completed. -2025-12-12 14:14:49 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG -2025-12-12 14:14:49 INFO [restartedMain] liquibase.ui - Database is up to date, no changesets to execute -2025-12-12 14:14:49 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG -2025-12-12 14:14:49 INFO [restartedMain] liquibase.util - UPDATE SUMMARY -2025-12-12 14:14:49 INFO [restartedMain] liquibase.util - Run: 0 -2025-12-12 14:14:49 INFO [restartedMain] liquibase.util - Previously run: 57 -2025-12-12 14:14:49 INFO [restartedMain] liquibase.util - Filtered out: 0 -2025-12-12 14:14:49 INFO [restartedMain] liquibase.util - ------------------------------- -2025-12-12 14:14:49 INFO [restartedMain] liquibase.util - Total change sets: 57 -2025-12-12 14:14:49 INFO [restartedMain] liquibase.util - Update summary generated -2025-12-12 14:14:49 INFO [restartedMain] liquibase.command - Command execution complete -2025-12-12 14:14:49 INFO [restartedMain] o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] -2025-12-12 14:14:49 INFO [restartedMain] o.h.c.i.RegionFactoryInitiator - HHH000026: Second-level cache disabled -2025-12-12 14:14:49 INFO [restartedMain] o.hibernate.orm.connections.pooling - HHH10001005: Database info: +2025-12-22 16:30:55 INFO [restartedMain] o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000489: No JTA platform available (set 'hibernate.transaction.jta.platform' to enable JTA platform integration) +2025-12-22 16:30:56 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Started ErpApplication in 4.59 seconds (process running for 15926.056) +2025-12-22 16:30:58 INFO [Thread-15] com.zaxxer.hikari.HikariDataSource - HikariPool-4 - Shutdown initiated... +2025-12-22 16:30:58 INFO [Thread-15] com.zaxxer.hikari.HikariDataSource - HikariPool-4 - Shutdown completed. +2025-12-22 16:30:58 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Starting ErpApplication using Java 21.0.9 with PID 59088 (/home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros/target/classes started by jjimenez in /home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros) +2025-12-22 16:30:58 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - The following 1 profile is active: "dev" +2025-12-22 16:30:59 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-5 - Starting... +2025-12-22 16:30:59 INFO [restartedMain] com.zaxxer.hikari.pool.HikariPool - HikariPool-5 - Added connection com.mysql.cj.jdbc.ConnectionImpl@241e65a8 +2025-12-22 16:30:59 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-5 - Start completed. +2025-12-22 16:30:59 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG +2025-12-22 16:30:59 INFO [restartedMain] liquibase.ui - Database is up to date, no changesets to execute +2025-12-22 16:30:59 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG +2025-12-22 16:30:59 INFO [restartedMain] liquibase.util - UPDATE SUMMARY +2025-12-22 16:30:59 INFO [restartedMain] liquibase.util - Run: 0 +2025-12-22 16:30:59 INFO [restartedMain] liquibase.util - Previously run: 59 +2025-12-22 16:30:59 INFO [restartedMain] liquibase.util - Filtered out: 0 +2025-12-22 16:30:59 INFO [restartedMain] liquibase.util - ------------------------------- +2025-12-22 16:30:59 INFO [restartedMain] liquibase.util - Total change sets: 59 +2025-12-22 16:30:59 INFO [restartedMain] liquibase.util - Update summary generated +2025-12-22 16:30:59 INFO [restartedMain] liquibase.command - Command execution complete +2025-12-22 16:30:59 INFO [restartedMain] o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-12-22 16:30:59 INFO [restartedMain] o.h.c.i.RegionFactoryInitiator - HHH000026: Second-level cache disabled +2025-12-22 16:30:59 INFO [restartedMain] o.hibernate.orm.connections.pooling - HHH10001005: Database info: Database JDBC URL [Connecting through datasource 'HikariDataSource (HikariPool-5)'] Database driver: undefined/unknown Database version: 8.0.43 @@ -145,29 +164,29 @@ Isolation level: undefined/unknown Minimum pool size: undefined/unknown Maximum pool size: undefined/unknown -2025-12-12 14:14:50 INFO [restartedMain] o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000489: No JTA platform available (set 'hibernate.transaction.jta.platform' to enable JTA platform integration) -2025-12-12 14:14:51 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Started ErpApplication in 3.677 seconds (process running for 3565.646) -2025-12-12 14:16:11 INFO [Thread-19] com.zaxxer.hikari.HikariDataSource - HikariPool-5 - Shutdown initiated... -2025-12-12 14:16:11 INFO [Thread-19] com.zaxxer.hikari.HikariDataSource - HikariPool-5 - Shutdown completed. -2025-12-12 14:16:11 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Starting ErpApplication using Java 21.0.9 with PID 234757 (/home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros/target/classes started by jjimenez in /home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros) -2025-12-12 14:16:11 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - The following 1 profile is active: "dev" -2025-12-12 14:16:12 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-6 - Starting... -2025-12-12 14:16:12 INFO [restartedMain] com.zaxxer.hikari.pool.HikariPool - HikariPool-6 - Added connection com.mysql.cj.jdbc.ConnectionImpl@57b631ab -2025-12-12 14:16:12 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-6 - Start completed. -2025-12-12 14:16:12 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG -2025-12-12 14:16:12 INFO [restartedMain] liquibase.ui - Database is up to date, no changesets to execute -2025-12-12 14:16:12 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG -2025-12-12 14:16:12 INFO [restartedMain] liquibase.util - UPDATE SUMMARY -2025-12-12 14:16:12 INFO [restartedMain] liquibase.util - Run: 0 -2025-12-12 14:16:12 INFO [restartedMain] liquibase.util - Previously run: 57 -2025-12-12 14:16:12 INFO [restartedMain] liquibase.util - Filtered out: 0 -2025-12-12 14:16:12 INFO [restartedMain] liquibase.util - ------------------------------- -2025-12-12 14:16:12 INFO [restartedMain] liquibase.util - Total change sets: 57 -2025-12-12 14:16:12 INFO [restartedMain] liquibase.util - Update summary generated -2025-12-12 14:16:12 INFO [restartedMain] liquibase.command - Command execution complete -2025-12-12 14:16:12 INFO [restartedMain] o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] -2025-12-12 14:16:12 INFO [restartedMain] o.h.c.i.RegionFactoryInitiator - HHH000026: Second-level cache disabled -2025-12-12 14:16:13 INFO [restartedMain] o.hibernate.orm.connections.pooling - HHH10001005: Database info: +2025-12-22 16:31:00 INFO [restartedMain] o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000489: No JTA platform available (set 'hibernate.transaction.jta.platform' to enable JTA platform integration) +2025-12-22 16:31:01 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Started ErpApplication in 2.872 seconds (process running for 15930.761) +2025-12-22 16:31:17 INFO [Thread-19] com.zaxxer.hikari.HikariDataSource - HikariPool-5 - Shutdown initiated... +2025-12-22 16:31:17 INFO [Thread-19] com.zaxxer.hikari.HikariDataSource - HikariPool-5 - Shutdown completed. +2025-12-22 16:31:17 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Starting ErpApplication using Java 21.0.9 with PID 59088 (/home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros/target/classes started by jjimenez in /home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros) +2025-12-22 16:31:17 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - The following 1 profile is active: "dev" +2025-12-22 16:31:18 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-6 - Starting... +2025-12-22 16:31:18 INFO [restartedMain] com.zaxxer.hikari.pool.HikariPool - HikariPool-6 - Added connection com.mysql.cj.jdbc.ConnectionImpl@76abc7d5 +2025-12-22 16:31:18 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-6 - Start completed. +2025-12-22 16:31:18 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG +2025-12-22 16:31:18 INFO [restartedMain] liquibase.ui - Database is up to date, no changesets to execute +2025-12-22 16:31:18 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG +2025-12-22 16:31:18 INFO [restartedMain] liquibase.util - UPDATE SUMMARY +2025-12-22 16:31:18 INFO [restartedMain] liquibase.util - Run: 0 +2025-12-22 16:31:18 INFO [restartedMain] liquibase.util - Previously run: 59 +2025-12-22 16:31:18 INFO [restartedMain] liquibase.util - Filtered out: 0 +2025-12-22 16:31:18 INFO [restartedMain] liquibase.util - ------------------------------- +2025-12-22 16:31:18 INFO [restartedMain] liquibase.util - Total change sets: 59 +2025-12-22 16:31:18 INFO [restartedMain] liquibase.util - Update summary generated +2025-12-22 16:31:18 INFO [restartedMain] liquibase.command - Command execution complete +2025-12-22 16:31:18 INFO [restartedMain] o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-12-22 16:31:18 INFO [restartedMain] o.h.c.i.RegionFactoryInitiator - HHH000026: Second-level cache disabled +2025-12-22 16:31:18 INFO [restartedMain] o.hibernate.orm.connections.pooling - HHH10001005: Database info: Database JDBC URL [Connecting through datasource 'HikariDataSource (HikariPool-6)'] Database driver: undefined/unknown Database version: 8.0.43 @@ -175,29 +194,230 @@ Isolation level: undefined/unknown Minimum pool size: undefined/unknown Maximum pool size: undefined/unknown -2025-12-12 14:16:13 INFO [restartedMain] o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000489: No JTA platform available (set 'hibernate.transaction.jta.platform' to enable JTA platform integration) -2025-12-12 14:16:14 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Started ErpApplication in 3.167 seconds (process running for 3649.08) -2025-12-12 14:16:44 INFO [Thread-23] com.zaxxer.hikari.HikariDataSource - HikariPool-6 - Shutdown initiated... -2025-12-12 14:16:44 INFO [Thread-23] com.zaxxer.hikari.HikariDataSource - HikariPool-6 - Shutdown completed. -2025-12-12 14:16:44 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Starting ErpApplication using Java 21.0.9 with PID 234757 (/home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros/target/classes started by jjimenez in /home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros) -2025-12-12 14:16:44 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - The following 1 profile is active: "dev" -2025-12-12 14:16:45 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-7 - Starting... -2025-12-12 14:16:45 INFO [restartedMain] com.zaxxer.hikari.pool.HikariPool - HikariPool-7 - Added connection com.mysql.cj.jdbc.ConnectionImpl@207204a4 -2025-12-12 14:16:45 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-7 - Start completed. -2025-12-12 14:16:45 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG -2025-12-12 14:16:45 INFO [restartedMain] liquibase.ui - Database is up to date, no changesets to execute -2025-12-12 14:16:45 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG -2025-12-12 14:16:45 INFO [restartedMain] liquibase.util - UPDATE SUMMARY -2025-12-12 14:16:45 INFO [restartedMain] liquibase.util - Run: 0 -2025-12-12 14:16:45 INFO [restartedMain] liquibase.util - Previously run: 57 -2025-12-12 14:16:45 INFO [restartedMain] liquibase.util - Filtered out: 0 -2025-12-12 14:16:45 INFO [restartedMain] liquibase.util - ------------------------------- -2025-12-12 14:16:45 INFO [restartedMain] liquibase.util - Total change sets: 57 -2025-12-12 14:16:45 INFO [restartedMain] liquibase.util - Update summary generated -2025-12-12 14:16:45 INFO [restartedMain] liquibase.command - Command execution complete -2025-12-12 14:16:45 INFO [restartedMain] o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] -2025-12-12 14:16:45 INFO [restartedMain] o.h.c.i.RegionFactoryInitiator - HHH000026: Second-level cache disabled -2025-12-12 14:16:45 INFO [restartedMain] o.hibernate.orm.connections.pooling - HHH10001005: Database info: +2025-12-22 16:31:18 INFO [restartedMain] o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000489: No JTA platform available (set 'hibernate.transaction.jta.platform' to enable JTA platform integration) +2025-12-22 16:31:19 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Started ErpApplication in 2.358 seconds (process running for 15948.918) +2025-12-22 16:32:16 INFO [SpringApplicationShutdownHook] com.zaxxer.hikari.HikariDataSource - HikariPool-6 - Shutdown initiated... +2025-12-22 16:32:16 INFO [SpringApplicationShutdownHook] com.zaxxer.hikari.HikariDataSource - HikariPool-6 - Shutdown completed. +2025-12-22 16:38:13 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Starting ErpApplication using Java 21.0.9 with PID 244093 (/home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros/target/classes started by jjimenez in /home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros) +2025-12-22 16:38:13 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - The following 1 profile is active: "dev" +2025-12-22 16:38:16 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Starting... +2025-12-22 16:38:17 INFO [restartedMain] com.zaxxer.hikari.pool.HikariPool - HikariPool-1 - Added connection com.mysql.cj.jdbc.ConnectionImpl@384fb00c +2025-12-22 16:38:17 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Start completed. +2025-12-22 16:38:18 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG +2025-12-22 16:38:18 WARN [restartedMain] liquibase.changelog - Due to mysql SQL limitations, modifyDataType will lose primary key/autoincrement/not null/comment settings explicitly redefined in the change. Use or to re-specify all configuration if this is the case +2025-12-22 16:38:18 WARN [restartedMain] liquibase.changelog - Due to mysql SQL limitations, modifyDataType will lose primary key/autoincrement/not null/comment settings explicitly redefined in the change. Use or to re-specify all configuration if this is the case +2025-12-22 16:38:18 INFO [restartedMain] liquibase.lockservice - Successfully acquired change log lock +2025-12-22 16:38:18 INFO [restartedMain] liquibase.command - Using deploymentId: 6417898453 +2025-12-22 16:38:18 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG +2025-12-22 16:38:18 INFO [restartedMain] liquibase.ui - Running Changeset: db/changelog/changesets/0020-add-estados-pago-to-pedidos-lineas-2.yml::0020-add-estados-pago-to-pedidos-lineas-2::jjo +2025-12-22 16:38:18 INFO [restartedMain] liquibase.changelog - pedidos_lineas.estado datatype was changed to enum( + 'pendiente_pago', + 'procesando_pago', + 'denegado_pago', + 'aprobado', + 'maquetacion', + 'haciendo_ferro', + 'produccion', + 'terminado', + 'cancelado' +) + +2025-12-22 16:38:18 INFO [restartedMain] liquibase.changelog - ChangeSet db/changelog/changesets/0020-add-estados-pago-to-pedidos-lineas-2.yml::0020-add-estados-pago-to-pedidos-lineas-2::jjo ran successfully in 102ms +2025-12-22 16:38:18 INFO [restartedMain] liquibase.util - UPDATE SUMMARY +2025-12-22 16:38:18 INFO [restartedMain] liquibase.util - Run: 1 +2025-12-22 16:38:18 INFO [restartedMain] liquibase.util - Previously run: 59 +2025-12-22 16:38:18 INFO [restartedMain] liquibase.util - Filtered out: 0 +2025-12-22 16:38:18 INFO [restartedMain] liquibase.util - ------------------------------- +2025-12-22 16:38:18 INFO [restartedMain] liquibase.util - Total change sets: 60 +2025-12-22 16:38:18 INFO [restartedMain] liquibase.util - Update summary generated +2025-12-22 16:38:18 INFO [restartedMain] liquibase.command - Update command completed successfully. +2025-12-22 16:38:18 INFO [restartedMain] liquibase.ui - Liquibase: Update has been successful. Rows affected: 34 +2025-12-22 16:38:18 INFO [restartedMain] liquibase.lockservice - Successfully released change log lock +2025-12-22 16:38:18 INFO [restartedMain] liquibase.command - Command execution complete +2025-12-22 16:38:18 INFO [restartedMain] o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-12-22 16:38:18 INFO [restartedMain] org.hibernate.Version - HHH000412: Hibernate ORM core version 6.6.39.Final +2025-12-22 16:38:18 INFO [restartedMain] o.h.c.i.RegionFactoryInitiator - HHH000026: Second-level cache disabled +2025-12-22 16:38:19 INFO [restartedMain] o.hibernate.orm.connections.pooling - HHH10001005: Database info: + Database JDBC URL [Connecting through datasource 'HikariDataSource (HikariPool-1)'] + Database driver: undefined/unknown + Database version: 8.0.43 + Autocommit mode: undefined/unknown + Isolation level: undefined/unknown + Minimum pool size: undefined/unknown + Maximum pool size: undefined/unknown +2025-12-22 16:38:21 INFO [restartedMain] o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000489: No JTA platform available (set 'hibernate.transaction.jta.platform' to enable JTA platform integration) +2025-12-22 16:38:26 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Started ErpApplication in 13.269 seconds (process running for 14.929) +2025-12-22 16:42:47 INFO [Thread-5] com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Shutdown initiated... +2025-12-22 16:42:47 INFO [Thread-5] com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Shutdown completed. +2025-12-22 16:42:47 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Starting ErpApplication using Java 21.0.9 with PID 244093 (/home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros/target/classes started by jjimenez in /home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros) +2025-12-22 16:42:47 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - The following 1 profile is active: "dev" +2025-12-22 16:42:48 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-2 - Starting... +2025-12-22 16:42:48 INFO [restartedMain] com.zaxxer.hikari.pool.HikariPool - HikariPool-2 - Added connection com.mysql.cj.jdbc.ConnectionImpl@528bf771 +2025-12-22 16:42:48 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-2 - Start completed. +2025-12-22 16:42:49 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG +2025-12-22 16:42:49 INFO [restartedMain] liquibase.ui - Database is up to date, no changesets to execute +2025-12-22 16:42:49 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG +2025-12-22 16:42:49 INFO [restartedMain] liquibase.util - UPDATE SUMMARY +2025-12-22 16:42:49 INFO [restartedMain] liquibase.util - Run: 0 +2025-12-22 16:42:49 INFO [restartedMain] liquibase.util - Previously run: 60 +2025-12-22 16:42:49 INFO [restartedMain] liquibase.util - Filtered out: 0 +2025-12-22 16:42:49 INFO [restartedMain] liquibase.util - ------------------------------- +2025-12-22 16:42:49 INFO [restartedMain] liquibase.util - Total change sets: 60 +2025-12-22 16:42:49 INFO [restartedMain] liquibase.util - Update summary generated +2025-12-22 16:42:49 INFO [restartedMain] liquibase.command - Command execution complete +2025-12-22 16:42:49 INFO [restartedMain] o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-12-22 16:42:49 INFO [restartedMain] o.h.c.i.RegionFactoryInitiator - HHH000026: Second-level cache disabled +2025-12-22 16:42:49 INFO [restartedMain] o.hibernate.orm.connections.pooling - HHH10001005: Database info: + Database JDBC URL [Connecting through datasource 'HikariDataSource (HikariPool-2)'] + Database driver: undefined/unknown + Database version: 8.0.43 + Autocommit mode: undefined/unknown + Isolation level: undefined/unknown + Minimum pool size: undefined/unknown + Maximum pool size: undefined/unknown +2025-12-22 16:42:50 INFO [restartedMain] o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000489: No JTA platform available (set 'hibernate.transaction.jta.platform' to enable JTA platform integration) +2025-12-22 16:42:51 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Started ErpApplication in 3.575 seconds (process running for 280.256) +2025-12-22 16:43:03 INFO [Thread-7] com.zaxxer.hikari.HikariDataSource - HikariPool-2 - Shutdown initiated... +2025-12-22 16:43:03 INFO [Thread-7] com.zaxxer.hikari.HikariDataSource - HikariPool-2 - Shutdown completed. +2025-12-22 16:43:03 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Starting ErpApplication using Java 21.0.9 with PID 244093 (/home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros/target/classes started by jjimenez in /home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros) +2025-12-22 16:43:03 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - The following 1 profile is active: "dev" +2025-12-22 16:43:04 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-3 - Starting... +2025-12-22 16:43:04 INFO [restartedMain] com.zaxxer.hikari.pool.HikariPool - HikariPool-3 - Added connection com.mysql.cj.jdbc.ConnectionImpl@22b7f6f9 +2025-12-22 16:43:04 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-3 - Start completed. +2025-12-22 16:43:04 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG +2025-12-22 16:43:04 INFO [restartedMain] liquibase.ui - Database is up to date, no changesets to execute +2025-12-22 16:43:04 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG +2025-12-22 16:43:04 INFO [restartedMain] liquibase.util - UPDATE SUMMARY +2025-12-22 16:43:04 INFO [restartedMain] liquibase.util - Run: 0 +2025-12-22 16:43:04 INFO [restartedMain] liquibase.util - Previously run: 60 +2025-12-22 16:43:04 INFO [restartedMain] liquibase.util - Filtered out: 0 +2025-12-22 16:43:04 INFO [restartedMain] liquibase.util - ------------------------------- +2025-12-22 16:43:04 INFO [restartedMain] liquibase.util - Total change sets: 60 +2025-12-22 16:43:04 INFO [restartedMain] liquibase.util - Update summary generated +2025-12-22 16:43:04 INFO [restartedMain] liquibase.command - Command execution complete +2025-12-22 16:43:04 INFO [restartedMain] o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-12-22 16:43:04 INFO [restartedMain] o.h.c.i.RegionFactoryInitiator - HHH000026: Second-level cache disabled +2025-12-22 16:43:04 INFO [restartedMain] o.hibernate.orm.connections.pooling - HHH10001005: Database info: + Database JDBC URL [Connecting through datasource 'HikariDataSource (HikariPool-3)'] + Database driver: undefined/unknown + Database version: 8.0.43 + Autocommit mode: undefined/unknown + Isolation level: undefined/unknown + Minimum pool size: undefined/unknown + Maximum pool size: undefined/unknown +2025-12-22 16:43:05 INFO [restartedMain] o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000489: No JTA platform available (set 'hibernate.transaction.jta.platform' to enable JTA platform integration) +2025-12-22 16:43:06 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Started ErpApplication in 3.274 seconds (process running for 295.741) +2025-12-22 16:43:08 INFO [Thread-11] com.zaxxer.hikari.HikariDataSource - HikariPool-3 - Shutdown initiated... +2025-12-22 16:43:08 INFO [Thread-11] com.zaxxer.hikari.HikariDataSource - HikariPool-3 - Shutdown completed. +2025-12-22 16:43:08 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Starting ErpApplication using Java 21.0.9 with PID 244093 (/home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros/target/classes started by jjimenez in /home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros) +2025-12-22 16:43:08 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - The following 1 profile is active: "dev" +2025-12-22 16:43:09 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-4 - Starting... +2025-12-22 16:43:09 INFO [restartedMain] com.zaxxer.hikari.pool.HikariPool - HikariPool-4 - Added connection com.mysql.cj.jdbc.ConnectionImpl@65995066 +2025-12-22 16:43:09 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-4 - Start completed. +2025-12-22 16:43:09 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG +2025-12-22 16:43:09 INFO [restartedMain] liquibase.ui - Database is up to date, no changesets to execute +2025-12-22 16:43:09 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG +2025-12-22 16:43:09 INFO [restartedMain] liquibase.util - UPDATE SUMMARY +2025-12-22 16:43:09 INFO [restartedMain] liquibase.util - Run: 0 +2025-12-22 16:43:09 INFO [restartedMain] liquibase.util - Previously run: 60 +2025-12-22 16:43:09 INFO [restartedMain] liquibase.util - Filtered out: 0 +2025-12-22 16:43:09 INFO [restartedMain] liquibase.util - ------------------------------- +2025-12-22 16:43:09 INFO [restartedMain] liquibase.util - Total change sets: 60 +2025-12-22 16:43:09 INFO [restartedMain] liquibase.util - Update summary generated +2025-12-22 16:43:09 INFO [restartedMain] liquibase.command - Command execution complete +2025-12-22 16:43:09 INFO [restartedMain] o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-12-22 16:43:09 INFO [restartedMain] o.h.c.i.RegionFactoryInitiator - HHH000026: Second-level cache disabled +2025-12-22 16:43:09 INFO [restartedMain] o.hibernate.orm.connections.pooling - HHH10001005: Database info: + Database JDBC URL [Connecting through datasource 'HikariDataSource (HikariPool-4)'] + Database driver: undefined/unknown + Database version: 8.0.43 + Autocommit mode: undefined/unknown + Isolation level: undefined/unknown + Minimum pool size: undefined/unknown + Maximum pool size: undefined/unknown +2025-12-22 16:43:10 INFO [restartedMain] o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000489: No JTA platform available (set 'hibernate.transaction.jta.platform' to enable JTA platform integration) +2025-12-22 16:43:11 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Started ErpApplication in 2.401 seconds (process running for 299.939) +2025-12-22 16:43:17 INFO [Thread-15] com.zaxxer.hikari.HikariDataSource - HikariPool-4 - Shutdown initiated... +2025-12-22 16:43:17 INFO [Thread-15] com.zaxxer.hikari.HikariDataSource - HikariPool-4 - Shutdown completed. +2025-12-22 16:43:17 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Starting ErpApplication using Java 21.0.9 with PID 244093 (/home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros/target/classes started by jjimenez in /home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros) +2025-12-22 16:43:17 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - The following 1 profile is active: "dev" +2025-12-22 16:43:18 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-5 - Starting... +2025-12-22 16:43:18 INFO [restartedMain] com.zaxxer.hikari.pool.HikariPool - HikariPool-5 - Added connection com.mysql.cj.jdbc.ConnectionImpl@29e4ffd6 +2025-12-22 16:43:18 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-5 - Start completed. +2025-12-22 16:43:18 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG +2025-12-22 16:43:18 INFO [restartedMain] liquibase.ui - Database is up to date, no changesets to execute +2025-12-22 16:43:18 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG +2025-12-22 16:43:18 INFO [restartedMain] liquibase.util - UPDATE SUMMARY +2025-12-22 16:43:18 INFO [restartedMain] liquibase.util - Run: 0 +2025-12-22 16:43:18 INFO [restartedMain] liquibase.util - Previously run: 60 +2025-12-22 16:43:18 INFO [restartedMain] liquibase.util - Filtered out: 0 +2025-12-22 16:43:18 INFO [restartedMain] liquibase.util - ------------------------------- +2025-12-22 16:43:18 INFO [restartedMain] liquibase.util - Total change sets: 60 +2025-12-22 16:43:18 INFO [restartedMain] liquibase.util - Update summary generated +2025-12-22 16:43:18 INFO [restartedMain] liquibase.command - Command execution complete +2025-12-22 16:43:18 INFO [restartedMain] o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-12-22 16:43:18 INFO [restartedMain] o.h.c.i.RegionFactoryInitiator - HHH000026: Second-level cache disabled +2025-12-22 16:43:18 INFO [restartedMain] o.hibernate.orm.connections.pooling - HHH10001005: Database info: + Database JDBC URL [Connecting through datasource 'HikariDataSource (HikariPool-5)'] + Database driver: undefined/unknown + Database version: 8.0.43 + Autocommit mode: undefined/unknown + Isolation level: undefined/unknown + Minimum pool size: undefined/unknown + Maximum pool size: undefined/unknown +2025-12-22 16:43:18 INFO [restartedMain] o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000489: No JTA platform available (set 'hibernate.transaction.jta.platform' to enable JTA platform integration) +2025-12-22 16:43:19 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Started ErpApplication in 2.302 seconds (process running for 308.701) +2025-12-22 16:44:12 INFO [Thread-19] com.zaxxer.hikari.HikariDataSource - HikariPool-5 - Shutdown initiated... +2025-12-22 16:44:12 INFO [Thread-19] com.zaxxer.hikari.HikariDataSource - HikariPool-5 - Shutdown completed. +2025-12-22 16:44:12 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Starting ErpApplication using Java 21.0.9 with PID 244093 (/home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros/target/classes started by jjimenez in /home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros) +2025-12-22 16:44:12 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - The following 1 profile is active: "dev" +2025-12-22 16:44:12 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-6 - Starting... +2025-12-22 16:44:12 INFO [restartedMain] com.zaxxer.hikari.pool.HikariPool - HikariPool-6 - Added connection com.mysql.cj.jdbc.ConnectionImpl@50752947 +2025-12-22 16:44:12 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-6 - Start completed. +2025-12-22 16:44:12 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG +2025-12-22 16:44:13 INFO [restartedMain] liquibase.ui - Database is up to date, no changesets to execute +2025-12-22 16:44:13 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG +2025-12-22 16:44:13 INFO [restartedMain] liquibase.util - UPDATE SUMMARY +2025-12-22 16:44:13 INFO [restartedMain] liquibase.util - Run: 0 +2025-12-22 16:44:13 INFO [restartedMain] liquibase.util - Previously run: 60 +2025-12-22 16:44:13 INFO [restartedMain] liquibase.util - Filtered out: 0 +2025-12-22 16:44:13 INFO [restartedMain] liquibase.util - ------------------------------- +2025-12-22 16:44:13 INFO [restartedMain] liquibase.util - Total change sets: 60 +2025-12-22 16:44:13 INFO [restartedMain] liquibase.util - Update summary generated +2025-12-22 16:44:13 INFO [restartedMain] liquibase.command - Command execution complete +2025-12-22 16:44:13 INFO [restartedMain] o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-12-22 16:44:13 INFO [restartedMain] o.h.c.i.RegionFactoryInitiator - HHH000026: Second-level cache disabled +2025-12-22 16:44:13 INFO [restartedMain] o.hibernate.orm.connections.pooling - HHH10001005: Database info: + Database JDBC URL [Connecting through datasource 'HikariDataSource (HikariPool-6)'] + Database driver: undefined/unknown + Database version: 8.0.43 + Autocommit mode: undefined/unknown + Isolation level: undefined/unknown + Minimum pool size: undefined/unknown + Maximum pool size: undefined/unknown +2025-12-22 16:44:13 INFO [restartedMain] o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000489: No JTA platform available (set 'hibernate.transaction.jta.platform' to enable JTA platform integration) +2025-12-22 16:44:14 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Started ErpApplication in 2.166 seconds (process running for 363.169) +2025-12-22 16:44:31 INFO [Thread-23] com.zaxxer.hikari.HikariDataSource - HikariPool-6 - Shutdown initiated... +2025-12-22 16:44:31 INFO [Thread-23] com.zaxxer.hikari.HikariDataSource - HikariPool-6 - Shutdown completed. +2025-12-22 16:44:31 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Starting ErpApplication using Java 21.0.9 with PID 244093 (/home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros/target/classes started by jjimenez in /home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros) +2025-12-22 16:44:31 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - The following 1 profile is active: "dev" +2025-12-22 16:44:31 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-7 - Starting... +2025-12-22 16:44:31 INFO [restartedMain] com.zaxxer.hikari.pool.HikariPool - HikariPool-7 - Added connection com.mysql.cj.jdbc.ConnectionImpl@3854ef2f +2025-12-22 16:44:31 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-7 - Start completed. +2025-12-22 16:44:31 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG +2025-12-22 16:44:31 INFO [restartedMain] liquibase.ui - Database is up to date, no changesets to execute +2025-12-22 16:44:31 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG +2025-12-22 16:44:31 INFO [restartedMain] liquibase.util - UPDATE SUMMARY +2025-12-22 16:44:31 INFO [restartedMain] liquibase.util - Run: 0 +2025-12-22 16:44:31 INFO [restartedMain] liquibase.util - Previously run: 60 +2025-12-22 16:44:31 INFO [restartedMain] liquibase.util - Filtered out: 0 +2025-12-22 16:44:31 INFO [restartedMain] liquibase.util - ------------------------------- +2025-12-22 16:44:31 INFO [restartedMain] liquibase.util - Total change sets: 60 +2025-12-22 16:44:31 INFO [restartedMain] liquibase.util - Update summary generated +2025-12-22 16:44:31 INFO [restartedMain] liquibase.command - Command execution complete +2025-12-22 16:44:32 INFO [restartedMain] o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-12-22 16:44:32 INFO [restartedMain] o.h.c.i.RegionFactoryInitiator - HHH000026: Second-level cache disabled +2025-12-22 16:44:32 INFO [restartedMain] o.hibernate.orm.connections.pooling - HHH10001005: Database info: Database JDBC URL [Connecting through datasource 'HikariDataSource (HikariPool-7)'] Database driver: undefined/unknown Database version: 8.0.43 @@ -205,29 +425,29 @@ Isolation level: undefined/unknown Minimum pool size: undefined/unknown Maximum pool size: undefined/unknown -2025-12-12 14:16:46 INFO [restartedMain] o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000489: No JTA platform available (set 'hibernate.transaction.jta.platform' to enable JTA platform integration) -2025-12-12 14:16:47 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Started ErpApplication in 2.786 seconds (process running for 3681.798) -2025-12-12 14:17:00 INFO [Thread-27] com.zaxxer.hikari.HikariDataSource - HikariPool-7 - Shutdown initiated... -2025-12-12 14:17:00 INFO [Thread-27] com.zaxxer.hikari.HikariDataSource - HikariPool-7 - Shutdown completed. -2025-12-12 14:17:01 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Starting ErpApplication using Java 21.0.9 with PID 234757 (/home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros/target/classes started by jjimenez in /home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros) -2025-12-12 14:17:01 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - The following 1 profile is active: "dev" -2025-12-12 14:17:01 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-8 - Starting... -2025-12-12 14:17:01 INFO [restartedMain] com.zaxxer.hikari.pool.HikariPool - HikariPool-8 - Added connection com.mysql.cj.jdbc.ConnectionImpl@2838e086 -2025-12-12 14:17:01 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-8 - Start completed. -2025-12-12 14:17:02 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG -2025-12-12 14:17:02 INFO [restartedMain] liquibase.ui - Database is up to date, no changesets to execute -2025-12-12 14:17:02 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG -2025-12-12 14:17:02 INFO [restartedMain] liquibase.util - UPDATE SUMMARY -2025-12-12 14:17:02 INFO [restartedMain] liquibase.util - Run: 0 -2025-12-12 14:17:02 INFO [restartedMain] liquibase.util - Previously run: 57 -2025-12-12 14:17:02 INFO [restartedMain] liquibase.util - Filtered out: 0 -2025-12-12 14:17:02 INFO [restartedMain] liquibase.util - ------------------------------- -2025-12-12 14:17:02 INFO [restartedMain] liquibase.util - Total change sets: 57 -2025-12-12 14:17:02 INFO [restartedMain] liquibase.util - Update summary generated -2025-12-12 14:17:02 INFO [restartedMain] liquibase.command - Command execution complete -2025-12-12 14:17:02 INFO [restartedMain] o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] -2025-12-12 14:17:02 INFO [restartedMain] o.h.c.i.RegionFactoryInitiator - HHH000026: Second-level cache disabled -2025-12-12 14:17:02 INFO [restartedMain] o.hibernate.orm.connections.pooling - HHH10001005: Database info: +2025-12-22 16:44:32 INFO [restartedMain] o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000489: No JTA platform available (set 'hibernate.transaction.jta.platform' to enable JTA platform integration) +2025-12-22 16:44:33 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Started ErpApplication in 2.172 seconds (process running for 382.202) +2025-12-22 16:44:47 INFO [Thread-27] com.zaxxer.hikari.HikariDataSource - HikariPool-7 - Shutdown initiated... +2025-12-22 16:44:47 INFO [Thread-27] com.zaxxer.hikari.HikariDataSource - HikariPool-7 - Shutdown completed. +2025-12-22 16:44:47 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Starting ErpApplication using Java 21.0.9 with PID 244093 (/home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros/target/classes started by jjimenez in /home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros) +2025-12-22 16:44:47 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - The following 1 profile is active: "dev" +2025-12-22 16:44:48 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-8 - Starting... +2025-12-22 16:44:48 INFO [restartedMain] com.zaxxer.hikari.pool.HikariPool - HikariPool-8 - Added connection com.mysql.cj.jdbc.ConnectionImpl@18068a19 +2025-12-22 16:44:48 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-8 - Start completed. +2025-12-22 16:44:48 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG +2025-12-22 16:44:48 INFO [restartedMain] liquibase.ui - Database is up to date, no changesets to execute +2025-12-22 16:44:48 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG +2025-12-22 16:44:48 INFO [restartedMain] liquibase.util - UPDATE SUMMARY +2025-12-22 16:44:48 INFO [restartedMain] liquibase.util - Run: 0 +2025-12-22 16:44:48 INFO [restartedMain] liquibase.util - Previously run: 60 +2025-12-22 16:44:48 INFO [restartedMain] liquibase.util - Filtered out: 0 +2025-12-22 16:44:48 INFO [restartedMain] liquibase.util - ------------------------------- +2025-12-22 16:44:48 INFO [restartedMain] liquibase.util - Total change sets: 60 +2025-12-22 16:44:48 INFO [restartedMain] liquibase.util - Update summary generated +2025-12-22 16:44:48 INFO [restartedMain] liquibase.command - Command execution complete +2025-12-22 16:44:48 INFO [restartedMain] o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-12-22 16:44:48 INFO [restartedMain] o.h.c.i.RegionFactoryInitiator - HHH000026: Second-level cache disabled +2025-12-22 16:44:48 INFO [restartedMain] o.hibernate.orm.connections.pooling - HHH10001005: Database info: Database JDBC URL [Connecting through datasource 'HikariDataSource (HikariPool-8)'] Database driver: undefined/unknown Database version: 8.0.43 @@ -235,29 +455,29 @@ Isolation level: undefined/unknown Minimum pool size: undefined/unknown Maximum pool size: undefined/unknown -2025-12-12 14:17:02 INFO [restartedMain] o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000489: No JTA platform available (set 'hibernate.transaction.jta.platform' to enable JTA platform integration) -2025-12-12 14:17:03 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Started ErpApplication in 2.75 seconds (process running for 3698.115) -2025-12-12 14:17:23 INFO [Thread-31] com.zaxxer.hikari.HikariDataSource - HikariPool-8 - Shutdown initiated... -2025-12-12 14:17:23 INFO [Thread-31] com.zaxxer.hikari.HikariDataSource - HikariPool-8 - Shutdown completed. -2025-12-12 14:17:23 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Starting ErpApplication using Java 21.0.9 with PID 234757 (/home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros/target/classes started by jjimenez in /home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros) -2025-12-12 14:17:23 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - The following 1 profile is active: "dev" -2025-12-12 14:17:23 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-9 - Starting... -2025-12-12 14:17:23 INFO [restartedMain] com.zaxxer.hikari.pool.HikariPool - HikariPool-9 - Added connection com.mysql.cj.jdbc.ConnectionImpl@5bfa1a3d -2025-12-12 14:17:23 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-9 - Start completed. -2025-12-12 14:17:24 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG -2025-12-12 14:17:24 INFO [restartedMain] liquibase.ui - Database is up to date, no changesets to execute -2025-12-12 14:17:24 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG -2025-12-12 14:17:24 INFO [restartedMain] liquibase.util - UPDATE SUMMARY -2025-12-12 14:17:24 INFO [restartedMain] liquibase.util - Run: 0 -2025-12-12 14:17:24 INFO [restartedMain] liquibase.util - Previously run: 57 -2025-12-12 14:17:24 INFO [restartedMain] liquibase.util - Filtered out: 0 -2025-12-12 14:17:24 INFO [restartedMain] liquibase.util - ------------------------------- -2025-12-12 14:17:24 INFO [restartedMain] liquibase.util - Total change sets: 57 -2025-12-12 14:17:24 INFO [restartedMain] liquibase.util - Update summary generated -2025-12-12 14:17:24 INFO [restartedMain] liquibase.command - Command execution complete -2025-12-12 14:17:24 INFO [restartedMain] o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] -2025-12-12 14:17:24 INFO [restartedMain] o.h.c.i.RegionFactoryInitiator - HHH000026: Second-level cache disabled -2025-12-12 14:17:24 INFO [restartedMain] o.hibernate.orm.connections.pooling - HHH10001005: Database info: +2025-12-22 16:44:49 INFO [restartedMain] o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000489: No JTA platform available (set 'hibernate.transaction.jta.platform' to enable JTA platform integration) +2025-12-22 16:44:50 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Started ErpApplication in 2.205 seconds (process running for 398.925) +2025-12-22 16:49:55 INFO [Thread-31] com.zaxxer.hikari.HikariDataSource - HikariPool-8 - Shutdown initiated... +2025-12-22 16:49:55 INFO [Thread-31] com.zaxxer.hikari.HikariDataSource - HikariPool-8 - Shutdown completed. +2025-12-22 16:49:55 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Starting ErpApplication using Java 21.0.9 with PID 244093 (/home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros/target/classes started by jjimenez in /home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros) +2025-12-22 16:49:55 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - The following 1 profile is active: "dev" +2025-12-22 16:49:55 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-9 - Starting... +2025-12-22 16:49:55 INFO [restartedMain] com.zaxxer.hikari.pool.HikariPool - HikariPool-9 - Added connection com.mysql.cj.jdbc.ConnectionImpl@7c32a1a0 +2025-12-22 16:49:55 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-9 - Start completed. +2025-12-22 16:49:55 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG +2025-12-22 16:49:56 INFO [restartedMain] liquibase.ui - Database is up to date, no changesets to execute +2025-12-22 16:49:56 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG +2025-12-22 16:49:56 INFO [restartedMain] liquibase.util - UPDATE SUMMARY +2025-12-22 16:49:56 INFO [restartedMain] liquibase.util - Run: 0 +2025-12-22 16:49:56 INFO [restartedMain] liquibase.util - Previously run: 60 +2025-12-22 16:49:56 INFO [restartedMain] liquibase.util - Filtered out: 0 +2025-12-22 16:49:56 INFO [restartedMain] liquibase.util - ------------------------------- +2025-12-22 16:49:56 INFO [restartedMain] liquibase.util - Total change sets: 60 +2025-12-22 16:49:56 INFO [restartedMain] liquibase.util - Update summary generated +2025-12-22 16:49:56 INFO [restartedMain] liquibase.command - Command execution complete +2025-12-22 16:49:56 INFO [restartedMain] o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-12-22 16:49:56 INFO [restartedMain] o.h.c.i.RegionFactoryInitiator - HHH000026: Second-level cache disabled +2025-12-22 16:49:56 INFO [restartedMain] o.hibernate.orm.connections.pooling - HHH10001005: Database info: Database JDBC URL [Connecting through datasource 'HikariDataSource (HikariPool-9)'] Database driver: undefined/unknown Database version: 8.0.43 @@ -265,35 +485,29 @@ Isolation level: undefined/unknown Minimum pool size: undefined/unknown Maximum pool size: undefined/unknown -2025-12-12 14:17:24 INFO [restartedMain] o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000489: No JTA platform available (set 'hibernate.transaction.jta.platform' to enable JTA platform integration) -2025-12-12 14:17:25 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Started ErpApplication in 2.671 seconds (process running for 3720.151) -2025-12-12 18:07:44 WARN [http-nio-8080-exec-7] o.h.e.jdbc.spi.SqlExceptionHelper - SQL Error: 3819, SQLState: HY000 -2025-12-12 18:07:44 ERROR [http-nio-8080-exec-7] o.h.e.jdbc.spi.SqlExceptionHelper - Check constraint 'presupuesto_chk_3' is violated. -2025-12-12 18:08:11 WARN [http-nio-8080-exec-4] o.h.e.jdbc.spi.SqlExceptionHelper - SQL Error: 3819, SQLState: HY000 -2025-12-12 18:08:11 ERROR [http-nio-8080-exec-4] o.h.e.jdbc.spi.SqlExceptionHelper - Check constraint 'presupuesto_chk_3' is violated. -2025-12-12 18:12:11 WARN [http-nio-8080-exec-4] o.h.e.jdbc.spi.SqlExceptionHelper - SQL Error: 3819, SQLState: HY000 -2025-12-12 18:12:11 ERROR [http-nio-8080-exec-4] o.h.e.jdbc.spi.SqlExceptionHelper - Check constraint 'presupuesto_chk_3' is violated. -2025-12-12 18:19:01 INFO [Thread-35] com.zaxxer.hikari.HikariDataSource - HikariPool-9 - Shutdown initiated... -2025-12-12 18:19:01 INFO [Thread-35] com.zaxxer.hikari.HikariDataSource - HikariPool-9 - Shutdown completed. -2025-12-12 18:19:01 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Starting ErpApplication using Java 21.0.9 with PID 234757 (/home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros/target/classes started by jjimenez in /home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros) -2025-12-12 18:19:01 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - The following 1 profile is active: "dev" -2025-12-12 18:19:02 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-10 - Starting... -2025-12-12 18:19:02 INFO [restartedMain] com.zaxxer.hikari.pool.HikariPool - HikariPool-10 - Added connection com.mysql.cj.jdbc.ConnectionImpl@27a3dc66 -2025-12-12 18:19:02 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-10 - Start completed. -2025-12-12 18:19:03 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG -2025-12-12 18:19:03 INFO [restartedMain] liquibase.ui - Database is up to date, no changesets to execute -2025-12-12 18:19:03 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG -2025-12-12 18:19:03 INFO [restartedMain] liquibase.util - UPDATE SUMMARY -2025-12-12 18:19:03 INFO [restartedMain] liquibase.util - Run: 0 -2025-12-12 18:19:03 INFO [restartedMain] liquibase.util - Previously run: 57 -2025-12-12 18:19:03 INFO [restartedMain] liquibase.util - Filtered out: 0 -2025-12-12 18:19:03 INFO [restartedMain] liquibase.util - ------------------------------- -2025-12-12 18:19:03 INFO [restartedMain] liquibase.util - Total change sets: 57 -2025-12-12 18:19:03 INFO [restartedMain] liquibase.util - Update summary generated -2025-12-12 18:19:03 INFO [restartedMain] liquibase.command - Command execution complete -2025-12-12 18:19:03 INFO [restartedMain] o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] -2025-12-12 18:19:03 INFO [restartedMain] o.h.c.i.RegionFactoryInitiator - HHH000026: Second-level cache disabled -2025-12-12 18:19:03 INFO [restartedMain] o.hibernate.orm.connections.pooling - HHH10001005: Database info: +2025-12-22 16:49:56 INFO [restartedMain] o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000489: No JTA platform available (set 'hibernate.transaction.jta.platform' to enable JTA platform integration) +2025-12-22 16:49:57 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Started ErpApplication in 2.083 seconds (process running for 706.151) +2025-12-22 16:51:05 INFO [Thread-35] com.zaxxer.hikari.HikariDataSource - HikariPool-9 - Shutdown initiated... +2025-12-22 16:51:05 INFO [Thread-35] com.zaxxer.hikari.HikariDataSource - HikariPool-9 - Shutdown completed. +2025-12-22 16:51:06 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Starting ErpApplication using Java 21.0.9 with PID 244093 (/home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros/target/classes started by jjimenez in /home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros) +2025-12-22 16:51:06 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - The following 1 profile is active: "dev" +2025-12-22 16:51:06 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-10 - Starting... +2025-12-22 16:51:06 INFO [restartedMain] com.zaxxer.hikari.pool.HikariPool - HikariPool-10 - Added connection com.mysql.cj.jdbc.ConnectionImpl@25775e18 +2025-12-22 16:51:06 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-10 - Start completed. +2025-12-22 16:51:06 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG +2025-12-22 16:51:06 INFO [restartedMain] liquibase.ui - Database is up to date, no changesets to execute +2025-12-22 16:51:06 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG +2025-12-22 16:51:06 INFO [restartedMain] liquibase.util - UPDATE SUMMARY +2025-12-22 16:51:06 INFO [restartedMain] liquibase.util - Run: 0 +2025-12-22 16:51:06 INFO [restartedMain] liquibase.util - Previously run: 60 +2025-12-22 16:51:06 INFO [restartedMain] liquibase.util - Filtered out: 0 +2025-12-22 16:51:06 INFO [restartedMain] liquibase.util - ------------------------------- +2025-12-22 16:51:06 INFO [restartedMain] liquibase.util - Total change sets: 60 +2025-12-22 16:51:06 INFO [restartedMain] liquibase.util - Update summary generated +2025-12-22 16:51:06 INFO [restartedMain] liquibase.command - Command execution complete +2025-12-22 16:51:06 INFO [restartedMain] o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-12-22 16:51:06 INFO [restartedMain] o.h.c.i.RegionFactoryInitiator - HHH000026: Second-level cache disabled +2025-12-22 16:51:06 INFO [restartedMain] o.hibernate.orm.connections.pooling - HHH10001005: Database info: Database JDBC URL [Connecting through datasource 'HikariDataSource (HikariPool-10)'] Database driver: undefined/unknown Database version: 8.0.43 @@ -301,29 +515,29 @@ Isolation level: undefined/unknown Minimum pool size: undefined/unknown Maximum pool size: undefined/unknown -2025-12-12 18:19:04 INFO [restartedMain] o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000489: No JTA platform available (set 'hibernate.transaction.jta.platform' to enable JTA platform integration) -2025-12-12 18:19:05 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Started ErpApplication in 4.557 seconds (process running for 18220.242) -2025-12-12 18:19:16 INFO [Thread-39] com.zaxxer.hikari.HikariDataSource - HikariPool-10 - Shutdown initiated... -2025-12-12 18:19:16 INFO [Thread-39] com.zaxxer.hikari.HikariDataSource - HikariPool-10 - Shutdown completed. -2025-12-12 18:19:17 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Starting ErpApplication using Java 21.0.9 with PID 234757 (/home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros/target/classes started by jjimenez in /home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros) -2025-12-12 18:19:17 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - The following 1 profile is active: "dev" -2025-12-12 18:19:17 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-11 - Starting... -2025-12-12 18:19:17 INFO [restartedMain] com.zaxxer.hikari.pool.HikariPool - HikariPool-11 - Added connection com.mysql.cj.jdbc.ConnectionImpl@77ffe204 -2025-12-12 18:19:17 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-11 - Start completed. -2025-12-12 18:19:17 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG -2025-12-12 18:19:18 INFO [restartedMain] liquibase.ui - Database is up to date, no changesets to execute -2025-12-12 18:19:18 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG -2025-12-12 18:19:18 INFO [restartedMain] liquibase.util - UPDATE SUMMARY -2025-12-12 18:19:18 INFO [restartedMain] liquibase.util - Run: 0 -2025-12-12 18:19:18 INFO [restartedMain] liquibase.util - Previously run: 57 -2025-12-12 18:19:18 INFO [restartedMain] liquibase.util - Filtered out: 0 -2025-12-12 18:19:18 INFO [restartedMain] liquibase.util - ------------------------------- -2025-12-12 18:19:18 INFO [restartedMain] liquibase.util - Total change sets: 57 -2025-12-12 18:19:18 INFO [restartedMain] liquibase.util - Update summary generated -2025-12-12 18:19:18 INFO [restartedMain] liquibase.command - Command execution complete -2025-12-12 18:19:18 INFO [restartedMain] o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] -2025-12-12 18:19:18 INFO [restartedMain] o.h.c.i.RegionFactoryInitiator - HHH000026: Second-level cache disabled -2025-12-12 18:19:18 INFO [restartedMain] o.hibernate.orm.connections.pooling - HHH10001005: Database info: +2025-12-22 16:51:07 INFO [restartedMain] o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000489: No JTA platform available (set 'hibernate.transaction.jta.platform' to enable JTA platform integration) +2025-12-22 16:51:08 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Started ErpApplication in 1.983 seconds (process running for 776.86) +2025-12-22 16:51:17 INFO [Thread-39] com.zaxxer.hikari.HikariDataSource - HikariPool-10 - Shutdown initiated... +2025-12-22 16:51:17 INFO [Thread-39] com.zaxxer.hikari.HikariDataSource - HikariPool-10 - Shutdown completed. +2025-12-22 16:51:18 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Starting ErpApplication using Java 21.0.9 with PID 244093 (/home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros/target/classes started by jjimenez in /home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros) +2025-12-22 16:51:18 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - The following 1 profile is active: "dev" +2025-12-22 16:51:18 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-11 - Starting... +2025-12-22 16:51:18 INFO [restartedMain] com.zaxxer.hikari.pool.HikariPool - HikariPool-11 - Added connection com.mysql.cj.jdbc.ConnectionImpl@5f9af21b +2025-12-22 16:51:18 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-11 - Start completed. +2025-12-22 16:51:18 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG +2025-12-22 16:51:18 INFO [restartedMain] liquibase.ui - Database is up to date, no changesets to execute +2025-12-22 16:51:18 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG +2025-12-22 16:51:18 INFO [restartedMain] liquibase.util - UPDATE SUMMARY +2025-12-22 16:51:18 INFO [restartedMain] liquibase.util - Run: 0 +2025-12-22 16:51:18 INFO [restartedMain] liquibase.util - Previously run: 60 +2025-12-22 16:51:18 INFO [restartedMain] liquibase.util - Filtered out: 0 +2025-12-22 16:51:18 INFO [restartedMain] liquibase.util - ------------------------------- +2025-12-22 16:51:18 INFO [restartedMain] liquibase.util - Total change sets: 60 +2025-12-22 16:51:18 INFO [restartedMain] liquibase.util - Update summary generated +2025-12-22 16:51:18 INFO [restartedMain] liquibase.command - Command execution complete +2025-12-22 16:51:19 INFO [restartedMain] o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-12-22 16:51:19 INFO [restartedMain] o.h.c.i.RegionFactoryInitiator - HHH000026: Second-level cache disabled +2025-12-22 16:51:19 INFO [restartedMain] o.hibernate.orm.connections.pooling - HHH10001005: Database info: Database JDBC URL [Connecting through datasource 'HikariDataSource (HikariPool-11)'] Database driver: undefined/unknown Database version: 8.0.43 @@ -331,36 +545,29 @@ Isolation level: undefined/unknown Minimum pool size: undefined/unknown Maximum pool size: undefined/unknown -2025-12-12 18:19:18 INFO [restartedMain] o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000489: No JTA platform available (set 'hibernate.transaction.jta.platform' to enable JTA platform integration) -2025-12-12 18:19:19 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Started ErpApplication in 2.878 seconds (process running for 18234.168) -2025-12-12 18:19:34 INFO [Thread-43] com.zaxxer.hikari.HikariDataSource - HikariPool-11 - Shutdown initiated... -2025-12-12 18:19:34 INFO [Thread-43] com.zaxxer.hikari.HikariDataSource - HikariPool-11 - Shutdown completed. -2025-12-12 18:19:34 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Starting ErpApplication using Java 21.0.9 with PID 234757 (/home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros/target/classes started by jjimenez in /home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros) -2025-12-12 18:19:34 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - The following 1 profile is active: "dev" -2025-12-12 18:19:35 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-12 - Starting... -2025-12-12 18:19:35 INFO [restartedMain] com.zaxxer.hikari.pool.HikariPool - HikariPool-12 - Added connection com.mysql.cj.jdbc.ConnectionImpl@27d3890b -2025-12-12 18:19:35 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-12 - Start completed. -2025-12-12 18:19:35 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG -2025-12-12 18:19:35 INFO [restartedMain] liquibase.lockservice - Successfully acquired change log lock -2025-12-12 18:19:35 INFO [restartedMain] liquibase.command - Using deploymentId: 5559975478 -2025-12-12 18:19:35 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG -2025-12-12 18:19:35 INFO [restartedMain] liquibase.ui - Running Changeset: db/changelog/changesets/0018-change-presupuesto-ch-3.yml::0018-change-presupuesto-ch-3::jjo -2025-12-12 18:19:35 INFO [restartedMain] liquibase.changelog - Custom SQL executed -2025-12-12 18:19:35 INFO [restartedMain] liquibase.changelog - ChangeSet db/changelog/changesets/0018-change-presupuesto-ch-3.yml::0018-change-presupuesto-ch-3::jjo ran successfully in 87ms -2025-12-12 18:19:35 INFO [restartedMain] liquibase.util - UPDATE SUMMARY -2025-12-12 18:19:35 INFO [restartedMain] liquibase.util - Run: 1 -2025-12-12 18:19:35 INFO [restartedMain] liquibase.util - Previously run: 57 -2025-12-12 18:19:35 INFO [restartedMain] liquibase.util - Filtered out: 0 -2025-12-12 18:19:35 INFO [restartedMain] liquibase.util - ------------------------------- -2025-12-12 18:19:35 INFO [restartedMain] liquibase.util - Total change sets: 58 -2025-12-12 18:19:35 INFO [restartedMain] liquibase.util - Update summary generated -2025-12-12 18:19:35 INFO [restartedMain] liquibase.command - Update command completed successfully. -2025-12-12 18:19:35 INFO [restartedMain] liquibase.ui - Liquibase: Update has been successful. Rows affected: 1 -2025-12-12 18:19:35 INFO [restartedMain] liquibase.lockservice - Successfully released change log lock -2025-12-12 18:19:35 INFO [restartedMain] liquibase.command - Command execution complete -2025-12-12 18:19:35 INFO [restartedMain] o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] -2025-12-12 18:19:35 INFO [restartedMain] o.h.c.i.RegionFactoryInitiator - HHH000026: Second-level cache disabled -2025-12-12 18:19:35 INFO [restartedMain] o.hibernate.orm.connections.pooling - HHH10001005: Database info: +2025-12-22 16:51:19 INFO [restartedMain] o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000489: No JTA platform available (set 'hibernate.transaction.jta.platform' to enable JTA platform integration) +2025-12-22 16:51:20 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Started ErpApplication in 2.204 seconds (process running for 789.066) +2025-12-22 16:52:27 INFO [Thread-43] com.zaxxer.hikari.HikariDataSource - HikariPool-11 - Shutdown initiated... +2025-12-22 16:52:27 INFO [Thread-43] com.zaxxer.hikari.HikariDataSource - HikariPool-11 - Shutdown completed. +2025-12-22 16:52:27 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Starting ErpApplication using Java 21.0.9 with PID 244093 (/home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros/target/classes started by jjimenez in /home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros) +2025-12-22 16:52:27 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - The following 1 profile is active: "dev" +2025-12-22 16:52:28 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-12 - Starting... +2025-12-22 16:52:28 INFO [restartedMain] com.zaxxer.hikari.pool.HikariPool - HikariPool-12 - Added connection com.mysql.cj.jdbc.ConnectionImpl@2e6586c0 +2025-12-22 16:52:28 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-12 - Start completed. +2025-12-22 16:52:28 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG +2025-12-22 16:52:28 INFO [restartedMain] liquibase.ui - Database is up to date, no changesets to execute +2025-12-22 16:52:28 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG +2025-12-22 16:52:28 INFO [restartedMain] liquibase.util - UPDATE SUMMARY +2025-12-22 16:52:28 INFO [restartedMain] liquibase.util - Run: 0 +2025-12-22 16:52:28 INFO [restartedMain] liquibase.util - Previously run: 60 +2025-12-22 16:52:28 INFO [restartedMain] liquibase.util - Filtered out: 0 +2025-12-22 16:52:28 INFO [restartedMain] liquibase.util - ------------------------------- +2025-12-22 16:52:28 INFO [restartedMain] liquibase.util - Total change sets: 60 +2025-12-22 16:52:28 INFO [restartedMain] liquibase.util - Update summary generated +2025-12-22 16:52:28 INFO [restartedMain] liquibase.command - Command execution complete +2025-12-22 16:52:28 INFO [restartedMain] o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-12-22 16:52:28 INFO [restartedMain] o.h.c.i.RegionFactoryInitiator - HHH000026: Second-level cache disabled +2025-12-22 16:52:28 INFO [restartedMain] o.hibernate.orm.connections.pooling - HHH10001005: Database info: Database JDBC URL [Connecting through datasource 'HikariDataSource (HikariPool-12)'] Database driver: undefined/unknown Database version: 8.0.43 @@ -368,5 +575,155 @@ Isolation level: undefined/unknown Minimum pool size: undefined/unknown Maximum pool size: undefined/unknown -2025-12-12 18:19:36 INFO [restartedMain] o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000489: No JTA platform available (set 'hibernate.transaction.jta.platform' to enable JTA platform integration) -2025-12-12 18:19:37 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Started ErpApplication in 2.842 seconds (process running for 18251.577) +2025-12-22 16:52:28 INFO [restartedMain] o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000489: No JTA platform available (set 'hibernate.transaction.jta.platform' to enable JTA platform integration) +2025-12-22 16:52:29 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Started ErpApplication in 1.885 seconds (process running for 858.525) +2025-12-22 16:52:31 INFO [Thread-47] com.zaxxer.hikari.HikariDataSource - HikariPool-12 - Shutdown initiated... +2025-12-22 16:52:31 INFO [Thread-47] com.zaxxer.hikari.HikariDataSource - HikariPool-12 - Shutdown completed. +2025-12-22 16:52:31 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Starting ErpApplication using Java 21.0.9 with PID 244093 (/home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros/target/classes started by jjimenez in /home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros) +2025-12-22 16:52:31 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - The following 1 profile is active: "dev" +2025-12-22 16:52:32 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-13 - Starting... +2025-12-22 16:52:32 INFO [restartedMain] com.zaxxer.hikari.pool.HikariPool - HikariPool-13 - Added connection com.mysql.cj.jdbc.ConnectionImpl@2c296461 +2025-12-22 16:52:32 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-13 - Start completed. +2025-12-22 16:52:32 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG +2025-12-22 16:52:32 INFO [restartedMain] liquibase.ui - Database is up to date, no changesets to execute +2025-12-22 16:52:32 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG +2025-12-22 16:52:32 INFO [restartedMain] liquibase.util - UPDATE SUMMARY +2025-12-22 16:52:32 INFO [restartedMain] liquibase.util - Run: 0 +2025-12-22 16:52:32 INFO [restartedMain] liquibase.util - Previously run: 60 +2025-12-22 16:52:32 INFO [restartedMain] liquibase.util - Filtered out: 0 +2025-12-22 16:52:32 INFO [restartedMain] liquibase.util - ------------------------------- +2025-12-22 16:52:32 INFO [restartedMain] liquibase.util - Total change sets: 60 +2025-12-22 16:52:32 INFO [restartedMain] liquibase.util - Update summary generated +2025-12-22 16:52:32 INFO [restartedMain] liquibase.command - Command execution complete +2025-12-22 16:52:32 INFO [restartedMain] o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-12-22 16:52:32 INFO [restartedMain] o.h.c.i.RegionFactoryInitiator - HHH000026: Second-level cache disabled +2025-12-22 16:52:32 INFO [restartedMain] o.hibernate.orm.connections.pooling - HHH10001005: Database info: + Database JDBC URL [Connecting through datasource 'HikariDataSource (HikariPool-13)'] + Database driver: undefined/unknown + Database version: 8.0.43 + Autocommit mode: undefined/unknown + Isolation level: undefined/unknown + Minimum pool size: undefined/unknown + Maximum pool size: undefined/unknown +2025-12-22 16:52:32 INFO [restartedMain] o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000489: No JTA platform available (set 'hibernate.transaction.jta.platform' to enable JTA platform integration) +2025-12-22 16:52:33 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Started ErpApplication in 2.146 seconds (process running for 862.558) +2025-12-22 16:55:56 INFO [Thread-51] com.zaxxer.hikari.HikariDataSource - HikariPool-13 - Shutdown initiated... +2025-12-22 16:55:56 INFO [Thread-51] com.zaxxer.hikari.HikariDataSource - HikariPool-13 - Shutdown completed. +2025-12-22 16:55:56 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Starting ErpApplication using Java 21.0.9 with PID 244093 (/home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros/target/classes started by jjimenez in /home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros) +2025-12-22 16:55:56 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - The following 1 profile is active: "dev" +2025-12-22 16:55:57 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-14 - Starting... +2025-12-22 16:55:57 INFO [restartedMain] com.zaxxer.hikari.pool.HikariPool - HikariPool-14 - Added connection com.mysql.cj.jdbc.ConnectionImpl@5f751b89 +2025-12-22 16:55:57 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-14 - Start completed. +2025-12-22 16:55:57 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG +2025-12-22 16:55:57 INFO [restartedMain] liquibase.ui - Database is up to date, no changesets to execute +2025-12-22 16:55:57 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG +2025-12-22 16:55:57 INFO [restartedMain] liquibase.util - UPDATE SUMMARY +2025-12-22 16:55:57 INFO [restartedMain] liquibase.util - Run: 0 +2025-12-22 16:55:57 INFO [restartedMain] liquibase.util - Previously run: 60 +2025-12-22 16:55:57 INFO [restartedMain] liquibase.util - Filtered out: 0 +2025-12-22 16:55:57 INFO [restartedMain] liquibase.util - ------------------------------- +2025-12-22 16:55:57 INFO [restartedMain] liquibase.util - Total change sets: 60 +2025-12-22 16:55:57 INFO [restartedMain] liquibase.util - Update summary generated +2025-12-22 16:55:57 INFO [restartedMain] liquibase.command - Command execution complete +2025-12-22 16:55:57 INFO [restartedMain] o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-12-22 16:55:57 INFO [restartedMain] o.h.c.i.RegionFactoryInitiator - HHH000026: Second-level cache disabled +2025-12-22 16:55:57 INFO [restartedMain] o.hibernate.orm.connections.pooling - HHH10001005: Database info: + Database JDBC URL [Connecting through datasource 'HikariDataSource (HikariPool-14)'] + Database driver: undefined/unknown + Database version: 8.0.43 + Autocommit mode: undefined/unknown + Isolation level: undefined/unknown + Minimum pool size: undefined/unknown + Maximum pool size: undefined/unknown +2025-12-22 16:55:57 INFO [restartedMain] o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000489: No JTA platform available (set 'hibernate.transaction.jta.platform' to enable JTA platform integration) +2025-12-22 16:55:58 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Started ErpApplication in 2.23 seconds (process running for 1067.493) +2025-12-22 16:57:28 INFO [Thread-55] com.zaxxer.hikari.HikariDataSource - HikariPool-14 - Shutdown initiated... +2025-12-22 16:57:28 INFO [Thread-55] com.zaxxer.hikari.HikariDataSource - HikariPool-14 - Shutdown completed. +2025-12-22 16:57:28 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Starting ErpApplication using Java 21.0.9 with PID 244093 (/home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros/target/classes started by jjimenez in /home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros) +2025-12-22 16:57:28 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - The following 1 profile is active: "dev" +2025-12-22 16:57:29 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-15 - Starting... +2025-12-22 16:57:29 INFO [restartedMain] com.zaxxer.hikari.pool.HikariPool - HikariPool-15 - Added connection com.mysql.cj.jdbc.ConnectionImpl@772b3e25 +2025-12-22 16:57:29 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-15 - Start completed. +2025-12-22 16:57:29 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG +2025-12-22 16:57:29 INFO [restartedMain] liquibase.ui - Database is up to date, no changesets to execute +2025-12-22 16:57:29 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG +2025-12-22 16:57:29 INFO [restartedMain] liquibase.util - UPDATE SUMMARY +2025-12-22 16:57:29 INFO [restartedMain] liquibase.util - Run: 0 +2025-12-22 16:57:29 INFO [restartedMain] liquibase.util - Previously run: 60 +2025-12-22 16:57:29 INFO [restartedMain] liquibase.util - Filtered out: 0 +2025-12-22 16:57:29 INFO [restartedMain] liquibase.util - ------------------------------- +2025-12-22 16:57:29 INFO [restartedMain] liquibase.util - Total change sets: 60 +2025-12-22 16:57:29 INFO [restartedMain] liquibase.util - Update summary generated +2025-12-22 16:57:29 INFO [restartedMain] liquibase.command - Command execution complete +2025-12-22 16:57:29 INFO [restartedMain] o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-12-22 16:57:29 INFO [restartedMain] o.h.c.i.RegionFactoryInitiator - HHH000026: Second-level cache disabled +2025-12-22 16:57:29 INFO [restartedMain] o.hibernate.orm.connections.pooling - HHH10001005: Database info: + Database JDBC URL [Connecting through datasource 'HikariDataSource (HikariPool-15)'] + Database driver: undefined/unknown + Database version: 8.0.43 + Autocommit mode: undefined/unknown + Isolation level: undefined/unknown + Minimum pool size: undefined/unknown + Maximum pool size: undefined/unknown +2025-12-22 16:57:29 INFO [restartedMain] o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000489: No JTA platform available (set 'hibernate.transaction.jta.platform' to enable JTA platform integration) +2025-12-22 16:57:30 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Started ErpApplication in 2.27 seconds (process running for 1159.496) +2025-12-22 17:02:46 INFO [Thread-59] com.zaxxer.hikari.HikariDataSource - HikariPool-15 - Shutdown initiated... +2025-12-22 17:02:46 INFO [Thread-59] com.zaxxer.hikari.HikariDataSource - HikariPool-15 - Shutdown completed. +2025-12-22 17:02:46 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Starting ErpApplication using Java 21.0.9 with PID 244093 (/home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros/target/classes started by jjimenez in /home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros) +2025-12-22 17:02:46 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - The following 1 profile is active: "dev" +2025-12-22 17:02:46 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-16 - Starting... +2025-12-22 17:02:46 INFO [restartedMain] com.zaxxer.hikari.pool.HikariPool - HikariPool-16 - Added connection com.mysql.cj.jdbc.ConnectionImpl@4c8a7773 +2025-12-22 17:02:46 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-16 - Start completed. +2025-12-22 17:02:46 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG +2025-12-22 17:02:47 INFO [restartedMain] liquibase.ui - Database is up to date, no changesets to execute +2025-12-22 17:02:47 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG +2025-12-22 17:02:47 INFO [restartedMain] liquibase.util - UPDATE SUMMARY +2025-12-22 17:02:47 INFO [restartedMain] liquibase.util - Run: 0 +2025-12-22 17:02:47 INFO [restartedMain] liquibase.util - Previously run: 60 +2025-12-22 17:02:47 INFO [restartedMain] liquibase.util - Filtered out: 0 +2025-12-22 17:02:47 INFO [restartedMain] liquibase.util - ------------------------------- +2025-12-22 17:02:47 INFO [restartedMain] liquibase.util - Total change sets: 60 +2025-12-22 17:02:47 INFO [restartedMain] liquibase.util - Update summary generated +2025-12-22 17:02:47 INFO [restartedMain] liquibase.command - Command execution complete +2025-12-22 17:02:47 INFO [restartedMain] o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-12-22 17:02:47 INFO [restartedMain] o.h.c.i.RegionFactoryInitiator - HHH000026: Second-level cache disabled +2025-12-22 17:02:47 INFO [restartedMain] o.hibernate.orm.connections.pooling - HHH10001005: Database info: + Database JDBC URL [Connecting through datasource 'HikariDataSource (HikariPool-16)'] + Database driver: undefined/unknown + Database version: 8.0.43 + Autocommit mode: undefined/unknown + Isolation level: undefined/unknown + Minimum pool size: undefined/unknown + Maximum pool size: undefined/unknown +2025-12-22 17:02:47 INFO [restartedMain] o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000489: No JTA platform available (set 'hibernate.transaction.jta.platform' to enable JTA platform integration) +2025-12-22 17:02:48 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Started ErpApplication in 1.77 seconds (process running for 1476.946) +2025-12-22 17:21:35 INFO [Thread-63] com.zaxxer.hikari.HikariDataSource - HikariPool-16 - Shutdown initiated... +2025-12-22 17:21:35 INFO [Thread-63] com.zaxxer.hikari.HikariDataSource - HikariPool-16 - Shutdown completed. +2025-12-22 17:21:35 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Starting ErpApplication using Java 21.0.9 with PID 244093 (/home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros/target/classes started by jjimenez in /home/jjimenez/DEVELOPMENT/01_PROGRAMMING/erp-imprimelibros) +2025-12-22 17:21:35 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - The following 1 profile is active: "dev" +2025-12-22 17:21:35 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-17 - Starting... +2025-12-22 17:21:35 INFO [restartedMain] com.zaxxer.hikari.pool.HikariPool - HikariPool-17 - Added connection com.mysql.cj.jdbc.ConnectionImpl@73a272be +2025-12-22 17:21:35 INFO [restartedMain] com.zaxxer.hikari.HikariDataSource - HikariPool-17 - Start completed. +2025-12-22 17:21:35 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG +2025-12-22 17:21:36 INFO [restartedMain] liquibase.ui - Database is up to date, no changesets to execute +2025-12-22 17:21:36 INFO [restartedMain] liquibase.changelog - Reading from imprimelibros.DATABASECHANGELOG +2025-12-22 17:21:36 INFO [restartedMain] liquibase.util - UPDATE SUMMARY +2025-12-22 17:21:36 INFO [restartedMain] liquibase.util - Run: 0 +2025-12-22 17:21:36 INFO [restartedMain] liquibase.util - Previously run: 60 +2025-12-22 17:21:36 INFO [restartedMain] liquibase.util - Filtered out: 0 +2025-12-22 17:21:36 INFO [restartedMain] liquibase.util - ------------------------------- +2025-12-22 17:21:36 INFO [restartedMain] liquibase.util - Total change sets: 60 +2025-12-22 17:21:36 INFO [restartedMain] liquibase.util - Update summary generated +2025-12-22 17:21:36 INFO [restartedMain] liquibase.command - Command execution complete +2025-12-22 17:21:36 INFO [restartedMain] o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-12-22 17:21:36 INFO [restartedMain] o.h.c.i.RegionFactoryInitiator - HHH000026: Second-level cache disabled +2025-12-22 17:21:36 INFO [restartedMain] o.hibernate.orm.connections.pooling - HHH10001005: Database info: + Database JDBC URL [Connecting through datasource 'HikariDataSource (HikariPool-17)'] + Database driver: undefined/unknown + Database version: 8.0.43 + Autocommit mode: undefined/unknown + Isolation level: undefined/unknown + Minimum pool size: undefined/unknown + Maximum pool size: undefined/unknown +2025-12-22 17:21:36 INFO [restartedMain] o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000489: No JTA platform available (set 'hibernate.transaction.jta.platform' to enable JTA platform integration) +2025-12-22 17:21:37 INFO [restartedMain] c.imprimelibros.erp.ErpApplication - Started ErpApplication in 1.802 seconds (process running for 2605.971) diff --git a/pom.xml b/pom.xml index 1778d32..a754caf 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ org.springframework.boot spring-boot-starter-parent - 3.5.8 + 3.5.9 com.imprimelibros diff --git a/src/main/java/com/imprimelibros/erp/cart/CartService.java b/src/main/java/com/imprimelibros/erp/cart/CartService.java index 3738a6a..48b1a18 100644 --- a/src/main/java/com/imprimelibros/erp/cart/CartService.java +++ b/src/main/java/com/imprimelibros/erp/cart/CartService.java @@ -5,6 +5,7 @@ import org.springframework.transaction.annotation.Transactional; import org.springframework.context.MessageSource; import org.springframework.stereotype.Service; +import java.time.Instant; import java.util.ArrayList; import java.util.HashMap; import java.util.List; @@ -20,15 +21,17 @@ import com.imprimelibros.erp.cart.dto.DireccionCardDTO; import com.imprimelibros.erp.cart.dto.DireccionShipment; import com.imprimelibros.erp.cart.dto.UpdateCartRequest; import com.imprimelibros.erp.common.Utils; +import com.imprimelibros.erp.common.email.EmailService; import com.imprimelibros.erp.direcciones.DireccionService; import com.imprimelibros.erp.externalApi.skApiClient; -import com.imprimelibros.erp.pedidos.Pedido; -import com.imprimelibros.erp.pedidos.PedidoService; +import com.imprimelibros.erp.pedidos.PedidoRepository; import com.imprimelibros.erp.presupuesto.PresupuestoRepository; @Service public class CartService { + private final EmailService emailService; + private final CartRepository cartRepo; private final CartDireccionRepository cartDireccionRepo; private final CartItemRepository itemRepo; @@ -36,14 +39,13 @@ public class CartService { private final PresupuestoRepository presupuestoRepo; private final DireccionService direccionService; private final skApiClient skApiClient; - private final PedidoService pedidoService; private final PresupuestoService presupuestoService; + private final PedidoRepository pedidoRepository; public CartService(CartRepository cartRepo, CartItemRepository itemRepo, CartDireccionRepository cartDireccionRepo, MessageSource messageSource, - PresupuestoFormatter presupuestoFormatter, PresupuestoRepository presupuestoRepo, - DireccionService direccionService, skApiClient skApiClient, - PedidoService pedidoService, PresupuestoService presupuestoService) { + PresupuestoFormatter presupuestoFormatter, PresupuestoRepository presupuestoRepo, PedidoRepository pedidoRepository, + DireccionService direccionService, skApiClient skApiClient,PresupuestoService presupuestoService, EmailService emailService) { this.cartRepo = cartRepo; this.itemRepo = itemRepo; this.cartDireccionRepo = cartDireccionRepo; @@ -51,8 +53,9 @@ public class CartService { this.presupuestoRepo = presupuestoRepo; this.direccionService = direccionService; this.skApiClient = skApiClient; - this.pedidoService = pedidoService; this.presupuestoService = presupuestoService; + this.emailService = emailService; + this.pedidoRepository = pedidoRepository; } public Cart findById(Long cartId) { @@ -264,7 +267,7 @@ public class CartService { } double totalBeforeDiscount = base + iva4 + iva21 + shipment; - int fidelizacion = pedidoService.getDescuentoFidelizacion(cart.getUserId()); + int fidelizacion = this.getDescuentoFidelizacion(cart.getUserId()); double descuento = totalBeforeDiscount * fidelizacion / 100.0; double total = totalBeforeDiscount - descuento; @@ -291,6 +294,27 @@ public class CartService { return summary; } + public int getDescuentoFidelizacion(Long userId) { + // descuento entre el 1% y el 6% para clientes fidelidad (mas de 1500€ en el + // ultimo año) + Instant haceUnAno = Instant.now().minusSeconds(365 * 24 * 60 * 60); + double totalGastado = pedidoRepository.sumTotalByCreatedByAndCreatedAtAfter(userId, haceUnAno); + if (totalGastado < 1200) { + return 0; + } else if (totalGastado >= 1200 && totalGastado < 1999) { + return 1; + } else if (totalGastado >= 2000 && totalGastado < 2999) { + return 2; + } else if (totalGastado >= 3000 && totalGastado < 3999) { + return 3; + } else if (totalGastado >= 4000 && totalGastado < 4999) { + return 4; + } else if (totalGastado >= 5000) { + return 5; + } + return 0; + } + public Map getCartSummary(Cart cart, Locale locale) { Map raw = getCartSummaryRaw(cart, locale); @@ -411,184 +435,6 @@ public class CartService { cartDireccionRepo.deleteByDireccionIdAndCartStatus(direccionId, Cart.Status.ACTIVE); } - @Transactional - public Long crearPedido(Long cartId, Long dirFactId, Locale locale) { - - Cart cart = this.getCartById(cartId); - List items = cart.getItems(); - - List> presupuestoRequests = new ArrayList<>(); - Map presupuestoDireccionesRequest = new HashMap<>(); - List presupuestoIds = new ArrayList<>(); - - for (Integer i = 0; i < items.size(); i++) { - CartItem item = items.get(i); - Presupuesto pCart = item.getPresupuesto(); - - // Asegurarnos de trabajar con la entidad gestionada por JPA - Presupuesto p = presupuestoRepo.findById(pCart.getId()) - .orElseThrow(() -> new IllegalStateException("Presupuesto no encontrado: " + pCart.getId())); - - Map data_to_send = presupuestoService.toSkApiRequest(p, true); - data_to_send.put("createPedido", 0); - - // Recuperar el mapa anidado datosCabecera - @SuppressWarnings("unchecked") - Map datosCabecera = (Map) data_to_send.get("datosCabecera"); - if (datosCabecera != null) { - Object tituloOriginal = datosCabecera.get("titulo"); - datosCabecera.put( - "titulo", - "[" + (i + 1) + "/" + items.size() + "] " + (tituloOriginal != null ? tituloOriginal : "")); - } - - Map direcciones_presupuesto = this.getDireccionesPresupuesto(cart, p); - data_to_send.put("direcciones", direcciones_presupuesto.get("direcciones")); - data_to_send.put("direccionesFP1", direcciones_presupuesto.get("direccionesFP1")); - - presupuestoDireccionesRequest.put(p.getId().toString(), direcciones_presupuesto); - - Map result = skApiClient.savePresupuesto(data_to_send); - - if (result.containsKey("error")) { - System.out.println("Error al guardar presupuesto en SK"); - System.out.println("-------------------------"); - System.out.println(result.get("error")); - // decide si seguir con otros items o abortar: - // continue; o bien throw ... - continue; - } - - Object dataObj = result.get("data"); - if (!(dataObj instanceof Map dataRaw)) { - System.out.println("Formato inesperado de 'data' en savePresupuesto: " + result); - continue; - } - - @SuppressWarnings("unchecked") - Map dataMap = (Map) dataRaw; - Long presId = ((Number) dataMap.get("id")).longValue(); - String skin = ((String) dataMap.get("iskn")).toString(); - p.setProveedor("Safekat"); - p.setProveedorRef1(skin); - p.setProveedorRef2(presId); - p.setEstado(Presupuesto.Estado.aceptado); - presupuestoRepo.save(p); - - presupuestoIds.add(p.getId()); - - presupuestoRequests.add(dataMap); - } - - // Crear el pedido en base a los presupuestos guardados - if (presupuestoRequests.isEmpty()) { - throw new IllegalStateException("No se pudieron guardar los presupuestos en SK."); - } else { - ArrayList presupuestoSkIds = new ArrayList<>(); - for (Map presData : presupuestoRequests) { - Long presId = ((Number) presData.get("id")).longValue(); - presupuestoSkIds.add(presId); - } - Map ids = new HashMap<>(); - ids.put("presupuesto_ids", presupuestoSkIds); - Long pedidoId = skApiClient.crearPedido(ids); - if (pedidoId == null) { - throw new IllegalStateException("No se pudo crear el pedido en SK."); - } - Pedido pedidoInterno = pedidoService.crearPedido( - presupuestoIds, - presupuestoDireccionesRequest, - dirFactId, - this.getCartSummaryRaw(cart, locale), - "Safekat", - String.valueOf(pedidoId), - cart.getUserId()); - return pedidoInterno.getId(); - } - } - - public Map getDireccionesPresupuesto(Cart cart, Presupuesto presupuesto) { - - List> direccionesPresupuesto = new ArrayList<>(); - List> direccionesPrueba = new ArrayList<>(); - if (cart.getOnlyOneShipment()) { - List direcciones = cart.getDirecciones().stream().limit(1).toList(); - if (!direcciones.isEmpty()) { - if (presupuesto.getServiciosJson() != null - && presupuesto.getServiciosJson().contains("deposito-legal")) { - direccionesPresupuesto.add(direcciones.get(0).toSkMap( - presupuesto.getSelectedTirada(), - presupuesto.getPeso(), - direcciones.get(0).getIsPalets(), - false)); - - direccionesPresupuesto.add(direcciones.get(0).toSkMapDepositoLegal()); - } - else { - direccionesPresupuesto.add(direcciones.get(0).toSkMap( - presupuesto.getSelectedTirada(), - presupuesto.getPeso(), - direcciones.get(0).getIsPalets(), - false)); - } - if (presupuesto.getServiciosJson() != null - && presupuesto.getServiciosJson().contains("ejemplar-prueba")) { - direccionesPrueba.add(direcciones.get(0).toSkMap( - 1, - presupuesto.getPeso(), - false, - true)); - } - - Map direccionesRet = new HashMap<>(); - direccionesRet.put("direcciones", direccionesPresupuesto); - if (!direccionesPrueba.isEmpty()) - direccionesRet.put("direccionesFP1", direccionesPrueba.get(0)); - else { - direccionesRet.put("direccionesFP1", new ArrayList<>()); - } - return direccionesRet; - } - } else { - List direcciones = cart.getDirecciones().stream() - .filter(d -> d.getPresupuesto() != null && d.getPresupuesto().getId().equals(presupuesto.getId())) - .toList(); - - for (CartDireccion cd : direcciones) { - - // direccion de ejemplar de prueba - if (cd.getPresupuesto() == null || !cd.getPresupuesto().getId().equals(presupuesto.getId())) { - continue; - } - if (cd.getUnidades() == null || cd.getUnidades() <= 0) { - direccionesPrueba.add(cd.toSkMap( - 1, - presupuesto.getPeso(), - false, - true)); - } else { - direccionesPresupuesto.add(cd.toSkMap( - cd.getUnidades(), - presupuesto.getPeso(), - cd.getIsPalets(), - false)); - } - } - if (presupuesto.getServiciosJson() != null - && presupuesto.getServiciosJson().contains("deposito-legal")) { - CartDireccion cd = new CartDireccion(); - direccionesPresupuesto.add(cd.toSkMapDepositoLegal()); - } - } - Map direccionesRet = new HashMap<>(); - direccionesRet.put("direcciones", direccionesPresupuesto); - if (!direccionesPrueba.isEmpty()) - direccionesRet.put("direccionesFP1", direccionesPrueba.get(0)); - else { - direccionesRet.put("direccionesFP1", new ArrayList<>()); - } - return direccionesRet; - } /*************************************** * MÉTODOS PRIVADOS diff --git a/src/main/java/com/imprimelibros/erp/payments/PaymentService.java b/src/main/java/com/imprimelibros/erp/payments/PaymentService.java index d383966..68bd685 100644 --- a/src/main/java/com/imprimelibros/erp/payments/PaymentService.java +++ b/src/main/java/com/imprimelibros/erp/payments/PaymentService.java @@ -13,9 +13,13 @@ import com.imprimelibros.erp.redsys.RedsysService.RedsysNotification; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import com.imprimelibros.erp.payments.repo.WebhookEventRepository; +import com.imprimelibros.erp.pedidos.Pedido; +import com.imprimelibros.erp.pedidos.PedidoLinea; +import com.imprimelibros.erp.pedidos.PedidoService; import java.time.LocalDateTime; import java.util.Locale; +import java.util.Map; import java.util.Objects; @Service @@ -28,18 +32,55 @@ public class PaymentService { private final WebhookEventRepository webhookEventRepo; private final ObjectMapper om = new ObjectMapper(); private final CartService cartService; + private final PedidoService pedidoService; public PaymentService(PaymentRepository payRepo, PaymentTransactionRepository txRepo, RefundRepository refundRepo, RedsysService redsysService, - WebhookEventRepository webhookEventRepo, CartService cartService) { + WebhookEventRepository webhookEventRepo, + CartService cartService, + PedidoService pedidoService) { this.payRepo = payRepo; this.txRepo = txRepo; this.refundRepo = refundRepo; this.redsysService = redsysService; this.webhookEventRepo = webhookEventRepo; this.cartService = cartService; + this.pedidoService = pedidoService; + } + + public Payment findFailedPaymentByOrderId(Long orderId) { + return payRepo.findByOrderIdAndStatus(orderId, PaymentStatus.failed) + .orElse(null); + } + + public Map getPaymentTransactionData(Long paymentId) { + PaymentTransaction tx = txRepo.findByPaymentIdAndType( + paymentId, + PaymentTransactionType.CAPTURE) + .orElse(null); + if (tx == null) { + return null; + } + String resp_payload = tx.getResponsePayload(); + try { + ObjectMapper om = new ObjectMapper(); + var node = om.readTree(resp_payload); + Long cartId = null; + Long dirFactId = null; + if (node.has("cartId")) { + cartId = node.get("cartId").asLong(); + } + if (node.has("dirFactId")) { + dirFactId = node.get("dirFactId").asLong(); + } + return Map.of( + "cartId", cartId, + "dirFactId", dirFactId); + } catch (Exception e) { + return null; + } } /** @@ -47,14 +88,15 @@ public class PaymentService { * oficial (ApiMacSha256). */ @Transactional - public FormPayload createRedsysPayment(Long cartId, Long dirFactId, Long amountCents, String currency, String method) + public FormPayload createRedsysPayment(Long cartId, Long dirFactId, Long amountCents, String currency, String method, Long orderId) throws Exception { Payment p = new Payment(); - p.setOrderId(null); + p.setOrderId(orderId); Cart cart = this.cartService.findById(cartId); if (cart != null && cart.getUserId() != null) { p.setUserId(cart.getUserId()); + this.cartService.lockCartById(cartId); } p.setCurrency(currency); p.setAmountTotalCents(amountCents); @@ -62,10 +104,6 @@ public class PaymentService { p.setStatus(PaymentStatus.requires_payment_method); p = payRepo.saveAndFlush(p); - // ANTES: - // String dsOrder = String.format("%012d", p.getId()); - - // AHORA: timestamp long now = System.currentTimeMillis(); String dsOrder = String.format("%012d", now % 1_000_000_000_000L); @@ -207,16 +245,12 @@ public class PaymentService { p.setAmountCapturedCents(p.getAmountCapturedCents() + notif.amountCents); p.setAuthorizedAt(LocalDateTime.now()); p.setCapturedAt(LocalDateTime.now()); + pedidoService.setOrderAsPaid(p.getOrderId()); + } else { p.setStatus(PaymentStatus.failed); p.setFailedAt(LocalDateTime.now()); - } - - if (authorized) { - Long orderId = processOrder(notif.cartId, notif.dirFactId, locale); - if (orderId != null) { - p.setOrderId(orderId); - } + pedidoService.markPedidoAsPaymentDenied(p.getOrderId()); } payRepo.save(p); @@ -311,7 +345,7 @@ public class PaymentService { } @Transactional - public Payment createBankTransferPayment(Long cartId, Long dirFactId, long amountCents, String currency) { + public Payment createBankTransferPayment(Long cartId, Long dirFactId, long amountCents, String currency, Locale locale, Long orderId) { Payment p = new Payment(); p.setOrderId(null); @@ -326,6 +360,9 @@ public class PaymentService { p.setAmountTotalCents(amountCents); p.setGateway("bank_transfer"); p.setStatus(PaymentStatus.requires_action); // pendiente de ingreso + if (orderId != null) { + p.setOrderId(orderId); + } p = payRepo.save(p); // Crear transacción pendiente @@ -406,13 +443,17 @@ public class PaymentService { // ignorar } - // 4) Procesar el pedido asociado al carrito (si existe) - if (cartId != null) { - Long orderId = processOrder(cartId, dirFactId, locale); + // 4) Procesar el pedido asociado al carrito (si existe) o marcar el pedido como pagado + if(p.getOrderId() != null) { + pedidoService.setOrderAsPaid(p.getOrderId()); + } + /*else if (cartId != null) { + // Se procesa el pedido dejando el estado calculado en processOrder + Long orderId = processOrder(cartId, dirFactId, locale, null); if (orderId != null) { p.setOrderId(orderId); } - } + }*/ payRepo.save(p); } @@ -508,30 +549,5 @@ public class PaymentService { return code >= 0 && code <= 99; } - /** - * Procesa el pedido asociado al carrito: - * - bloquea el carrito - * - crea el pedido a partir del carrito - * - */ - @Transactional - private Long processOrder(Long cartId, Long dirFactId, Locale locale) { - - Cart cart = this.cartService.findById(cartId); - if (cart != null) { - // Bloqueamos el carrito - this.cartService.lockCartById(cart.getId()); - // Creamos el pedido - Long orderId = this.cartService.crearPedido(cart.getId(), dirFactId, locale); - if (orderId == null) { - return null; - } else { - // envio de correo de confirmacion de pedido podria ir aqui - return orderId; - } - - } - return null; - } } diff --git a/src/main/java/com/imprimelibros/erp/payments/repo/PaymentRepository.java b/src/main/java/com/imprimelibros/erp/payments/repo/PaymentRepository.java index 6af17f7..5167a65 100644 --- a/src/main/java/com/imprimelibros/erp/payments/repo/PaymentRepository.java +++ b/src/main/java/com/imprimelibros/erp/payments/repo/PaymentRepository.java @@ -2,10 +2,13 @@ package com.imprimelibros.erp.payments.repo; import com.imprimelibros.erp.payments.model.Payment; +import com.imprimelibros.erp.payments.model.PaymentStatus; + import org.springframework.data.jpa.repository.JpaRepository; import java.util.Optional; public interface PaymentRepository extends JpaRepository { Optional findByGatewayAndGatewayOrderId(String gateway, String gatewayOrderId); + Optional findByOrderIdAndStatus(Long orderId, PaymentStatus status); } diff --git a/src/main/java/com/imprimelibros/erp/payments/repo/PaymentTransactionRepository.java b/src/main/java/com/imprimelibros/erp/payments/repo/PaymentTransactionRepository.java index 30f8bb6..22e9edf 100644 --- a/src/main/java/com/imprimelibros/erp/payments/repo/PaymentTransactionRepository.java +++ b/src/main/java/com/imprimelibros/erp/payments/repo/PaymentTransactionRepository.java @@ -14,6 +14,10 @@ import java.util.Optional; public interface PaymentTransactionRepository extends JpaRepository, JpaSpecificationExecutor { List findByGatewayTransactionId(String gatewayTransactionId); Optional findByIdempotencyKey(String idempotencyKey); + Optional findByPaymentIdAndType( + Long paymentId, + PaymentTransactionType type + ); Optional findFirstByPaymentIdAndTypeAndStatusOrderByIdDesc( Long paymentId, PaymentTransactionType type, diff --git a/src/main/java/com/imprimelibros/erp/pedidos/PedidoLinea.java b/src/main/java/com/imprimelibros/erp/pedidos/PedidoLinea.java index 7949ac5..af44c5c 100644 --- a/src/main/java/com/imprimelibros/erp/pedidos/PedidoLinea.java +++ b/src/main/java/com/imprimelibros/erp/pedidos/PedidoLinea.java @@ -10,12 +10,15 @@ import com.imprimelibros.erp.presupuesto.dto.Presupuesto; public class PedidoLinea { public enum Estado { - aprobado("pedido.estado.aprobado", 1), - maquetacion("pedido.estado.maquetacion", 2), - haciendo_ferro("pedido.estado.haciendo_ferro", 3), - ferro_cliente("pedido.estado.ferro_cliente", 4), - produccion("pedido.estado.produccion", 5), - cancelado("pedido.estado.cancelado", 6); + pendiente_pago("pedido.estado.pendiente_pago", 1), + procesando_pago("pedido.estado.procesando_pago", 2), + denegado_pago("pedido.estado.denegado_pago", 3), + aprobado("pedido.estado.aprobado", 4), + maquetacion("pedido.estado.maquetacion", 5), + haciendo_ferro("pedido.estado.haciendo_ferro", 6), + ferro_cliente("pedido.estado.ferro_cliente", 7), + produccion("pedido.estado.produccion", 8), + cancelado("pedido.estado.cancelado", 9); private final String messageKey; private final int priority; diff --git a/src/main/java/com/imprimelibros/erp/pedidos/PedidoService.java b/src/main/java/com/imprimelibros/erp/pedidos/PedidoService.java index 7e2e22f..2da06da 100644 --- a/src/main/java/com/imprimelibros/erp/pedidos/PedidoService.java +++ b/src/main/java/com/imprimelibros/erp/pedidos/PedidoService.java @@ -11,6 +11,10 @@ import java.util.Map; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import com.imprimelibros.erp.cart.Cart; +import com.imprimelibros.erp.cart.CartDireccion; +import com.imprimelibros.erp.cart.CartItem; +import com.imprimelibros.erp.cart.CartService; import com.imprimelibros.erp.common.Utils; import com.imprimelibros.erp.direcciones.Direccion; import com.imprimelibros.erp.presupuesto.PresupuestoRepository; @@ -30,10 +34,11 @@ public class PedidoService { private final DireccionService direccionService; private final UserService userService; private final PresupuestoService presupuestoService; + private final CartService cartService; public PedidoService(PedidoRepository pedidoRepository, PedidoLineaRepository pedidoLineaRepository, PresupuestoRepository presupuestoRepository, PedidoDireccionRepository pedidoDireccionRepository, - DireccionService direccionService, UserService userService, PresupuestoService presupuestoService) { + DireccionService direccionService, UserService userService, PresupuestoService presupuestoService, CartService cartService) { this.pedidoRepository = pedidoRepository; this.pedidoLineaRepository = pedidoLineaRepository; this.presupuestoRepository = presupuestoRepository; @@ -41,48 +46,22 @@ public class PedidoService { this.direccionService = direccionService; this.userService = userService; this.presupuestoService = presupuestoService; + this.cartService = cartService; } - public int getDescuentoFidelizacion(Long userId) { - // descuento entre el 1% y el 6% para clientes fidelidad (mas de 1500€ en el - // ultimo año) - Instant haceUnAno = Instant.now().minusSeconds(365 * 24 * 60 * 60); - double totalGastado = pedidoRepository.sumTotalByCreatedByAndCreatedAtAfter(userId, haceUnAno); - if (totalGastado < 1200) { - return 0; - } else if (totalGastado >= 1200 && totalGastado < 1999) { - return 1; - } else if (totalGastado >= 2000 && totalGastado < 2999) { - return 2; - } else if (totalGastado >= 3000 && totalGastado < 3999) { - return 3; - } else if (totalGastado >= 4000 && totalGastado < 4999) { - return 4; - } else if (totalGastado >= 5000) { - return 5; - } - return 0; - } - /** - * Crea un pedido a partir de: - * - lista de IDs de presupuesto - * - resumen numérico del carrito (getCartSummaryRaw) - * - datos de proveedor - * - usuario que crea el pedido - */ @Transactional public Pedido crearPedido( - List presupuestoIds, - Map presupuestoDirecciones, + Long cartId, Long direccionFacturacionId, - Map cartSummaryRaw, String proveedor, - String proveedorRef, - Long userId) { + String proveedorRef) { Pedido pedido = new Pedido(); + Cart cart = cartService.getCartById(cartId); + Map cartSummaryRaw = cartService.getCartSummaryRaw(cart, Locale.getDefault()); + // Datos económicos (ojo con las claves, son las del summaryRaw) pedido.setBase((Double) cartSummaryRaw.getOrDefault("base", 0.0d)); pedido.setEnvio((Double) cartSummaryRaw.getOrDefault("shipment", 0.0d)); @@ -92,10 +71,13 @@ public class PedidoService { pedido.setTotal((Double) cartSummaryRaw.getOrDefault("total", 0.0d)); // Proveedor - pedido.setProveedor(proveedor); - pedido.setProveedorRef(proveedorRef); + if(proveedor != null && proveedorRef != null) { + pedido.setProveedor(proveedor); + pedido.setProveedorRef(proveedorRef); + } // Auditoría mínima + Long userId = cart.getUserId(); pedido.setCreatedBy(userService.findById(userId)); pedido.setCreatedAt(Instant.now()); pedido.setDeleted(false); @@ -103,8 +85,36 @@ public class PedidoService { pedido.setUpdatedBy(userService.findById(userId)); // Guardamos el pedido - Pedido saved = pedidoRepository.save(pedido); + Pedido pedidoGuardado = pedidoRepository.save(pedido); + List items = cart.getItems(); + + for (Integer i = 0; i < items.size(); i++) { + CartItem item = items.get(i); + Presupuesto pCart = item.getPresupuesto(); + + // Asegurarnos de trabajar con la entidad gestionada por JPA + Presupuesto p = presupuestoRepository.findById(pCart.getId()) + .orElseThrow(() -> new IllegalStateException("Presupuesto no encontrado: " + pCart.getId())); + p.setEstado(Presupuesto.Estado.aceptado); + presupuestoRepository.save(p); + + PedidoLinea linea = new PedidoLinea(); + linea.setPedido(pedidoGuardado); + linea.setPresupuesto(p); + linea.setCreatedBy(userId); + linea.setCreatedAt(LocalDateTime.now()); + linea.setEstado(PedidoLinea.Estado.pendiente_pago); + linea.setEstadoManual(false); + pedidoLineaRepository.save(linea); + + // Guardar las direcciones asociadas a la línea del pedido + Map direcciones_presupuesto = this.getDireccionesPresupuesto(cart, p); + saveDireccionesPedidoLinea(direcciones_presupuesto, pedidoGuardado, linea, direccionFacturacionId); + + } + +/* // Crear líneas del pedido for (Long presupuestoId : presupuestoIds) { Presupuesto presupuesto = presupuestoRepository.getReferenceById(presupuestoId); @@ -114,7 +124,11 @@ public class PedidoService { linea.setPresupuesto(presupuesto); linea.setCreatedBy(userId); linea.setCreatedAt(LocalDateTime.now()); - linea.setEstado(getEstadoInicial(presupuesto)); + if(estadoInicial != null){ + linea.setEstado(estadoInicial); + } else { + linea.setEstado(getEstadoInicial(presupuesto)); + } linea.setEstadoManual(false); pedidoLineaRepository.save(linea); @@ -125,10 +139,175 @@ public class PedidoService { saveDireccionesPedidoLinea(direcciones, saved, linea, direccionFacturacionId); } } + */ - return saved; + return pedidoGuardado; } + public Boolean markPedidoAsProcesingPayment(Long pedidoId){ + Pedido pedido = pedidoRepository.findById(pedidoId).orElse(null); + if(pedido == null){ + return false; + } + List lineas = pedidoLineaRepository.findByPedidoId(pedidoId); + for (PedidoLinea linea : lineas) { + linea.setEstado(PedidoLinea.Estado.procesando_pago); + pedidoLineaRepository.save(linea); + } + + return true; + } + + + public Boolean markPedidoAsPaymentDenied(Long pedidoId){ + Pedido pedido = pedidoRepository.findById(pedidoId).orElse(null); + if(pedido == null){ + return false; + } + List lineas = pedidoLineaRepository.findByPedidoId(pedidoId); + for (PedidoLinea linea : lineas) { + linea.setEstado(PedidoLinea.Estado.denegado_pago); + pedidoLineaRepository.save(linea); + } + + return true; + } + + public Boolean markPedidoAsPaid(Long pedidoId){ + Pedido pedido = pedidoRepository.findById(pedidoId).orElse(null); + if(pedido == null){ + return false; + } + List lineas = pedidoLineaRepository.findByPedidoId(pedidoId); + for (PedidoLinea linea : lineas) { + linea.setEstado(this.getEstadoInicial(linea.getPresupuesto())); + pedidoLineaRepository.save(linea); + + // Save presupuesto in SK + } + + // Save pedido in SK + + return true; + } + + public Pedido findById(Long pedidoId){ + return pedidoRepository.findById(pedidoId).orElse(null); + } + + + /* + + @Transactional + public Long crearPedido(Long cartId, Long dirFactId, Locale locale) { + + return crearPedido(cartId, dirFactId, locale, null); + + + } + + + @Transactional + // Crear pedido interno (no en el proveedor) a partir del carrito + public Long crearPedido(Long cartId, Long dirFactId, Locale locale, PedidoLinea.Estado estadoInicial) { + + Cart cart = cartService.getCartById(cartId); + List items = cart.getItems(); + + List> presupuestoRequests = new ArrayList<>(); + Map presupuestoDireccionesRequest = new HashMap<>(); + List presupuestoIds = new ArrayList<>(); + + for (Integer i = 0; i < items.size(); i++) { + CartItem item = items.get(i); + Presupuesto pCart = item.getPresupuesto(); + + // Asegurarnos de trabajar con la entidad gestionada por JPA + Presupuesto p = presupuestoRepository.findById(pCart.getId()) + .orElseThrow(() -> new IllegalStateException("Presupuesto no encontrado: " + pCart.getId())); + + /*Map data_to_send = presupuestoService.toSkApiRequest(p, true); + data_to_send.put("createPedido", 0); + + // Recuperar el mapa anidado datosCabecera + @SuppressWarnings("unchecked") + Map datosCabecera = (Map) data_to_send.get("datosCabecera"); + if (datosCabecera != null) { + Object tituloOriginal = datosCabecera.get("titulo"); + datosCabecera.put( + "titulo", + "[" + (i + 1) + "/" + items.size() + "] " + (tituloOriginal != null ? tituloOriginal : "")); + } + + Map direcciones_presupuesto = this.getDireccionesPresupuesto(cart, p); + data_to_send.put("direcciones", direcciones_presupuesto.get("direcciones")); + data_to_send.put("direccionesFP1", direcciones_presupuesto.get("direccionesFP1")); + + presupuestoDireccionesRequest.put(p.getId().toString(), direcciones_presupuesto); + + + Map result = skApiClient.savePresupuesto(data_to_send); + + if (result.containsKey("error")) { + System.out.println("Error al guardar presupuesto en SK"); + System.out.println("-------------------------"); + System.out.println(result.get("error")); + // decide si seguir con otros items o abortar: + // continue; o bien throw ... + continue; + } + + Object dataObj = result.get("data"); + if (!(dataObj instanceof Map dataRaw)) { + System.out.println("Formato inesperado de 'data' en savePresupuesto: " + result); + continue; + } + + @SuppressWarnings("unchecked") + Map dataMap = (Map) dataRaw; + Long presId = ((Number) dataMap.get("id")).longValue(); + String skin = ((String) dataMap.get("iskn")).toString(); + p.setProveedor("Safekat"); + p.setProveedorRef1(skin); + p.setProveedorRef2(presId); + p.setEstado(Presupuesto.Estado.aceptado); + presupuestoRepo.save(p); + + presupuestoIds.add(p.getId()); + + presupuestoRequests.add(dataMap); + } + + // Crear el pedido en base a los presupuestos guardados + if (presupuestoRequests.isEmpty()) { + throw new IllegalStateException("No se pudieron guardar los presupuestos en SK."); + } else { + ArrayList presupuestoSkIds = new ArrayList<>(); + for (Map presData : presupuestoRequests) { + Long presId = ((Number) presData.get("id")).longValue(); + presupuestoSkIds.add(presId); + } + Map ids = new HashMap<>(); + ids.put("presupuesto_ids", presupuestoSkIds); + Long pedidoId = skApiClient.crearPedido(ids); + if (pedidoId == null) { + throw new IllegalStateException("No se pudo crear el pedido en SK."); + } + Pedido pedidoInterno = pedidoService.crearPedido( + presupuestoIds, + presupuestoDireccionesRequest, + dirFactId, + this.getCartSummaryRaw(cart, locale), + "Safekat", + String.valueOf(pedidoId), + cart.getUserId(), + estadoInicial); + + return pedidoInterno.getId(); + } + } + */ + /** Lista de los items del pedido preparados para la vista*/ @Transactional public List> getLineas(Long pedidoId, Locale locale) { @@ -160,17 +339,119 @@ public class PedidoService { return pedidoDireccionRepository.findByPedidoLinea_Id(pedidoLineaId); } + public Boolean setOrderAsPaid(Long pedidoId) { + Pedido pedido = pedidoRepository.findById(pedidoId).orElse(null); + if (pedido == null) { + return false; + } + List lineas = pedidoLineaRepository.findByPedidoId(pedidoId); + for (PedidoLinea linea : lineas) { + if (linea.getEstado() == Estado.pendiente_pago) { + Presupuesto presupuesto = linea.getPresupuesto(); + linea.setEstado(getEstadoInicial(presupuesto)); + pedidoLineaRepository.save(linea); + } + } + return true; + } + /*************************** * MÉTODOS PRIVADOS ***************************/ + // Obtener las direcciones de envío asociadas a un presupuesto en el carrito + private Map getDireccionesPresupuesto(Cart cart, Presupuesto presupuesto) { + + List> direccionesPresupuesto = new ArrayList<>(); + List> direccionesPrueba = new ArrayList<>(); + if (cart.getOnlyOneShipment()) { + List direcciones = cart.getDirecciones().stream().limit(1).toList(); + if (!direcciones.isEmpty()) { + if (presupuesto.getServiciosJson() != null + && presupuesto.getServiciosJson().contains("deposito-legal")) { + direccionesPresupuesto.add(direcciones.get(0).toSkMap( + presupuesto.getSelectedTirada(), + presupuesto.getPeso(), + direcciones.get(0).getIsPalets(), + false)); + + direccionesPresupuesto.add(direcciones.get(0).toSkMapDepositoLegal()); + } + else { + direccionesPresupuesto.add(direcciones.get(0).toSkMap( + presupuesto.getSelectedTirada(), + presupuesto.getPeso(), + direcciones.get(0).getIsPalets(), + false)); + } + if (presupuesto.getServiciosJson() != null + && presupuesto.getServiciosJson().contains("ejemplar-prueba")) { + direccionesPrueba.add(direcciones.get(0).toSkMap( + 1, + presupuesto.getPeso(), + false, + true)); + } + + Map direccionesRet = new HashMap<>(); + direccionesRet.put("direcciones", direccionesPresupuesto); + if (!direccionesPrueba.isEmpty()) + direccionesRet.put("direccionesFP1", direccionesPrueba.get(0)); + else { + direccionesRet.put("direccionesFP1", new ArrayList<>()); + } + return direccionesRet; + } + } else { + List direcciones = cart.getDirecciones().stream() + .filter(d -> d.getPresupuesto() != null && d.getPresupuesto().getId().equals(presupuesto.getId())) + .toList(); + + for (CartDireccion cd : direcciones) { + + // direccion de ejemplar de prueba + if (cd.getPresupuesto() == null || !cd.getPresupuesto().getId().equals(presupuesto.getId())) { + continue; + } + if (cd.getUnidades() == null || cd.getUnidades() <= 0) { + direccionesPrueba.add(cd.toSkMap( + 1, + presupuesto.getPeso(), + false, + true)); + } else { + direccionesPresupuesto.add(cd.toSkMap( + cd.getUnidades(), + presupuesto.getPeso(), + cd.getIsPalets(), + false)); + } + } + if (presupuesto.getServiciosJson() != null + && presupuesto.getServiciosJson().contains("deposito-legal")) { + CartDireccion cd = new CartDireccion(); + direccionesPresupuesto.add(cd.toSkMapDepositoLegal()); + } + } + Map direccionesRet = new HashMap<>(); + direccionesRet.put("direcciones", direccionesPresupuesto); + if (!direccionesPrueba.isEmpty()) + direccionesRet.put("direccionesFP1", direccionesPrueba.get(0)); + else { + direccionesRet.put("direccionesFP1", new ArrayList<>()); + } + return direccionesRet; + } + + @Transactional private void saveDireccionesPedidoLinea( - Map> direcciones, + Map direcciones, Pedido pedido, PedidoLinea linea, Long direccionFacturacionId) { // direccion prueba if (direcciones.containsKey("direccionesFP1")) { try { + @SuppressWarnings("unchecked") Map fp1 = (Map) direcciones.get("direccionesFP1"); @SuppressWarnings("unchecked") PedidoDireccion direccion = saveDireccion( diff --git a/src/main/java/com/imprimelibros/erp/pedidos/PedidosController.java b/src/main/java/com/imprimelibros/erp/pedidos/PedidosController.java index 08e3145..5e537f9 100644 --- a/src/main/java/com/imprimelibros/erp/pedidos/PedidosController.java +++ b/src/main/java/com/imprimelibros/erp/pedidos/PedidosController.java @@ -166,9 +166,16 @@ public class PedidosController { return text; }) .add("actions", pedido -> { - return "" + messageSource.getMessage("app.view", null, locale) + ""; + List lineas = repoPedidoLinea.findByPedidoId(pedido.getId()); + boolean hasDenegadoPago = lineas.stream() + .anyMatch(linea -> PedidoLinea.Estado.denegado_pago.equals(linea.getEstado())); + if (hasDenegadoPago) { + data += " " + messageSource.getMessage("app.pay", null, locale) + ""; + } + return data; }) .where(base) .toJson(total); diff --git a/src/main/java/com/imprimelibros/erp/redsys/RedsysController.java b/src/main/java/com/imprimelibros/erp/redsys/RedsysController.java index 4fa32fe..cb3bc82 100644 --- a/src/main/java/com/imprimelibros/erp/redsys/RedsysController.java +++ b/src/main/java/com/imprimelibros/erp/redsys/RedsysController.java @@ -1,10 +1,15 @@ package com.imprimelibros.erp.redsys; +import com.imprimelibros.erp.cart.Cart; import com.imprimelibros.erp.common.Utils; import com.imprimelibros.erp.payments.PaymentService; import com.imprimelibros.erp.payments.model.Payment; +import com.imprimelibros.erp.payments.repo.PaymentTransactionRepository; +import com.imprimelibros.erp.pedidos.Pedido; +import com.imprimelibros.erp.pedidos.PedidoService; import com.imprimelibros.erp.redsys.RedsysService.FormPayload; +import groovy.util.logging.Log; import jakarta.servlet.ServletContext; import jakarta.servlet.http.HttpServletRequest; import jakarta.servlet.http.HttpServletResponse; @@ -27,6 +32,7 @@ import org.springframework.web.servlet.mvc.support.RedirectAttributes; import java.nio.charset.StandardCharsets; import java.util.Locale; +import java.util.Map; import java.util.UUID; @Controller @@ -37,13 +43,16 @@ public class RedsysController { private final MessageSource messageSource; private final SpringTemplateEngine templateEngine; private final ServletContext servletContext; + private final PedidoService pedidoService; public RedsysController(PaymentService paymentService, MessageSource messageSource, - SpringTemplateEngine templateEngine, ServletContext servletContext) { + SpringTemplateEngine templateEngine, ServletContext servletContext, + PedidoService pedidoService) { this.paymentService = paymentService; this.messageSource = messageSource; this.templateEngine = templateEngine; this.servletContext = servletContext; + this.pedidoService = pedidoService; } @PostMapping(value = "/crear", consumes = MediaType.APPLICATION_FORM_URLENCODED_VALUE) @@ -55,9 +64,15 @@ public class RedsysController { HttpServletResponse response, Locale locale) throws Exception { + // Creamos el pedido inteno + Pedido order = pedidoService.crearPedido(cartId, dirFactId, null, null); + if ("bank-transfer".equalsIgnoreCase(method)) { + // 1) Creamos el Payment interno SIN orderId (null) - Payment p = paymentService.createBankTransferPayment(cartId, dirFactId, amountCents, "EUR"); + Payment p = paymentService.createBankTransferPayment(cartId, dirFactId, amountCents, "EUR", locale, order.getId()); + + pedidoService.markPedidoAsProcesingPayment(order.getId()); // 1️⃣ Crear la "aplicación" web de Thymeleaf (Jakarta) JakartaServletWebApplication app = JakartaServletWebApplication.buildApplication(servletContext); @@ -89,7 +104,102 @@ public class RedsysController { } // Tarjeta o Bizum (Redsys) - FormPayload form = paymentService.createRedsysPayment(cartId, dirFactId, amountCents, "EUR", method); + FormPayload form = paymentService.createRedsysPayment(cartId, dirFactId, amountCents, "EUR", method, order.getId()); + + String html = """ + Redirigiendo a Redsys… + +
+ + + + + +
+ + """.formatted( + form.action(), + form.signatureVersion(), + form.merchantParameters(), + form.signature(), cartId); + + byte[] body = html.getBytes(StandardCharsets.UTF_8); + return ResponseEntity.ok() + .contentType(MediaType.TEXT_HTML) + .body(body); + } + + + @PostMapping(value = "/reintentar", consumes = MediaType.APPLICATION_FORM_URLENCODED_VALUE) + @ResponseBody + public ResponseEntity reintentarPago(@RequestParam("amountCents") Long amountCents, + @RequestParam("method") String method, @RequestParam("orderId") Long orderId, + HttpServletRequest request, + HttpServletResponse response, Locale locale) + throws Exception { + + // Creamos el pedido inteno + Pedido order = pedidoService.findById(orderId); + + // Find the payment with orderId = order.getId() and status = failed + Payment failedPayment = paymentService.findFailedPaymentByOrderId(order.getId()); + if (failedPayment == null) { + throw new Exception("No se encontró un pago fallido para el pedido " + order.getId()); + } + + Long cartId = null; + Long dirFactId = null; + // Find payment transaction details from failedPayment if needed + try{ + Map transactionDetails = paymentService.getPaymentTransactionData(failedPayment.getId()); + cartId = transactionDetails.get("cartId"); + dirFactId = transactionDetails.get("dirFactId"); + } catch (Exception e) { + throw new Exception("No se pudieron obtener los detalles de la transacción para el pago " + failedPayment.getId()); + } + + + if ("bank-transfer".equalsIgnoreCase(method)) { + + // 1) Creamos el Payment interno SIN orderId (null) + Payment p = paymentService.createBankTransferPayment(cartId, dirFactId, amountCents, "EUR", locale, order.getId()); + + pedidoService.markPedidoAsProcesingPayment(order.getId()); + + // 1️⃣ Crear la "aplicación" web de Thymeleaf (Jakarta) + JakartaServletWebApplication app = JakartaServletWebApplication.buildApplication(servletContext); + + // 2️⃣ Construir el intercambio web desde request/response + response.setContentType("text/html;charset=UTF-8"); + response.setCharacterEncoding("UTF-8"); + IWebExchange exchange = app.buildExchange(request, response); + + // 3️⃣ Crear el contexto WebContext con Locale + WebContext ctx = new WebContext(exchange, locale); + + String importeFormateado = Utils.formatCurrency(amountCents / 100.0, locale); + ctx.setVariable("importe", importeFormateado); + ctx.setVariable("concepto", "TRANSF-" + p.getOrderId()); + Authentication auth = SecurityContextHolder.getContext().getAuthentication(); + boolean isAuth = auth != null + && auth.isAuthenticated() + && !(auth instanceof AnonymousAuthenticationToken); + ctx.setVariable("isAuth", isAuth); + + // 3) Renderizamos la plantilla a HTML + String html = templateEngine.process("imprimelibros/pagos/transfer", ctx); + + byte[] body = html.getBytes(StandardCharsets.UTF_8); + return ResponseEntity.ok() + .contentType(MediaType.TEXT_HTML) + .body(body); + } + + // Tarjeta o Bizum (Redsys) + FormPayload form = paymentService.createRedsysPayment(cartId, dirFactId, amountCents, "EUR", method, order.getId()); String html = """ Redirigiendo a Redsys… diff --git a/src/main/resources/db/changelog/changesets/0019-add-estados-pago-to-pedidos-lineas.yml b/src/main/resources/db/changelog/changesets/0019-add-estados-pago-to-pedidos-lineas.yml new file mode 100644 index 0000000..04ae683 --- /dev/null +++ b/src/main/resources/db/changelog/changesets/0019-add-estados-pago-to-pedidos-lineas.yml @@ -0,0 +1,32 @@ +databaseChangeLog: + - changeSet: + id: 0019-add-estados-pago-to-pedidos-lineas + author: jjo + changes: + - modifyDataType: + tableName: pedidos_lineas + columnName: estado + newDataType: > + enum( + 'pendiente_pago', + 'procesando_pago', + 'aprobado', + 'maquetacion', + 'haciendo_ferro', + 'produccion', + 'terminado', + 'cancelado' + ) + rollback: + - modifyDataType: + tableName: pedidos_lineas + columnName: estado + newDataType: > + enum( + 'aprobado', + 'maquetacion', + 'haciendo_ferro', + 'produccion', + 'terminado', + 'cancelado' + ) diff --git a/src/main/resources/db/changelog/changesets/0020-add-estados-pago-to-pedidos-lineas-2.yml b/src/main/resources/db/changelog/changesets/0020-add-estados-pago-to-pedidos-lineas-2.yml new file mode 100644 index 0000000..3246c20 --- /dev/null +++ b/src/main/resources/db/changelog/changesets/0020-add-estados-pago-to-pedidos-lineas-2.yml @@ -0,0 +1,35 @@ +databaseChangeLog: + - changeSet: + id: 0020-add-estados-pago-to-pedidos-lineas-2 + author: jjo + changes: + - modifyDataType: + tableName: pedidos_lineas + columnName: estado + newDataType: > + enum( + 'pendiente_pago', + 'procesando_pago', + 'denegado_pago', + 'aprobado', + 'maquetacion', + 'haciendo_ferro', + 'produccion', + 'terminado', + 'cancelado' + ) + rollback: + - modifyDataType: + tableName: pedidos_lineas + columnName: estado + newDataType: > + enum( + 'pendiente_pago', + 'procesando_pago', + 'aprobado', + 'maquetacion', + 'haciendo_ferro', + 'produccion', + 'terminado', + 'cancelado' + ) diff --git a/src/main/resources/db/changelog/master.yml b/src/main/resources/db/changelog/master.yml index fa49ef2..ea77465 100644 --- a/src/main/resources/db/changelog/master.yml +++ b/src/main/resources/db/changelog/master.yml @@ -34,4 +34,8 @@ databaseChangeLog: - include: file: db/changelog/changesets/0017-add-fecha-entrega-to-pedidos-lineas.yml - include: - file: db/changelog/changesets/0018-change-presupuesto-ch-3.yml \ No newline at end of file + file: db/changelog/changesets/0018-change-presupuesto-ch-3.yml + - include: + file: db/changelog/changesets/0019-add-estados-pago-to-pedidos-lineas.yml + - include: + file: db/changelog/changesets/0020-add-estados-pago-to-pedidos-lineas-2.yml \ No newline at end of file diff --git a/src/main/resources/i18n/app_es.properties b/src/main/resources/i18n/app_es.properties index 531eec6..f4f77df 100644 --- a/src/main/resources/i18n/app_es.properties +++ b/src/main/resources/i18n/app_es.properties @@ -11,6 +11,7 @@ app.back=Volver app.eliminar=Eliminar app.imprimir=Imprimir app.view=Ver +app.pay=Pagar app.acciones.siguiente=Siguiente app.acciones.anterior=Anterior diff --git a/src/main/resources/i18n/pedidos_es.properties b/src/main/resources/i18n/pedidos_es.properties index 364802a..a733b53 100644 --- a/src/main/resources/i18n/pedidos_es.properties +++ b/src/main/resources/i18n/pedidos_es.properties @@ -17,6 +17,9 @@ checkout.success.payment=Pago realizado con éxito. Gracias por su compra. checkout.make-payment=Realizar el pago checkout.authorization-required=Certifico que tengo los derechos para imprimir los archivos incluidos en mi pedido y me hago responsable en caso de reclamación de los mismos +pedido.estado.pendiente_pago=Pendiente de pago +pedido.estado.procesando_pago=Procesando pago +pedido.estado.denegado_pago=Pago denegado pedido.estado.aprobado=Aprobado pedido.estado.maquetacion=Maquetación pedido.estado.haciendo_ferro=Haciendo ferro diff --git a/src/main/resources/static/assets/js/pages/imprimelibros/pedidos/pedidos-common.js b/src/main/resources/static/assets/js/pages/imprimelibros/pedidos/pedidos-common.js index f0992da..69b5bc7 100644 --- a/src/main/resources/static/assets/js/pages/imprimelibros/pedidos/pedidos-common.js +++ b/src/main/resources/static/assets/js/pages/imprimelibros/pedidos/pedidos-common.js @@ -5,4 +5,42 @@ $(() => { window.location.href = url; }); + $(document).on('click', '.btn-pay', function () { + + const csrfToken = document.querySelector('meta[name="_csrf"]')?.getAttribute('content'); + const csrfHeader = document.querySelector('meta[name="_csrf_header"]')?.getAttribute('content'); + if (window.$ && csrfToken && csrfHeader) { + $.ajaxSetup({ + beforeSend: function (xhr) { + xhr.setRequestHeader(csrfHeader, csrfToken); + } + }); + } + + let pedidoId = $(this).data('id'); + let amount = $(this).data('amount'); + + + + $.ajax({ + url: `/pagos/redsys/reintentar`, + method: 'POST', + data: { + amountCents: amount, + orderId: pedidoId + }, + success: function (response) { + if (response && response.formHtml) { + $('body').append(response.formHtml); + $('#redsys-payment-form').submit(); + } else { + alert('Error al procesar el pago. Por favor, inténtelo de nuevo.'); + } + }, + error: function () { + alert('Error al procesar el pago. Por favor, inténtelo de nuevo.'); + } + }); + }); + }) \ No newline at end of file diff --git a/src/test/java/com/imprimelibros/erp/cart/envioCarroTest.java b/src/test/java/com/imprimelibros/erp/cart/envioCarroTest.java index 598c507..a2b1660 100644 --- a/src/test/java/com/imprimelibros/erp/cart/envioCarroTest.java +++ b/src/test/java/com/imprimelibros/erp/cart/envioCarroTest.java @@ -18,7 +18,7 @@ public class envioCarroTest { void addPedido(){ Locale locale = Locale.forLanguageTag("es-ES"); - cartService.crearPedido(carritoId, null, locale); + //cartService.crearPedido(carritoId, null, locale); } diff --git a/src/test/java/com/imprimelibros/erp/presupuesto/savePresupuestosTest.java b/src/test/java/com/imprimelibros/erp/presupuesto/savePresupuestosTest.java index 7d6f60a..4934d2f 100644 --- a/src/test/java/com/imprimelibros/erp/presupuesto/savePresupuestosTest.java +++ b/src/test/java/com/imprimelibros/erp/presupuesto/savePresupuestosTest.java @@ -17,10 +17,10 @@ public class savePresupuestosTest { @Test void testGuardarPresupuesto() { Locale locale = new Locale("es", "ES"); - Long resultado = cartService.crearPedido(9L, null, locale); + //Long resultado = cartService.crearPedido(9L, null, locale); System.out.println("📦 Presupuesto guardado:"); - System.out.println(resultado); + //System.out.println(resultado); // Aquí irían las aserciones para verificar que el presupuesto se guardó correctamente }