Skip to content

Commit e784c60

Browse files
committed
work
1 parent 5e1fd48 commit e784c60

File tree

4 files changed

+265
-50
lines changed

4 files changed

+265
-50
lines changed

src/main/java/org/woehlke/java/simpleworklist/domain/db/data/Task.java

Lines changed: 68 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@
3434
import static javax.persistence.TemporalType.*;
3535
import static org.hibernate.annotations.LazyToOneOption.PROXY;
3636

37-
//TODO: test all three UniqueConstraints
37+
3838
@Entity
3939
@Table(
4040
name="data_task",
@@ -45,6 +45,7 @@
4545
)
4646
},
4747
indexes = {
48+
//TODO: test all three UniqueConstraints
4849
@Index(name = "ix_task_uuid", columnList = "uuid"),
4950
@Index(name = "ix_task_row_created_at", columnList = "row_created_at"),
5051
@Index(name = "ix_task_title", columnList = "title")
@@ -73,10 +74,73 @@
7374
lockMode = LockModeType.READ
7475
),
7576
@NamedQuery(
76-
name = "findByTaskStateTrashAndContext",
77+
name = "findByTaskStateInbox",
78+
query = "select t from Task t " +
79+
"where t.taskState = org.woehlke.java.simpleworklist.domain.db.data.task.TaskState.INBOX " +
80+
"and t.context = :context",
81+
lockMode = LockModeType.READ
82+
),
83+
@NamedQuery(
84+
name = "findByTaskStateToday",
85+
query = "select t from Task t " +
86+
"where t.taskState = org.woehlke.java.simpleworklist.domain.db.data.task.TaskState.TODAY " +
87+
"and t.context = :context",
88+
lockMode = LockModeType.READ
89+
),
90+
@NamedQuery(
91+
name = "findByTaskStateNext",
92+
query = "select t from Task t " +
93+
"where t.taskState = org.woehlke.java.simpleworklist.domain.db.data.task.TaskState.NEXT " +
94+
"and t.context = :context",
95+
lockMode = LockModeType.READ
96+
),
97+
@NamedQuery(
98+
name = "findByTaskStateWaiting",
99+
query = "select t from Task t " +
100+
"where t.taskState = org.woehlke.java.simpleworklist.domain.db.data.task.TaskState.WAITING " +
101+
"and t.context = :context",
102+
lockMode = LockModeType.READ
103+
),
104+
@NamedQuery(
105+
name = "findByTaskStateScheduled",
106+
query = "select t from Task t " +
107+
"where t.taskState = org.woehlke.java.simpleworklist.domain.db.data.task.TaskState.SCHEDULED " +
108+
"and t.context = :context",
109+
lockMode = LockModeType.READ
110+
),
111+
@NamedQuery(
112+
name = "findByTaskStateSomeday",
113+
query = "select t from Task t " +
114+
"where t.taskState = org.woehlke.java.simpleworklist.domain.db.data.task.TaskState.SOMEDAY " +
115+
"and t.context = :context",
116+
lockMode = LockModeType.READ
117+
),
118+
@NamedQuery(
119+
name = "findByTaskStateCompleted",
120+
query = "select t from Task t " +
121+
"where t.taskState = org.woehlke.java.simpleworklist.domain.db.data.task.TaskState.FOCUS " +
122+
"and t.context = :context",
123+
lockMode = LockModeType.READ
124+
),
125+
@NamedQuery(
126+
name = "findByTaskStateDeleted",
127+
query = "select t from Task t " +
128+
"where t.taskState = org.woehlke.java.simpleworklist.domain.db.data.task.TaskState.COMPLETED " +
129+
"and t.context = :context",
130+
lockMode = LockModeType.READ
131+
),
132+
@NamedQuery(
133+
name = "findByTaskStateTrash",
134+
query = "select t from Task t " +
135+
"where t.taskState = org.woehlke.java.simpleworklist.domain.db.data.task.TaskState.TRASH " +
136+
"or t.taskState = org.woehlke.java.simpleworklist.domain.db.data.task.TaskState.DELETED " +
137+
"and t.context = :context",
138+
lockMode = LockModeType.READ
139+
),
140+
@NamedQuery(
141+
name = "findByTaskStateProjects",
77142
query = "select t from Task t " +
78-
"where t.taskState = org.woehlke.java.simpleworklist.domain.db.data.TaskState.TRASH " +
79-
"or t.taskState = org.woehlke.java.simpleworklist.domain.db.data.TaskState.DELETED " +
143+
"where t.taskState = org.woehlke.java.simpleworklist.domain.db.data.task.TaskState.PROJECTS " +
80144
"and t.context = :context",
81145
lockMode = LockModeType.READ
82146
)

