@@ -34,9 +34,9 @@ public class CalculatorService {
3434 Comparator .comparing ((it .gov .pagopa .afm .calculator .model .calculatormulti .Transfer ::getOnUs ), Comparator .reverseOrder ());
3535 private static final Comparator <it .gov .pagopa .afm .calculator .model .calculatormulti .Transfer > byFeeComparator =
3636 Comparator .comparing (it .gov .pagopa .afm .calculator .model .calculatormulti .Transfer ::getActualPayerFee )
37- .thenComparing (it .gov .pagopa .afm .calculator .model .calculatormulti .Transfer ::getPspBusinessName );
37+ .thenComparing (it .gov .pagopa .afm .calculator .model .calculatormulti .Transfer ::getPspBusinessName , Comparator . nullsLast ( String :: compareTo ) );
3838 private static final Comparator <it .gov .pagopa .afm .calculator .model .calculatormulti .Transfer > byPspNameComparator =
39- Comparator .comparing (it .gov .pagopa .afm .calculator .model .calculatormulti .Transfer ::getPspBusinessName )
39+ Comparator .comparing (it .gov .pagopa .afm .calculator .model .calculatormulti .Transfer ::getPspBusinessName , Comparator . nullsLast ( String :: compareTo ) )
4040 .thenComparing (it .gov .pagopa .afm .calculator .model .calculatormulti .Transfer ::getActualPayerFee );
4141 private static final Comparator <it .gov .pagopa .afm .calculator .model .calculatormulti .Transfer > randomComparator =
4242 (t1 , t2 ) -> Integer .compare (new SecureRandom ().nextInt (3 ) - 1 , 0 );
@@ -241,6 +241,10 @@ private List<it.gov.pagopa.afm.calculator.model.calculatormulti.Transfer> calcul
241241 transfers .stream ().filter (abiPredicate .and (onusPredicate )).collect (Collectors .toList ());
242242 }
243243
244+ Collections .sort (transfers , onUsFirstComparator );
245+
246+ Collections .sort (transfers , byFeeComparator );
247+
244248 Collections .sort (transfers , getDynamicComparator (orderType , onUsFirst ));
245249
246250 return transfers .stream ().limit (limit ).toList ();
0 commit comments