commit 83072801872da36997900b4f2f7b58a1b6f8b138 parent bd365b6aa86483bd77d7586fccfbae8d1c61b353 Author: Kebigon <git@kebigon.xyz> Date: Sat, 28 Mar 2020 18:00:58 +0900 Improve the routes selected to be shown in the notification email Diffstat:
| M | launchers/suumo-search - Run.launch | | | 1 | + |
| M | src/main/java/xyz/kebigon/housesearch/domain/Posting.java | | | 101 | +++++++++++++++++++++++++++++++++++++++++-------------------------------------- |
2 files changed, 53 insertions(+), 49 deletions(-)
diff --git a/launchers/suumo-search - Run.launch b/launchers/suumo-search - Run.launch @@ -18,6 +18,7 @@ <stringAttribute key="org.eclipse.jdt.launching.CLASSPATH_PROVIDER" value="org.eclipse.m2e.launchconfig.classpathProvider"/> <booleanAttribute key="org.eclipse.jdt.launching.DEFAULT_CLASSPATH" value="false"/> <stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="xyz.kebigon.housesearch.HouseSearchApplication"/> +<stringAttribute key="org.eclipse.jdt.launching.MODULE_NAME" value="suumo-search"/> <stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="suumo-search"/> <stringAttribute key="org.eclipse.jdt.launching.SOURCE_PATH_PROVIDER" value="org.eclipse.m2e.launchconfig.sourcepathProvider"/> </launchConfiguration> diff --git a/src/main/java/xyz/kebigon/housesearch/domain/Posting.java b/src/main/java/xyz/kebigon/housesearch/domain/Posting.java @@ -5,63 +5,66 @@ import lombok.Data; @Data public class Posting { - /** - * URL - */ - private final String url; + /** + * URL + */ + private final String url; - /** - * Price (in yens) - */ - private final Long price; + /** + * Price (in yens) + */ + private final Long price; - /** - * Age (in years) - */ - private final Integer age; + /** + * Age (in years) + */ + private final Integer age; - /** - * Land surface (in square meters) - */ - private final Double landSurface; + /** + * Land surface (in square meters) + */ + private final Double landSurface; - /** - * House surface (in square meters) - */ - private final Double houseSurface; + /** + * House surface (in square meters) + */ + private final Double houseSurface; - /** - * Time to go to the closest station (in minutes) - */ - private final Integer walkTimeToStation; + /** + * Time to go to the closest station (in minutes) + */ + private final Integer walkTimeToStation; - /** - * Closest station - */ - private final String station; + /** + * Closest station + */ + private final String station; - /** - * Fastest route in the ones compared by spring expression - */ - private Route fastestRoute; + /** + * Fastest route in the ones compared by spring expression + */ + private Route fastestRoute; - /** - * Cheapest route in the ones compared by spring expression - */ - private Route cheapestRoute; + /** + * Cheapest route in the ones compared by spring expression + */ + private Route cheapestRoute; - /** - * Easiest route in the ones compared by spring expression - */ - private Route easiestRoute; + /** + * Easiest route in the ones compared by spring expression + */ + private Route easiestRoute; - public void updateRoutes(Route route) - { - if (fastestRoute == null || route.getTime() < fastestRoute.getTime()) - fastestRoute = route; - if (cheapestRoute == null || route.getFare() < cheapestRoute.getFare()) - cheapestRoute = route; - if (easiestRoute == null || route.getTransfer() < easiestRoute.getTransfer()) - easiestRoute = route; - } + public void updateRoutes(Route route) + { + if (fastestRoute == null || route.getTime() < fastestRoute.getTime() || (route.getTime() == fastestRoute.getTime() + && (route.getFare() < fastestRoute.getFare() || route.getTransfer() < fastestRoute.getTransfer()))) + fastestRoute = route; + if (cheapestRoute == null || route.getFare() < cheapestRoute.getFare() || (route.getFare() == cheapestRoute.getFare() + && (route.getTime() < cheapestRoute.getTime() || route.getTransfer() < cheapestRoute.getTransfer()))) + cheapestRoute = route; + if (easiestRoute == null || route.getTransfer() < easiestRoute.getTransfer() || (route.getTransfer() == easiestRoute.getTransfer() + && (route.getTime() < easiestRoute.getTime() || route.getFare() < easiestRoute.getFare()))) + easiestRoute = route; + } }