Tony CHEMIT pushed to branch develop at ultreiaio / ird-t3

Commits:

3 changed files:

Changes:

  • t3-actions/src/main/java/fr/ird/t3/actions/data/level0/ComputeRF2Action.java
    ... ... @@ -128,22 +128,22 @@ public class ComputeRF2Action extends AbstractLevel0Action<ComputeRF2Configurati
    128 128
             setSpeciesByCountry(result);
    
    129 129
             tripDone = TreeMultimap.create();
    
    130 130
             List<Trip> tripList = getUsableTrips(landingHarbours, true);
    
    131
    -        log.info("Trip count: "+tripList.size());
    
    131
    +        log.info("Trip count: " + tripList.size());
    
    132 132
             setTrips(tripList);
    
    133 133
             completeTripsByVessel = ArrayListMultimap.create();
    
    134 134
             // get all trips group by the vessel
    
    135 135
             ListMultimap<Vessel, Trip> tripsByVessel = TripTopiaDao.groupByVessel(tripList);
    
    136
    -        log.info("Trip vessel count: "+tripsByVessel.keySet().size());
    
    136
    +        log.info("Trip vessel count: " + tripsByVessel.keySet().size());
    
    137 137
     
    
    138 138
             // compute for each vessel list of complete trip
    
    139 139
             for (Map.Entry<Vessel, Collection<Trip>> entry : tripsByVessel.asMap().entrySet()) {
    
    140 140
                 Vessel vessel = entry.getKey();
    
    141 141
                 List<Trip> tripsForVessel = new ArrayList<>(entry.getValue());
    
    142
    -            log.info("Trip vessel ["+vessel.getLabel1()+"] count: "+tripsForVessel.size());
    
    142
    +            log.info("Trip vessel [" + vessel.getLabel1() + "] count: " + tripsForVessel.size());
    
    143 143
                 TripTopiaDao.sortTrips(tripsForVessel);
    
    144 144
                 // get all complete trips
    
    145 145
                 List<CompleteTrip> completeTrips = tripDAO.toCompleteTrip(tripsForVessel);
    
    146
    -            log.info("Complete trip vessel ["+vessel.getLabel1()+"] count: "+completeTrips.size());
    
    146
    +            log.info("Complete trip vessel [" + vessel.getLabel1() + "] count: " + completeTrips.size());
    
    147 147
                 completeTripsByVessel.putAll(vessel, completeTrips);
    
    148 148
             }
    
    149 149
     
    
    ... ... @@ -169,8 +169,10 @@ public class ComputeRF2Action extends AbstractLevel0Action<ComputeRF2Configurati
    169 169
     
    
    170 170
                         boolean computeRf2 = !getConfiguration().isConfigurationEmpty();
    
    171 171
     
    
    172
    -                    if (species.isEmpty()) {
    
    173
    -                        log.info(String.format("Won't compute rf2 for any stratum of fleet %s since no species found for it.", countryStr));
    
    172
    +                    if (computeRf2 && species.isEmpty()) {
    
    173
    +                        String message = l(locale, "t3.level0.computeRF2.skip.missing.species", harbourStr, countryStr);
    
    174
    +                        log.info(message);
    
    175
    +                        addInfoMessage(message);
    
    174 176
                             computeRf2 = false;
    
    175 177
                         }
    
    176 178
                         for (VesselSimpleType vesselSimpleType : vesselSimpleTypes) {
    
    ... ... @@ -191,6 +193,32 @@ public class ComputeRF2Action extends AbstractLevel0Action<ComputeRF2Configurati
    191 193
                                 T3Date month = entry.getKey();
    
    192 194
                                 Collection<CompleteTrip> stratumTrips = entry.getValue();
    
    193 195
                                 nbStratum++;
    
    196
    +                            boolean computeThisStratum = computeRf2;
    
    197
    +                            if (computeRf2) {
    
    198
    +                                // check that at least on trip miss logbook
    
    199
    +                                computeThisStratum = false;
    
    200
    +                                for (CompleteTrip completeTrip : stratumTrips) {
    
    201
    +                                    if (computeThisStratum) {
    
    202
    +                                        break;
    
    203
    +                                    }
    
    204
    +                                    for (Trip trip : completeTrip) {
    
    205
    +                                        if (trip.getElementaryCatchTotalWeightRf1(species) == 0) {
    
    206
    +
    
    207
    +                                            // no logbook on this
    
    208
    +                                            computeThisStratum = true;
    
    209
    +                                            String message = l(locale, "t3.level0.computeRF2.found.missing.logbook", harbourStr, countryStr, vesselSimpleTypeStr, decorate(trip));
    
    210
    +                                            log.info(message);
    
    211
    +                                            addInfoMessage(message);
    
    212
    +                                            break;
    
    213
    +                                        }
    
    214
    +                                    }
    
    215
    +                                }
    
    216
    +                                if (!computeThisStratum) {
    
    217
    +                                    String message = l(locale, "t3.level0.computeRF2.skip.missing.logbook", harbourStr, countryStr, vesselSimpleTypeStr);
    
    218
    +                                    log.info(message);
    
    219
    +                                    addInfoMessage(message);
    
    220
    +                                }
    
    221
    +                            }
    
    194 222
                                 String message = l(locale, "t3.level0.computeRF2.nbTrips.for.stratum",
    
    195 223
                                         stratumTrips.size(),
    
    196 224
                                         nbStratum,
    
    ... ... @@ -200,7 +228,7 @@ public class ComputeRF2Action extends AbstractLevel0Action<ComputeRF2Configurati
    200 228
                                         month);
    
    201 229
                                 log.info(message);
    
    202 230
                                 addInfoMessage(message);
    
    203
    -                            executeForStratum(harbour, fleet, vesselSimpleType, month, species, stratumTrips, computeRf2);
    
    231
    +                            executeForStratum(harbour, fleet, vesselSimpleType, month, species, stratumTrips, computeThisStratum);
    
    204 232
                             }
    
    205 233
                         }
    
    206 234
                     }
    
    ... ... @@ -269,7 +297,9 @@ public class ComputeRF2Action extends AbstractLevel0Action<ComputeRF2Configurati
    269 297
             }
    
    270 298
             // do the rf2 stratum computation
    
    271 299
             float rf2 = computeRf2 ? computeRF2ForStratum(trips, species) : 1f;
    
    272
    -        addInfoMessage(l(locale, "t3.level0.computeRF2.computed.rf2.for.stratum", rf2));
    
    300
    +        if (computeRf2) {
    
    301
    +            addInfoMessage(l(locale, "t3.level0.computeRF2.computed.rf2.for.stratum", rf2));
    
    302
    +        }
    
    273 303
             // assign rf2 value to the entity
    
    274 304
             raisingFactor.setRaisingFactorValue(rf2);
    
    275 305
             if (!rFCreated) {
    
    ... ... @@ -308,12 +338,12 @@ public class ComputeRF2Action extends AbstractLevel0Action<ComputeRF2Configurati
    308 338
                         tripCatchWeight = trip.getElementaryCatchTotalWeightRf1(species);
    
    309 339
                     }
    
    310 340
                     totalCatchWeight += tripCatchWeight;
    
    311
    -                if (canLog(tripStr,"compute")) {
    
    341
    +                if (canLog(tripStr, "compute")) {
    
    312 342
                         addInfoMessage(l(locale, "t3.level0.computeRF2.resume.rf1.for.trip", tripStr, tripCatchWeight, tripLandingWeight));
    
    313 343
                     }
    
    314 344
                 } else {
    
    315 345
                     // this trip does not have any landing catches for given species
    
    316
    -                if (canLog(tripStr,"compute")) {
    
    346
    +                if (canLog(tripStr, "compute")) {
    
    317 347
                         addWarningMessage(l(locale, "t3.level0.computeRF2.resume.skip.for.trip", tripStr));
    
    318 348
                     }
    
    319 349
                 }
    

  • t3-actions/src/main/resources/i18n/t3-actions_en_GB.properties
    ... ... @@ -38,10 +38,13 @@ t3.level0.computeRF1.warning.too.high.rf1=For complete trip %s from %s to %s com
    38 38
     t3.level0.computeRF1.warning.too.low.rf1=For complete trip %s from %s to %s computed rf1 is too small (less than %s)
    
    39 39
     t3.level0.computeRF1.warning.trip.is.not.complete=Trip %s is not compelte, can not compute any rf1 for it
    
    40 40
     t3.level0.computeRF2.computed.rf2.for.stratum=Computed rf2 for stratum \: %s
    
    41
    +t3.level0.computeRF2.found.missing.logbook=Stratum [%s/%s/%s] - found a trip {%s} without logbook, will compute rf2.
    
    41 42
     t3.level0.computeRF2.nbTrips.for.stratum=%s complete trip(s) for Stratum (%s) [%s/%s/%s/%s]
    
    42 43
     t3.level0.computeRF2.resume.rf1.for.trip=Trip %s total rf1 catches weight %s / total landing weight %s
    
    43 44
     t3.level0.computeRF2.resume.skip.for.trip=Trip %s has not elementary landing (trip not used to compute rf2)
    
    44 45
     t3.level0.computeRF2.resume.total.rf1=Sum total rf1 catches weight %s  / Sum total landing weight %s
    
    46
    +t3.level0.computeRF2.skip.missing.logbook=Stratum [%s/%s/%s] - won't compute rf2, since no logbook is missing.
    
    47
    +t3.level0.computeRF2.skip.missing.species=Strate [%s/%s/???] - won't compute rf2, since no species found the fleet.
    
    45 48
     t3.level0.computeSetDurationAndPositiveSetCount.error.noSetDurationFound=SetDuration data not found (ocean %s, fleet %s, school type %s, year %s)
    
    46 49
     t3.level0.computeTripEffort=Trip efforts %s (fishing %s, search %s)
    
    47 50
     t3.level0.computeTripEffortSkipForDay=Trip %s, day without fishing time (only activities of type « at harbour » or « under way without prospection »)
    

  • t3-actions/src/main/resources/i18n/t3-actions_fr_FR.properties
    ... ... @@ -38,10 +38,13 @@ t3.level0.computeRF1.warning.too.high.rf1=Pour la marée complète %s de %s à %
    38 38
     t3.level0.computeRF1.warning.too.low.rf1=Pour la marée complète %s de %s à %s le rf1 calculé %s est trop petit (inférieur à %s)
    
    39 39
     t3.level0.computeRF1.warning.trip.is.not.complete=La marée %s n'est pas complète, calcul du rf1 impossible
    
    40 40
     t3.level0.computeRF2.computed.rf2.for.stratum=Valeur du rf2 calculé pour la strate \: %s
    
    41
    +t3.level0.computeRF2.found.missing.logbook=Strate [%s/%s/%s] - une marée {%s} sans logbook a été trouvée, calcul du rf2 programmé.
    
    41 42
     t3.level0.computeRF2.nbTrips.for.stratum=%s marée(s) complête(s) pour la Strate (%s) [%s/%s/%s/%s]
    
    42 43
     t3.level0.computeRF2.resume.rf1.for.trip=Marée %s Poids total des captures rf1isées %s / Poids total des ventes %s
    
    43 44
     t3.level0.computeRF2.resume.skip.for.trip=La marée %s ne possède pas de lots commerciaux (non prise en compte dans le calcul du rf2)
    
    44 45
     t3.level0.computeRF2.resume.total.rf1=Poids cumulé des captures rf1isées %s  / Poids cumulé des ventes %s
    
    46
    +t3.level0.computeRF2.skip.missing.logbook=Strate [%s/%s/%s] - le rf2 ne sera pas calculé, aucun logbook manquant.
    
    47
    +t3.level0.computeRF2.skip.missing.species=Strate [%s/%s/???] - le rf2 ne sera pas calculé, pas d'espèce trouvé pour la flotte.
    
    45 48
     t3.level0.computeSetDurationAndPositiveSetCount.error.noSetDurationFound=Donnée SetDuration non trouvée (ocean %s, flotte %s, type de banc %s, année %s)
    
    46 49
     t3.level0.computeTripEffort=Efforts de la marée %s (pêche %s, recherche %s)
    
    47 50
     t3.level0.computeTripEffortSkipForDay=Marée %s, jour sans temps de pêche (uniquement des activités « au port » ou « route sans veille »)