working on Autocomplete field for member addition to projects

This commit is contained in:
2025-07-21 23:47:28 +02:00
parent cad74d1b78
commit 7eca9dd08e
7 changed files with 123 additions and 28 deletions

View File

@@ -4,6 +4,7 @@ package de.srsoftware.umbrella.project;
import static de.srsoftware.umbrella.core.ConnectionProvider.connect;
import static de.srsoftware.umbrella.core.Constants.*;
import static de.srsoftware.umbrella.core.Paths.LIST;
import static de.srsoftware.umbrella.core.Util.mapValues;
import static de.srsoftware.umbrella.core.exceptions.UmbrellaException.*;
import static de.srsoftware.umbrella.core.model.Permission.EDIT;
import static de.srsoftware.umbrella.core.model.Permission.OWNER;
@@ -14,6 +15,7 @@ import static java.net.HttpURLConnection.HTTP_OK;
import com.sun.net.httpserver.HttpExchange;
import de.srsoftware.configuration.Configuration;
import de.srsoftware.tools.Mappable;
import de.srsoftware.tools.Path;
import de.srsoftware.tools.SessionToken;
import de.srsoftware.umbrella.core.BaseHandler;
@@ -130,7 +132,7 @@ public class ProjectModule extends BaseHandler implements ProjectService {
var company = companies.get(companyId);
if (!companies.membership(companyId,user.id())) throw forbidden("You are mot a member of company {0}",company.name());
var projects = listCompanyProjects(companyId,false);
return sendContent(ex,mapProjects(projects));
return sendContent(ex,mapValues(projects));
}
@Override
@@ -142,7 +144,7 @@ public class ProjectModule extends BaseHandler implements ProjectService {
private boolean listUserProjects(HttpExchange ex, UmbrellaUser user, boolean showClosed) throws IOException, UmbrellaException {
var projects = listUserProjects(user.id(),showClosed);
return sendContent(ex,mapProjects(projects));
return sendContent(ex,mapValues(projects));
}
@Override
@@ -159,12 +161,6 @@ public class ProjectModule extends BaseHandler implements ProjectService {
return projectList;
}
@Override
public Map<Long, Map<String, Object>> mapProjects(Map<Long, Project> projects) {
var mapped = new HashMap<Long,Map<String,Object>>();
for (var entry : projects.entrySet()) mapped.put(entry.getKey(),entry.getValue().toMap());
return mapped;
}
private void patchMembers(Project project, JSONObject json) {
var members = project.members();