aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/com/encora/Main.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/com/encora/Main.java')
-rw-r--r--src/main/java/com/encora/Main.java25
1 files changed, 25 insertions, 0 deletions
diff --git a/src/main/java/com/encora/Main.java b/src/main/java/com/encora/Main.java
index ea3a2a4..368fa29 100644
--- a/src/main/java/com/encora/Main.java
+++ b/src/main/java/com/encora/Main.java
@@ -6,6 +6,8 @@ import org.springframework.data.domain.Sort;
import org.springframework.http.HttpStatus;
import org.springframework.web.bind.annotation.*;
+import java.text.DateFormat;
+import java.text.SimpleDateFormat;
import java.util.*;
@SpringBootApplication
@@ -233,4 +235,27 @@ public class Main {
final int pageSize = 10;
return (int) Math.ceil((double) toDosRepository.filteredToDos.size() / pageSize);
}
+
+
+ // Return the average time on completing to dos.
+ @CrossOrigin(origins=allowed_origin)
+ @GetMapping("/todos/average/{priority}")
+ @ResponseStatus(value=HttpStatus.OK)
+ public String getAverageTime(@PathVariable("priority") String priority) {
+ String result = "";
+ Double milliseconds = toDosRepository.getAverageCompletingTime(priority);
+
+ if (milliseconds > 86400000) {
+ // More than a day.
+ Integer days = (int) (milliseconds / 86400000);
+ result += String.valueOf(days) + " days, ";
+ }
+
+ // Convert the milliseconds into an hour, minute, second and
+ // millisecond format.
+ DateFormat simple = new SimpleDateFormat("HH:mm:ss:SSS");
+ simple.setTimeZone(TimeZone.getTimeZone("GMT"));
+
+ return result + simple.format(milliseconds);
+ }
}