diff --git a/core/src/main/java/de/srsoftware/umbrella/core/Constants.java b/core/src/main/java/de/srsoftware/umbrella/core/Constants.java index 629838e..b94d08c 100644 --- a/core/src/main/java/de/srsoftware/umbrella/core/Constants.java +++ b/core/src/main/java/de/srsoftware/umbrella/core/Constants.java @@ -167,6 +167,7 @@ public class Constants { public static final String TITLE = "title"; public static final String TIMESTAMP = "timestamp"; public static final String TOKEN = "token"; + public static final String TOTAL_PRIO = "total_prio"; public static final String TYPE = "type"; public static final String UMBRELLA = "Umbrella"; diff --git a/core/src/main/java/de/srsoftware/umbrella/core/model/Task.java b/core/src/main/java/de/srsoftware/umbrella/core/model/Task.java index 6084bde..5944021 100644 --- a/core/src/main/java/de/srsoftware/umbrella/core/model/Task.java +++ b/core/src/main/java/de/srsoftware/umbrella/core/model/Task.java @@ -230,14 +230,23 @@ public class Task implements Mappable { map.put(ESTIMATED_TIME, estimatedTime); map.put(START_DATE,start); map.put(DUE_DATE,dueDate); - map.put(SHOW_CLOSED,showClosed); map.put(NO_INDEX,noIndex); map.put(MEMBERS,memberMap); map.put(REQUIRED_TASKS_IDS,requiredTasksIds); + map.put(SHOW_CLOSED,showClosed); + map.put(TOTAL_PRIO,totalPrio()); return map; } + private int totalPrio() { + if (dueDate == null) return priority; + var diff = (int) (dueDate.toEpochDay()-LocalDate.now().toEpochDay()); + if (diff <= 0) return priority + 100; // due date has passed + if (diff < 100) return priority + 100 - diff; // due within the next 100 days + return priority; + } + @Override public String toString() { diff --git a/frontend/src/routes/project/KanbanCard.svelte b/frontend/src/routes/project/KanbanCard.svelte index 69e6fc9..3d5e47f 100644 --- a/frontend/src/routes/project/KanbanCard.svelte +++ b/frontend/src/routes/project/KanbanCard.svelte @@ -2,7 +2,7 @@ let { onclick, ondragstart, task } = $props(); -
+
{task.name} {#if task.estimated_time} diff --git a/frontend/src/routes/task/View.svelte b/frontend/src/routes/task/View.svelte index 8820f51..efeab55 100644 --- a/frontend/src/routes/task/View.svelte +++ b/frontend/src/routes/task/View.svelte @@ -181,7 +181,7 @@ {error} {/if} {#if task} -
+
{#if project}
{t('project')}