#55 Can be assign a role to members of my Workgroup

Remove Owner on Workgroup (use role MASTER instead)
"find_citizen_by_id" not return user anymore, use "find_citizen_by_id_with_user" instead
This commit is contained in:
2020-06-01 13:44:25 +02:00
parent 8ff6fcc970
commit 7874f5cec4
49 changed files with 331 additions and 217 deletions

View File

@@ -2,27 +2,40 @@ do
$$
declare
citizen_count int = (select count(*) from citizen);
_roles text[] = $roles$
{
"MANAGER", "EDITOR", "REPORTER"
}
$roles$;
begin
delete from citizen_in_workgroup;
delete from workgroup;
insert into workgroup (id, created_by_id, name, description, anonymous, owner_id)
insert into workgroup (id, created_by_id, name, description, anonymous)
select
uuid_in(md5('workgroup'||rn::text)::cstring),
z.id,
'name' || rn,
'description' || rn,
rn % 3 = 1,
z.id
rn % 3 = 1
from (select *, row_number() over () rn from citizen) z;
insert into citizen_in_workgroup (citizen_id, workgroup_id)
insert into citizen_in_workgroup (citizen_id, workgroup_id, roles)
select
z.id,
w.id
w.id,
'{MASTER}'
from (select *, row_number() over ()+5 % citizen_count rn from citizen) z
join (select *, row_number() over () rn from workgroup) w using (rn);
insert into citizen_in_workgroup (citizen_id, workgroup_id, roles)
select
z.id,
w.id,
_roles[(row_number() over () % 3)+1:(row_number() over () % 3)+1]
from (select *, row_number() over ()+10 % citizen_count rn from citizen) z
join (select *, row_number() over () rn from workgroup) w using (rn);
raise notice 'workgroup fixtures done';
end;
$$;