finished implementation of setting user permissions in projects
This commit is contained in:
@@ -177,6 +177,7 @@ public class ProjectModule extends BaseHandler implements ProjectService {
|
|||||||
if (!(json.get(key) instanceof Number number)) throw invalidFieldException(PERMISSION,"int");
|
if (!(json.get(key) instanceof Number number)) throw invalidFieldException(PERMISSION,"int");
|
||||||
var permission = Permission.of(number.intValue());
|
var permission = Permission.of(number.intValue());
|
||||||
members.put(userId,new Member(users.loadUser(userId),permission));
|
members.put(userId,new Member(users.loadUser(userId),permission));
|
||||||
|
project.dirtyFields().add(MEMBERS);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -207,8 +207,9 @@ CREATE TABLE IF NOT EXISTS {0} ( {1} VARCHAR(255) PRIMARY KEY, {2} VARCHAR(255)
|
|||||||
} else { // Update
|
} else { // Update
|
||||||
try {
|
try {
|
||||||
if (prj.dirtyFields().contains(MEMBERS)){
|
if (prj.dirtyFields().contains(MEMBERS)){
|
||||||
// TODO:
|
var query = replaceInto(TABLE_PROJECT_USERS,PROJECT_ID,USER_ID,PERMISSIONS);
|
||||||
LOG.log(ERROR,"Updating/Adding project members not implemented!");
|
for (var member : prj.members().entrySet()) query.values(prj.id(),member.getKey(),member.getValue().permission().code());
|
||||||
|
query.execute(db).close();
|
||||||
prj.dirtyFields().remove(MEMBERS);
|
prj.dirtyFields().remove(MEMBERS);
|
||||||
}
|
}
|
||||||
if (prj.isDirty()){
|
if (prj.isDirty()){
|
||||||
|
|||||||
Reference in New Issue
Block a user