implemented task/:id/view
This commit is contained in:
@@ -9,10 +9,10 @@ import java.util.Map;
|
||||
|
||||
public interface ProjectService {
|
||||
CompanyService companyService();
|
||||
public Map<Long,Project> listCompanyProjects(long companyId, boolean includeClosed) throws UmbrellaException;
|
||||
public Map<Long,Project> listUserProjects(long userId, boolean includeClosed) throws UmbrellaException;
|
||||
public Collection<Project> loadMembers(Collection<Project> projects);
|
||||
public default Project loadMembers(Project project){
|
||||
Map<Long,Project> listCompanyProjects(long companyId, boolean includeClosed) throws UmbrellaException;
|
||||
Map<Long,Project> listUserProjects(long userId, boolean includeClosed) throws UmbrellaException;
|
||||
Collection<Project> loadMembers(Collection<Project> projects);
|
||||
default Project loadMembers(Project project){
|
||||
loadMembers(List.of(project));
|
||||
return project;
|
||||
}
|
||||
|
||||
@@ -2,14 +2,22 @@
|
||||
package de.srsoftware.umbrella.core.api;
|
||||
|
||||
import de.srsoftware.umbrella.core.exceptions.UmbrellaException;
|
||||
import de.srsoftware.umbrella.core.model.Project;
|
||||
import de.srsoftware.umbrella.core.model.Task;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
|
||||
public interface TaskService {
|
||||
CompanyService companyService();
|
||||
HashMap<Long, Task> listCompanyTasks(long companyId) throws UmbrellaException;
|
||||
HashMap<Long, Task> listProjectTasks(long projectId) throws UmbrellaException;
|
||||
|
||||
Collection<Task> loadMembers(Collection<Task> tasks);
|
||||
default Task loadMembers(Task task){
|
||||
loadMembers(List.of(task));
|
||||
return task;
|
||||
}
|
||||
ProjectService projectService();
|
||||
|
||||
UserService userService();
|
||||
|
||||
@@ -12,7 +12,7 @@ import java.time.LocalDate;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
public record Task(long id, long projectId, Long parentTaskId, String name, String description, Status status, Double estimatedTime, LocalDate start, LocalDate dueDate, boolean showClosed, boolean noIndex) implements Mappable {
|
||||
public record Task(long id, long projectId, Long parentTaskId, String name, String description, Status status, Double estimatedTime, LocalDate start, LocalDate dueDate, boolean showClosed, boolean noIndex, Map<Long,Member> members) implements Mappable {
|
||||
public static Task of(ResultSet rs) throws SQLException {
|
||||
var estTime = rs.getDouble(EST_TIME);
|
||||
var parentTaskId = rs.getLong(PARENT_TASK_ID);
|
||||
@@ -29,7 +29,8 @@ public record Task(long id, long projectId, Long parentTaskId, String name, Stri
|
||||
startDate != null ? LocalDate.parse(startDate) : null,
|
||||
dueDate != null ? LocalDate.parse(dueDate) : null,
|
||||
rs.getBoolean(SHOW_CLOSED),
|
||||
rs.getBoolean(NO_INDEX)
|
||||
rs.getBoolean(NO_INDEX),
|
||||
new HashMap<>()
|
||||
);
|
||||
}
|
||||
|
||||
@@ -49,4 +50,8 @@ public record Task(long id, long projectId, Long parentTaskId, String name, Stri
|
||||
map.put(NO_INDEX,noIndex);
|
||||
return map;
|
||||
}
|
||||
|
||||
public boolean hasMember(UmbrellaUser user) {
|
||||
return members.containsKey(user.id());
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user