Skip to content

Commit 38e11a9

Browse files
committed
work
1 parent a139898 commit 38e11a9

File tree

4 files changed

+102
-81
lines changed

4 files changed

+102
-81
lines changed

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

Lines changed: 6 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -43,24 +43,6 @@ public interface TaskService {
4343

4444
boolean projectHasNoTasks(Project project);
4545

46-
/**
47-
* Before: sourceTask is dragged from above down to destinationTask, so sourceTask is above destinationTask.
48-
* After: sourceTask is placed to the position of destinationTask, all tasks between old position of sourceTask
49-
* and destinationTask are moved one position up; destinationTask is the next Task above sourceTask.
50-
* @param sourceTask Task
51-
* @param destinationTask Task
52-
*/
53-
void moveTasksUpByTaskState(Task sourceTask, Task destinationTask);
54-
55-
/**
56-
* Before: sourceTask is dragged from below up to destinationTask, so sourceTask is below destinationTask.
57-
* After: sourceTask is placed to the position of destinationTask, all tasks between old position of sourceTask
58-
* are moved one position down; destinationTask is the next Task below sourceTask.
59-
* @param sourceTask Task
60-
* @param destinationTask Task
61-
*/
62-
void moveTasksDownByTaskState(Task sourceTask, Task destinationTask);
63-
6446
void moveTasksUpByProjectRoot(Task sourceTask, Task destinationTask);
6547
void moveTasksDownByProjectRoot(Task sourceTask, Task destinationTask);
6648

@@ -78,4 +60,10 @@ public interface TaskService {
7860
Task findTopByProjectAndContextOrderByOrderIdProjectDesc(Project project, Context context);
7961
Task findTopByProjectIsNullAndContextOrderByOrderIdProjectDesc(Context context);
8062

63+
List<Task> getTasksByOrderIdTaskStateBetweenLowerTaskAndHigherTask(long lowerOrderIdTaskState, long higherOrderIdTaskState, TaskState taskState, Context context);
64+
65+
void moveTasksUpByTaskState(Task sourceTask, Task destinationTask);
66+
67+
void moveTasksDownByTaskState(Task sourceTask, Task destinationTask);
68+
8169
}

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

Lines changed: 15 additions & 63 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@
1010
import org.woehlke.java.simpleworklist.domain.db.data.Context;
1111
import org.woehlke.java.simpleworklist.domain.db.data.Project;
1212
import org.woehlke.java.simpleworklist.domain.db.data.Task;
13-
import org.woehlke.java.simpleworklist.domain.db.data.project.ProjectRepository;
1413

1514
import javax.validation.constraints.Min;
1615
import javax.validation.constraints.NotNull;
@@ -65,68 +64,6 @@ public Task findOne(@Min(1L) long taskId) {
6564
}
6665
}
6766

