Tony CHEMIT pushed to branch develop-9.0.x at ultreiaio / ird-observe
Commits:
-
296bd417
by Tony Chemit at 2022-12-12T14:11:35+01:00
-
5a4d1662
by Tony Chemit at 2022-12-12T14:57:16+01:00
8 changed files:
- core/api/dto/src/main/resources/observe-reports.properties
- core/services/test/src/main/resources/fixtures/fr/ird/observe/services/service/ReportService-psObservationCatchTotalCountByGroupPerReasonForDiscard.properties
- core/services/test/src/main/resources/fixtures/fr/ird/observe/services/service/ReportService-psObservationCatchTotalCountByGroupPerSpeciesFate.properties
- core/services/test/src/main/resources/fixtures/fr/ird/observe/services/service/ReportService-psObservationCatchWeightByGroupPerReasonForDiscard.properties
- core/services/test/src/main/resources/fixtures/fr/ird/observe/services/service/ReportService-psObservationCatchWeightByGroupPerSpeciesFate.properties
- toolkit/persistence/src/main/java/org/nuiton/topia/service/migration/TopiaMigrationServiceContext.java
- toolkit/persistence/src/main/java/org/nuiton/topia/service/migration/TopiaMigrationServiceImpl.java
- toolkit/persistence/src/main/java/org/nuiton/topia/service/migration/version/MigrationServiceSqlHelper.java
Changes:
| ... | ... | @@ -1151,7 +1151,7 @@ report.psObservationCatch.request.3.repeat=speciesId|column |
| 1151 | 1151 | ################################################################################
|
| 1152 | 1152 | report.psObservationCatchTotalCountByGroupPerSpeciesFate.modelType=PS
|
| 1153 | 1153 | report.psObservationCatchTotalCountByGroupPerSpeciesFate.name=Observations - Dénombrement des captures par type de banc et devenir, filtrés par groupe
|
| 1154 | -report.psObservationCatchTotalCountByGroupPerSpeciesFate.description=Afficher les nombres de captures par groupe d'espèce selon le type de banc et le devenir, filtré par groupe
|
|
| 1154 | +report.psObservationCatchTotalCountByGroupPerSpeciesFate.description=Afficher les nombres de captures selon le type de banc et le devenir, filtré par groupe
|
|
| 1155 | 1155 | report.psObservationCatchTotalCountByGroupPerSpeciesFate.variable.speciesGroup=fr.ird.observe.dto.referential.common.SpeciesGroupDto|\
|
| 1156 | 1156 | Select distinct sg \
|
| 1157 | 1157 | From TripImpl t \
|
| ... | ... | @@ -1214,8 +1214,8 @@ report.psObservationCatchTotalCountByGroupPerSpeciesFate.operations.4=SumIntColu |
| 1214 | 1214 | ## Poids des captures par groupe d'espèces
|
| 1215 | 1215 | ################################################################################
|
| 1216 | 1216 | report.psObservationCatchWeightByGroupPerSpeciesFate.modelType=PS
|
| 1217 | -report.psObservationCatchWeightByGroupPerSpeciesFate.name=Observations - Poids des captures par type de banc et devenir, filtrés par groupe
|
|
| 1218 | -report.psObservationCatchWeightByGroupPerSpeciesFate.description=Afficher le poids de captures par groupe d'espèce selon le type de banc et le devenir, filtrés par groupe
|
|
| 1217 | +report.psObservationCatchWeightByGroupPerSpeciesFate.name=Observations - Poids des captures par type de banc et devenir, filtrés par groupe (en t)
|
|
| 1218 | +report.psObservationCatchWeightByGroupPerSpeciesFate.description=Afficher le poids de captures selon le type de banc et le devenir, filtrés par groupe (en t)
|
|
| 1219 | 1219 | report.psObservationCatchWeightByGroupPerSpeciesFate.variable.speciesGroup=fr.ird.observe.dto.referential.common.SpeciesGroupDto|\
|
| 1220 | 1220 | Select distinct sg \
|
| 1221 | 1221 | From TripImpl t \
|
| ... | ... | @@ -1272,13 +1272,13 @@ Where m.id In :tripId \ |
| 1272 | 1272 | Group by s, sf \
|
| 1273 | 1273 | Order By s.homeId
|
| 1274 | 1274 | report.psObservationCatchWeightByGroupPerSpeciesFate.operations.2=ComputeDynamicHeader:Espèce,Total BL,Total BO|speciesFate
|
| 1275 | -report.psObservationCatchWeightByGroupPerSpeciesFate.operations.3=SumIntRow:1|3
|
|
| 1276 | -report.psObservationCatchWeightByGroupPerSpeciesFate.operations.4=SumIntColumn:1|1
|
|
| 1275 | +report.psObservationCatchWeightByGroupPerSpeciesFate.operations.3=SumRow:1|3
|
|
| 1276 | +report.psObservationCatchWeightByGroupPerSpeciesFate.operations.4=SumColumn:1|1
|
|
| 1277 | 1277 | ################################################################################
|
| 1278 | 1278 | ## Poids des captures par groupe d'espèces, type de banc et et raison de rejet
|
| 1279 | 1279 | ################################################################################
|
| 1280 | 1280 | report.psObservationCatchWeightByGroupPerReasonForDiscard.modelType=PS
|
| 1281 | -report.psObservationCatchWeightByGroupPerReasonForDiscard.name=Observations - Poids des rejets par type de banc et raison de rejet, filtrés par groupe
|
|
| 1281 | +report.psObservationCatchWeightByGroupPerReasonForDiscard.name=Observations - Poids des rejets par type de banc et raison de rejet, filtrés par groupe (en t)
|
|
| 1282 | 1282 | report.psObservationCatchWeightByGroupPerReasonForDiscard.description=Afficher le poids de captures rejetées par espèce selon le type de banc et type de rejet, filtrés par groupe
|
| 1283 | 1283 | report.psObservationCatchWeightByGroupPerReasonForDiscard.variable.speciesGroup=fr.ird.observe.dto.referential.common.SpeciesGroupDto|\
|
| 1284 | 1284 | Select distinct sg \
|
| ... | ... | @@ -1336,14 +1336,14 @@ Where m.id In :tripId \ |
| 1336 | 1336 | Group by s, sf \
|
| 1337 | 1337 | Order By s.homeId
|
| 1338 | 1338 | report.psObservationCatchWeightByGroupPerReasonForDiscard.operations.2=ComputeDynamicHeader:Espèce,Total BL,Total BO|reasonForDiscard
|
| 1339 | -report.psObservationCatchWeightByGroupPerReasonForDiscard.operations.3=SumIntRow:1|3
|
|
| 1340 | -report.psObservationCatchWeightByGroupPerReasonForDiscard.operations.4=SumIntColumn:1|1
|
|
| 1339 | +report.psObservationCatchWeightByGroupPerReasonForDiscard.operations.3=SumRow:1|3
|
|
| 1340 | +report.psObservationCatchWeightByGroupPerReasonForDiscard.operations.4=SumColumn:1|1
|
|
| 1341 | 1341 | ################################################################################
|
| 1342 | 1342 | ## Dénombrement des rejets par groupe d'espèces, type de banc et raison de rejet
|
| 1343 | 1343 | ################################################################################
|
| 1344 | 1344 | report.psObservationCatchTotalCountByGroupPerReasonForDiscard.modelType=PS
|
| 1345 | -report.psObservationCatchTotalCountByGroupPerReasonForDiscard.name=Observations - Dénombrement des rejets par type de banc et raison de rejet, filtrés par groupe
|
|
| 1346 | -report.psObservationCatchTotalCountByGroupPerReasonForDiscard.description=Afficher le nombre de captures rejetées par espèce selon le type de banc et le type de rejet, filtrés par groupe
|
|
| 1345 | +report.psObservationCatchTotalCountByGroupPerReasonForDiscard.name=Observations - Dénombrement des rejets par type de banc et raison de rejet, filtrés par groupe (en t)
|
|
| 1346 | +report.psObservationCatchTotalCountByGroupPerReasonForDiscard.description=Afficher le nombre de captures rejetées par espèce selon le type de banc et le type de rejet, filtrés par groupe (en t)
|
|
| 1347 | 1347 | report.psObservationCatchTotalCountByGroupPerReasonForDiscard.variable.speciesGroup=fr.ird.observe.dto.referential.common.SpeciesGroupDto|\
|
| 1348 | 1348 | Select distinct sg \
|
| 1349 | 1349 | From TripImpl t \
|
| ... | ... | @@ -19,8 +19,8 @@ |
| 19 | 19 | # <http://www.gnu.org/licenses/gpl-3.0.html>.
|
| 20 | 20 | # #L%
|
| 21 | 21 | ###
|
| 22 | -syntax.name=Observations - Dénombrement des rejets par type de banc et raison de rejet, filtrés par groupe
|
|
| 23 | -syntax.description=Afficher le nombre de captures rejetées par espèce selon le type de banc et le type de rejet, filtrés par groupe
|
|
| 22 | +syntax.name=Observations - Dénombrement des rejets par type de banc et raison de rejet, filtrés par groupe (en t)
|
|
| 23 | +syntax.description=Afficher le nombre de captures rejetées par espèce selon le type de banc et le type de rejet, filtrés par groupe (en t)
|
|
| 24 | 24 | syntax.rows=-1
|
| 25 | 25 | syntax.columns=-1
|
| 26 | 26 | syntax.columnsHeader=
|
| ... | ... | @@ -20,7 +20,7 @@ |
| 20 | 20 | # #L%
|
| 21 | 21 | ###
|
| 22 | 22 | syntax.name=Observations - Dénombrement des captures par type de banc et devenir, filtrés par groupe
|
| 23 | -syntax.description=Afficher les nombres de captures par groupe d'espèce selon le type de banc et le devenir, filtré par groupe
|
|
| 23 | +syntax.description=Afficher les nombres de captures selon le type de banc et le devenir, filtré par groupe
|
|
| 24 | 24 | syntax.rows=-1
|
| 25 | 25 | syntax.columns=-1
|
| 26 | 26 | syntax.columnsHeader=
|
| ... | ... | @@ -19,7 +19,7 @@ |
| 19 | 19 | # <http://www.gnu.org/licenses/gpl-3.0.html>.
|
| 20 | 20 | # #L%
|
| 21 | 21 | ###
|
| 22 | -syntax.name=Observations - Poids des rejets par type de banc et raison de rejet, filtrés par groupe
|
|
| 22 | +syntax.name=Observations - Poids des rejets par type de banc et raison de rejet, filtrés par groupe (en t)
|
|
| 23 | 23 | syntax.description=Afficher le poids de captures rejetées par espèce selon le type de banc et type de rejet, filtrés par groupe
|
| 24 | 24 | syntax.rows=-1
|
| 25 | 25 | syntax.columns=-1
|
| ... | ... | @@ -29,4 +29,4 @@ syntax.nbRequests=1 |
| 29 | 29 | result.columns=9
|
| 30 | 30 | result.rows=2
|
| 31 | 31 | result.0=Espèce^Total BL^Total BO^Espèce non désirée ou protégée^Taille^Cuve pleine^Poisson abîmé ou impropre à la consommation humaine^Autre ( à préciser dans les notes )^Total
|
| 32 | -result.1=[FAO]ALV [sc]Alopias vulpinus [fr]Renard^0.0^12.0^null^null^12.0^null^null^12 |
|
| \ No newline at end of file | ||
| 32 | +result.1=[FAO]ALV [sc]Alopias vulpinus [fr]Renard^0.0^12.0^null^null^12.0^null^null^12.0 |
|
| \ No newline at end of file |
| ... | ... | @@ -19,8 +19,8 @@ |
| 19 | 19 | # <http://www.gnu.org/licenses/gpl-3.0.html>.
|
| 20 | 20 | # #L%
|
| 21 | 21 | ###
|
| 22 | -syntax.name=Observations - Poids des captures par type de banc et devenir, filtrés par groupe
|
|
| 23 | -syntax.description=Afficher le poids de captures par groupe d'espèce selon le type de banc et le devenir, filtrés par groupe
|
|
| 22 | +syntax.name=Observations - Poids des captures par type de banc et devenir, filtrés par groupe (en t)
|
|
| 23 | +syntax.description=Afficher le poids de captures selon le type de banc et le devenir, filtrés par groupe (en t)
|
|
| 24 | 24 | syntax.rows=-1
|
| 25 | 25 | syntax.columns=-1
|
| 26 | 26 | syntax.columnsHeader=
|
| ... | ... | @@ -29,4 +29,4 @@ syntax.nbRequests=1 |
| 29 | 29 | result.columns=19
|
| 30 | 30 | result.rows=2
|
| 31 | 31 | result.0=Espèce^Total BL^Total BO^Ailerons seulements^Partiellement conservé (ex: ailerons de requin, poisson séché)^Autres (à préciser dans les notes)^Conservé pour raisons scientifiques^Conservé pour le marché local ou poisson séché/salé à bord^Conservé à destination de la conserverie^Utilisé en cuisine du bord^Echappe du filet (pour requin-baleine et cétacés)^Rejeté, statut non observé^Rejeté suffocant^Rejeté suffocant blessé^Sortie vivant du filet (pour requin-baleine et cétacés)^Sortie mort du filet (pour requin-baleine et cétacés)^Rejeté vivant^Rejeté mort^Total
|
| 32 | -result.1=[FAO]ALV [sc]Alopias vulpinus [fr]Renard^0.0^12.0^null^null^null^null^null^null^null^12.0^null^null^null^null^null^null^null^12 |
|
| \ No newline at end of file | ||
| 32 | +result.1=[FAO]ALV [sc]Alopias vulpinus [fr]Renard^0.0^12.0^null^null^null^null^null^null^null^12.0^null^null^null^null^null^null^null^12.0 |
|
| \ No newline at end of file |
| ... | ... | @@ -279,8 +279,11 @@ public class TopiaMigrationServiceContext { |
| 279 | 279 | }
|
| 280 | 280 | }
|
| 281 | 281 | |
| 282 | - public void saveModelVersion() {
|
|
| 283 | - saveVersion(null, getModelVersion());
|
|
| 282 | + protected void saveModelVersionAndCommit() {
|
|
| 283 | + Version version = getModelVersion();
|
|
| 284 | + log.info(String.format("[ Version %s ] Saving persistence model database version and commit.", version));
|
|
| 285 | + sqlHelper.saveAndCommit(jdbcHelper, version.getVersion());
|
|
| 286 | + dbVersion = version;
|
|
| 284 | 287 | }
|
| 285 | 288 | |
| 286 | 289 | public Optional<TopiaMigrationServiceAskUserToMigrate> getAskUserToMigrate() {
|
| ... | ... | @@ -289,11 +292,7 @@ public class TopiaMigrationServiceContext { |
| 289 | 292 | |
| 290 | 293 | protected void saveVersion(TopiaSqlSupport sqlSupport, Version version) {
|
| 291 | 294 | log.info(String.format("[ Version %s ] Saving new database version.", version));
|
| 292 | - if (sqlSupport != null) {
|
|
| 293 | - sqlHelper.save(sqlSupport, version.getVersion());
|
|
| 294 | - } else {
|
|
| 295 | - sqlHelper.save(jdbcHelper, version.getVersion());
|
|
| 296 | - }
|
|
| 295 | + sqlHelper.save(sqlSupport, version.getVersion());
|
|
| 297 | 296 | dbVersion = version;
|
| 298 | 297 | }
|
| 299 | 298 |
| ... | ... | @@ -91,7 +91,7 @@ public class TopiaMigrationServiceImpl implements TopiaMigrationService { |
| 91 | 91 | context.dropLegacyTable();
|
| 92 | 92 | if (dbVersion.equals(modelVersion)) {
|
| 93 | 93 | log.info("Database is up to date, but was coming from legacy migration table, fill new migration table.");
|
| 94 | - context.saveModelVersion();
|
|
| 94 | + context.saveModelVersionAndCommit();
|
|
| 95 | 95 | return;
|
| 96 | 96 | }
|
| 97 | 97 | }
|
| ... | ... | @@ -103,7 +103,7 @@ public class TopiaMigrationServiceImpl implements TopiaMigrationService { |
| 103 | 103 | |
| 104 | 104 | if (versionTableExist && dbNotVersioned) {
|
| 105 | 105 | log.info("Database is empty, no migration needed.");
|
| 106 | - context.saveModelVersion();
|
|
| 106 | + context.saveModelVersionAndCommit();
|
|
| 107 | 107 | return;
|
| 108 | 108 | }
|
| 109 | 109 | |
| ... | ... | @@ -113,8 +113,9 @@ public class TopiaMigrationServiceImpl implements TopiaMigrationService { |
| 113 | 113 | List<Version> versionsToApply = context.getResources().getVersionsAfter(dbVersion);
|
| 114 | 114 | |
| 115 | 115 | if (versionsToApply.isEmpty()) {
|
| 116 | + //TODO This case should never happen?
|
|
| 116 | 117 | log.info("No version to apply, no migration needed.");
|
| 117 | - context.saveModelVersion();
|
|
| 118 | + context.saveModelVersionAndCommit();
|
|
| 118 | 119 | return;
|
| 119 | 120 | }
|
| 120 | 121 |
| ... | ... | @@ -149,9 +149,9 @@ public interface MigrationServiceSqlHelper { |
| 149 | 149 | return deleteTableSql() + fillVersionSql(version);
|
| 150 | 150 | }
|
| 151 | 151 | |
| 152 | - default void save(JdbcHelper jdbcHelper, String version) {
|
|
| 152 | + default void saveAndCommit(JdbcHelper jdbcHelper, String version) {
|
|
| 153 | 153 | try {
|
| 154 | - jdbcHelper.runUpdate(saveTableSql(version));
|
|
| 154 | + jdbcHelper.runUpdate(saveTableSql(version) + "commit;");
|
|
| 155 | 155 | } catch (Exception e) {
|
| 156 | 156 | throw new TopiaException(String.format("Could not save version %s", version), e);
|
| 157 | 157 | }
|