Today the Max/Min projections do not take into consideration the field upon they should be calculated.
to use these projections the object must Implement Comparable which limits the Projection to only one way of calculating it.
but the user does insert a field name to the projection and expects a different calculation for each field (as being doe in the database).
Applying here a new algorithm so there is no need to use only comparable Objects
I am offering to use the same methodology as used in the OrderExitOperation.
build our own comparable that fits the field name set in the projection
this should be done for both max and min operations
Attached are both:
a patch with the fix
a patch with the corrected test