68-
@Override
69-
@Transactional(propagation = Propagation.REQUIRES_NEW, readOnly = false)
70-
public void moveTasksUpByTaskState(Task sourceTask, Task destinationTask ) {
71-
TaskState taskState = sourceTask.getTaskState();
72-
Context context = sourceTask.getContext();
73-
final long lowerOrderIdTaskState = destinationTask.getOrderIdTaskState();
74-
final long higherOrderIdTaskState = sourceTask.getOrderIdTaskState();
75-
List<Task> tasks = taskRepository.getTasksByOrderIdTaskStateBetweenLowerTaskAndHigherTask(
76-
lowerOrderIdTaskState,
77-
higherOrderIdTaskState,
78-
taskState,
79-
context
80-
);
81-
List<Task> tasksMoved = new ArrayList<>(tasks.size()+2);
82-
for(Task task:tasks){
83-
task.moveUpByTaskState();
84-
log.info(task.outTaskstate());
85-
tasksMoved.add(task);
86-
}
87-
destinationTask.moveUpByTaskState();
88-
log.info(destinationTask.outTaskstate());
89-
tasksMoved.add(destinationTask);
90-
sourceTask.setOrderIdTaskState( lowerOrderIdTaskState );
91-
log.info(sourceTask.outTaskstate());
92-
tasksMoved.add(sourceTask);
93-
taskRepository.saveAll(tasksMoved);
94-
}
95-
96-
97-
@Override
98-
@Transactional(propagation = Propagation.REQUIRES_NEW, readOnly = false)
99-
public void moveTasksDownByTaskState(Task sourceTask, Task destinationTask ) {
100-
log.info("-------------------------------------------------------------------------------");
101-
log.info(" moveTasks DOWN By TaskState: "+sourceTask.getId() +" -> "+ destinationTask.getId());
102-
log.info("-------------------------------------------------------------------------------");
103-
TaskState taskState = sourceTask.getTaskState();
104-
Context context = sourceTask.getContext();
105-
long lowerOrderIdTaskState = sourceTask.getOrderIdTaskState();
106-
long higherOrderIdTaskState = destinationTask.getOrderIdTaskState();
107-
List<Task> tasks = taskRepository.getTasksByOrderIdTaskStateBetweenLowerTaskAndHigherTask(
108-
lowerOrderIdTaskState,
109-
higherOrderIdTaskState,
110-
taskState,
111-
context
112-
);
113-
List<Task> tasksMoved = new ArrayList<>(tasks.size()+2);
114-
for(Task task:tasks){
115-
task.moveDownByTaskState();
116-
log.info(task.outProject());
117-
tasksMoved.add(task);
118-
}
119-
sourceTask.setOrderIdTaskState(higherOrderIdTaskState);
120-
destinationTask.moveDownByTaskState();
121-
tasksMoved.add(sourceTask);
122-
tasksMoved.add(destinationTask);
123-
taskRepository.saveAll(tasksMoved);
124-
log.info("-------------------------------------------------------------------------------");
125-
log.info(" DONE: moveTasks DOWN By TaskState("+taskState.name()+"): "+sourceTask.getId() +" -> "+ destinationTask.getId());
126-
log.info("-------------------------------------------------------------------------------");
127-
}
128-
129-
13067
@Override
13168
@Transactional(propagation = Propagation.REQUIRES_NEW, readOnly = false)
13269
public void moveTasksUpByProjectRoot(Task sourceTask, Task destinationTask ) {
@@ -399,4 +336,19 @@ public Task findTopByProjectIsNullAndContextOrderByOrderIdProjectDesc(Context co
399336
return taskRepository.findTopByProjectIsNullAndContextOrderByOrderIdProjectDesc(context);
400337
}
401338

339+
@Override
340+
public List<Task> getTasksByOrderIdTaskStateBetweenLowerTaskAndHigherTask(long lowerOrderIdTaskState, long higherOrderIdTaskState, TaskState taskState, Context context) {
341+
return taskRepository.getTasksByOrderIdTaskStateBetweenLowerTaskAndHigherTask( lowerOrderIdTaskState, higherOrderIdTaskState, taskState, context);
342+
}
343+
344+
@Override
345+
public void moveTasksUpByTaskState(Task sourceTask, Task destinationTask) {
346+
347+
}
348+
349+
@Override
350+
public void moveTasksDownByTaskState(Task sourceTask, Task destinationTask) {
351+
352+
}
353+
402354
}

src/main/java/org/woehlke/java/simpleworklist/domain/meso/task/TaskMoveService.java

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,4 +30,22 @@ public interface TaskMoveService {
3030

3131
void emptyTrash(Context context);
3232

33+
/**
34+
* Before: sourceTask is dragged from above down to destinationTask, so sourceTask is above destinationTask.
35+
* After: sourceTask is placed to the position of destinationTask, all tasks between old position of sourceTask
36+
* and destinationTask are moved one position up; destinationTask is the next Task above sourceTask.
37+
* @param sourceTask Task
38+
* @param destinationTask Task
39+
*/
40+
void moveTasksUpByTaskState(Task sourceTask, Task destinationTask);
41+
42+
/**
43+
* Before: sourceTask is dragged from below up to destinationTask, so sourceTask is below destinationTask.
44+
* After: sourceTask is placed to the position of destinationTask, all tasks between old position of sourceTask
45+
* are moved one position down; destinationTask is the next Task below sourceTask.
46+
* @param sourceTask Task
47+
* @param destinationTask Task
48+
*/
49+
void moveTasksDownByTaskState(Task sourceTask, Task destinationTask);
50+
3351
}

