Реализованы методы создания, завершения и удаления задач через сервис.
This commit is contained in:
parent
af15988c62
commit
f4483ff951
@ -2,29 +2,25 @@ package ru.kamask.pet.todo;
|
||||
|
||||
import ru.kamask.pet.todo.model.SimpleTask;
|
||||
import ru.kamask.pet.todo.repo.InMemoryTaskRepository;
|
||||
import ru.kamask.pet.todo.service.TaskService;
|
||||
|
||||
public class TodoApp {
|
||||
|
||||
public static void main(String[] args) {
|
||||
var repo = new InMemoryTaskRepository();
|
||||
var service = new TaskService(new InMemoryTaskRepository());
|
||||
|
||||
repo.save(new SimpleTask("Задача номер один"));
|
||||
repo.save(new SimpleTask("Задача номер два"));
|
||||
repo.save(new SimpleTask("Задача номер три"));
|
||||
repo.save(new SimpleTask("Задача номер четыре"));
|
||||
service.create("Задача номер один");
|
||||
service.create("Задача номер два");
|
||||
service.create("Задача номер три");
|
||||
service.create("Задача номер четыре");
|
||||
|
||||
System.out.println(repo.findAll());
|
||||
System.out.println(service.list());
|
||||
|
||||
var taskOption = repo.findById(2);
|
||||
if (taskOption.isPresent()) {
|
||||
SimpleTask task = (SimpleTask) taskOption.get();
|
||||
task.markAsCompleted();
|
||||
var data = task.data();
|
||||
System.out.println(data);
|
||||
}
|
||||
service.complete(2);
|
||||
service.getById(2).ifPresent(task -> System.out.println(((SimpleTask) task).data()));
|
||||
|
||||
repo.delete(1);
|
||||
System.out.println(repo.findAll());
|
||||
service.remove(3);
|
||||
System.out.println(service.list());
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -0,0 +1,41 @@
|
||||
package ru.kamask.pet.todo.service;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
|
||||
import ru.kamask.pet.todo.model.Task;
|
||||
import ru.kamask.pet.todo.model.SimpleTask;
|
||||
import ru.kamask.pet.todo.repo.TaskRepository;
|
||||
|
||||
public class TaskService {
|
||||
private final TaskRepository repo;
|
||||
|
||||
public TaskService(TaskRepository repo) {
|
||||
this.repo = repo;
|
||||
}
|
||||
|
||||
public void create(String title) {
|
||||
repo.save(new SimpleTask(title));
|
||||
}
|
||||
|
||||
public Optional<Task> getById(int id) {
|
||||
return repo.findById(id);
|
||||
}
|
||||
|
||||
public boolean complete(int id) {
|
||||
var taskOpt = repo.findById(id);
|
||||
if (taskOpt.isPresent()) {
|
||||
taskOpt.get().markAsCompleted();
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
public List<Task> list() {
|
||||
return repo.findAll();
|
||||
}
|
||||
|
||||
public void remove(int id) {
|
||||
repo.delete(id);
|
||||
}
|
||||
}
|
||||
Loading…
x
Reference in New Issue
Block a user