Skip to content

Commit

Permalink
Liquidaciones (#1)
Browse files Browse the repository at this point in the history
* Correcciones script migración liquidaciones. Generados pojos para jOOQ.

* Textos liquidaciones, traducción.

* Primera aproximación backend liquidaciones

* Pantallas resumen grupos y balance

* Correcciones balance

- Añadida fila para totales
- Dto tiene ahora total asociados y cálculo
- Ajuste de tipos
- Traducciones

* Ajuste impresión liquidaciones

* El balance ha de mostrarse positivo, puntuación.

* Modificado script de generación de jOOQ para que considere POJOs inmutables

* Selector de ronda en resumen liquidaciones grupo

 - Incluida ronda en vista liquidacion_grupos
- Actualización POJOs y servicio

* Selector ronda balance liquidación de grupo

* Cambios varios liquidaciones

- Popup edición
- Datos listados completados
- Actualización consultas y pojos
- Tabla informacion_pago

* Soporte eventos modal bootstrap

* Funcionalidad minima edición liquidaciones

* Localización pantalla liquidaciones

* Correcciones resumen liquidaciones

* Posibilidad de incluir/excluir borradores del cálculo

* Cálculo de compensación de altas

* Pantalla desglose liquidación

* Corrección cuando totalBalance es nulo

* Links en base a permisos interfaz usuario

* Correcciones seguridad liquidaciones

* Cambios lista liquidaciones por grupo

- Añadida columna fecha
- Valores federativos, ambito como string en lugar de object
- Colores según activos / balance

* Incremento número de versión

* Clean-up properties y migración de ejemplo
  • Loading branch information
luisbelloch authored Jun 28, 2016
1 parent e436879 commit 1263e36
Show file tree
Hide file tree
Showing 105 changed files with 13,133 additions and 800 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -3,3 +3,4 @@
Icon*
*.log
*.swp
tmp/
2 changes: 1 addition & 1 deletion backend/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ apply plugin: 'org.flywaydb.flyway'

jar {
baseName = 'cudu'
version = '2.1.2'
version = '2.2.0'
}

sourceCompatibility = 1.8
Expand Down
2 changes: 1 addition & 1 deletion backend/database.groovy
Original file line number Diff line number Diff line change
Expand Up @@ -158,7 +158,7 @@ class Jooq {
}
generate() {
pojos(false)
immutablePojos(false)
immutablePojos(true)
interfaces(false)
jpaAnnotations(false)
validationAnnotations(false)
Expand Down
20 changes: 20 additions & 0 deletions backend/src/main/java/org/scoutsfev/cudu/db/Keys.java
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,10 @@
import org.scoutsfev.cudu.db.tables.Ficha;
import org.scoutsfev.cudu.db.tables.Grupo;
import org.scoutsfev.cudu.db.tables.Impresion;
import org.scoutsfev.cudu.db.tables.InformacionPago;
import org.scoutsfev.cudu.db.tables.Liquidacion;
import org.scoutsfev.cudu.db.tables.LiquidacionAsociado;
import org.scoutsfev.cudu.db.tables.Ronda;
import org.scoutsfev.cudu.db.tables.SchemaVersion;
import org.scoutsfev.cudu.db.tables.Token;
import org.scoutsfev.cudu.db.tables.records.ActividadRecord;
Expand All @@ -34,6 +38,10 @@
import org.scoutsfev.cudu.db.tables.records.FichaRecord;
import org.scoutsfev.cudu.db.tables.records.GrupoRecord;
import org.scoutsfev.cudu.db.tables.records.ImpresionRecord;
import org.scoutsfev.cudu.db.tables.records.InformacionPagoRecord;
import org.scoutsfev.cudu.db.tables.records.LiquidacionAsociadoRecord;
import org.scoutsfev.cudu.db.tables.records.LiquidacionRecord;
import org.scoutsfev.cudu.db.tables.records.RondaRecord;
import org.scoutsfev.cudu.db.tables.records.SchemaVersionRecord;
import org.scoutsfev.cudu.db.tables.records.TokenRecord;

Expand Down Expand Up @@ -62,6 +70,7 @@ public class Keys {
public static final Identity<CursoRecord, Integer> IDENTITY_CURSO = Identities0.IDENTITY_CURSO;
public static final Identity<CursoParticipanteRecord, Integer> IDENTITY_CURSO_PARTICIPANTE = Identities0.IDENTITY_CURSO_PARTICIPANTE;
public static final Identity<FichaRecord, Integer> IDENTITY_FICHA = Identities0.IDENTITY_FICHA;
public static final Identity<LiquidacionRecord, Integer> IDENTITY_LIQUIDACION = Identities0.IDENTITY_LIQUIDACION;

// -------------------------------------------------------------------------
// UNIQUE and PRIMARY KEY definitions
Expand All @@ -78,6 +87,10 @@ public class Keys {
public static final UniqueKey<FichaRecord> FICHA_PKEY = UniqueKeys0.FICHA_PKEY;
public static final UniqueKey<GrupoRecord> PK_GRUPO = UniqueKeys0.PK_GRUPO;
public static final UniqueKey<ImpresionRecord> IMPRESION_PKEY = UniqueKeys0.IMPRESION_PKEY;
public static final UniqueKey<InformacionPagoRecord> PK_INFORMACION_PAGO = UniqueKeys0.PK_INFORMACION_PAGO;
public static final UniqueKey<LiquidacionRecord> PK_LIQUIDACION = UniqueKeys0.PK_LIQUIDACION;
public static final UniqueKey<LiquidacionAsociadoRecord> PK_LIQUIDACION_ASOCIADO = UniqueKeys0.PK_LIQUIDACION_ASOCIADO;
public static final UniqueKey<RondaRecord> PK_RONDA = UniqueKeys0.PK_RONDA;
public static final UniqueKey<SchemaVersionRecord> SCHEMA_VERSION_PK = UniqueKeys0.SCHEMA_VERSION_PK;
public static final UniqueKey<TokenRecord> TOKEN_PKEY = UniqueKeys0.TOKEN_PKEY;

Expand All @@ -94,6 +107,7 @@ public class Keys {
public static final ForeignKey<CursoFormadorRecord, AsociadoRecord> CURSO_FORMADOR__FK_CURSO_FORMADOR_FORMADOR = ForeignKeys0.CURSO_FORMADOR__FK_CURSO_FORMADOR_FORMADOR;
public static final ForeignKey<CursoParticipanteRecord, CursoRecord> CURSO_PARTICIPANTE__FK_CURSO_PARTICIPANTE_CURSO = ForeignKeys0.CURSO_PARTICIPANTE__FK_CURSO_PARTICIPANTE_CURSO;
public static final ForeignKey<CursoParticipanteRecord, AsociadoRecord> CURSO_PARTICIPANTE__FK_CURSO_PARTICIPANTE_PARTICIPANTE = ForeignKeys0.CURSO_PARTICIPANTE__FK_CURSO_PARTICIPANTE_PARTICIPANTE;
public static final ForeignKey<LiquidacionRecord, RondaRecord> LIQUIDACION__FK_LIQUIDACION_RONDA = ForeignKeys0.LIQUIDACION__FK_LIQUIDACION_RONDA;

// -------------------------------------------------------------------------
// [#1459] distribute members to avoid static initialisers > 64kb
Expand All @@ -106,6 +120,7 @@ private static class Identities0 extends AbstractKeys {
public static Identity<CursoRecord, Integer> IDENTITY_CURSO = createIdentity(Curso.CURSO, Curso.CURSO.ID);
public static Identity<CursoParticipanteRecord, Integer> IDENTITY_CURSO_PARTICIPANTE = createIdentity(CursoParticipante.CURSO_PARTICIPANTE, CursoParticipante.CURSO_PARTICIPANTE.SECUENCIA_INSCRIPCION);
public static Identity<FichaRecord, Integer> IDENTITY_FICHA = createIdentity(Ficha.FICHA, Ficha.FICHA.ID);
public static Identity<LiquidacionRecord, Integer> IDENTITY_LIQUIDACION = createIdentity(Liquidacion.LIQUIDACION, Liquidacion.LIQUIDACION.ID);
}

private static class UniqueKeys0 extends AbstractKeys {
Expand All @@ -120,6 +135,10 @@ private static class UniqueKeys0 extends AbstractKeys {
public static final UniqueKey<FichaRecord> FICHA_PKEY = createUniqueKey(Ficha.FICHA, Ficha.FICHA.ID, Ficha.FICHA.LENGUAJE);
public static final UniqueKey<GrupoRecord> PK_GRUPO = createUniqueKey(Grupo.GRUPO, Grupo.GRUPO.ID);
public static final UniqueKey<ImpresionRecord> IMPRESION_PKEY = createUniqueKey(Impresion.IMPRESION, Impresion.IMPRESION.FICHERO, Impresion.IMPRESION.USUARIO_ID);
public static final UniqueKey<InformacionPagoRecord> PK_INFORMACION_PAGO = createUniqueKey(InformacionPago.INFORMACION_PAGO, InformacionPago.INFORMACION_PAGO.ASOCIACIONID);
public static final UniqueKey<LiquidacionRecord> PK_LIQUIDACION = createUniqueKey(Liquidacion.LIQUIDACION, Liquidacion.LIQUIDACION.ID);
public static final UniqueKey<LiquidacionAsociadoRecord> PK_LIQUIDACION_ASOCIADO = createUniqueKey(LiquidacionAsociado.LIQUIDACION_ASOCIADO, LiquidacionAsociado.LIQUIDACION_ASOCIADO.LIQUIDACION_ID, LiquidacionAsociado.LIQUIDACION_ASOCIADO.ASOCIADO_ID);
public static final UniqueKey<RondaRecord> PK_RONDA = createUniqueKey(Ronda.RONDA, Ronda.RONDA.ID);
public static final UniqueKey<SchemaVersionRecord> SCHEMA_VERSION_PK = createUniqueKey(SchemaVersion.SCHEMA_VERSION, SchemaVersion.SCHEMA_VERSION.VERSION);
public static final UniqueKey<TokenRecord> TOKEN_PKEY = createUniqueKey(Token.TOKEN, Token.TOKEN.TOKEN_);
}
Expand All @@ -134,5 +153,6 @@ private static class ForeignKeys0 extends AbstractKeys {
public static final ForeignKey<CursoFormadorRecord, AsociadoRecord> CURSO_FORMADOR__FK_CURSO_FORMADOR_FORMADOR = createForeignKey(org.scoutsfev.cudu.db.Keys.PK_ASOCIADO, CursoFormador.CURSO_FORMADOR, CursoFormador.CURSO_FORMADOR.ASOCIADO_ID);
public static final ForeignKey<CursoParticipanteRecord, CursoRecord> CURSO_PARTICIPANTE__FK_CURSO_PARTICIPANTE_CURSO = createForeignKey(org.scoutsfev.cudu.db.Keys.PK_CURSO, CursoParticipante.CURSO_PARTICIPANTE, CursoParticipante.CURSO_PARTICIPANTE.CURSO_ID);
public static final ForeignKey<CursoParticipanteRecord, AsociadoRecord> CURSO_PARTICIPANTE__FK_CURSO_PARTICIPANTE_PARTICIPANTE = createForeignKey(org.scoutsfev.cudu.db.Keys.PK_ASOCIADO, CursoParticipante.CURSO_PARTICIPANTE, CursoParticipante.CURSO_PARTICIPANTE.ASOCIADO_ID);
public static final ForeignKey<LiquidacionRecord, RondaRecord> LIQUIDACION__FK_LIQUIDACION_RONDA = createForeignKey(org.scoutsfev.cudu.db.Keys.PK_RONDA, Liquidacion.LIQUIDACION, Liquidacion.LIQUIDACION.RONDA_ID);
}
}
29 changes: 26 additions & 3 deletions backend/src/main/java/org/scoutsfev/cudu/db/Public.java
Original file line number Diff line number Diff line change
Expand Up @@ -34,8 +34,19 @@
import org.scoutsfev.cudu.db.tables.Ficha;
import org.scoutsfev.cudu.db.tables.Grupo;
import org.scoutsfev.cudu.db.tables.Impresion;
import org.scoutsfev.cudu.db.tables.InformacionPago;
import org.scoutsfev.cudu.db.tables.Liquidacion;
import org.scoutsfev.cudu.db.tables.LiquidacionAsociado;
import org.scoutsfev.cudu.db.tables.LiquidacionBalance;
import org.scoutsfev.cudu.db.tables.LiquidacionBalanceResumen;
import org.scoutsfev.cudu.db.tables.LiquidacionCalculo;
import org.scoutsfev.cudu.db.tables.LiquidacionGrupos;
import org.scoutsfev.cudu.db.tables.Ronda;
import org.scoutsfev.cudu.db.tables.SchemaVersion;
import org.scoutsfev.cudu.db.tables.Token;
import org.scoutsfev.cudu.db.tables.ValoresFederativos;
import org.scoutsfev.cudu.db.tables.ValoresPorAsociacion;
import org.scoutsfev.cudu.db.tables.ValoresPorLiquidacion;


/**
Expand All @@ -51,7 +62,7 @@
@SuppressWarnings({ "all", "unchecked", "rawtypes" })
public class Public extends SchemaImpl {

private static final long serialVersionUID = -1807228256;
private static final long serialVersionUID = -736222858;

/**
* The reference instance of <code>public</code>
Expand Down Expand Up @@ -79,7 +90,8 @@ private final List<Sequence<?>> getSequences0() {
Sequences.CARGO_ID_SEQ,
Sequences.CURSO_ID_SEQ,
Sequences.CURSO_PARTICIPANTE_SECUENCIA_INSCRIPCION_SEQ,
Sequences.FICHA_ID_SEQ);
Sequences.FICHA_ID_SEQ,
Sequences.LIQUIDACION_ID_SEQ);
}

@Override
Expand Down Expand Up @@ -111,7 +123,18 @@ private final List<Table<?>> getTables0() {
Ficha.FICHA,
Grupo.GRUPO,
Impresion.IMPRESION,
InformacionPago.INFORMACION_PAGO,
Liquidacion.LIQUIDACION,
LiquidacionAsociado.LIQUIDACION_ASOCIADO,
LiquidacionBalance.LIQUIDACION_BALANCE,
LiquidacionBalanceResumen.LIQUIDACION_BALANCE_RESUMEN,
LiquidacionCalculo.LIQUIDACION_CALCULO,
LiquidacionGrupos.LIQUIDACION_GRUPOS,
Ronda.RONDA,
SchemaVersion.SCHEMA_VERSION,
Token.TOKEN);
Token.TOKEN,
ValoresFederativos.VALORES_FEDERATIVOS,
ValoresPorAsociacion.VALORES_POR_ASOCIACION,
ValoresPorLiquidacion.VALORES_POR_LIQUIDACION);
}
}
95 changes: 95 additions & 0 deletions backend/src/main/java/org/scoutsfev/cudu/db/Routines.java
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,13 @@

import javax.annotation.Generated;

import org.jooq.AggregateFunction;
import org.jooq.Configuration;
import org.jooq.Field;
import org.scoutsfev.cudu.db.routines.CrearLiquidacion;
import org.scoutsfev.cudu.db.routines.Edad;
import org.scoutsfev.cudu.db.routines.Last;
import org.scoutsfev.cudu.db.routines.LastAgg;


/**
Expand All @@ -26,6 +30,43 @@
@SuppressWarnings({ "all", "unchecked", "rawtypes" })
public class Routines {

/**
* Call <code>public.crear_liquidacion</code>
*/
public static Integer crearLiquidacion(Configuration configuration, String grupoId, Short rondaId, String creadoPor) {
CrearLiquidacion f = new CrearLiquidacion();
f.setGrupoId(grupoId);
f.setRondaId(rondaId);
f.setCreadoPor(creadoPor);

f.execute(configuration);
return f.getReturnValue();
}

/**
* Get <code>public.crear_liquidacion</code> as a field
*/
public static Field<Integer> crearLiquidacion(String grupoId, Short rondaId, String creadoPor) {
CrearLiquidacion f = new CrearLiquidacion();
f.setGrupoId(grupoId);
f.setRondaId(rondaId);
f.setCreadoPor(creadoPor);

return f.asField();
}

/**
* Get <code>public.crear_liquidacion</code> as a field
*/
public static Field<Integer> crearLiquidacion(Field<String> grupoId, Field<Short> rondaId, Field<String> creadoPor) {
CrearLiquidacion f = new CrearLiquidacion();
f.setGrupoId(grupoId);
f.setRondaId(rondaId);
f.setCreadoPor(creadoPor);

return f.asField();
}

/**
* Call <code>public.edad</code>
*/
Expand Down Expand Up @@ -56,4 +97,58 @@ public static Field<Double> edad(Field<Date> __1) {

return f.asField();
}

/**
* Get <code>public.last</code> as a field
*/
public static AggregateFunction<Object> last(Object __1) {
Last f = new Last();
f.set__1(__1);

return f.asAggregateFunction();
}

/**
* Get <code>public.last</code> as a field
*/
public static AggregateFunction<Object> last(Field<Object> __1) {
Last f = new Last();
f.set__1(__1);

return f.asAggregateFunction();
}

/**
* Call <code>public.last_agg</code>
*/
public static Object lastAgg(Configuration configuration, Object __1, Object __2) {
LastAgg f = new LastAgg();
f.set__1(__1);
f.set__2(__2);

f.execute(configuration);
return f.getReturnValue();
}

/**
* Get <code>public.last_agg</code> as a field
*/
public static Field<Object> lastAgg(Object __1, Object __2) {
LastAgg f = new LastAgg();
f.set__1(__1);
f.set__2(__2);

return f.asField();
}

/**
* Get <code>public.last_agg</code> as a field
*/
public static Field<Object> lastAgg(Field<Object> __1, Field<Object> __2) {
LastAgg f = new LastAgg();
f.set__1(__1);
f.set__2(__2);

return f.asField();
}
}
5 changes: 5 additions & 0 deletions backend/src/main/java/org/scoutsfev/cudu/db/Sequences.java
Original file line number Diff line number Diff line change
Expand Up @@ -53,4 +53,9 @@ public class Sequences {
* The sequence <code>public.ficha_id_seq</code>
*/
public static final Sequence<Long> FICHA_ID_SEQ = new SequenceImpl<Long>("ficha_id_seq", Public.PUBLIC, org.jooq.impl.SQLDataType.BIGINT.nullable(false));

/**
* The sequence <code>public.liquidacion_id_seq</code>
*/
public static final Sequence<Long> LIQUIDACION_ID_SEQ = new SequenceImpl<Long>("liquidacion_id_seq", Public.PUBLIC, org.jooq.impl.SQLDataType.BIGINT.nullable(false));
}
66 changes: 66 additions & 0 deletions backend/src/main/java/org/scoutsfev/cudu/db/Tables.java
Original file line number Diff line number Diff line change
Expand Up @@ -26,8 +26,19 @@
import org.scoutsfev.cudu.db.tables.Ficha;
import org.scoutsfev.cudu.db.tables.Grupo;
import org.scoutsfev.cudu.db.tables.Impresion;
import org.scoutsfev.cudu.db.tables.InformacionPago;
import org.scoutsfev.cudu.db.tables.Liquidacion;
import org.scoutsfev.cudu.db.tables.LiquidacionAsociado;
import org.scoutsfev.cudu.db.tables.LiquidacionBalance;
import org.scoutsfev.cudu.db.tables.LiquidacionBalanceResumen;
import org.scoutsfev.cudu.db.tables.LiquidacionCalculo;
import org.scoutsfev.cudu.db.tables.LiquidacionGrupos;
import org.scoutsfev.cudu.db.tables.Ronda;
import org.scoutsfev.cudu.db.tables.SchemaVersion;
import org.scoutsfev.cudu.db.tables.Token;
import org.scoutsfev.cudu.db.tables.ValoresFederativos;
import org.scoutsfev.cudu.db.tables.ValoresPorAsociacion;
import org.scoutsfev.cudu.db.tables.ValoresPorLiquidacion;


/**
Expand Down Expand Up @@ -143,6 +154,46 @@ public class Tables {
*/
public static final Impresion IMPRESION = org.scoutsfev.cudu.db.tables.Impresion.IMPRESION;

/**
* The table public.informacion_pago
*/
public static final InformacionPago INFORMACION_PAGO = org.scoutsfev.cudu.db.tables.InformacionPago.INFORMACION_PAGO;

/**
* The table public.liquidacion
*/
public static final Liquidacion LIQUIDACION = org.scoutsfev.cudu.db.tables.Liquidacion.LIQUIDACION;

/**
* The table public.liquidacion_asociado
*/
public static final LiquidacionAsociado LIQUIDACION_ASOCIADO = org.scoutsfev.cudu.db.tables.LiquidacionAsociado.LIQUIDACION_ASOCIADO;

/**
* The table public.liquidacion_balance
*/
public static final LiquidacionBalance LIQUIDACION_BALANCE = org.scoutsfev.cudu.db.tables.LiquidacionBalance.LIQUIDACION_BALANCE;

/**
* The table public.liquidacion_balance_resumen
*/
public static final LiquidacionBalanceResumen LIQUIDACION_BALANCE_RESUMEN = org.scoutsfev.cudu.db.tables.LiquidacionBalanceResumen.LIQUIDACION_BALANCE_RESUMEN;

/**
* The table public.liquidacion_calculo
*/
public static final LiquidacionCalculo LIQUIDACION_CALCULO = org.scoutsfev.cudu.db.tables.LiquidacionCalculo.LIQUIDACION_CALCULO;

/**
* The table public.liquidacion_grupos
*/
public static final LiquidacionGrupos LIQUIDACION_GRUPOS = org.scoutsfev.cudu.db.tables.LiquidacionGrupos.LIQUIDACION_GRUPOS;

/**
* The table public.ronda
*/
public static final Ronda RONDA = org.scoutsfev.cudu.db.tables.Ronda.RONDA;

/**
* The table public.schema_version
*/
Expand All @@ -152,4 +203,19 @@ public class Tables {
* The table public.token
*/
public static final Token TOKEN = org.scoutsfev.cudu.db.tables.Token.TOKEN;

/**
* The table public.valores_federativos
*/
public static final ValoresFederativos VALORES_FEDERATIVOS = org.scoutsfev.cudu.db.tables.ValoresFederativos.VALORES_FEDERATIVOS;

/**
* The table public.valores_por_asociacion
*/
public static final ValoresPorAsociacion VALORES_POR_ASOCIACION = org.scoutsfev.cudu.db.tables.ValoresPorAsociacion.VALORES_POR_ASOCIACION;

/**
* The table public.valores_por_liquidacion
*/
public static final ValoresPorLiquidacion VALORES_POR_LIQUIDACION = org.scoutsfev.cudu.db.tables.ValoresPorLiquidacion.VALORES_POR_LIQUIDACION;
}
Loading

0 comments on commit 1263e36

Please sign in to comment.