src/main/java/org/woehlke/java/simpleworklist/domain/meso/task/TaskMoveServiceImpl.java

Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -175,4 +175,67 @@ public void emptyTrash( Context context) {
175175
List<Task> taskListDeleted = taskService.findByTaskStateDeleted(context);
176176
taskService.deleteAll(taskListDeleted);
177177
}
178+
179+
180+
@Override
181+
@Transactional(propagation = Propagation.REQUIRES_NEW, readOnly = false)
182+
public void moveTasksUpByTaskState(Task sourceTask, Task destinationTask ) {
183+
TaskState taskState = sourceTask.getTaskState();
184+
Context context = sourceTask.getContext();
185+
final long lowerOrderIdTaskState = destinationTask.getOrderIdTaskState();
186+
final long higherOrderIdTaskState = sourceTask.getOrderIdTaskState();
187+
List<Task> tasks = taskService.getTasksByOrderIdTaskStateBetweenLowerTaskAndHigherTask(
188+
lowerOrderIdTaskState,
189+
higherOrderIdTaskState,
190+
taskState,
191+
context
192+
);
193+
List<Task> tasksMoved = new ArrayList<>(tasks.size()+2);
194+
for(Task task:tasks){
195+
task.moveUpByTaskState();
196+
log.info(task.outTaskstate());
197+
tasksMoved.add(task);
198+
}
199+
destinationTask.moveUpByTaskState();
200+
log.info(destinationTask.outTaskstate());
201+
tasksMoved.add(destinationTask);
202+
sourceTask.setOrderIdTaskState( lowerOrderIdTaskState );
203+
log.info(sourceTask.outTaskstate());
204+
tasksMoved.add(sourceTask);
205+
taskService.saveAll(tasksMoved);
206+
}
207+
208+
209+
@Override
210+
@Transactional(propagation = Propagation.REQUIRES_NEW, readOnly = false)
211+
public void moveTasksDownByTaskState(Task sourceTask, Task destinationTask ) {
212+
log.info("-------------------------------------------------------------------------------");
213+
log.info(" moveTasks DOWN By TaskState: "+sourceTask.getId() +" -> "+ destinationTask.getId());
214+
log.info("-------------------------------------------------------------------------------");
215+
TaskState taskState = sourceTask.getTaskState();
216+
Context context = sourceTask.getContext();
217+
long lowerOrderIdTaskState = sourceTask.getOrderIdTaskState();
218+
long higherOrderIdTaskState = destinationTask.getOrderIdTaskState();
219+
List<Task> tasks = taskService.getTasksByOrderIdTaskStateBetweenLowerTaskAndHigherTask(
220+
lowerOrderIdTaskState,
221+
higherOrderIdTaskState,
222+
taskState,
223+
context
224+
);
225+
List<Task> tasksMoved = new ArrayList<>(tasks.size()+2);
226+
for(Task task:tasks){
227+
task.moveDownByTaskState();
228+
log.info(task.outProject());
229+
tasksMoved.add(task);
230+
}
231+
sourceTask.setOrderIdTaskState(higherOrderIdTaskState);
232+
destinationTask.moveDownByTaskState();
233+
tasksMoved.add(sourceTask);
234+
tasksMoved.add(destinationTask);
235+
taskService.saveAll(tasksMoved);
236+
log.info("-------------------------------------------------------------------------------");
237+
log.info(" DONE: moveTasks DOWN By TaskState("+taskState.name()+"): "+sourceTask.getId() +" -> "+ destinationTask.getId());
238+
log.info("-------------------------------------------------------------------------------");
239+
}
240+
178241
}

0 commit comments

Comments
 (0)