intermediate

This commit is contained in:
2025-07-31 16:48:19 +02:00
parent 6b6e5f60bc
commit b8b93fe925
6 changed files with 42 additions and 48 deletions

View File

@@ -9,6 +9,7 @@ import static de.srsoftware.umbrella.core.Util.mapValues;
import static de.srsoftware.umbrella.core.exceptions.UmbrellaException.*;
import static de.srsoftware.umbrella.core.model.Permission.*;
import static de.srsoftware.umbrella.core.model.Status.OPEN;
import static de.srsoftware.umbrella.core.model.Status.PREDEFINED;
import static de.srsoftware.umbrella.project.Constants.CONFIG_DATABASE;
import static java.lang.Boolean.TRUE;
import static java.net.HttpURLConnection.HTTP_OK;
@@ -139,7 +140,8 @@ public class ProjectModule extends BaseHandler implements ProjectService {
private boolean getStateList(HttpExchange ex) throws IOException {
var map = new HashMap<Integer,String>();
for (var status : Status.values()) map.put(status.code(),status.name());
for (var status : PREDEFINED) map.put(status.code(),status.name());
map.put(23,"evil");
return sendContent(ex,map);
}
@@ -247,7 +249,7 @@ public class ProjectModule extends BaseHandler implements ProjectService {
showClosed = settingsJson.has(SHOW_CLOSED) && settingsJson.get(SHOW_CLOSED) == TRUE;
}
var owner = Map.of(user.id(),new Member(user,OWNER));
var prj = new Project(0,name,description, OPEN,companyId,showClosed, owner);
var prj = new Project(0,name,description, OPEN.code(),companyId,showClosed, owner);
prj = projects.save(prj);
if (json.has(TAGS) && json.get(TAGS) instanceof JSONArray arr){

View File

@@ -200,7 +200,7 @@ CREATE TABLE IF NOT EXISTS {0} ( {1} VARCHAR(255) PRIMARY KEY, {2} VARCHAR(255)
public Project save(Project prj) throws UmbrellaException {
if (prj.id() == 0) { // new
try {
var stmt = insertInto(TABLE_PROJECTS, NAME, DESCRIPTION, STATUS, COMPANY_ID, SHOW_CLOSED).values(prj.name(), prj.description(), prj.status().code(), prj.companyId().orElse(null), prj.showClosed()).execute(db);
var stmt = insertInto(TABLE_PROJECTS, NAME, DESCRIPTION, STATUS, COMPANY_ID, SHOW_CLOSED).values(prj.name(), prj.description(), prj.status(), prj.companyId().orElse(null), prj.showClosed()).execute(db);
var rs = stmt.getGeneratedKeys();
var id = rs.next() ? rs.getLong(1) : null;
rs.close();
@@ -225,7 +225,7 @@ CREATE TABLE IF NOT EXISTS {0} ( {1} VARCHAR(255) PRIMARY KEY, {2} VARCHAR(255)
}
if (prj.isDirty()){
update(TABLE_PROJECTS).set(NAME,DESCRIPTION,STATUS,COMPANY_ID,SHOW_CLOSED).where(ID,equal(prj.id())).prepare(db)
.apply(prj.name(),prj.description(),prj.status().code(),prj.companyId(),prj.showClosed())
.apply(prj.name(),prj.description(),prj.status(),prj.companyId(),prj.showClosed())
.execute();
prj.clean();
}