r1096 - in trunk: tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/service tutti-service/src/main/java/fr/ifremer/tutti/service/catches/multipost
Author: kmorin Date: 2013-06-11 15:08:45 +0200 (Tue, 11 Jun 2013) New Revision: 1096 Url: http://forge.codelutin.com/projects/tutti/repository/revisions/1096 Log: fixes #2651 [IMP/EXP] - Import/Export multi-postes : Mauvaise prise en compte des lots lors de r?\195?\169import Modified: trunk/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/service/BenthosBatchPersistenceServiceImpl.java trunk/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/service/MarineLitterBatchPersistenceServiceImpl.java trunk/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/service/SpeciesBatchPersistenceServiceImpl.java trunk/tutti-service/src/main/java/fr/ifremer/tutti/service/catches/multipost/TuttiMultiPostImportExportService.java Modified: trunk/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/service/BenthosBatchPersistenceServiceImpl.java =================================================================== --- trunk/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/service/BenthosBatchPersistenceServiceImpl.java 2013-06-10 15:46:02 UTC (rev 1095) +++ trunk/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/service/BenthosBatchPersistenceServiceImpl.java 2013-06-11 13:08:45 UTC (rev 1096) @@ -470,9 +470,24 @@ // Start rank order at 1 short rankOrder = (short) 1; if (source.getParentBatch() != null && source.getParentBatch().getChildBatchs() != null) { - rankOrder += (short) source.getParentBatch().getChildBatchs().size(); + int maxRankOrder = 0; + for (BenthosBatch batch : source.getParentBatch().getChildBatchs()) { + Integer r = batch.getRankOrder(); + if (r != null && r > maxRankOrder) { + maxRankOrder = r; + } + } + rankOrder += (short) maxRankOrder; + } else if (target.getParentBatch() != null && target.getParentBatch().getChildBatchs() != null) { - rankOrder += (short) target.getParentBatch().getChildBatchs().size(); + short maxRankOrder = 0; + for (Batch batch : target.getParentBatch().getChildBatchs()) { + Short r = batch.getRankOrder(); + if (r != null && r > maxRankOrder) { + maxRankOrder = r; + } + } + rankOrder += maxRankOrder; } target.setRankOrder(rankOrder); } Modified: trunk/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/service/MarineLitterBatchPersistenceServiceImpl.java =================================================================== --- trunk/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/service/MarineLitterBatchPersistenceServiceImpl.java 2013-06-10 15:46:02 UTC (rev 1095) +++ trunk/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/service/MarineLitterBatchPersistenceServiceImpl.java 2013-06-11 13:08:45 UTC (rev 1096) @@ -227,7 +227,14 @@ // Start rank order at 1, nothing before it short rankOrder = (short) 1; if (target.getParentBatch() != null && target.getParentBatch().getChildBatchs() != null) { - rankOrder += (short) target.getParentBatch().getChildBatchs().size(); + int maxRankOrder = 0; + for (Batch batch : target.getParentBatch().getChildBatchs()) { + Short r = batch.getRankOrder(); + if (r != null && r > maxRankOrder) { + maxRankOrder = r; + } + } + rankOrder += maxRankOrder; } target.setRankOrder(rankOrder); } Modified: trunk/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/service/SpeciesBatchPersistenceServiceImpl.java =================================================================== --- trunk/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/service/SpeciesBatchPersistenceServiceImpl.java 2013-06-10 15:46:02 UTC (rev 1095) +++ trunk/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/service/SpeciesBatchPersistenceServiceImpl.java 2013-06-11 13:08:45 UTC (rev 1096) @@ -512,10 +512,26 @@ // Start rank order at 1 short rankOrder = (short) 1; if (source.getParentBatch() != null && source.getParentBatch().getChildBatchs() != null) { - rankOrder += (short) source.getParentBatch().getChildBatchs().size(); + int maxRankOrder = 0; + for (SpeciesBatch batch : source.getParentBatch().getChildBatchs()) { + Integer r = batch.getRankOrder(); + if (r != null && r > maxRankOrder) { + maxRankOrder = r; + } + } + rankOrder += (short) maxRankOrder; + } else if (target.getParentBatch() != null && target.getParentBatch().getChildBatchs() != null) { - rankOrder += (short) target.getParentBatch().getChildBatchs().size(); + short maxRankOrder = 0; + for (Batch batch : target.getParentBatch().getChildBatchs()) { + Short r = batch.getRankOrder(); + if (r != null && r > maxRankOrder) { + maxRankOrder = r; + } + } + rankOrder += maxRankOrder; } + target.setRankOrder(rankOrder); } Modified: trunk/tutti-service/src/main/java/fr/ifremer/tutti/service/catches/multipost/TuttiMultiPostImportExportService.java =================================================================== --- trunk/tutti-service/src/main/java/fr/ifremer/tutti/service/catches/multipost/TuttiMultiPostImportExportService.java 2013-06-10 15:46:02 UTC (rev 1095) +++ trunk/tutti-service/src/main/java/fr/ifremer/tutti/service/catches/multipost/TuttiMultiPostImportExportService.java 2013-06-11 13:08:45 UTC (rev 1096) @@ -579,7 +579,6 @@ SpeciesBatch parent = null; if (StringUtils.isNotEmpty(parentId)) { parent = batches.get(parentId); - batch.setParentBatch(parent); parentPersistedId = parent.getId(); } @@ -786,7 +785,6 @@ BenthosBatch parent = null; if (StringUtils.isNotEmpty(parentId)) { parent = batches.get(parentId); - batch.setParentBatch(parent); parentPersistedId = parent.getId(); }
participants (1)
-
kmorin@users.forge.codelutin.com