This is an automated email from the ASF dual-hosted git repository.

danhaywood pushed a commit to branch v2
in repository https://gitbox.apache.org/repos/asf/causeway-app-petclinic.git

commit 0eec2602e96dd708897ddc76b8c12edaa706ebc5
Author: Dan Haywood <[email protected]>
AuthorDate: Sat May 25 14:45:42 2024 +0100

    adds PetOwner#getDaysSinceLastVisit derived property
---
 .../domainapp/modules/petowner/dom/petowner/PetOwner.java     | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git 
a/module-petowner/src/main/java/domainapp/modules/petowner/dom/petowner/PetOwner.java
 
b/module-petowner/src/main/java/domainapp/modules/petowner/dom/petowner/PetOwner.java
index 29a659e..decd769 100644
--- 
a/module-petowner/src/main/java/domainapp/modules/petowner/dom/petowner/PetOwner.java
+++ 
b/module-petowner/src/main/java/domainapp/modules/petowner/dom/petowner/PetOwner.java
@@ -2,7 +2,9 @@ package domainapp.modules.petowner.dom.petowner;
 
 import java.time.LocalTime;
 import java.time.ZoneOffset;
+import java.time.temporal.ChronoUnit;
 import java.util.Comparator;
+import java.util.Optional;
 
 import javax.inject.Inject;
 import javax.inject.Named;
@@ -185,6 +187,15 @@ public class PetOwner implements Comparable<PetOwner>, 
CalendarEventable {
     private java.time.LocalDate lastVisit;
 
 
+    @Property
+    @PropertyLayout(fieldSetId = LayoutConstants.FieldSetId.DETAILS, sequence 
= "3.1")
+    public Long getDaysSinceLastVisit() {
+        return getLastVisit() != null
+                ? ChronoUnit.DAYS.between(getLastVisit(), 
clockService.getClock().nowAsLocalDate())
+                : null;
+    }
+
+
     @Override
     public String getCalendarName() {
         return "Last checked-in";

Reply via email to