working on project view

This commit is contained in:
2025-07-19 00:40:28 +02:00
parent 08838e8ddc
commit 744b8a4576
6 changed files with 22 additions and 4 deletions

View File

@@ -1,6 +1,7 @@
/* © SRSoftware 2025 */
package de.srsoftware.umbrella.project;
import static de.srsoftware.tools.Optionals.nullable;
import static de.srsoftware.umbrella.core.ConnectionProvider.connect;
import static de.srsoftware.umbrella.core.Constants.*;
import static de.srsoftware.umbrella.core.Paths.LIST;
@@ -87,6 +88,7 @@ public class ProjectModule extends BaseHandler implements ProjectService {
private boolean getProject(HttpExchange ex, long projectId, UmbrellaUser user) throws IOException, UmbrellaException {
var project = projects.load(projectId);
if (!project.hasMember(user)) throw forbidden("You are not a member of {0}",project.name());
var map = project.toMap();
var members = new HashMap<Long,Map<String,Object>>();
for (var member : project.members()){
@@ -95,7 +97,7 @@ public class ProjectModule extends BaseHandler implements ProjectService {
members.put(userId,Map.of(USER,users.loadUser(userId).toMap(),PERMISSION,perm));
}
if (!members.isEmpty()) map.put(MEMBERS,members);
nullable(project.companyId()).map(companies::get).map(Company::toMap).ifPresent(data -> map.put(COMPANY,data));
return sendContent(ex,map);
}