src/main/java/org/woehlke/java/simpleworklist/domain/db/data/task/TaskRepository.java

Lines changed: 57 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -15,27 +15,71 @@
1515
@Repository
1616
public interface TaskRepository extends JpaRepository<Task, Long> {
1717

18+
List<Task> findByContext(Context context);
19+
20+
@Query(name="findByTaskStateInbox")
21+
Page<Task> findByTaskStateInbox(@Param("context") Context context, Pageable request);
22+
@Query(name="findByTaskStateInbox")
23+
List<Task> findByTaskStateInbox(@Param("context") Context context);
24+
25+
@Query(name="findByTaskStateToday")
26+
Page<Task> findByTaskStateToday(@Param("context") Context context, Pageable request);
27+
@Query(name="findByTaskStateToday")
28+
List<Task> findByTaskStateToday(@Param("context") Context context);
29+
30+
@Query(name="findByTaskStateNext")
31+
Page<Task> findByTaskStateNext(@Param("context") Context context, Pageable request);
32+
@Query(name="findByTaskStateNext")
33+
List<Task> findByTaskStateNext(@Param("context") Context context);
34+
35+
@Query(name="findByTaskStateWaiting")
36+
Page<Task> findByTaskStateWaiting(@Param("context") Context context, Pageable request);
37+
@Query(name="findByTaskStateWaiting")
38+
List<Task> findByTaskStateWaiting(@Param("context") Context context);
39+
40+
@Query(name="findByTaskStateScheduled")
41+
Page<Task> findByTaskStateScheduled(@Param("context") Context context, Pageable request);
42+
@Query(name="findByTaskStateScheduled")
43+
List<Task> findByTaskStateScheduled(@Param("context") Context context);
44+
45+
@Query(name="findByTaskStateSomeday")
46+
Page<Task> findByTaskStateSomeday(@Param("context") Context context, Pageable request);
47+
@Query(name="findByTaskStateSomeday")
48+
List<Task> findByTaskStateSomeday(@Param("context") Context context);
49+
50+
Page<Task> findByFocus(boolean focus, Context context, Pageable request);
51+
List<Task> findByFocus(boolean focus, Context context);
52+
53+
@Query(name="findByTaskStateCompleted")
54+
Page<Task> findByTaskStateCompleted(@Param("context") Context context, Pageable request);
55+
@Query(name="findByTaskStateCompleted")
56+
List<Task> findByTaskStateCompleted(@Param("context") Context context);
57+
58+
@Query(name="findByTaskStateTrash")
59+
Page<Task> findByTaskStateTrash(@Param("context") Context context, Pageable request);
60+
@Query(name="findByTaskStateTrash")
61+
List<Task> findByTaskStateTrash(@Param("context") Context context);
62+
63+
@Query(name="findByTaskStateDeleted")
64+
Page<Task> findByTaskStateDeleted(@Param("context") Context context, Pageable request);
65+
@Query(name="findByTaskStateDeleted")
66+
List<Task> findByTaskStateDeleted(@Param("context") Context context);
67+
68+
@Query(name="findByTaskStateProjects")
69+
Page<Task> findByTaskStateProjects(@Param("context") Context context, Pageable request);
70+
@Query(name="findByTaskStateProjects")
71+
List<Task> findByTaskStateProjects(@Param("context") Context context);
72+
73+
74+
List<Task> findByTaskStateAndContextOrderByOrderIdTaskStateAsc(TaskState taskState, Context context);
1875
List<Task> findByProject(Project thisProject);
1976
Page<Task> findByProject(Project thisProject, Pageable pageable);
20-
Page<Task> findByFocusAndContext(boolean focus, Context context, Pageable request);
2177
Page<Task> findByProjectIsNullAndContext(Context context, Pageable request);
2278

23-
List<Task> findByContext(Context context);
24-
2579
Task findTopByTaskStateAndContextOrderByOrderIdTaskStateDesc(TaskState taskState, Context context);
2680
Task findTopByProjectIsNullAndContextOrderByOrderIdProjectDesc(Context context);
2781
Task findTopByProjectAndContextOrderByOrderIdProjectDesc(Project project, Context context);
2882

29-
List<Task> findByTaskStateAndContext(TaskState taskState, Context context);
30-
Page<Task> findByTaskStateAndContext(TaskState taskState, Context context, Pageable request);
31-
32-
@Query(name="findByTaskStateTrashAndContext")
33-
Page<Task> findByTaskStateTrashAndContext(@Param("context") Context context, Pageable request);
34-
35-
List<Task> findByTaskStateAndContextOrderByOrderIdTaskStateAsc(
36-
TaskState taskState, Context context
37-
);
38-
3983
@Query(name="queryGetTasksByOrderIdTaskStateBetweenLowerTaskAndHigherTask")
4084
List<Task> getTasksByOrderIdTaskStateBetweenLowerTaskAndHigherTask(
4185
@Param("lowerOrderIdTaskState") long lowerOrderIdTaskState,
@@ -58,5 +102,4 @@ List<Task> getTasksByOrderIdProjectRootBetweenLowerTaskAndHigherTask(
58102
@Param("context") Context context
59103
);
60104

61-
62105
}

src/main/java/org/woehlke/java/simpleworklist/domain/db/data/task/TaskService.java

Lines changed: 25 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,31 @@ public interface TaskService {
1212

1313
//TODO: rename to findById
1414
Task findOne(long taskId);
15-
Page<Task> findbyTaskstate(TaskState taskState, Context context, Pageable request);
15+
16+
List<Task> findByTaskStateInbox(Context context);
17+
List<Task> findByTaskStateToday(Context context);
18+
List<Task> findByTaskStateNext(Context context);
19+
List<Task> findByTaskStateWaiting(Context context);
20+
List<Task> findByTaskStateScheduled(Context context);
21+
List<Task> findByTaskStateSomeday(Context context);
22+
List<Task> findByFocus(boolean focus, Context context);
23+
List<Task> findByTaskStateCompleted(Context context);
24+
List<Task> findByTaskStateTrash(Context context);
25+
List<Task> findByTaskStateDeleted(Context context);
26+
List<Task> findByTaskStateProjects(Context context);
27+
28+
Page<Task> findByTaskStateInbox(Context context, Pageable request);
29+
Page<Task> findByTaskStateToday(Context context, Pageable request);
30+
Page<Task> findByTaskStateNext(Context context, Pageable request);
31+
Page<Task> findByTaskStateWaiting(Context context, Pageable request);
32+
Page<Task> findByTaskStateScheduled(Context context, Pageable request);
33+
Page<Task> findByTaskStateSomeday(Context context, Pageable request);
34+
Page<Task> findByFocus(boolean focus, Context context, Pageable request);
35+
Page<Task> findByTaskStateCompleted(Context context, Pageable request);
36+
Page<Task> findByTaskStateTrash(Context context, Pageable request);
37+
Page<Task> findByTaskStateDeleted(Context context, Pageable request);
38+
Page<Task> findByTaskStateProjects(Context context, Pageable request);
39+
1640
Page<Task> findByProject(Project thisProject, Pageable request);
1741
//TODO: rename to findByProjectRoot
1842
Page<Task> findByRootProject(Context context, Pageable request);
@@ -49,7 +73,6 @@ public interface TaskService {
4973

5074

5175
List<Task> findByTaskStateAndContextOrderByOrderIdTaskStateAsc(TaskState taskState, Context context);
52-
List<Task> findByTaskStateAndContext(TaskState taskState, Context context);
5376

5477
Task findTopByTaskStateAndContextOrderByOrderIdTaskStateDesc(TaskState taskState, Context context);
5578
Task findTopByProjectAndContextOrderByOrderIdProjectDesc(Project project, Context context);

0 commit comments

Comments
 (0)